mailchimp.go 957 B

12345678910111213141516171819202122232425262728293031
  1. package rules
  2. import (
  3. "github.com/zricethezav/gitleaks/v8/cmd/generate/secrets"
  4. "github.com/zricethezav/gitleaks/v8/config"
  5. )
  6. func MailChimp() *config.Rule {
  7. // define rule
  8. r := config.Rule{
  9. RuleID: "mailchimp-api-key",
  10. Description: "Identified a Mailchimp API key, potentially compromising email marketing campaigns and subscriber data.",
  11. Regex: generateSemiGenericRegex([]string{"MailchimpSDK.initialize", "mailchimp"}, hex("32")+`-us\d\d`, true),
  12. Keywords: []string{
  13. "mailchimp",
  14. },
  15. }
  16. // validate
  17. tps := []string{
  18. generateSampleSecret("mailchimp", secrets.NewSecret(hex("32"))+"-us20"),
  19. `mailchimp_api_key: cefa780880ba5f5696192a34f6292c35-us18`, // gitleaks:allow
  20. `MAILCHIMPE_KEY = "b5b9f8e50c640da28993e8b6a48e3e53-us18"`, // gitleaks:allow
  21. }
  22. fps := []string{
  23. // False Negative
  24. `MailchimpSDK.initialize(token: 3012a5754bbd716926f99c028f7ea428-us18)`, // gitleaks:allow
  25. }
  26. return validate(r, tps, fps)
  27. }