title = "gitleaks config" # https://learnxinyminutes.com/docs/toml/ for toml reference [[rules]] description = "1Password Secret Key" id = "1password-secret-key" regex = '''A3-[A-Z0-9]{6}-(?:(?:[A-Z0-9]{11})|(?:[A-Z0-9]{6}-[A-Z0-9]{5}))-[A-Z0-9]{5}-[A-Z0-9]{5}-[A-Z0-9]{5}''' tags = ["1Password"] [[rules]] description = "AWS Access Key" id = "aws-access-key" regex = '''(?:A3T[A-Z0-9]|AKIA|ASIA|ABIA|ACCA)[A-Z0-9]{16}''' tags = ["key", "AWS"] [[rules]] description = "AWS Secret Key" id = "aws-secret-key" regex = '''(?i)aws_(.{0,20})?=?.[\'\"0-9a-zA-Z\/+]{40}''' tags = ["key", "AWS"] [[rules]] description = "AWS MWS key" id = "aws-mws-key" regex = '''amzn\.mws\.[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}''' tags = ["key", "AWS", "MWS"] [[rules]] description = "Facebook Secret Key" id = "facebook-secret-key" regex = '''(?i)(facebook|fb)(.{0,20})?(?-i)['\"][0-9a-f]{32}['\"]''' tags = ["key", "Facebook"] [[rules]] description = "Facebook Client ID" id = "facebook-client-id" regex = '''(?i)(facebook|fb)(.{0,20})?['\"][0-9]{13,17}['\"]''' tags = ["key", "Facebook"] [[rules]] description = "Twitter Secret Key" id = "twitter-secret-key" regex = '''(?i)twitter(.{0,20})?['\"][0-9a-z]{35,44}['\"]''' tags = ["key", "Twitter"] [[rules]] description = "Twitter Client ID" id = "twitter-client-id" regex = '''(?i)twitter(.{0,20})?['\"][0-9a-z]{18,25}['\"]''' tags = ["client", "Twitter"] [[rules]] description = "Github Personal Access Token" id = "github-pat" regex = '''ghp_[0-9a-zA-Z]{36}''' tags = ["key", "Github"] [[rules]] description = "Github OAuth Access Token" id = "github-oauth" regex = '''gho_[0-9a-zA-Z]{36}''' tags = ["key", "Github"] [[rules]] id = "github-app" description = "Github App Token" regex = '''(ghu|ghs)_[0-9a-zA-Z]{36}''' tags = ["key", "Github"] [[rules]] id = "github-refresh" description = "Github Refresh Token" regex = '''ghr_[0-9a-zA-Z]{76}''' tags = ["key", "Github"] [[rules]] id = "linkedin-client" description = "LinkedIn Client ID" regex = '''(?i)linkedin(.{0,20})?(?-i)[0-9a-z]{12}''' tags = ["client", "LinkedIn"] [[rules]] id = "linkedin-secret" description = "LinkedIn Secret Key" regex = '''(?i)linkedin(.{0,20})?[0-9a-z]{16}''' tags = ["secret", "LinkedIn"] [[rules]] id = "slack" description = "Slack" regex = '''xox[baprs]-(?:[0-9a-zA-Z]{10,48})?''' tags = ["key", "Slack"] [[rules]] id = "apkey" description = "Asymmetric Private Key" regex = '''-----BEGIN (?:(?:EC|PGP|DSA|RSA|OPENSSH) )?PRIVATE KEY(?: BLOCK)?-----''' tags = ["key", "AsymmetricPrivateKey"] [[rules]] id = "google" description = "Google API key" regex = '''AIza[0-9A-Za-z\-_]{35}''' tags = ["key", "Google"] [[rules]] id = "google" description = "Google (GCP) Service Account" regex = '''"type": "service_account"''' tags = ["key", "Google"] [[rules]] id = "heroku" description = "Heroku API key" regex = '''(?i)heroku(.{0,20})?[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}''' tags = ["key", "Heroku"] [[rules]] id = "mailchimp" description = "MailChimp API key" regex = '''(?i)(mailchimp|mc)(.{0,20})?[0-9a-f]{32}-us[0-9]{1,2}''' tags = ["key", "Mailchimp"] [[rules]] id = "mailgun" description = "Mailgun API key" regex = '''((?i)(mailgun|mg)(.{0,20})?)?key-[0-9a-z]{32}''' tags = ["key", "Mailgun"] [[rules]] id = "paypal" description = "PayPal Braintree access token" regex = '''access_token\$production\$[0-9a-z]{16}\$[0-9a-f]{32}''' tags = ["key", "Paypal"] [[rules]] id = "piacatic" description = "Picatic API key" regex = '''sk_live_[0-9a-z]{32}''' tags = ["key", "Picatic"] [[rules]] id = "sendgrid" description = "SendGrid API Key" regex = '''SG\.[\w_]{16,32}\.[\w_]{16,64}''' tags = ["key", "SendGrid"] [[rules]] description = "Sidekiq Secret" id = "sidekiq-secret" regex = '''(?i)(?:BUNDLE_ENTERPRISE__CONTRIBSYS__COM|BUNDLE_GEMS__CONTRIBSYS__COM)(?:[0-9a-z\-_\t .]{0,20})(?:[\s|']|[\s|"]){0,3}(?:=|>|:=|\|\|:|<=|=>|:)(?:'|\"|\s|=|\x60){0,5}([a-f0-9]{8}:[a-f0-9]{8})(?:['|\"|\n|\r|\s|\x60|;]|$)''' secretGroup = 1 keywords = [ "bundle_enterprise__contribsys__com","bundle_gems__contribsys__com", ] [[rules]] description = "Sidekiq Sensitive URL" id = "sidekiq-sensitive-url" regex = '''(?i)\b(http(?:s??):\/\/)([a-f0-9]{8}:[a-f0-9]{8})@(?:gems.contribsys.com|enterprise.contribsys.com)(?:[\/|\#|\?|:]|$)''' secretGroup = 2 keywords = [ "gems.contribsys.com","enterprise.contribsys.com", ] [[rules]] id = "slack-webhook" description = "Slack Webhook" regex = '''https://hooks.slack.com/services/T[a-zA-Z0-9_]{8}/B[a-zA-Z0-9_]{8,12}/[a-zA-Z0-9_]{24}''' tags = ["key", "slack"] [[rules]] id = "stripe" description = "Stripe API key" regex = '''(?i)stripe(.{0,20})?[sr]k_live_[0-9a-zA-Z]{24}''' tags = ["key", "Stripe"] [[rules]] id = "square" description = "Square access token" regex = '''sq0atp-[0-9A-Za-z\-_]{22}''' tags = ["key", "square"] [[rules]] id = "square-oauth" description = "Square OAuth secret" regex = '''sq0csp-[0-9A-Za-z\-_]{43}''' tags = ["key", "square"] [[rules]] id = "twilio" description = "Twilio API key" regex = '''(?i)twilio(.{0,20})?SK[0-9a-f]{32}''' tags = ["key", "twilio"] [[rules]] id = "dynatrace" description = "Dynatrace ttoken" regex = '''dt0[a-zA-Z]{1}[0-9]{2}\.[A-Z0-9]{24}\.[A-Z0-9]{64}''' tags = ["key", "Dynatrace"] [[rules]] id = "shopify" description = "Shopify shared secret" regex = '''shpss_[a-fA-F0-9]{32}''' tags = ["key", "Shopify"] [[rules]] id = "shopify-access" description = "Shopify access token" regex = '''shpat_[a-fA-F0-9]{32}''' tags = ["key", "Shopify"] [[rules]] id = "shopify-custom" description = "Shopify custom app access token" regex = '''shpca_[a-fA-F0-9]{32}''' tags = ["key", "Shopify"] [[rules]] id = "shopify-private" description = "Shopify private app access token" regex = '''shppa_[a-fA-F0-9]{32}''' tags = ["key", "Shopify"] [[rules]] id = "pypi" description = "PyPI upload token" regex = '''pypi-AgEIcHlwaS5vcmc[A-Za-z0-9-_]{50,1000}''' tags = ["key", "pypi"]