Zachary 3 лет назад
Родитель
Сommit
1297b41b10
3 измененных файлов с 35 добавлено и 0 удалено
  1. 1 0
      cmd/generate/config/main.go
  2. 25 0
      cmd/generate/config/rules/travisci.go
  3. 9 0
      config/gitleaks.toml

+ 1 - 0
cmd/generate/config/main.go

@@ -133,6 +133,7 @@ func main() {
 	configRules = append(configRules, rules.SquareSpaceAccessToken())
 	configRules = append(configRules, rules.SumoLogicAccessID())
 	configRules = append(configRules, rules.SumoLogicAccessToken())
+	configRules = append(configRules, rules.TravisCIAccessToken())
 	configRules = append(configRules, rules.Twilio())
 	configRules = append(configRules, rules.TwitchAPIToken())
 	configRules = append(configRules, rules.TwitterAPIKey())

+ 25 - 0
cmd/generate/config/rules/travisci.go

@@ -0,0 +1,25 @@
+package rules
+
+import (
+	"github.com/zricethezav/gitleaks/v8/cmd/generate/secrets"
+	"github.com/zricethezav/gitleaks/v8/config"
+)
+
+func TravisCIAccessToken() *config.Rule {
+	// define rule
+	r := config.Rule{
+		RuleID:      "travisci-access-token",
+		Description: "Travis CI Access Token",
+		Regex:       generateSemiGenericRegex([]string{"travis"}, alphaNumeric("22")),
+		SecretGroup: 1,
+		Keywords: []string{
+			"travis",
+		},
+	}
+
+	// validate
+	tps := []string{
+		generateSampleSecret("travis", secrets.NewSecret(alphaNumeric("22"))),
+	}
+	return validate(r, tps, nil)
+}

+ 9 - 0
config/gitleaks.toml

@@ -1020,6 +1020,15 @@ keywords = [
     "sumo",
 ]
 
+[[rules]]
+description = "Travis CI Access Token"
+id = "travisci-access-token"
+regex = '''(?i)(?:travis)(?:[0-9a-z\-_\t .]{0,20})(?:[\s|']|[\s|"]){0,3}(?:=|>|:=|\|\|:|<=|=>|:)(?:'|\"|\s|=|\x60){0,5}([a-z0-9]{22})(?:['|\"|\n|\r|\s|\x60]|$)'''
+secretGroup = 1
+keywords = [
+    "travis",
+]
+
 [[rules]]
 description = "Twilio API Key"
 id = "twilio-api-key"