Skip to content

v1.2.0 — 浏览器截图证据链

Choose a tag to compare

@hack-umbrella hack-umbrella released this 11 Sep 14:08
· 32 commits to llm since this release

新能力:pentest_shot 浏览器截图证据链

挖到漏洞后过代理截图,产出「截图 + 原始请求包 + 可复现脚本」三件套——报告有图有真相,不再是纯文本。

Playwright(本机 Chrome, headless=new) --proxy--> mitmproxy :8081 --upstream--> Burp :8080 --> 目标
        └─ 携带 X-Pentest-Evidence: <runId>          └─ 按 runId 落原始请求/响应(索引 + HAR)

工具

  • pentest_shot({ url, findingId?, label?, steps?, fullPage?, headers?, cookies?, proxy? })
    • steps 支持 goto/fill/click/press/waitForSelector/wait/screenshot/hover/select/evaluate
    • 自动拉起 mitmproxy 代理链(已在跑则不重复启动),上游默认转发 Burp(PENTEST_SHOT_UPSTREAM 可改/置空直连)
    • 返回 evidence 数组,原样传给 pentest_add_finding / pentest_submit

证据与呈现

  • 产出落 $DSH_HOME/storages/evidence/<findingId>/:.png + .http(原始请求/响应)+ .shot.mjs(可复现 Playwright 脚本)
  • 记录层 finding.evidence[] 贯通投影/存储/报告,报告 Markdown 自动嵌图
  • Web 漏洞 tab 新增证据墙(缩略图 → 点击放大);只读路由 GET /api/pipadeep-pentest/evidence?path=…(限证据目录,防越权)

依赖(本机)

npm i -g playwright(+ Chrome)、brew install mitmproxy;缺失时工具返回明确报错。

测试

  • npm test:lossless-JSON 契约(覆盖 evidence)+ pentest_shot 端到端集成(截图 + 原始包 + 脚本)7/7 通过
  • 实测:勾选 finding.evidence → 投影 → Web 证据墙缩略图实际加载(1440px);越权读 /etc/passwd 返回 403