rubygems.go 730 B

123456789101112131415161718192021222324
  1. package rules
  2. import (
  3. "github.com/zricethezav/gitleaks/v8/cmd/generate/config/utils"
  4. "github.com/zricethezav/gitleaks/v8/cmd/generate/secrets"
  5. "github.com/zricethezav/gitleaks/v8/config"
  6. )
  7. func RubyGemsAPIToken() *config.Rule {
  8. // define rule
  9. r := config.Rule{
  10. RuleID: "rubygems-api-token",
  11. Description: "Identified a Rubygem API token, potentially compromising Ruby library distribution and package management.",
  12. Regex: utils.GenerateUniqueTokenRegex(`rubygems_[a-f0-9]{48}`, false),
  13. Entropy: 2,
  14. Keywords: []string{
  15. "rubygems_",
  16. },
  17. }
  18. // validate
  19. tps := utils.GenerateSampleSecrets("rubygemsAPIToken", "rubygems_"+secrets.NewSecret(utils.Hex("48")))
  20. return utils.Validate(r, tps, nil)
  21. }