lameiro0x/credential-audit-tool
GitHub: lameiro0x/credential-audit-tool
一款纯 Python 编写的本地离线凭据安全审计工具,通过只读扫描检测文件系统中的硬编码密钥、凭据残留和复用等风险,并输出带缓解建议的结构化报告。
Stars: 0 | Forks: 0
# Credential Audit Tool
Credential Audit Tool 是一款使用 Python 编写的本地离线安全审计工具,用于检测文件系统上不安全的凭据处理和敏感信息泄露风险。
它严格专注于**检测和风险说明**,而非漏洞利用。
本项目旨在作为一个**安全工程作品集项目**,适合蓝队、SOC 和初级渗透测试岗位。
## 本工具的功能
Credential Audit Tool 会分析目标目录并报告与凭据相关的风险,包括:
- 文件中硬编码的敏感信息
- 不安全的凭据残留(哈希值)
- 包含凭据材料的全局可读文件
- 跨文件和环境变量的凭据复用
- 常见的泄露 API 密钥模式(例如 AWS、GitHub)
所有检测结果均包含:
- 风险说明
- 真实的滥用场景
- 具备可操作性的缓解指南
本工具是**只读的**、**离线的**且**确定性的**。
## 本工具不会执行的操作
本工具特意**不**会:
- 破解或暴力破解凭据
- 对照外部服务验证敏感信息
- 执行任何形式的漏洞利用
- 修改文件或系统状态
- 访问网络
其目的是**识别风险**,而不是攻击系统。
## 安装说明
需要 Python 3。
未使用任何外部依赖。
```
git clone https://github.com//credential-audit-tool.git
cd credential-audit-tool
```
## 运行说明
基本扫描:
```
python3 auditor.py /path/to/scan
```
排除路径或文件模式:
```
python3 auditor.py . --exclude ".git/*"
```
禁用特定的扫描器:
```
python3 auditor.py . --no-env --no-perms
```
导出 JSON 报告:
```
python3 auditor.py . --json-out report.json
```
## 示例输出(已脱敏)
```
Credential Audit Tool Report
Executive Summary
Files scanned: 14
Files skipped: 61
Total findings: 5
Findings by severity: HIGH 1, MEDIUM 4
[HIGH]
HARDCODED_SECRET
Location: test/test.txt:1
Risk: Plaintext secrets can be exfiltrated and reused
Mitigation: Remove the secret and rotate credentials
```
所有证据均已脱敏。敏感信息绝不会完全暴露。
## JSON 输出
JSON 输出采用**稳定且带版本的 schema**,并包含:
- 扫描元数据(工具版本、时间戳、根路径)
- 执行摘要
- 结构完整的检测结果,适合自动化或进一步分析
这使得该工具可用于 CI pipeline 或安全审查工作流中。
## 项目结构
```
credential-audit-tool/
├── auditor.py
├── scanners/
│ ├── base.py
│ ├── file_scan.py
│ ├── env_scan.py
│ ├── perm_scan.py
│ └── reuse_check.py
├── report/
│ ├── formatter.py
│ └── json_writer.py
└── test/
├── test.txt
└── hash_test.txt
```
## 本工具的开发初衷
凭据泄露仍然是导致安全事件的最常见原因之一。
开发此工具是为了演示如何:
- 负责任地检测与凭据相关的风险
- 通过结合上下文的启发式算法来减少误报
- 清晰且合乎伦理地传达安全检测结果
它体现了**防御性安全思维**,优先考虑清晰度、准确性以及安全的报告机制。
标签:Python, StruQ, 凭据检测, 微调策略, 无后门, 逆向工具, 静态扫描