vamp-secrets-scanner 2.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 VampSecure Studios
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,179 @@
1
+ Metadata-Version: 2.4
2
+ Name: vamp-secrets-scanner
3
+ Version: 2.1
4
+ Summary: Static secrets and credentials scanner with git history analysis, Shannon entropy detection and SARIF 2.1.0 output
5
+ Author-email: VampSecure Studios <contact@vampsecurestudios.com>
6
+ License: MIT
7
+ Project-URL: Homepage, https://github.com/Vampsecure-Labs/vamp-secrets-scanner
8
+ Project-URL: Repository, https://github.com/Vampsecure-Labs/vamp-secrets-scanner
9
+ Project-URL: Bug Tracker, https://github.com/Vampsecure-Labs/vamp-secrets-scanner/issues
10
+ Keywords: security,secrets,credentials,scanner,pentest,sast,sarif,entropy
11
+ Classifier: Development Status :: 5 - Production/Stable
12
+ Classifier: Environment :: Console
13
+ Classifier: Intended Audience :: Information Technology
14
+ Classifier: Intended Audience :: System Administrators
15
+ Classifier: License :: OSI Approved :: MIT License
16
+ Classifier: Operating System :: OS Independent
17
+ Classifier: Programming Language :: Python :: 3
18
+ Classifier: Programming Language :: Python :: 3.10
19
+ Classifier: Programming Language :: Python :: 3.11
20
+ Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Topic :: Security
22
+ Classifier: Topic :: Software Development :: Quality Assurance
23
+ Requires-Python: >=3.10
24
+ Description-Content-Type: text/markdown
25
+ License-File: LICENSE
26
+ Requires-Dist: rich>=13.7.0
27
+ Dynamic: license-file
28
+
29
+ <h1 align="center">vamp-secrets-scanner</h1>
30
+ <p align="center">
31
+ <strong>Static secrets and credential scanner with Git history analysis and SARIF export</strong><br>
32
+ <em>VampSecure Labs · Security Research Division</em>
33
+ </p>
34
+
35
+ <p align="center">
36
+ <img src="https://img.shields.io/badge/python-3.10%2B-blue?style=flat-square&logo=python&logoColor=white">
37
+ <img src="https://img.shields.io/badge/platform-linux%20%7C%20macos-lightgrey?style=flat-square">
38
+ <img src="https://img.shields.io/badge/license-research%20only-red?style=flat-square">
39
+ <img src="https://img.shields.io/badge/VampSecure-Labs-8B0000?style=flat-square">
40
+ </p>
41
+
42
+ ---
43
+
44
+ ## Overview
45
+
46
+ `vamp-secrets-scanner` is a static analysis tool that detects hardcoded secrets, credentials, and sensitive data across source code repositories, configuration files, and directory trees. It combines a database of 80+ regex patterns covering cloud keys, payment tokens, PKI material, and PII with Shannon entropy analysis to surface high-entropy strings that elude pattern matching. A dedicated Git history scanner surfaces secrets that were removed from the working tree but remain reachable in commit history.
47
+
48
+ Designed for pre-deployment code reviews, penetration testing engagements, and CI/CD pipeline integration. All analysis is fully local — no data leaves the machine.
49
+
50
+ ## Features
51
+
52
+ - **80+ secret patterns** across cloud providers (AWS, GCP, Azure), VCS tokens (GitHub PAT, GitLab PAT), payment gateways (Stripe, PayPal, Braintree), messaging platforms (Slack, Telegram, Discord, Twilio), database DSNs, JWT secrets, PEM private keys, and WireGuard private keys
53
+ - **PII detection** for credit/debit card PANs (Visa, Mastercard, Amex, Discover), IBAN/BIC, CVV codes, US SSN, Spanish DNI/NIE/CIF/NUSS, and NHS numbers
54
+ - **Shannon entropy analysis** on assignment-context strings — catches generated secrets with no known format (configurable threshold, default 4.5 bits/symbol)
55
+ - **Git history scanning** — walks all commits across all branches, including deleted content, via `git log --all` + per-commit diffs
56
+ - **Four-tier severity model**: CRITICAL / HIGH / MEDIUM / LOW with deduplication by SHA-256 fingerprint
57
+ - **Allowlist support** to suppress known false positives by fingerprint, pattern name, or file prefix; also generates baseline allowlist JSON from current findings
58
+ - **SARIF 2.1.0 export** for direct integration with GitHub Advanced Security and VS Code SARIF Viewer
59
+ - **Dark-theme HTML report** — standalone, zero external dependencies, collapsible context rows per finding
60
+ - **Pre-commit hook installer** — blocks commits when MEDIUM+ findings are detected
61
+ - **Semgrep rule export** — converts the full pattern database to a Semgrep-compatible YAML ruleset
62
+ - **Unified VSL client report** (HTML/PDF) via the shared `vampsec_report` module
63
+
64
+ ## Requirements
65
+
66
+ ```
67
+ pip install -r requirements.txt
68
+ ```
69
+
70
+ Runtime dependencies:
71
+
72
+ | Package | Version |
73
+ |---------|---------|
74
+ | `rich` | >= 13.7.0 |
75
+
76
+ Standard library only beyond `rich`: `re`, `os`, `math`, `pathlib`, `hashlib`, `json`, `argparse`, `subprocess`.
77
+
78
+ ## Installation
79
+
80
+ ```bash
81
+ git clone https://github.com/belky-me/vamp-secrets-scanner.git
82
+ cd vamp-secrets-scanner
83
+ pip install -r requirements.txt
84
+ ```
85
+
86
+ ## Usage
87
+
88
+ ```bash
89
+ python vamp_secrets_scanner.py --help
90
+ ```
91
+
92
+ ```
93
+ usage: vamp-secrets-scanner [-h] [-o FICHERO] [--html FICHERO] [--sarif FICHERO]
94
+ [--min-severity {CRITICAL,HIGH,MEDIUM,LOW}] [--only-critical]
95
+ [--all-extensions] [--max-depth N] [--no-entropy]
96
+ [--entropy-threshold BITS] [--exclude-dir DIR]
97
+ [--git-history] [--max-commits N]
98
+ [--allowlist FICHERO] [--generate-allowlist FICHERO]
99
+ [--install-hook] [--export-semgrep FICHERO]
100
+ DIRECTORIO
101
+ ```
102
+
103
+ ### Examples
104
+
105
+ **Scan the current directory (all severities):**
106
+ ```bash
107
+ python vamp_secrets_scanner.py .
108
+ ```
109
+
110
+ **Scan a repository including full Git commit history:**
111
+ ```bash
112
+ python vamp_secrets_scanner.py /path/to/repo --git-history
113
+ ```
114
+
115
+ **Report only CRITICAL and HIGH findings, export SARIF for GitHub Actions:**
116
+ ```bash
117
+ python vamp_secrets_scanner.py . --min-severity HIGH --sarif results.sarif
118
+ ```
119
+
120
+ **Generate a baseline allowlist to suppress known false positives in CI:**
121
+ ```bash
122
+ python vamp_secrets_scanner.py . --generate-allowlist baseline.json
123
+ ```
124
+
125
+ **Apply allowlist, export JSON and standalone HTML report:**
126
+ ```bash
127
+ python vamp_secrets_scanner.py . --allowlist baseline.json -o findings.json --html report.html
128
+ ```
129
+
130
+ **Limit Git history scan to the 100 most recent commits:**
131
+ ```bash
132
+ python vamp_secrets_scanner.py . --git-history --max-commits 100
133
+ ```
134
+
135
+ **Install a pre-commit hook that blocks commits on MEDIUM+ findings:**
136
+ ```bash
137
+ python vamp_secrets_scanner.py . --install-hook
138
+ ```
139
+
140
+ **Export all patterns as a Semgrep YAML ruleset:**
141
+ ```bash
142
+ python vamp_secrets_scanner.py . --export-semgrep vampsec_rules.yaml
143
+ ```
144
+
145
+ **Scan only CRITICAL findings, raising entropy threshold to reduce noise:**
146
+ ```bash
147
+ python vamp_secrets_scanner.py . --only-critical --entropy-threshold 5.2
148
+ ```
149
+
150
+ ## Output Formats
151
+
152
+ | Format | Flag | Description |
153
+ |--------|------|-------------|
154
+ | Console (Rich) | _(default)_ | Colored table + detailed panels for CRITICAL findings |
155
+ | JSON | `-o FILE` | Structured findings with summary counts, full context, and Git metadata |
156
+ | HTML | `--html FILE` | Dark-theme standalone report; rows expand to show source context |
157
+ | SARIF 2.1.0 | `--sarif FILE` | Compatible with GitHub Advanced Security, VS Code SARIF Viewer |
158
+ | Semgrep YAML | `--export-semgrep FILE` | Importable ruleset: `semgrep --config FILE DIR` |
159
+
160
+ ## Exit Codes
161
+
162
+ | Code | Meaning |
163
+ |------|---------|
164
+ | `0` | No findings at the selected severity level |
165
+ | `1` | One or more HIGH findings detected |
166
+ | `2` | One or more CRITICAL findings detected |
167
+ | `130` | Interrupted by user (Ctrl+C) |
168
+
169
+ ## Part of VampSecure Labs Toolkit
170
+
171
+ This tool is part of the **VampSecure Labs Security Toolkit** — a collection of research-grade security tools for authorized penetration testing and red/blue team exercises.
172
+
173
+ - Full toolkit: [github.com/belky-me](https://github.com/belky-me)
174
+ - Orchestrator: [github.com/belky-me/vamp-orchestrator](https://github.com/belky-me/vamp-orchestrator)
175
+
176
+ ---
177
+
178
+ © VampSecure Studios — VampSecure Labs Security Research Division
179
+ For authorized security testing only.
@@ -0,0 +1,151 @@
1
+ <h1 align="center">vamp-secrets-scanner</h1>
2
+ <p align="center">
3
+ <strong>Static secrets and credential scanner with Git history analysis and SARIF export</strong><br>
4
+ <em>VampSecure Labs · Security Research Division</em>
5
+ </p>
6
+
7
+ <p align="center">
8
+ <img src="https://img.shields.io/badge/python-3.10%2B-blue?style=flat-square&logo=python&logoColor=white">
9
+ <img src="https://img.shields.io/badge/platform-linux%20%7C%20macos-lightgrey?style=flat-square">
10
+ <img src="https://img.shields.io/badge/license-research%20only-red?style=flat-square">
11
+ <img src="https://img.shields.io/badge/VampSecure-Labs-8B0000?style=flat-square">
12
+ </p>
13
+
14
+ ---
15
+
16
+ ## Overview
17
+
18
+ `vamp-secrets-scanner` is a static analysis tool that detects hardcoded secrets, credentials, and sensitive data across source code repositories, configuration files, and directory trees. It combines a database of 80+ regex patterns covering cloud keys, payment tokens, PKI material, and PII with Shannon entropy analysis to surface high-entropy strings that elude pattern matching. A dedicated Git history scanner surfaces secrets that were removed from the working tree but remain reachable in commit history.
19
+
20
+ Designed for pre-deployment code reviews, penetration testing engagements, and CI/CD pipeline integration. All analysis is fully local — no data leaves the machine.
21
+
22
+ ## Features
23
+
24
+ - **80+ secret patterns** across cloud providers (AWS, GCP, Azure), VCS tokens (GitHub PAT, GitLab PAT), payment gateways (Stripe, PayPal, Braintree), messaging platforms (Slack, Telegram, Discord, Twilio), database DSNs, JWT secrets, PEM private keys, and WireGuard private keys
25
+ - **PII detection** for credit/debit card PANs (Visa, Mastercard, Amex, Discover), IBAN/BIC, CVV codes, US SSN, Spanish DNI/NIE/CIF/NUSS, and NHS numbers
26
+ - **Shannon entropy analysis** on assignment-context strings — catches generated secrets with no known format (configurable threshold, default 4.5 bits/symbol)
27
+ - **Git history scanning** — walks all commits across all branches, including deleted content, via `git log --all` + per-commit diffs
28
+ - **Four-tier severity model**: CRITICAL / HIGH / MEDIUM / LOW with deduplication by SHA-256 fingerprint
29
+ - **Allowlist support** to suppress known false positives by fingerprint, pattern name, or file prefix; also generates baseline allowlist JSON from current findings
30
+ - **SARIF 2.1.0 export** for direct integration with GitHub Advanced Security and VS Code SARIF Viewer
31
+ - **Dark-theme HTML report** — standalone, zero external dependencies, collapsible context rows per finding
32
+ - **Pre-commit hook installer** — blocks commits when MEDIUM+ findings are detected
33
+ - **Semgrep rule export** — converts the full pattern database to a Semgrep-compatible YAML ruleset
34
+ - **Unified VSL client report** (HTML/PDF) via the shared `vampsec_report` module
35
+
36
+ ## Requirements
37
+
38
+ ```
39
+ pip install -r requirements.txt
40
+ ```
41
+
42
+ Runtime dependencies:
43
+
44
+ | Package | Version |
45
+ |---------|---------|
46
+ | `rich` | >= 13.7.0 |
47
+
48
+ Standard library only beyond `rich`: `re`, `os`, `math`, `pathlib`, `hashlib`, `json`, `argparse`, `subprocess`.
49
+
50
+ ## Installation
51
+
52
+ ```bash
53
+ git clone https://github.com/belky-me/vamp-secrets-scanner.git
54
+ cd vamp-secrets-scanner
55
+ pip install -r requirements.txt
56
+ ```
57
+
58
+ ## Usage
59
+
60
+ ```bash
61
+ python vamp_secrets_scanner.py --help
62
+ ```
63
+
64
+ ```
65
+ usage: vamp-secrets-scanner [-h] [-o FICHERO] [--html FICHERO] [--sarif FICHERO]
66
+ [--min-severity {CRITICAL,HIGH,MEDIUM,LOW}] [--only-critical]
67
+ [--all-extensions] [--max-depth N] [--no-entropy]
68
+ [--entropy-threshold BITS] [--exclude-dir DIR]
69
+ [--git-history] [--max-commits N]
70
+ [--allowlist FICHERO] [--generate-allowlist FICHERO]
71
+ [--install-hook] [--export-semgrep FICHERO]
72
+ DIRECTORIO
73
+ ```
74
+
75
+ ### Examples
76
+
77
+ **Scan the current directory (all severities):**
78
+ ```bash
79
+ python vamp_secrets_scanner.py .
80
+ ```
81
+
82
+ **Scan a repository including full Git commit history:**
83
+ ```bash
84
+ python vamp_secrets_scanner.py /path/to/repo --git-history
85
+ ```
86
+
87
+ **Report only CRITICAL and HIGH findings, export SARIF for GitHub Actions:**
88
+ ```bash
89
+ python vamp_secrets_scanner.py . --min-severity HIGH --sarif results.sarif
90
+ ```
91
+
92
+ **Generate a baseline allowlist to suppress known false positives in CI:**
93
+ ```bash
94
+ python vamp_secrets_scanner.py . --generate-allowlist baseline.json
95
+ ```
96
+
97
+ **Apply allowlist, export JSON and standalone HTML report:**
98
+ ```bash
99
+ python vamp_secrets_scanner.py . --allowlist baseline.json -o findings.json --html report.html
100
+ ```
101
+
102
+ **Limit Git history scan to the 100 most recent commits:**
103
+ ```bash
104
+ python vamp_secrets_scanner.py . --git-history --max-commits 100
105
+ ```
106
+
107
+ **Install a pre-commit hook that blocks commits on MEDIUM+ findings:**
108
+ ```bash
109
+ python vamp_secrets_scanner.py . --install-hook
110
+ ```
111
+
112
+ **Export all patterns as a Semgrep YAML ruleset:**
113
+ ```bash
114
+ python vamp_secrets_scanner.py . --export-semgrep vampsec_rules.yaml
115
+ ```
116
+
117
+ **Scan only CRITICAL findings, raising entropy threshold to reduce noise:**
118
+ ```bash
119
+ python vamp_secrets_scanner.py . --only-critical --entropy-threshold 5.2
120
+ ```
121
+
122
+ ## Output Formats
123
+
124
+ | Format | Flag | Description |
125
+ |--------|------|-------------|
126
+ | Console (Rich) | _(default)_ | Colored table + detailed panels for CRITICAL findings |
127
+ | JSON | `-o FILE` | Structured findings with summary counts, full context, and Git metadata |
128
+ | HTML | `--html FILE` | Dark-theme standalone report; rows expand to show source context |
129
+ | SARIF 2.1.0 | `--sarif FILE` | Compatible with GitHub Advanced Security, VS Code SARIF Viewer |
130
+ | Semgrep YAML | `--export-semgrep FILE` | Importable ruleset: `semgrep --config FILE DIR` |
131
+
132
+ ## Exit Codes
133
+
134
+ | Code | Meaning |
135
+ |------|---------|
136
+ | `0` | No findings at the selected severity level |
137
+ | `1` | One or more HIGH findings detected |
138
+ | `2` | One or more CRITICAL findings detected |
139
+ | `130` | Interrupted by user (Ctrl+C) |
140
+
141
+ ## Part of VampSecure Labs Toolkit
142
+
143
+ This tool is part of the **VampSecure Labs Security Toolkit** — a collection of research-grade security tools for authorized penetration testing and red/blue team exercises.
144
+
145
+ - Full toolkit: [github.com/belky-me](https://github.com/belky-me)
146
+ - Orchestrator: [github.com/belky-me/vamp-orchestrator](https://github.com/belky-me/vamp-orchestrator)
147
+
148
+ ---
149
+
150
+ © VampSecure Studios — VampSecure Labs Security Research Division
151
+ For authorized security testing only.
@@ -0,0 +1,39 @@
1
+ [build-system]
2
+ requires = ["setuptools>=68", "wheel"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "vamp-secrets-scanner"
7
+ version = "2.1"
8
+ description = "Static secrets and credentials scanner with git history analysis, Shannon entropy detection and SARIF 2.1.0 output"
9
+ readme = "README.md"
10
+ license = { text = "MIT" }
11
+ requires-python = ">=3.10"
12
+ authors = [{ name = "VampSecure Studios", email = "contact@vampsecurestudios.com" }]
13
+ keywords = ["security", "secrets", "credentials", "scanner", "pentest", "sast", "sarif", "entropy"]
14
+ classifiers = [
15
+ "Development Status :: 5 - Production/Stable",
16
+ "Environment :: Console",
17
+ "Intended Audience :: Information Technology",
18
+ "Intended Audience :: System Administrators",
19
+ "License :: OSI Approved :: MIT License",
20
+ "Operating System :: OS Independent",
21
+ "Programming Language :: Python :: 3",
22
+ "Programming Language :: Python :: 3.10",
23
+ "Programming Language :: Python :: 3.11",
24
+ "Programming Language :: Python :: 3.12",
25
+ "Topic :: Security",
26
+ "Topic :: Software Development :: Quality Assurance",
27
+ ]
28
+ dependencies = ["rich>=13.7.0"]
29
+
30
+ [project.scripts]
31
+ vamp-secrets-scanner = "vamp_secrets_scanner:main"
32
+
33
+ [project.urls]
34
+ Homepage = "https://github.com/Vampsecure-Labs/vamp-secrets-scanner"
35
+ Repository = "https://github.com/Vampsecure-Labs/vamp-secrets-scanner"
36
+ "Bug Tracker" = "https://github.com/Vampsecure-Labs/vamp-secrets-scanner/issues"
37
+
38
+ [tool.setuptools]
39
+ py-modules = ["vamp_secrets_scanner"]
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,179 @@
1
+ Metadata-Version: 2.4
2
+ Name: vamp-secrets-scanner
3
+ Version: 2.1
4
+ Summary: Static secrets and credentials scanner with git history analysis, Shannon entropy detection and SARIF 2.1.0 output
5
+ Author-email: VampSecure Studios <contact@vampsecurestudios.com>
6
+ License: MIT
7
+ Project-URL: Homepage, https://github.com/Vampsecure-Labs/vamp-secrets-scanner
8
+ Project-URL: Repository, https://github.com/Vampsecure-Labs/vamp-secrets-scanner
9
+ Project-URL: Bug Tracker, https://github.com/Vampsecure-Labs/vamp-secrets-scanner/issues
10
+ Keywords: security,secrets,credentials,scanner,pentest,sast,sarif,entropy
11
+ Classifier: Development Status :: 5 - Production/Stable
12
+ Classifier: Environment :: Console
13
+ Classifier: Intended Audience :: Information Technology
14
+ Classifier: Intended Audience :: System Administrators
15
+ Classifier: License :: OSI Approved :: MIT License
16
+ Classifier: Operating System :: OS Independent
17
+ Classifier: Programming Language :: Python :: 3
18
+ Classifier: Programming Language :: Python :: 3.10
19
+ Classifier: Programming Language :: Python :: 3.11
20
+ Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Topic :: Security
22
+ Classifier: Topic :: Software Development :: Quality Assurance
23
+ Requires-Python: >=3.10
24
+ Description-Content-Type: text/markdown
25
+ License-File: LICENSE
26
+ Requires-Dist: rich>=13.7.0
27
+ Dynamic: license-file
28
+
29
+ <h1 align="center">vamp-secrets-scanner</h1>
30
+ <p align="center">
31
+ <strong>Static secrets and credential scanner with Git history analysis and SARIF export</strong><br>
32
+ <em>VampSecure Labs · Security Research Division</em>
33
+ </p>
34
+
35
+ <p align="center">
36
+ <img src="https://img.shields.io/badge/python-3.10%2B-blue?style=flat-square&logo=python&logoColor=white">
37
+ <img src="https://img.shields.io/badge/platform-linux%20%7C%20macos-lightgrey?style=flat-square">
38
+ <img src="https://img.shields.io/badge/license-research%20only-red?style=flat-square">
39
+ <img src="https://img.shields.io/badge/VampSecure-Labs-8B0000?style=flat-square">
40
+ </p>
41
+
42
+ ---
43
+
44
+ ## Overview
45
+
46
+ `vamp-secrets-scanner` is a static analysis tool that detects hardcoded secrets, credentials, and sensitive data across source code repositories, configuration files, and directory trees. It combines a database of 80+ regex patterns covering cloud keys, payment tokens, PKI material, and PII with Shannon entropy analysis to surface high-entropy strings that elude pattern matching. A dedicated Git history scanner surfaces secrets that were removed from the working tree but remain reachable in commit history.
47
+
48
+ Designed for pre-deployment code reviews, penetration testing engagements, and CI/CD pipeline integration. All analysis is fully local — no data leaves the machine.
49
+
50
+ ## Features
51
+
52
+ - **80+ secret patterns** across cloud providers (AWS, GCP, Azure), VCS tokens (GitHub PAT, GitLab PAT), payment gateways (Stripe, PayPal, Braintree), messaging platforms (Slack, Telegram, Discord, Twilio), database DSNs, JWT secrets, PEM private keys, and WireGuard private keys
53
+ - **PII detection** for credit/debit card PANs (Visa, Mastercard, Amex, Discover), IBAN/BIC, CVV codes, US SSN, Spanish DNI/NIE/CIF/NUSS, and NHS numbers
54
+ - **Shannon entropy analysis** on assignment-context strings — catches generated secrets with no known format (configurable threshold, default 4.5 bits/symbol)
55
+ - **Git history scanning** — walks all commits across all branches, including deleted content, via `git log --all` + per-commit diffs
56
+ - **Four-tier severity model**: CRITICAL / HIGH / MEDIUM / LOW with deduplication by SHA-256 fingerprint
57
+ - **Allowlist support** to suppress known false positives by fingerprint, pattern name, or file prefix; also generates baseline allowlist JSON from current findings
58
+ - **SARIF 2.1.0 export** for direct integration with GitHub Advanced Security and VS Code SARIF Viewer
59
+ - **Dark-theme HTML report** — standalone, zero external dependencies, collapsible context rows per finding
60
+ - **Pre-commit hook installer** — blocks commits when MEDIUM+ findings are detected
61
+ - **Semgrep rule export** — converts the full pattern database to a Semgrep-compatible YAML ruleset
62
+ - **Unified VSL client report** (HTML/PDF) via the shared `vampsec_report` module
63
+
64
+ ## Requirements
65
+
66
+ ```
67
+ pip install -r requirements.txt
68
+ ```
69
+
70
+ Runtime dependencies:
71
+
72
+ | Package | Version |
73
+ |---------|---------|
74
+ | `rich` | >= 13.7.0 |
75
+
76
+ Standard library only beyond `rich`: `re`, `os`, `math`, `pathlib`, `hashlib`, `json`, `argparse`, `subprocess`.
77
+
78
+ ## Installation
79
+
80
+ ```bash
81
+ git clone https://github.com/belky-me/vamp-secrets-scanner.git
82
+ cd vamp-secrets-scanner
83
+ pip install -r requirements.txt
84
+ ```
85
+
86
+ ## Usage
87
+
88
+ ```bash
89
+ python vamp_secrets_scanner.py --help
90
+ ```
91
+
92
+ ```
93
+ usage: vamp-secrets-scanner [-h] [-o FICHERO] [--html FICHERO] [--sarif FICHERO]
94
+ [--min-severity {CRITICAL,HIGH,MEDIUM,LOW}] [--only-critical]
95
+ [--all-extensions] [--max-depth N] [--no-entropy]
96
+ [--entropy-threshold BITS] [--exclude-dir DIR]
97
+ [--git-history] [--max-commits N]
98
+ [--allowlist FICHERO] [--generate-allowlist FICHERO]
99
+ [--install-hook] [--export-semgrep FICHERO]
100
+ DIRECTORIO
101
+ ```
102
+
103
+ ### Examples
104
+
105
+ **Scan the current directory (all severities):**
106
+ ```bash
107
+ python vamp_secrets_scanner.py .
108
+ ```
109
+
110
+ **Scan a repository including full Git commit history:**
111
+ ```bash
112
+ python vamp_secrets_scanner.py /path/to/repo --git-history
113
+ ```
114
+
115
+ **Report only CRITICAL and HIGH findings, export SARIF for GitHub Actions:**
116
+ ```bash
117
+ python vamp_secrets_scanner.py . --min-severity HIGH --sarif results.sarif
118
+ ```
119
+
120
+ **Generate a baseline allowlist to suppress known false positives in CI:**
121
+ ```bash
122
+ python vamp_secrets_scanner.py . --generate-allowlist baseline.json
123
+ ```
124
+
125
+ **Apply allowlist, export JSON and standalone HTML report:**
126
+ ```bash
127
+ python vamp_secrets_scanner.py . --allowlist baseline.json -o findings.json --html report.html
128
+ ```
129
+
130
+ **Limit Git history scan to the 100 most recent commits:**
131
+ ```bash
132
+ python vamp_secrets_scanner.py . --git-history --max-commits 100
133
+ ```
134
+
135
+ **Install a pre-commit hook that blocks commits on MEDIUM+ findings:**
136
+ ```bash
137
+ python vamp_secrets_scanner.py . --install-hook
138
+ ```
139
+
140
+ **Export all patterns as a Semgrep YAML ruleset:**
141
+ ```bash
142
+ python vamp_secrets_scanner.py . --export-semgrep vampsec_rules.yaml
143
+ ```
144
+
145
+ **Scan only CRITICAL findings, raising entropy threshold to reduce noise:**
146
+ ```bash
147
+ python vamp_secrets_scanner.py . --only-critical --entropy-threshold 5.2
148
+ ```
149
+
150
+ ## Output Formats
151
+
152
+ | Format | Flag | Description |
153
+ |--------|------|-------------|
154
+ | Console (Rich) | _(default)_ | Colored table + detailed panels for CRITICAL findings |
155
+ | JSON | `-o FILE` | Structured findings with summary counts, full context, and Git metadata |
156
+ | HTML | `--html FILE` | Dark-theme standalone report; rows expand to show source context |
157
+ | SARIF 2.1.0 | `--sarif FILE` | Compatible with GitHub Advanced Security, VS Code SARIF Viewer |
158
+ | Semgrep YAML | `--export-semgrep FILE` | Importable ruleset: `semgrep --config FILE DIR` |
159
+
160
+ ## Exit Codes
161
+
162
+ | Code | Meaning |
163
+ |------|---------|
164
+ | `0` | No findings at the selected severity level |
165
+ | `1` | One or more HIGH findings detected |
166
+ | `2` | One or more CRITICAL findings detected |
167
+ | `130` | Interrupted by user (Ctrl+C) |
168
+
169
+ ## Part of VampSecure Labs Toolkit
170
+
171
+ This tool is part of the **VampSecure Labs Security Toolkit** — a collection of research-grade security tools for authorized penetration testing and red/blue team exercises.
172
+
173
+ - Full toolkit: [github.com/belky-me](https://github.com/belky-me)
174
+ - Orchestrator: [github.com/belky-me/vamp-orchestrator](https://github.com/belky-me/vamp-orchestrator)
175
+
176
+ ---
177
+
178
+ © VampSecure Studios — VampSecure Labs Security Research Division
179
+ For authorized security testing only.
@@ -0,0 +1,10 @@
1
+ LICENSE
2
+ README.md
3
+ pyproject.toml
4
+ vamp_secrets_scanner.py
5
+ vamp_secrets_scanner.egg-info/PKG-INFO
6
+ vamp_secrets_scanner.egg-info/SOURCES.txt
7
+ vamp_secrets_scanner.egg-info/dependency_links.txt
8
+ vamp_secrets_scanner.egg-info/entry_points.txt
9
+ vamp_secrets_scanner.egg-info/requires.txt
10
+ vamp_secrets_scanner.egg-info/top_level.txt
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ vamp-secrets-scanner = vamp_secrets_scanner:main
@@ -0,0 +1 @@
1
+ vamp_secrets_scanner