一个小巧、独立的自主渗透测试代理,外加一个专门构建的、用于对其运行测试的易受攻击目标。旨在端到端地展示 AI 渗透测试代理的实际工作方式——不是黑盒,而只是一个 plan→act→judge 循环、少量通用技能、一个否决破坏性操作的门控,以及一个可在公共模型和本地模型之间切换而无需改动其他任何内容的提供方层。
没有框架,没有魔法。每一部分都是纯 Python 代码,你几分钟内就能读完。
pentest-agent/ —— 代理本身。从这里开始;其 README 详细解释了架构(orchestrator、gate、skills、judge)。vulntarget/ —— 一个小型、故意存在漏洞的电子商务 API(SQL 注入、IDOR、JWT alg=none、业务逻辑价格篡改),用于对代理运行测试。代理并未硬编码针对它——它也曾针对真实世界的实验环境进行过实况运行——但这是在你自己机器上端到端看到它工作的最快方式。cd vulntarget
python3.13 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
python app.py # serves on http://localhost:5000
在另一个终端中:
cd pentest-agent
python3.13 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env # fill in ANTHROPIC_API_KEY
python main.py --target http://localhost:5000 --model claude
在终端中观察它逐步推理、行动并得到验证。
MIT —— 参见 LICENSE。
Gabriel Franco