3分钟部署Shannon:Docker跑通AI渗透测试环境
【免费下载链接】shannonShannon is an AI pentester for web applications and APIs. It analyzes your source code, identifies attack vectors, and executes real exploits to prove vulnerabilities before they reach production.项目地址: https://gitcode.com/GitHub_Trending/shan/shannon
Shannon 部署完成后,你得到一个本地即开即用的 AI 渗透测试环境:目标仓库只读挂载进临时容器,侦察、漏洞分析、真实利用、Markdown 报告全自动跑完,主机零污染。Shannon 是自主 AI 渗透测试器:读源码定位攻击面,再执行真实利用来证实漏洞,在 XBOW CTF 基准的 104 个挑战上成功率 96.15%。
环境自检
| 工具 | 最低版本 | 验证命令 |
|---|---|---|
| Docker(含 Compose v2 插件) | 20.10 | docker version && docker compose version |
| Node.js | 18 | node -v |
| pnpm | 参考项目文档 | pnpm -v |
未安装请参考官方文档。另外准备一家 AI 供应商的密钥(Anthropic、OpenAI、xAI、AWS Bedrock 任选,官方推荐 Claude 模型),setup 向导会用到。
部署主流程:三步把环境拉起来
README 还提供更轻的 npx 流程(免本地构建,自动从 Docker Hub 拉镜像);这里走源码构建,跑通后改配置、看日志都更直接。
克隆仓库并构建 worker
拉取代码后一次性装好依赖、构建出 CLI 与 worker 产物,为后面本地构建 Docker 镜像做准备。
git clone https://gitcode.com/GitHub_Trending/shan/shannon cd shannon pnpm install pnpm build✅ 构建无报错、根目录的./shannon入口可执行,就算就绪。
用 setup 向导配置 AI 凭据
交互式向导选供应商、填密钥、选模型,一次性写入~/.shannon/config.toml,之后不用再碰环境变量。
./shannon setup✅ 终端打印Configuration saved to ~/.shannon/config.toml并回显 provider 与 model,这步才算配好。
发起扫描,Docker 自动拉起容器
⚠️ Shannon 会真实执行利用,只对拥有或拿到书面授权的目标开扫,别指向生产环境。
一条命令完成检查凭据、构建 worker 镜像、启动 Temporal 编排容器,然后以后台方式启动渗透任务。
./shannon start -u https://your-app.com -r /path/to/your-repo✅ 依次出现Starting Shannon infrastructure...、Temporal is ready!,最后打印Scan started信息块(含目标、workspace 名、报告路径),容器就跑起来了。
首次运行与产出定位
步骤三的命令就是触发实际任务的动作:终端可以关掉,扫描在容器里继续。
- 实时进度:
./shannon logs <workspace>,或打开 Temporal 控制台 http://localhost:8233 - 完整一轮约 1~1.5 小时,取决于模型和应用复杂度
结果落在./workspaces/<workspace>/(npx 模式在~/.shannon/workspaces/):运行目录顶层只有最终报告Security-Assessment-Report.md,内部件都在隐藏目录.shannon/下——deliverables/ 存报告源文件与阶段分析,scratchpad/ 存截图,session.json 记录断点续扫状态。
你会看到什么:报告是 Markdown,只收录真实利用成功、带可复现 PoC 的漏洞,证不了的假设会被直接丢弃。急着想看成品的,先翻sample-reports/里 OWASP Juice Shop、c{api}tal API、crAPI 三份示例报告,那就是扫描跑完的样貌。
排障速查
- 启动卡在 "Timed out waiting for Temporal":编排容器没就绪,通常是 7233/8233 端口被其他进程占了 →
docker compose ps && docker compose logs temporal Repository not found at ./repos/...:裸仓库名只会在./repos/下找,或路径不存在、不是目录 →ls -la /path/to/your-repo- 启动扫描时报凭据缺失:setup 没跑过或
~/.shannon/config.toml被清了 →./shannon setup
第一次跑完打开工作区里的Security-Assessment-Report.md,你手里就是一份带 PoC 证据的渗透测试报告,而不是又一堆扫描告警。下一步:拿一个自建的 staging 应用(OWASP Juice Shop 很合适)把整条链路再走一遍,顺便用./shannon logs把全流程盯完。
【免费下载链接】shannonShannon is an AI pentester for web applications and APIs. It analyzes your source code, identifies attack vectors, and executes real exploits to prove vulnerabilities before they reach production.项目地址: https://gitcode.com/GitHub_Trending/shan/shannon
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考