
CredsHunter - Credential Hunting scripts for Windows and Linux OS
credshunter 是一个只读的凭证查找工具,专为授权后渗透场景设计。它遍历一次主机,找出你真正可以 重用 的秘密——密码、密钥、哈希值和凭证文件——同时忽略只会增加噪音的云/SaaS 令牌。
两个兄弟脚本,行为一致:Linux 使用 credshunter.sh,Windows 使用 credshunter.ps1。
一个五阶段的漏斗,从 凭证存储位置 逐步缩小到 文件内部内容。每个阶段在完成后立即输出结果。
Stage 1 OS credential stores registry · GPP · histories · vaults · keys · other
Stage 2 Confirmed containers .kdbx · .ppk · .pfx · .keytab · other
Stage 3 High-value file types keys · .env · backups · DBs · captures · other
Stage 4 Suspicious filenames *password* · *secret* · *credential*
Stage 5 Content scan 70+ tuned regexes, one pass per file
阶段 1 和阶段 5 承担了主要工作;阶段 2–4 是快速的文件名/扩展名扫描。每个发现都会在到达你面前之前通过误报过滤器。
# Linux — full sweep, log to file
./credshunter.sh -p / -o loot.txt
# Targeted, skip the slow content scan
./credshunter.sh -p /var/www -p /home --no-stage5
# Windows — elevated sweep of C:\
.\credshunter.ps1 -Path C:\ -OutputFile loot.txt
# Web / DB box: also scan SQL & CSV dumps
.\credshunter.ps1 -Path D:\ -IncludeData
支持管道——添加 --no-color / -NoColor 后可以结合 grep 按等级过滤。
结果按五个等级分组,优先级从高到低。
只要有任何结果落入 CRITICAL / HIGH / KEY 等级,退出码即为 1——适用于 CI:
./credshunter.sh -p /etc && echo clean。
正则表达式和文件类型列表位于每个脚本顶部附近标注清晰的数组中——只需编辑一处,无需其他修改。
它会在主机上做任何修改吗? 不会。它只写入你指定的日志文件,从不访问网络,并且按 Ctrl-C 可干净退出。
为什么忽略 AWS / GitHub / Slack 令牌? 这是有意设计的——它们很少有助于网络内部移动,并且是误报的主要来源。本地的云 CLI 凭证文件仍会被列出。
阶段 5 感觉慢,或者漏掉了某个密码。
详细日志通常是代价——它受大小限制约束。通过 -p 缩小范围,使用 --no-stage5 跳过内容扫描,并确认目标未超过大小限制、未被排除路径、或扩展名不在阶段 5 的集合中(使用 -All 确保无误)。
查看 Wiki 文档 获取更多项目信息。
欢迎对项目做出贡献!
| 标签 | 含义 |
|---|
[CRITICAL] | 确认的凭证容器 |
[HIGH] | 可重用的密码 · 哈希值 · GPP cpassword |
[KEY] | 私钥或可读的 SAM / SYSTEM 配置单元 |
[INTEREST] | 值得查看的高价值文件 |
[NAME] | 可疑文件名——查看提示 |
| 想要… | 执行此操作 |
|---|
| 限定范围 | -p / -Path 包含,-x / -ExcludePath 排除 |
| 扫描所有文件 | -a / -All |
| 添加 SQL / CSV 转储 | -IncludeData (PowerShell) |
| 更改大小限制 | -m N / -MaxFileSizeMB N,或 --no-size-limit / -NoSizeLimit |
| 跳过某个阶段 | --no-stageN / -NoStageN |