GH05TCREW/pentestagent
GitHub: GH05TCREW/pentestagent
一个基于大语言模型的渗透测试代理框架,支持自主执行安全测试任务和多智能体协作。
Stars: 1704 | Forks: 363

# 渗透测试代理
### AI 渗透测试
[](https://www.python.org/) [](LICENSE.txt) [](https://github.com/GH05TCREW/pentestagent/releases) [](https://github.com/GH05TCREW/pentestagent) [](https://github.com/GH05TCREW/pentestagent)
https://github.com/user-attachments/assets/a67db2b5-672a-43df-b709-149c8eaee975
## 环境要求
- Python 3.10+
- OpenAI、Anthropic 或其他 LiteLLM 支持的提供商的 API 密钥
## 安装
```
# 克隆
git clone https://github.com/GH05TCREW/pentestagent.git
cd pentestagent
# 设置(创建虚拟环境,安装依赖)
.\scripts\setup.ps1 # Windows
./scripts/setup.sh # Linux/macOS
# 或手动
python -m venv venv
.\venv\Scripts\Activate.ps1 # Windows
source venv/bin/activate # Linux/macOS
pip install -e ".[all]"
playwright install chromium # Required for browser tool
```
## 配置
在项目根目录创建 `.env` 文件:
```
ANTHROPIC_API_KEY=sk-ant-...
PENTESTAGENT_MODEL=claude-sonnet-4-20250514
```
或者对于 OpenAI:
```
OPENAI_API_KEY=sk-...
PENTESTAGENT_MODEL=gpt-5
```
任何 [LiteLLM-supported model](https://docs.litellm.ai/docs/providers) 均可。
## 运行
```
pentestagent # Launch TUI
pentestagent -t 192.168.1.1 # Launch with target
pentestagent --docker # Run tools in Docker container
```
## Docker
在 Docker 容器中运行工具,以实现隔离并预装渗透测试工具。
### 选项 1:拉取预构建镜像(最快)
```
# 包含 nmap、netcat、curl 的基础镜像
docker run -it --rm \
-e ANTHROPIC_API_KEY=your-key \
-e PENTESTAGENT_MODEL=claude-sonnet-4-20250514 \
ghcr.io/gh05tcrew/pentestagent:latest
# 包含 metasploit、sqlmap、hydra 等工具的 Kali 镜像
docker run -it --rm \
-e ANTHROPIC_API_KEY=your-key \
ghcr.io/gh05tcrew/pentestagent:kali
```
### 选项 2:本地构建
```
# 构建
docker compose build
# 运行
docker compose run --rm pentestagent
# 或使用 Kali
docker compose --profile kali build
docker compose --profile kali run --rm pentestagent-kali
```
该容器运行 PentestAgent,并可访问 Linux 渗透测试工具。智能体可以通过终端工具直接使用 `nmap`、`msfconsole`、`sqlmap` 等。
需要安装并运行 Docker。
## 模式
PentestAgent 有三种模式,可通过 TUI 中的命令访问:
| 模式 | 命令 | 描述 |
|------|---------|-------------|
| 辅助 | (默认) | 与智能体聊天。由你控制流程。 |
| 智能体 | `/agent
` | 自主执行单个任务。 |
| 团队 | `/crew ` | 多智能体模式。编排者生成专门的工作者。 |
### TUI 命令
```
/agent Run autonomous agent on task
/crew Run multi-agent crew on task
/target Set target
/tools List available tools
/notes Show saved notes
/report Generate report from session
/memory Show token/memory usage
/prompt Show system prompt
/mcp Visualizes or adds a new MCP server.
/clear Clear chat and history
/quit Exit (also /exit, /q)
/help Show help (also /h, /?)
```
按 `Esc` 停止正在运行的智能体。按 `Ctrl+Q` 退出。
## 攻击剧本
PentestAgent 包含用于黑盒安全测试的预构建**攻击剧本**。剧本定义了特定安全评估的结构化方法。
**运行剧本:**
```
pentestagent run -t example.com --playbook thp3_web
```

## 工具
PentestAgent 包含内置工具,并支持 MCP(模型上下文协议)以实现扩展性。
**内置工具:** `terminal`、`browser`、`notes`、`web_search`(需要 `TAVILY_API_KEY`)
### MCP 集成
PentestAgent 支持 MCP(模型上下文协议)服务器。配置 `mcp_servers.json` 以使用任何预期的 MCP 服务器。示例
配置(放置在 `mcp_servers.json` 下):
```
{
"mcpServers": {
"nmap": {
"command": "npx",
"args": ["-y", "gc-nmap-mcp"],
"env": {
"NMAP_PATH": "/usr/bin/nmap"
}
}
}
}
```
### CLI 工具管理
```
pentestagent tools list # List all tools
pentestagent tools info # Show tool details
pentestagent mcp list # List MCP servers
pentestagent mcp add [args...] # Add MCP server
pentestagent mcp test # Test MCP connection
```
## 知识库
- **RAG:** 将方法论、CVE 或字典文件放入 `pentestagent/knowledge/sources/` 以进行自动上下文注入。
- **笔记:** 智能体将发现保存到 `loot/notes.json`,包含类别(`credential`、`vulnerability`、`finding`、`artifact`)。笔记在会话间持久保存,并注入到智能体上下文中。
- **影子图谱:** 在团队模式下,编排者从笔记构建知识图谱,以得出战略见解(例如,“我们拥有主机 X 的凭据”)。
## 项目结构
```
pentestagent/
agents/ # Agent implementations
config/ # Settings and constants
interface/ # TUI and CLI
knowledge/ # RAG system and shadow graph
llm/ # LiteLLM wrapper
mcp/ # MCP client and server configs
playbooks/ # Attack playbooks
runtime/ # Execution environment
tools/ # Built-in tools
```
## 开发
```
pip install -e ".[dev]"
pytest # Run tests
pytest --cov=pentestagent # With coverage
black pentestagent # Format
ruff check pentestagent # Lint
```
## 法律声明
仅在你拥有明确授权的系统上使用。未经授权的访问是非法的。
## 许可证
MIT
标签:AI代理, CISA项目, Claude, CVE检测, DLL 劫持, Docker, GPT, LiteLLM, Python, TUI, 人工智能, 大语言模型, 安全测试, 安全防御评估, 密码管理, 插件系统, 攻击性安全, 攻击模拟, 数据展示, 无后门, 漏洞管理, 特征检测, 用户模式Hook绕过, 红队, 结构化查询, 网络安全, 自动化安全, 自动化攻防, 请求拦截, 逆向工具, 隐私保护, 驱动签名利用, 黑盒测试