Imported from xegeng/dsh-pentest-skills (
skills/pentest-tools/SKILL.md). Install upstream withnpx skills add xegeng/dsh-pentest-skills --skill pentest-tools. Copyright stays with the author.
工具链状态与执行约定 / pentest-tools
执行任何 pentest- 模块前,先遵守全局执行约定*(独立文件 CONVENTIONS.md):
- 长任务后台跑,不阻塞等待
- 命令输出
> run.log 2>&1,命令只回显退出码 - 结果读尾部摘要(
-Tail 15),不整读 - 汇报 = 数量 + 落盘路径 + 高价值 Top-5,不逐条转述
- 不反复轮询,完成通知后再处理
- 大文件不整读,用 grep/Tail
执行
python pentest.py tools
输出:各工具可用性(subfinder/httpx/ffuf/nuclei/sqlmap/observer_ward/urlfinder 等)、指纹库/模板状态、凭据配置、目录位置。
配置入口(集中配置)
core\config.py,全部支持环境变量覆盖:
| 配置 | 覆盖方式 |
|---|---|
| 工具目录 | PENTEST_TOOLS_DIR |
| 字典目录 | PENTEST_DICT_DIR |
| 单工具路径 | PENTEST_SUBFINDER / PENTEST_HTTPX / PENTEST_FFUF / PENTEST_NUCLEI / PENTEST_SQLMAP 等 |
| 凭据 | 环境变量或 .env(FOFA/Quake/鹰图/等) |
| 授权开关 | PENTEST_AUTHORIZED=1 |
输出目录
<输出目录>/<目标>/<模块>/ — 所有模块结果,JSON 供程序消费,文本供人阅读。
常见问题排查
- 工具 MISSING → 检查
PENTEST_TOOLS_DIR或tools/目录 - 中文乱码 → 通过 pwsh 调用
pentest.py(入口已强制 UTF-8) - 模块报"未授权" → 加
--authorized或设PENTEST_AUTHORIZED=1