rules:
- name: "email"
pattern: "([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,})"
replace_with: "[EMAIL_REDACTED]"
description: "Standard email address pattern."
multiline: false
dot_matches_new_line: false
- name: "ipv4_address"
pattern: "\\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\b"
replace_with: "[IPV4_REDACTED]"
description: "Standard IPv4 address pattern."
multiline: false
dot_matches_new_line: false
- name: "jwt_token"
pattern: "(ey[a-zA-Z0-9-_=]+\\.[a-zA-Z0-9-_=]+\\.[a-zA-Z0-9-_=]+)"
replace_with: "[JWT_REDACTED]"
description: "JSON Web Token (JWT) pattern."
multiline: false
dot_matches_new_line: false
- name: "aws_access_key"
pattern: "(AKIA[0-9A-Z]{16})"
replace_with: "[AWS_ACCESS_KEY_REDACTED]"
description: "AWS Access Key ID pattern (e.g., AKIA...)."
multiline: false
dot_matches_new_line: false
- name: "aws_secret_key"
pattern: "\\b[A-Za-z0-9/+=]{40}\\b"
replace_with: "[AWS_SECRET_KEY_REDACTED]"
description: "AWS Secret Access Key pattern (40 characters base64-like string). Case-insensitive, matches whole words."
multiline: false
dot_matches_new_line: false
- name: "gcp_api_key"
pattern: "(AIza[0-9A-Za-z-_]{35})"
replace_with: "[GCP_API_KEY_REDACTED]"
description: "Google Cloud Platform API Key pattern (AIza...). Matches common structure."
multiline: false
dot_matches_new_line: false
- name: "ssh_private_key_rsa"
pattern: "BEGIN (RSA|DSA|EC|OPENSSH) PRIVATE KEY-----.*?-----END (RSA|DSA|EC|OPENSSH) PRIVATE KEY"
replace_with: "[SSH_PRIVATE_KEY_REDACTED]"
description: "Detects common SSH private key blocks (RSA, DSA, EC, OPENSSH). Matches multiline."
multiline: true
dot_matches_new_line: true
- name: "generic_hex_secret_32"
pattern: "\\b[0-9a-fA-F]{32}\\b"
replace_with: "[HEX_SECRET_32_REDACTED]"
description: "Common 32-character hexadecimal secret pattern (e.g., API keys, hashes). Matches whole words."
multiline: false
dot_matches_new_line: false
- name: "generic_hex_secret_64"
pattern: "\\b[0-9a-fA-F]{64}\\b"
replace_with: "[HEX_SECRET_64_REDACTED]"
description: "Common 64-character hexadecimal secret pattern (e.g., API keys, hashes). Matches whole words."
multiline: false
dot_matches_new_line: false
- name: "generic_token"
pattern: "\\b(?:[a-z_]+_[a-z0-9_]+|[A-Z]{3,}[A-Z0-9]*)\\b"
replace_with: "[GENERIC_TOKEN_REDACTED]"
description: "Generic pattern for common tokens (e.g., access_token_12345, TOKENXYZ)."
multiline: false
dot_matches_new_line: false
- name: "absolute_linux_path"
pattern: "(/home/[a-zA-Z0-9_.-]+(?:/[a-zA-Z0-9_.-]+)*)"
replace_with: "~$1"
description: "Linux/Unix absolute path starting with /home/ followed by username."
multiline: false
dot_matches_new_line: false
- name: "absolute_macos_path"
pattern: "(/Users/[a-zA-Z0-9_.-]+(?:/[a-zA-Z0-9_.-]+)*)"
replace_with: "~$1"
description: "macOS absolute path starting with /Users/ followed by username."
multiline: false
dot_matches_new_line: false