Strix 本地部署实战:源码安装、配置详解到首次漏洞扫描
【免费下载链接】strixOpen-source AI penetration testing tool to find and fix your app’s vulnerabilities.项目地址: https://gitcode.com/GitHub_Trending/strix/strix
Strix 是一个开源的 AI 渗透测试工具:多智能体像真实渗透工程师一样动态运行你的应用代码,找到漏洞后用真实 PoC 验证,而不是像静态扫描那样只给一堆可疑行号。读完这篇文章,你能在本地完成源码安装、环境配置和第一次完整扫描,并把流程接进自己的项目或 CI 里。
源码安装与依赖准备
环境要求一句话带过:Python 3.12 及以上、一个正在运行的 Docker(沙箱依赖它)、任意受支持 LLM 提供商的 API 密钥。下面这段流程把仓库拉到本地并装进独立虚拟环境,大约两分钟。
git clone https://gitcode.com/GitHub_Trending/strix/strix cd strix python3 -m venv .venv source .venv/bin/activate pip install -e . strix --helpstrix --help能正常打印用法,就说明依赖装齐了。跑不起来先查python3 --version,低于 3.12 的依赖会直接安装失败。
最小可运行配置
Strix 只认两个必填项:模型名和密钥。
export STRIX_LLM="openai/gpt-5.4" export LLM_API_KEY="sk-..."STRIX_LLM是 LiteLLM 格式,anthropic/claude-sonnet-4-6这类写法同理。配置过一次之后,Strix 会把它存到~/.strix/cli-config.json,后面的终端不用再重复 export。
首次扫描就这样发起:
strix --target ./some-app-dir首次运行会自动拉取沙箱 Docker 镜像,稍等一两分钟是正常现象;结果按运行名落在strix_runs/下。运行中按esc暂停、ctrl-q退出。跑完后你会看到类似下图的终端面板:漏洞报告带 CVSS 评分、复现步骤和确认状态。
关键环境变量逐项说明
| 变量 | 默认值 | 含义与调整建议 |
|---|---|---|
STRIX_LLM | 无(必填) | LiteLLM 格式模型名,如openai/gpt-5.4 |
LLM_API_KEY | 无(必填) | 密钥;本地模型或 Vertex/Bedrock 这类走云鉴权的可省 |
STRIX_REASONING_EFFORT | high | 推理力度,low到max可调;quick 模式自动降为medium,省钱从这入手 |
LLM_TIMEOUT | 300 | 单次模型请求超时秒数,大上下文模型建议调到600 |
LLM_API_BASE | 无 | 指向本地模型(Ollama、LM Studio)或自建网关的地址 |
PERPLEXITY_API_KEY | 无 | 开启扫描中的实时联网搜索 |
STRIX_IMAGE | 官方沙箱镜像 | 自建或离线环境换成内部镜像地址 |
STRIX_SANDBOX_EXECUTION_TIMEOUT | 120 | 沙箱内单条命令最长执行秒数,跑重型 payload 时调大 |
⚠️ 注意:不想把使用数据发出去的话,设STRIX_TELEMETRY=0即可关闭遥测,这一项默认是开的。完整清单在仓库内的 docs/advanced/configuration.mdx。
如果你想扫描本地代码:白盒多目标
把源码和线上地址一起传,agent 会先做白盒阅读再动态验证,效果最好:
strix -t ./app -t https://staging.example.com --instruction "Use credentials: user:pass"⚠️ 这里有个坑:本地目录会以可写方式挂进沙箱,agent 修复验证时会动你的真实文件(.git除外)。扫描前git commit或git stash,不然工作区会被改得稀碎。
如果你想扫 API:交给 OpenAPI 或 Postman 集合
strix -t ./openapi.yaml -t https://api.example.com--target同时接受 OpenAPI 文件、Postman 导出文件,甚至postman://<collection-id>在线拉取。指定基址后,Strix 直接按声明的端点逐个测,不用靠爬站发现接口,覆盖比黑盒爬取完整得多。
如果你想在 CI 里卡 PR:无头 quick 模式
-n是 headless 开关,适合挂进流水线。GitHub Actions 里这样接:
- name: Install Strix run: pipx install strix-agent - name: Run quick security scan env: STRIX_LLM: ${{ secrets.STRIX_LLM }} LLM_API_KEY: ${{ secrets.LLM_API_KEY }} run: strix -n -t ./ --scan-mode quick⚠️ 注意退出码约定:0表示干净,2表示发现漏洞,1才是执行失败。想卡合并就靠这个2。CI 里 quick 模式还会自动把扫描范围收敛到本次改动的文件;拉不出 diff 时,给 checkout 加fetch-depth: 0或显式传--diff-base。
扫描结果怎么看
strix view这条命令把最近一次运行的数据从本地磁盘读出来,起一个只绑定127.0.0.1的服务并打开带 token 的私有链接。没有账号、没有上传,dashboard 里能看到漏洞清单、agent 协作图,甚至给进行中的扫描追加指令。要跨机器访问就加--host 0.0.0.0 --port 8080,但那个 token 等同于数据访问权,只给可信的人,端口记得用防火墙收住。
进阶与延伸
CI 里想省 token,可以给--scope-mode传diff,强制只看变更文件;--max-budget 25 --max-turns 300这种写法能给整场扫描设美元预算和轮数上限。想给 agent 接自己的外部工具,往~/.strix/mcp-servers.json里加 MCP 服务器即可,接不上会自动跳过、不会弄崩扫描。全部参数在 docs/usage/cli.mdx。
跨场景的高频坑最后收三条。Docker 必须活着:没启动时首次扫描会卡在拉镜像环节,先docker ps确认再跑。本地目录扫描前提交工作区,原因前面说过,值得重复。授权红线:Strix 会真实攻击你指给它的一切,只对你自有或拿到书面授权的系统跑,这点没有商量余地。
【免费下载链接】strixOpen-source AI penetration testing tool to find and fix your app’s vulnerabilities.项目地址: https://gitcode.com/GitHub_Trending/strix/strix
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考