Strix 测评:开源AI渗透测试工具,7.5k Stars但别急着上生产
30秒结论:Strix 是一个用AI驱动、面向Web应用的自动化渗透测试工具,开源免费、GitHub 7.5k Stars。值不值得用? 如果你在找一款能快速扫描常见漏洞(XSS、SQLi、SSRF等)、自动生成PoC并给出修复建议的工具,Strix值得一试。但它不是Burp Suite或Nessus的替代品——扫描深度有限,对复杂业务逻辑漏洞基本无能为力。适合谁? 独立开发者、小团队、安全初学者。不适合:需要PCI-DSS合规报告的企业、对误报率零容忍的生产环境。
核心功能:用AI跑渗透测试
Strix 的核心是:输入一个URL,它会自动爬取、识别端点、测试常见漏洞,并用LLM生成PoC和修复建议。
安装与启动
# 需要 Python 3.10+
git clone https://github.com/usestrix/strix.git
cd strix
pip install -r requirements.txt
# 配置 OpenAI API Key(也可以用本地模型)
export OPENAI_API_KEY="sk-xxxx"
# 快速扫描
python strix.py -u https://test-site.com
默认使用OpenAI GPT-4生成报告。如果你想省钱或离线使用,支持Ollama:
export LLM_PROVIDER=ollama
export OLLAMA_MODEL=llama3.1
python strix.py -u https://test-site.com
扫描一个真实靶场
我用 DVWA(Damn Vulnerable Web Application)做测试:
python strix.py -u http://127.0.0.1:8080 -c "PHPSESSID=abc123; security=low"
-c 传Cookie,因为DVWA需要登录。
输出示例(截取部分):
[+] Crawling: http://127.0.0.1:8080/vulnerabilities/sqli/
[+] Found 12 endpoints, 24 parameters
[+] Testing SQL Injection on id parameter...
[!] Potential SQLi detected: id=1' OR '1'='1
[+] Generating PoC...
[+] PoC: curl -X GET "http://127.0.0.1:8080/vulnerabilities/sqli/?id=1%27+OR+%271%27%3D%271&Submit=Submit"
[+] Risk: High | CWE-89
[+] Fix: Use prepared statements, e.g. in PHP: $stmt = $conn->prepare("SELECT * FROM users WHERE id = ?");
Strix 会输出JSON格式的报告到 reports/ 目录:
{
"target": "http://127.0.0.1:8080",
"scan_time": "2025-01-15T10:23:45Z",
"total_endpoints": 12,
"vulnerabilities": [
{
"type": "SQL Injection",
"endpoint": "/vulnerabilities/sqli/",
"parameter": "id",
"payload": "1' OR '1'='1",
"cwe": "CWE-89",
"risk": "High",
"fix": "Use prepared statements..."
}
]
}
自定义扫描策略
Strix 支持配置只测某些漏洞类型:
python strix.py -u https://test-site.com --only xss,sqli,ssrf
或者排除某些路径:
python strix.py -u https://test-site.com --exclude /logout,/static
性能测试:扫描速度和准确率
测试环境:MacBook Pro M1 Pro 16GB,目标:DVWA + 一个自建Node.js测试应用(20个端点,含5个故意漏洞)。
| 指标 | 数值 |
|---|---|
| 爬取+扫描耗时 | 3分42秒 |
| 发现端点数 | 18/20 |
| 发现漏洞 | 4/5 |
| 误报数 | 2 |
| 漏报数 | 1 |
| Token消耗(GPT-4) | 约12,000 tokens |
| 成本(GPT-4) | 约$0.36 |
漏掉的漏洞是一个 Blind SQLi(基于时间的),Strix 只做了简单的布尔盲注检测,没触发时间延迟的payload。误报的两个是:一个把正常的?id=1参数解析成了整数溢出,另一个把错误信息中的SQL语法提示当成了注入。
结论:扫描速度还行,准确率60%-70%水平,误报率偏高。
踩坑记录:真实遇到的问题
1. Cookie 处理有bug
Strix 的 -c 参数只接受 key=value 格式,不支持多个Cookie。如果你传 PHPSESSID=abc123; security=low,它会把 security=low 当成另一个参数而不是Cookie的一部分。
Workaround:手动改源码 strix/core/http_client.py 第45行,把 cookie_string 直接赋值给 session.cookies。
2. 对SPA应用几乎无效
Strix 的爬虫是基于 requests + BeautifulSoup,不会执行JavaScript。Vue/React 应用的路由和动态生成的DOM它抓不到。实测一个Vue SPA,只爬到了 index.html,没发现任何API端点。
Workaround:先用 Selenium 或 Playwright 导出站点地图,再喂给 Strix。
3. LLM 报告生成不稳定
当用 Ollama 的 llama3.1 时,生成的修复建议经常是废话:
Fix: Ensure all user inputs are sanitized.
这种建议等于没说。GPT-4 会给出具体代码示例,但成本高。实测用 qwen2:7b 更稳定,推荐:
export OLLAMA_MODEL=qwen2:7b
4. 并发扫描导致429
默认并发数16,扫一些有WAF的站点会被直接封IP。我加了个 --rate-limit 3 参数(需要手动修改源码 strix/core/scanner.py 第120行)。
横向对比:Strix vs 其他开源渗透测试工具
| 特性 | Strix | Nuclei | Sn1per | OWASP ZAP |
|---|---|---|---|---|
| 定价 | 免费 | 免费 | 免费 | 免费 |
| AI生成PoC | ✅ 自动生成 | ❌ 无 | ❌ 无 | ❌ 无 |
| AI修复建议 | ✅ 有 | ❌ 无 | ❌ 无 | ❌ 无 |
| 扫描深度 | 中 | 高(模板驱动) | 高 | 高 |
| 误报率 | 30%-40% | 10%-15% | 20% | 15%-20% |
| 爬虫能力 | 弱(无JS) | 弱(无JS) | 弱 | 强(有AJAX Spider) |
| 报告格式 | JSON | JSON/MD | HTML/TXT | HTML/XML |
| 社区支持 | 7.5k Stars | 20k+ Stars | 5k Stars | 10k+ Stars |
| 学习成本 | 低 | 中 | 中 | 高 |
| 适合场景 | 快速扫描+AI辅助 | 自动化扫描+CI | 全量扫描 | 深度分析+手动测试 |
Nuclei 是Strix最直接的竞品。区别在于:Nuclei 靠社区贡献的YAML模板(目前已超过5000个),覆盖漏洞类型更广、误报率更低。Strix 靠AI生成PoC,优点是零模板也能测,缺点是AI幻觉导致误报。
Sn1per 是全能型工具,集成了Nmap、Masscan、Nuclei等,扫描范围广但慢。Strix 更轻量。
OWASP ZAP 是工业级工具,支持主动扫描、被动扫描、WebSocket、API扫描,但配置复杂。Strix 开箱即用。
最终评价
| 维度 | 评分(满分10) | 说明 |
|---|---|---|
| 功能 | 6 | 覆盖常见漏洞,但深度不够 |
| 性能 | 7 | 扫描速度快,但爬虫弱 |
| 性价比 | 9 | 开源免费,用Ollama零成本 |
| 文档 | 5 | README太简单,很多功能没写 |
| 社区 | 7 | GitHub活跃,但Issue回复慢 |
总评:7.0/10
推荐场景
- 独立开发者:快速扫自己的个人项目,看看有没有低级漏洞
- 安全爱好者:学习渗透测试,观察AI怎么生成PoC
- CI/CD集成:在PR阶段跑一次Strix,作为快速安全检查(配合Nuclei一起用效果更好)
不推荐场景
- 企业安全审计:误报率太高,需要人工复核的成本大于收益
- 生产环境扫描:可能触发WAF封IP,且漏报严重
- 合规报告:Strix 不输出PCI-DSS/ISO 27001格式的报告
总结
Strix 是一个有趣的项目,把AI和渗透测试结合的想法很好。但现阶段它更像一个PoC工具,而不是生产级安全产品。如果你想要 最好的 AI工具 来做自动化安全测试,目前没有完美选择——Strix 是其中之一,但需要配合Nuclei、ZAP等传统工具一起用。
如果你刚接触渗透测试,Strix 可以作为入门工具,帮你理解常见的漏洞类型和修复方式。但别指望它替代人工测试。
最后的建议:如果你决定用Strix,一定要加 --rate-limit 3 或者自己控制并发,否则你的IP会被目标WAF拉黑——我亲身踩过的坑。
试用链接
- strix 官网: https://github.com/usestrix/strix
Top comments (0)