leaky-repo.toml 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203
  1. title = "gitleaks config"
  2. [[rules]]
  3. description = "AWS Manager ID"
  4. regex = '''(A3T[A-Z0-9]|AKIA|AGPA|AIDA|AROA|AIPA|ANPA|ANVA|ASIA)[A-Z0-9]{16}'''
  5. tags = ["key", "AWS"]
  6. [[rules]]
  7. description = "AWS cred file info"
  8. regex = '''(?i)(aws_access_key_id|aws_secret_access_key)(.{0,20})?=.[0-9a-zA-Z\/+]{20,40}'''
  9. tags = ["AWS"]
  10. [[rules]]
  11. description = "AWS Secret Key"
  12. regex = '''(?i)aws(.{0,20})?(?-i)['\"][0-9a-zA-Z\/+]{40}['\"]'''
  13. tags = ["key", "AWS"]
  14. [[rules]]
  15. description = "AWS MWS key"
  16. regex = '''amzn\.mws\.[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'''
  17. tags = ["key", "AWS", "MWS"]
  18. [[rules]]
  19. description = "Facebook Secret Key"
  20. regex = '''(?i)(facebook|fb)(.{0,20})?(?-i)['\"][0-9a-f]{32}['\"]'''
  21. tags = ["key", "Facebook"]
  22. [[rules]]
  23. description = "Facebook Client ID"
  24. regex = '''(?i)(facebook|fb)(.{0,20})?['\"][0-9]{13,17}['\"]'''
  25. tags = ["key", "Facebook"]
  26. [[rules]]
  27. description = "Twitter Secret Key"
  28. regex = '''(?i)twitter(.{0,20})?['\"][0-9a-z]{35,44}['\"]'''
  29. tags = ["key", "Twitter"]
  30. [[rules]]
  31. description = "Twitter Client ID"
  32. regex = '''(?i)twitter(.{0,20})?['\"][0-9a-z]{18,25}['\"]'''
  33. tags = ["client", "Twitter"]
  34. [[rules]]
  35. description = "Github"
  36. regex = '''(?i)github(.{0,20})?(?-i)['\"][0-9a-zA-Z]{35,40}['\"]'''
  37. tags = ["key", "Github"]
  38. [[rules]]
  39. description = "LinkedIn Client ID"
  40. regex = '''(?i)linkedin(.{0,20})?(?-i)['\"][0-9a-z]{12}['\"]'''
  41. tags = ["client", "LinkedIn"]
  42. [[rules]]
  43. description = "LinkedIn Secret Key"
  44. regex = '''(?i)linkedin(.{0,20})?['\"][0-9a-z]{16}['\"]'''
  45. tags = ["secret", "LinkedIn"]
  46. [[rules]]
  47. description = "Slack"
  48. regex = '''xox[baprs]-([0-9a-zA-Z]{10,48})?'''
  49. tags = ["key", "Slack"]
  50. [[rules]]
  51. description = "EC"
  52. regex = '''-----BEGIN EC PRIVATE KEY-----'''
  53. tags = ["key", "EC"]
  54. [[rules]]
  55. description = "Google API key"
  56. regex = '''AIza[0-9A-Za-z\\-_]{35}'''
  57. tags = ["key", "Google"]
  58. [[rules]]
  59. description = "Heroku API key"
  60. regex = '''(?i)heroku(.{0,20})?['"][0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}['"]'''
  61. tags = ["key", "Heroku"]
  62. [[rules]]
  63. description = "MailChimp API key"
  64. regex = '''(?i)(mailchimp|mc)(.{0,20})?['"][0-9a-f]{32}-us[0-9]{1,2}['"]'''
  65. tags = ["key", "Mailchimp"]
  66. [[rules]]
  67. description = "Mailgun API key"
  68. regex = '''(?i)(mailgun|mg)(.{0,20})?['"][0-9a-z]{32}['"]'''
  69. tags = ["key", "Mailgun"]
  70. [[rules]]
  71. description = "PayPal Braintree access token"
  72. regex = '''access_token\$production\$[0-9a-z]{16}\$[0-9a-f]{32}'''
  73. tags = ["key", "Paypal"]
  74. [[rules]]
  75. description = "Picatic API key"
  76. regex = '''sk_live_[0-9a-z]{32}'''
  77. tags = ["key", "Picatic"]
  78. [[rules]]
  79. description = "Slack Webhook"
  80. regex = '''https://hooks.slack.com/services/T[a-zA-Z0-9_]{8}/B[a-zA-Z0-9_]{8}/[a-zA-Z0-9_]{24}'''
  81. tags = ["key", "slack"]
  82. [[rules]]
  83. description = "Stripe API key"
  84. regex = '''(?i)stripe(.{0,20})?['\"][sk|rk]_live_[0-9a-zA-Z]{24}'''
  85. tags = ["key", "Stripe"]
  86. [[rules]]
  87. description = "Square access token"
  88. regex = '''sq0atp-[0-9A-Za-z\-_]{22}'''
  89. tags = ["key", "square"]
  90. [[rules]]
  91. description = "Square OAuth secret"
  92. regex = '''sq0csp-[0-9A-Za-z\\-_]{43}'''
  93. tags = ["key", "square"]
  94. [[rules]]
  95. description = "Twilio API key"
  96. regex = '''(?i)twilio(.{0,20})?['\"][0-9a-f]{32}['\"]'''
  97. tags = ["key", "twilio"]
  98. [[rules]]
  99. description = "Env Var"
  100. regex = '''(?i)(apikey|secret|key|api|password|pass|pw|host)=[0-9a-zA-Z-_.{}]{4,120}'''
  101. [[rules]]
  102. description = "Port"
  103. regex = '''(?i)port(.{0,4})?[0-9]{1,10}'''
  104. [[rules.allowlist]]
  105. regex = '''(?i)port '''
  106. description = "ignore export "
  107. [[rules]]
  108. description = "Email"
  109. regex = '''[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}'''
  110. tags = ["email"]
  111. [[rules.allowlist]]
  112. file = '''(?i)bashrc'''
  113. description = "ignore bashrc emails"
  114. [[rules]]
  115. description = "Generic Credential"
  116. regex = '''(?i)(dbpasswd|dbuser|dbname|dbhost|api_key|apikey|secret|key|api|password|user|guid|hostname|pw|auth)(.{0,20})?['|"]([0-9a-zA-Z-_\/+!{}/=]{4,120})['|"]'''
  117. tags = ["key", "API", "generic"]
  118. # ignore leaks with specific identifiers like slack and aws
  119. [[rules.allowlist]]
  120. regex = '''xox[baprs]-([0-9a-zA-Z]{10,48})'''
  121. description = "ignore slack"
  122. [[rules.allowlist]]
  123. description = "MailChimp API key"
  124. regex = '''(?i)(.{0,20})?['"][0-9a-f]{32}-us[0-9]{1,2}['"]'''
  125. [[rules.allowlist]]
  126. description = "AWS Manager ID"
  127. regex = '''(A3T[A-Z0-9]|AKIA|AGPA|AIDA|AROA|AIPA|ANPA|ANVA|ASIA)[A-Z0-9]{16}'''
  128. #[[rules]]
  129. # description = "s3config"
  130. # regex = '''(?i)(dbpasswd|dbuser|dbname|dbhost|api_key|apikey|key|api|password|user|guid|hostname|pw|auth)(.{0,3})?([0-9a-zA-Z-_\/+!{}=]{4,120})'''
  131. # fileNameRegex = '''(?i)s3cfg$'''
  132. [[rules]]
  133. description = "High Entropy"
  134. regex = '''[0-9a-zA-Z-_!{}/=]{4,120}'''
  135. fileNameRegex = '''(?i)(dump.sql|high-entropy-misc.txt)$'''
  136. tags = ["entropy"]
  137. [[rules.Entropies]]
  138. Min = "4.3"
  139. Max = "7.0"
  140. [[rules.allowlist]]
  141. description = "ignore ssh key and pems"
  142. file = '''(pem|ppk|env)$'''
  143. path = '''(.*)?ssh'''
  144. [[rules]]
  145. description = "Potential bash var"
  146. regex='''(?i)(=)([0-9a-zA-Z-_!{}=]{4,120})'''
  147. tags = ["key", "bash", "API", "generic"]
  148. [[rules.Entropies]]
  149. Min = "3.5"
  150. Max = "4.5"
  151. Group = "1"
  152. [[rules]]
  153. description = "WP-Config"
  154. regex='''define(.{0,20})?(DB_CHARSET|NONCE_SALT|LOGGED_IN_SALT|AUTH_SALT|NONCE_KEY|DB_HOST|DB_PASSWORD|AUTH_KEY|SECURE_AUTH_KEY|LOGGED_IN_KEY|DB_NAME|DB_USER)(.{0,20})?['|"].{10,120}['|"]'''
  155. tags = ["key", "API", "generic"]
  156. [[rules]]
  157. description = "Files with keys and credentials"
  158. fileNameRegex = '''(?i)(id_rsa|passwd|id_rsa.pub|pgpass|pem|key|shadow)'''
  159. [allowlist]
  160. description = "image allowlists"
  161. files = ['''(.*?)(jpg|gif|doc|pdf|bin)$''']