191 lines
6.2 KiB
JSON
191 lines
6.2 KiB
JSON
{
|
|
"enabled": true,
|
|
"mode": "fail-closed",
|
|
"entropyThreshold": 4.5,
|
|
"minSecretLength": 16,
|
|
"maxSecretsPerSession": 1000,
|
|
"patterns": [
|
|
{
|
|
"name": "aws_access_key_id",
|
|
"pattern": "AKIA[0-9A-Z]{16}",
|
|
"flags": "",
|
|
"category": "credential",
|
|
"description": "AWS Access Key ID starting with AKIA",
|
|
"severity": "critical",
|
|
"example": "AKIAIOSFODNN7EXAMPLE"
|
|
},
|
|
{
|
|
"name": "aws_secret_access_key",
|
|
"pattern": "[0-9a-zA-Z/+]{40}",
|
|
"flags": "",
|
|
"category": "credential",
|
|
"description": "AWS Secret Access Key (40-character base64-like string)",
|
|
"severity": "critical",
|
|
"example": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
|
|
},
|
|
{
|
|
"name": "azure_subscription_key",
|
|
"pattern": "[a-f0-9]{32}",
|
|
"flags": "",
|
|
"category": "credential",
|
|
"description": "Azure Subscription Key (32-character hex string)",
|
|
"severity": "high",
|
|
"example": "a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6"
|
|
},
|
|
{
|
|
"name": "gcp_api_key",
|
|
"pattern": "AIza[0-9A-Za-z_-]{35}",
|
|
"flags": "",
|
|
"category": "api_key",
|
|
"description": "Google Cloud Platform API Key starting with AIza",
|
|
"severity": "high",
|
|
"example": "AIzaSyDdI0hCZtE6vySjMm-WEfRq3CPzqKqqsHI"
|
|
},
|
|
{
|
|
"name": "gcp_oauth_token",
|
|
"pattern": "ya29\\.[0-9A-Za-z_-]+",
|
|
"flags": "",
|
|
"category": "token",
|
|
"description": "Google OAuth 2.0 Access Token starting with ya29",
|
|
"severity": "critical",
|
|
"example": "ya29.a0Aa4b16C3D4e5F6g7H8i9J0k1L2m3N4o5P6q7R8s9T0"
|
|
},
|
|
{
|
|
"name": "github_personal_token",
|
|
"pattern": "ghp_[a-zA-Z0-9]{36}",
|
|
"flags": "",
|
|
"category": "token",
|
|
"description": "GitHub Personal Access Token starting with ghp_",
|
|
"severity": "critical",
|
|
"example": "ghp_aBcDeFgHiJkLmNoPqRsTuVwXyZ1234567890"
|
|
},
|
|
{
|
|
"name": "gitlab_personal_token",
|
|
"pattern": "glpat-[a-zA-Z0-9\\-]{20}",
|
|
"flags": "",
|
|
"category": "token",
|
|
"description": "GitLab Personal Access Token starting with glpat-",
|
|
"severity": "critical",
|
|
"example": "glpat-abcdefghij12345678"
|
|
},
|
|
{
|
|
"name": "bitbucket_app_password",
|
|
"pattern": "[a-zA-Z0-9]{32}@[a-zA-Z0-9_-]+",
|
|
"flags": "",
|
|
"category": "password",
|
|
"description": "Bitbucket App Password with username suffix",
|
|
"severity": "high",
|
|
"example": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6@username"
|
|
},
|
|
{
|
|
"name": "slack_bot_token",
|
|
"pattern": "xoxb-[0-9]{10,13}-[0-9]{10,13}-[a-zA-Z0-9]{24}",
|
|
"flags": "",
|
|
"category": "token",
|
|
"description": "Slack Bot Token starting with xoxb-",
|
|
"severity": "critical",
|
|
"example": "xoxb-1234567890123-1234567890123-AbCdEfGhIjKlMnOpQrStUvWx"
|
|
},
|
|
{
|
|
"name": "slack_user_token",
|
|
"pattern": "xoxp-[0-9]{10,13}-[0-9]{10,13}-[a-zA-Z0-9]{24}",
|
|
"flags": "",
|
|
"category": "token",
|
|
"description": "Slack User Token starting with xoxp-",
|
|
"severity": "critical",
|
|
"example": "xoxp-1234567890123-1234567890123-AbCdEfGhIjKlMnOpQrStUvWx"
|
|
},
|
|
{
|
|
"name": "stripe_live_key",
|
|
"pattern": "sk_live_[a-zA-Z0-9]{24,}",
|
|
"flags": "",
|
|
"category": "api_key",
|
|
"description": "Stripe Live Secret Key starting with sk_live_",
|
|
"severity": "critical",
|
|
"example": "sk_live_abcdefghijklmnopqrstuvwxyz123456"
|
|
},
|
|
{
|
|
"name": "stripe_test_key",
|
|
"pattern": "sk_test_[a-zA-Z0-9]{24,}",
|
|
"flags": "",
|
|
"category": "api_key",
|
|
"description": "Stripe Test Secret Key starting with sk_test_",
|
|
"severity": "high",
|
|
"example": "sk_test_abcdefghijklmnopqrstuvwxyz123456"
|
|
},
|
|
{
|
|
"name": "jwt_token",
|
|
"pattern": "eyJ[a-zA-Z0-9_-]*\\.eyJ[a-zA-Z0-9_-]*\\.[a-zA-Z0-9_-]*",
|
|
"flags": "",
|
|
"category": "token",
|
|
"description": "JSON Web Token (JWT) in standard format",
|
|
"severity": "high",
|
|
"example": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THgR8o"
|
|
},
|
|
{
|
|
"name": "bearer_token",
|
|
"pattern": "Bearer\\s+[a-zA-Z0-9_\\-\\.=]+",
|
|
"flags": "",
|
|
"category": "token",
|
|
"description": "Bearer token in Authorization header",
|
|
"severity": "high",
|
|
"example": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9"
|
|
},
|
|
{
|
|
"name": "oauth_access_token",
|
|
"pattern": "[a-zA-Z0-9_-]{20,}",
|
|
"flags": "",
|
|
"category": "token",
|
|
"description": "OAuth 2.0 Access Token (20+ alphanumeric characters)",
|
|
"severity": "high",
|
|
"example": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0"
|
|
},
|
|
{
|
|
"name": "basic_auth",
|
|
"pattern": "Basic\\s+[a-zA-Z0-9+/=]+",
|
|
"flags": "",
|
|
"category": "credential",
|
|
"description": "Basic Authentication header with base64 credentials",
|
|
"severity": "critical",
|
|
"example": "Basic dXNlcjpwYXNzd29yZA=="
|
|
},
|
|
{
|
|
"name": "generic_api_key",
|
|
"pattern": "(api[_-]?key|apikey)\\s*[:=]\\s*[a-zA-Z0-9_\\-]{16,}",
|
|
"flags": "i",
|
|
"category": "api_key",
|
|
"description": "Generic API key pattern (api_key, api-key, apikey followed by value)",
|
|
"severity": "medium",
|
|
"example": "api_key: a1b2c3d4e5f6g7h8i9j0k1l2"
|
|
},
|
|
{
|
|
"name": "private_key",
|
|
"pattern": "-----BEGIN\\s+(RSA\\s+)?PRIVATE\\s+KEY-----",
|
|
"flags": "",
|
|
"category": "private_key",
|
|
"description": "Private key in PEM format (RSA or generic)",
|
|
"severity": "critical",
|
|
"example": "-----BEGIN RSA PRIVATE KEY-----"
|
|
},
|
|
{
|
|
"name": "database_connection_string",
|
|
"pattern": "(postgres|mysql|mongodb|redis)://[^:]+:[^@]+@[^/]+/[^\\s]+",
|
|
"flags": "",
|
|
"category": "connection_string",
|
|
"description": "Database connection string with embedded credentials",
|
|
"severity": "critical",
|
|
"example": "postgres://user:password@localhost:5432/database"
|
|
},
|
|
{
|
|
"name": "password_in_code",
|
|
"pattern": "(password|passwd|pwd)\\s*[:=]\\s*[\"']?[^\"'\\s]{8,}[\"']?",
|
|
"flags": "i",
|
|
"category": "password",
|
|
"description": "Password assignment in code (password = value)",
|
|
"severity": "high",
|
|
"example": "password = 'secret123456'"
|
|
}
|
|
],
|
|
"customPatterns": []
|
|
}
|