Strix 实操指南:从安装到第一份渗透测试报告
项目卡片
- 项目:Strix[1]
- 状态:v1.0.4 / 35.8k Star / Apache 2.0 / Python
- 一句话判断:一行命令启动 AI 渗透测试,自动跑侦察、漏洞验证、PoC 生成,输出可复现的安全报告
这篇讲什么
不讲原理,只讲怎么用。
Strix 让 AI 代理在 Docker 沙箱里像真实黑客一样工作:跑 nmap、sqlmap、Caido、Playwright,自动发现漏洞并生成 PoC。本文覆盖安装配置、三种目标类型、三种扫描模式、CI/CD 集成、报告解读。看完能直接上手。
环境准备
两个硬性前提:
Docker 在运行:Strix 在 Docker 容器里执行测试,没 Docker 跑不起来
LLM API Key:支持 OpenAI、Anthropic、Google、Vertex AI、Bedrock、Azure,以及本地模型(Ollama、LMStudio)
推荐模型(官方建议):
| 提供商 | 模型 | 格式 |
|---|---|---|
| OpenAI | GPT-5.4 | openai/gpt-5.4 |
| Anthropic | Claude Sonnet 4.6 | anthropic/claude-sonnet-4-6 |
| Gemini 3 Pro Preview | vertex_ai/gemini-3-pro-preview |
常见坑点
我第一次跑的时候踩了几个坑,提前说一下:
- Docker 权限问题:Linux 下非 root 用户跑 Docker 需要加
sudo或把用户加到docker组 - 首次运行慢:第一次会拉 2-3 GB 的沙箱镜像,后面就快了
- 网络问题:如果在国内,拉镜像可能很慢,配个镜像加速器
- LLM 模型名写错:模型格式必须是
provider/model,比如openai/gpt-5.4,不是gpt-5.4 - 本地模型性能:用 Ollama 跑小模型效果会差很多,建议至少用 Claude Sonnet 或 GPT-4 级别
安装与配置
安装
curl -sSL https://strix.ai/install | bash或者用 pipx:
pipx install strix-agent首次运行会自动拉取 Docker 沙箱镜像,约 2-3 GB。
配置 LLM
export STRIX_LLM="openai/gpt-5.4" export LLM_API_KEY="your-api-key"可选配置:
export LLM_API_BASE="http://localhost:11434" # 本地模型(Ollama 等) export PERPLEXITY_API_KEY="your-key" # 启用搜索能力 export STRIX_REASONING_EFFORT="high" # 推理强度:high / medium配置自动保存到~/.strix/cli-config.json,不用每次设。
三种目标类型
扫描本地代码(白盒)
strix --target ./app-directory传入源码目录,Strix 会先做静态分析(semgrep + AST),再对高风险路径做动态验证。相当于 SAST + DAST 组合拳,由 AI 决定优先级。白盒模式效果最好——AI 能看到代码,能结合上下文判断哪些路径最危险。
扫描 GitHub 仓库
strix --target https://github.com/org/repo自动 clone 仓库到沙箱,分析代码后执行测试。适合评估开源项目的安全性。
黑盒测试线上应用
strix --target https://your-app.com纯黑盒——不看代码,直接对线上服务做侦察和漏洞探测。适合测试第三方应用或已部署的服务。
多目标同时测
源码 + 线上环境一起测,AI 交叉分析:
strix -t https://github.com/org/app -t https://your-app.com三种扫描模式
三种模式对应不同场景:
- quick:几分钟,适合 CI/CD 和 PR 检查。参数:
--scan-mode quick - standard:30-60 分钟,适合常规安全检查。参数:
--scan-mode standard - deep:1-4 小时,适合上线前审计和 Bug Bounty。参数:
--scan-mode deep(默认)
PR 差异扫描——只测本次改动:
strix -n --target ./ --scan-mode quick --scope-mode diff --diff-base origin/main认证测试
很多漏洞藏在登录后才能访问的功能里。用--instruction传入凭据:
strix --target https://your-app.com / --instruction "Perform authenticated testing using credentials: user:pass"更复杂的指令可以写到文件里:
strix --target https://your-app.com / --instruction-file ./rules-of-engagement.md聚焦测试范围
只测某个模块或某类漏洞:
# 只测 API 安全 strix --target api.your-app.com / --instruction "Focus on API security: broken authentication, mass assignment, rate limiting bypass" # 只测业务逻辑 strix --target https://your-app.com / --instruction "Focus on business logic flaws: race conditions, payment manipulation, workflow bypass"CI/CD 集成
GitHub Actions
name: strix-penetration-test on: pull_request: jobs: security-scan: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 with: fetch-depth: 0 - name: Install Strix run: curl -sSL https://strix.ai/install | bash - name: Run Strix env: STRIX_LLM: ${{ secrets.STRIX_LLM }} LLM_API_KEY: ${{ secrets.LLM_API_KEY }} run: strix -n -t ./ --scan-mode quick关键参数说明:
-n:非交互模式(Headless),不弹 TUI,适合 CI 环境和服务器--scan-mode quick:快速扫描,几分钟出结果- 退出码 0 = 安全,2 = 发现漏洞
PR 差异扫描会自动只检查变更文件,前提是fetch-depth: 0(获取完整 git 历史)。
Headless 模式实时输出漏洞发现到 stdout,扫描结束后输出完整报告。也可以单独用:
strix -n --target https://your-app.com读懂扫描报告
扫描结果保存在strix_runs/<run-name>目录,包含:
漏洞报告:每个漏洞带 CVSS 评分、OWASP 分类、复现步骤
PoC 脚本:可直接运行的漏洞验证代码
修复建议:AI 生成的补丁建议
SARIF 格式:可导入 GitHub Security、VS Code 等工具
每个漏洞报告的结构:
漏洞 ID: vuln-001 严重程度: Critical (CVSS 9.8) 分类: A03:2021 - Injection 目标: https://your-app.com/api/users?id=1 复现步骤: 1. **访问 /api/users?id=1' OR '1'='1** 2. **返回了全部用户数据** PoC: curl "https://your-app.com/api/users?id=1' OR '1'='1" 修复建议: 使用参数化查询替代字符串拼接报告里的 PoC 是可以直接跑的——这点比传统 SAST 工具强太多。传统工具告诉你"第 47 行可能有 SQL 注入",Strix 告诉你"用这个 payload 能从数据库拉出数据"。前者需要你验证,后者已经验证完了。
SARIF 格式导入 GitHub Security 后,PR 页面会直接显示漏洞详情,开发不用切工具就能看到。
Skills 系统
Strix 的 AI 代理加载"技能包"(Skills)来增强特定领域能力。每个代理最多加载 5 个 Skills。
内置技能分类:漏洞测试(XSS、SQLi、SSRF、IDOR、SSTI 等)、框架测试(Django、Express、FastAPI、Next.js)、第三方服务(Supabase、Firebase、Auth0、支付网关)、协议测试(GraphQL、WebSocket、OAuth)、工具手册(nmap、nuclei、httpx、ffuf、subfinder、sqlmap)、云安全(AWS、Azure、GCP、Kubernetes)。
Skills 是 Markdown 文件,社区可以通过 PR 贡献新技能。目前已经有 20 多个内置技能,覆盖常见的安全测试场景。
测试能力覆盖
Strix 覆盖 OWASP Top 10 及更多。简单列一下:注入攻击(SQL、NoSQL、OS 命令、SSTI)、访问控制缺陷(IDOR、权限提升)、服务端漏洞(SSRF、XXE、反序列化、RCE)、客户端攻击(XSS、原型污染、CSRF)、业务逻辑漏洞(竞态条件、支付绕过)、认证与会话(JWT 攻击、会话固定)、API 安全(批量赋值、限流绕过)。
实际跑起来,它会根据目标的技术栈自动选择测试方向。比如检测到 Django 应用,会加载 Django 相关的 Skills;检测到 GraphQL 端点,会加载 GraphQL 测试技巧。
实测数据
Strix 在 XBEN 基准测试(104 道 Web 安全 CTF 挑战)中达到 96% 成功率(100/104)。具体来说:简单难度 45/45(100%),中等难度 49/51(96%),困难难度 6/8(75%)。
平均解题时间约 19 分钟,100 道题总成本约 $337。这个数据说明它在实际漏洞发现上是有真本事的,不是只会纸上谈兵。
成本估算
每次扫描消耗 LLM token,成本取决于目标复杂度和扫描模式:
- quick 模式:$0.5-2
- standard 模式:$2-10
- deep 模式:$5-20+
我自己的经验:先用 quick 模式跑一个简单项目,花了几毛钱,确认流程没问题。然后用 deep 模式跑真实项目,花了大概 $8,发现了 3 个中等风险漏洞。对于一个中型项目来说,这个成本比请人做一次渗透测试便宜太多了。
常见问题
Q:Docker 没运行会怎样?
A:报错退出。确保 Docker Desktop 或 dockerd 在运行。
Q:能测本地开发环境(localhost)吗?
A:可以。Strix 的 Docker 沙箱通过host.docker.internal访问宿主机网络。
Q:扫描结果能导入其他工具吗?
A:支持 SARIF 格式,可导入 GitHub Security、VS Code、Snyk 等。
Q:能自定义扫描规则吗?
A:通过--instruction或--instruction-file传入自定义指令,控制测试方向和范围。
Q:支持本地模型吗?
A:支持。设置LLM_API_BASE指向 Ollama 或 LMStudio 地址即可。
总结
几个关键点:
- 白盒测试(传源码)效果最好,AI 能结合代码上下文判断风险
- CI/CD 集成用 quick 模式 +
-n参数,几分钟出结果 - 先用便宜的模型试水,确认流程跑通再换高质量模型
- 扫描报告带 PoC,可以直接给开发看怎么修
如果你的团队需要在开发流程里嵌入安全检查,Strix 值得花一个下午试一试。它不会找到所有漏洞——深度业务逻辑漏洞、需要多步推理的复杂攻击链,它可能漏掉。但它能抓住那些"只要去试就能试出来"的漏洞。而现实是,大多数安全事件的根源,恰恰就是这类漏洞。
相关资源
- Strix 文档[2]
- GitHub 仓库[3]
- Strix 平台[4](云端版,无需本地安装)
这里会继续拆真实可用的开发者工具:少讲概念,多看入口、成本和坑点。你只需要判断一件事——它值不值得放进自己的工作流。
引用链接
[1]Strix:https://github.com/usestrix/strix
[2]Strix 文档:https://docs.strix.ai
[3]GitHub 仓库:https://github.com/usestrix/strix
[4]Strix 平台:https://app.strix.ai