DilawarShafiq/redteam-arena
GitHub: DilawarShafiq/redteam-arena
一个全自动化、以 AI 对抗模型驱动的代码安全测试与合规审计平台,通过红蓝智能体多轮博弈发现漏洞并生成修复方案。
Stars: 4 | Forks: 0

**针对您的代码库的 AI 对抗性安全测试。**
[](https://pypi.org/project/redteam-arena/)
[](https://www.python.org/)
[](https://opensource.org/licenses/MIT)
[](https://github.com/DilawarShafiq/redteam-arena/actions/workflows/ci.yml)
[](https://pypi.org/project/redteam-arena/)
红队智能体攻击。蓝队智能体防御。完全自动化。

## 为什么选择它?
- **主动而非被动** — 像攻击者一样思考的 AI 智能体 24/7 全天候探测您的代码,而不是等待下一个 CVE。
- **一次运行实现攻击 + 防御** — 发现的每个漏洞都会立即获得缓解建议,因此您交付的是修复,而不仅仅是发现。
- **企业级审计** — 通过专门针对 SOC 2、ISO 27001、HIPAA、FedRAMP 等的合规性智能体,超越简单的漏洞利用。
- **零设置** — 指向一个目录,选择一个场景,即可获得报告。无需配置文件,无需基础设施,无需学习成本。
- **多提供商** — 开箱即用,支持 Claude、OpenAI、Gemini 和本地 Ollama 模型。
- **45+ 内置场景** — OWASP Top 10、AI 专属攻击、APT 攻击链以及高端企业合规框架。
## 快速开始
```
# 安装
pip install redteam-arena
# 设置您的 API key(默认为 Claude)
export ANTHROPIC_API_KEY=sk-ant-...
# 运行一场 battle
redteam-arena battle ./my-project --scenario sql-injection
```
### 您将看到
```
REDTEAM ARENA v0.0.4
Scenario: sql-injection | Target: ./my-project
==================================================
Round 1/5
----------------------------------------
RED AGENT (Attacker):
...streaming analysis...
BLUE AGENT (Defender):
...streaming mitigations...
Round 1: 3 finding(s), 3 mitigation(s)
==================================================
Battle Report Summary
==================================================
Rounds: 5 | Vulnerabilities: 8
Critical: 2 | High: 3 | Medium: 2 | Low: 1
Mitigations proposed: 7/8 (88%)
Full report: ./reports/battle-abc123.md
```
## CLI 参考
### `redteam-arena battle
`
针对目标代码库运行安全对抗。
| 选项 | 描述 | 默认值 |
|--------|-------------|---------|
| `-s, --scenario ` | 要运行的场景(必填) | — |
| `-r, --rounds ` | 对抗轮数 | `5` |
| `-p, --provider ` | LLM 提供商:`claude`、`openai`、`gemini`、`ollama` | 自动检测 |
| `-m, --model ` | 指定使用的模型 | 提供商默认 |
| `-f, --format ` | 报告格式:`markdown`、`json`、`sarif`、`html`、`compliance` | `markdown` |
| `-o, --output ` | 输出文件路径 | 自动生成 |
| `--agent-mode ` | 智能体焦点:`attacker`(默认)或 `auditor` | `attacker` |
| `--mock-llm` | 使用 mock LLM 进行测试/演示(快速且免费) | `false` |
| `--diff` | 仅扫描更改的文件(git diff) | `false` |
| `--auto-fix` | 将修复建议生成为一个分支 | `false` |
| `--fail-on ` | 如果发现严重性级别则非零退出:`critical`、`high`、`medium`、`low` | — |
| `--analyze` | 运行高级的横切分析 | `false` |
| `--pr-comment` | 将结果作为 GitHub PR 评论发布 | `false` |
```
# 3 轮 XSS 测试
redteam-arena battle ./webapp --scenario xss --rounds 3
# 完整审计(按顺序运行所有场景)
redteam-arena battle ./api --scenario full-audit
# CI 模式:发现 critical 级别问题时使构建失败
redteam-arena battle ./src --scenario sql-injection --fail-on critical
# 仅扫描已更改的文件
redteam-arena battle ./src --scenario secrets-exposure --diff
# 使用 OpenAI 代替 Claude
redteam-arena battle ./src --scenario xss --provider openai --model gpt-4o
# 运行 HIPAA/HITECH 医疗合规性审计
redteam-arena battle ./medical-app --scenario hipaa-hitech-readiness --agent-mode auditor --format compliance
# 用于 GitHub Code Scanning 的 SARIF 输出
redteam-arena battle ./src --scenario full-audit --format sarif -o results.sarif.json
```
### `redteam-arena list`
列出所有可用的场景。
```
redteam-arena list
redteam-arena list --tag owasp
redteam-arena list --tag ai-safety
```
### `redteam-arena watch `
监视目录中的文件更改并自动重新扫描。
```
redteam-arena watch ./src --scenario xss
```
### `redteam-arena benchmark`
运行检测准确性基准测试,以衡量您的提供商的有效性。
```
redteam-arena benchmark --suite owasp-web-basic
redteam-arena benchmark --list-suites
```
### `redteam-arena history`
查看过去的对抗结果、趋势和回归分析。
```
redteam-arena history
redteam-arena history --trends
redteam-arena history --regression --target ./src
```
### `redteam-arena dashboard`
生成包含丰富信息的 HTML 对抗历史仪表板。
```
redteam-arena dashboard --open-browser
```
### `redteam-arena serve`
启动 REST + WebSocket API 服务器。
```
pip install redteam-arena[server]
redteam-arena serve --port 3000
```
## 内置场景
### Web 安全(OWASP Top 10)
| 场景 | 描述 |
|----------|-------------|
| `sql-injection` | 查找数据库查询中的 SQL 注入向量 |
| `xss` | 检测跨站脚本漏洞 |
| `auth-bypass` | 查找身份验证和授权缺陷 |
| `secrets-exposure` | 检测硬编码的密钥和泄露的凭证 |
| `path-traversal` | 查找目录遍历和路径注入问题 |
| `ssrf` | 服务器端请求伪造漏洞 |
| `injection` | 常规注入缺陷(命令、LDAP、XML) |
| `broken-access-control` | 缺失或损坏的授权检查 |
| `crypto-failures` | 弱加密和不安全的数据处理 |
| `security-misconfiguration` | 配置错误的服务器、默认设置和权限 |
| `insecure-deserialization` | 不安全的对象反序列化 |
| `vulnerable-dependencies` | 已知有漏洞的第三方包 |
| `sensitive-disclosure` | 过多的错误消息和数据泄漏 |
### AI 与智能体安全
| 场景 | 描述 |
|----------|-------------|
| `prompt-injection` | 检测 LLM 应用中的提示词注入漏洞 |
| `data-poisoning` | 查找训练和 RAG 数据投毒风险 |
| `agent-goal-hijack` | 测试智能体系统是否存在目标劫持 |
| `excessive-agency` | 识别过度特权的 AI 智能体 |
| `system-prompt-leakage` | 查找系统提示词提取向量 |
| `memory-poisoning` | 检测持久性内存损坏攻击 |
| `tool-misuse` | 识别智能体链中不安全的工具使用 |
| `rogue-agents` | 测试未经授权的智能体行为 |
| `llm-misinformation` | 检测基于幻觉的安全风险 |
| `insecure-inter-agent-comms` | 不安全的智能体间通信 |
| `agentic-supply-chain` | 智能体 pipeline 中的供应链风险 |
| `llm-supply-chain` | 被破坏的模型和不安全的微调 |
| `human-agent-trust` | 人类与 AI 信任边界的失效 |
| `identity-privilege-abuse` | 智能体中的身份欺骗和权限提升 |
| `improper-output-handling` | 对 LLM 生成的输出处理不安全 |
| `unexpected-code-execution` | 通过 LLM 意外执行代码 |
| `vector-embedding-weakness` | 基于嵌入的检索中的漏洞 |
| `cascading-failures` | 多智能体系统中的故障传播 |
### 企业与合规
| 场景 | 描述 |
|----------|-------------|
| `apt-advanced-persistent-threat` | 模拟 ALPHV/BlackCat 风格的攻击链(LotL,MFA 绕过,横向移动) |
| `infrastructure-as-code` | 审计 Terraform、Kubernetes 和 Docker 的云配置错误 |
| `iso-42001-ai-compliance` | 针对 ISO/IEC 42001 人工智能管理体系进行审计 |
| `soc2-security-privacy` | 针对 SOC 2 信任服务标准(安全、隐私、日志记录)进行审计 |
| `fedramp-readiness` | 针对 FedRAMP / NIST 800-53 技术控制就绪情况进行审计 |
| `hipaa-hitech-readiness` | 美国医疗保健合规性审计(ePHI 安全和审计日志) |
| `hitrust-csf-compliance` | 高端医疗保健框架审计(DLP,设备信任) |
| `epcs-dea-compliance` | 针对受控物质电子处方 (EPCS) 的 DEA 法规 |
| `pci-dss-readiness` | 支付卡行业 (PCI DSS v4.0) 就绪情况审计 |
| `iso-27001-infosec.md` | 针对 ISO/IEC 27001 信息安全管理体系进行审计 |
| `cmmc-dod-readiness.md` | 针对 CMMC Level 2 (DoD) 安全要求进行审计 |
| `gdpr-ccpa-privacy.md` | 针对全球隐私法(GDPR/CCPA/ISO 27701)进行审计 |
## 工作原理
1. **读取** — RedTeam Arena 读取目标目录中的源文件。
2. **攻击** — 红队智能体根据选择的场景分析代码中的漏洞,生成包含严重性、文件位置和攻击向量的结构化发现。
3. **防御** — 蓝队智能体审查每个发现,并提出带有代码修复和置信度的具体缓解措施。
4. **报告** — 生成报告(Markdown、JSON、SARIF 或 HTML),包含所有发现、缓解措施和严重性摘要。
每次对抗运行多轮。在每一轮中,红队智能体根据之前的发现进行更深入挖掘,蓝队智能体则完善其防御。
## 编程 API
RedTeam Arena 的核心是完全可导入的,可在您自己的工具中使用:
```
import asyncio
from redteam_arena import (
BattleEngine,
BattleEngineOptions,
BattleConfig,
RedAgent,
BlueAgent,
ClaudeAdapter,
load_scenario,
generate_report,
)
async def main():
provider = ClaudeAdapter()
scenario_result = await load_scenario("sql-injection")
if not scenario_result.ok:
raise RuntimeError("Scenario not found")
config = BattleConfig(
target_dir="./my-project",
scenario=scenario_result.value,
rounds=3,
)
engine = BattleEngine(BattleEngineOptions(
red_agent=RedAgent(provider),
blue_agent=BlueAgent(provider),
config=config,
))
battle = await engine.run()
report = generate_report(battle)
print(report)
asyncio.run(main())
```
## 配置文件
可选地,将 `.redteamarena.yml` 添加到您的项目根目录:
```
# .redteamarena.yml
provider: claude # claude | openai | gemini | ollama
model: claude-sonnet-4-20250514
rounds: 5
format: markdown # markdown | json | sarif | html
```
## CI/CD 集成
### GitHub Actions
```
- name: RedTeam Arena Security Scan
run: |
pip install redteam-arena
redteam-arena battle ./src --scenario full-audit --fail-on high --format sarif -o security.sarif.json
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
- name: Upload SARIF results
uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: security.sarif.json
```
## 环境要求
- **Python** >= 3.10
- **API 密钥** 用于您选择的提供商:
- Claude(默认):`ANTHROPIC_API_KEY` — [在此获取](https://console.anthropic.com/)
- OpenAI:`OPENAI_API_KEY`
- Gemini:`GEMINI_API_KEY`
- Ollama:无需密钥(在本地运行)
## 安全性
要报告 RedTeam Arena 本身的安全漏洞,请参阅 [SECURITY.md](SECURITY.md)。
## 许可证
[MIT](LICENSE) — Muhammad Dilawar Shafiq (Dilawar Gopang)
**如果 RedTeam Arena 对您有用,请给它加星 — 这有助于其他人发现它。**
[](https://github.com/DilawarShafiq/redteam-arena)
[报告 bug](https://github.com/DilawarShafiq/redteam-arena/issues/new?template=bug_report.md) · [请求功能](https://github.com/DilawarShafiq/redteam-arena/issues/new?template=feature_request.md) · [贡献](CONTRIBUTING.md)
标签:AI智能体, CISA项目, Python, 安全测试, 攻击性安全, 文档结构分析, 无后门, 自动化渗透测试, 逆向工具