| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- package rules
- import (
- "fmt"
- "github.com/zricethezav/gitleaks/v8/cmd/generate/config/utils"
- "github.com/zricethezav/gitleaks/v8/cmd/generate/secrets"
- "github.com/zricethezav/gitleaks/v8/config"
- )
- func JFrogAPIKey() *config.Rule {
- keywords := []string{"jfrog", "artifactory", "bintray", "xray"}
- // Define Rule
- r := config.Rule{
- // Human readable description of the rule
- Description: "Found a JFrog API Key, posing a risk of unauthorized access to software artifact repositories and build pipelines.",
- // Unique ID for the rule
- RuleID: "jfrog-api-key",
- // Regex capture group for the actual secret
- // Regex used for detecting secrets. See regex section below for more details
- Regex: utils.GenerateSemiGenericRegex(keywords, utils.AlphaNumeric("73"), true),
- // Keywords used for string matching on fragments (think of this as a prefilter)
- Keywords: keywords,
- }
- // validate
- tps := []string{
- fmt.Sprintf("--set imagePullSecretJfrog.password=%s", secrets.NewSecret(utils.AlphaNumeric("73"))),
- }
- return utils.Validate(r, tps, nil)
- }
- func JFrogIdentityToken() *config.Rule {
- keywords := []string{"jfrog", "artifactory", "bintray", "xray"}
- // Define Rule
- r := config.Rule{
- // Human readable description of the rule
- Description: "Discovered a JFrog Identity Token, potentially compromising access to JFrog services and sensitive software artifacts.",
- // Unique ID for the rule
- RuleID: "jfrog-identity-token",
- // Regex capture group for the actual secret
- // Regex used for detecting secrets. See regex section below for more details
- Regex: utils.GenerateSemiGenericRegex(keywords, utils.AlphaNumeric("64"), true),
- // Keywords used for string matching on fragments (think of this as a prefilter)
- Keywords: keywords,
- }
- // validate
- tps := utils.GenerateSampleSecrets("jfrog", secrets.NewSecret(utils.AlphaNumeric("64")))
- tps = append(tps, utils.GenerateSampleSecrets("artifactory", secrets.NewSecret(utils.AlphaNumeric("64")))...)
- tps = append(tps, utils.GenerateSampleSecrets("bintray", secrets.NewSecret(utils.AlphaNumeric("64")))...)
- tps = append(tps, utils.GenerateSampleSecrets("xray", secrets.NewSecret(utils.AlphaNumeric("64")))...)
- tps = append(tps, fmt.Sprintf("\"artifactory\", \"%s\"", secrets.NewSecret(utils.AlphaNumeric("64"))))
- return utils.Validate(r, tps, nil)
- }
|