Strix
一句话简介
Strix 是一个基于 Python 的开源安全测试与漏洞扫描工具,提供自动化的渗透测试与代码审计能力,帮助开发者和安全团队识别系统风险。
标签
适用应用场景
- Web 应用渗透测试
- CI/CD 安全流水线集成
- 开源项目漏洞扫描
- 代码安全审计
README 中文摘要
Strix 项目概览
Strix 是一套开源的自主式 AI 渗透测试代理,能够像真实攻击者一样动态执行代码、定位漏洞,并通过真实可用的 PoC(Proof of Concept,概念验证利用代码)加以验证。它面向开发者和安全团队,主打快速、精准的安全测试,避免传统静态分析工具的高误报率,也无需人工渗透测试的高昂成本。
核心能力
- 完整的渗透测试工具链:开箱即用的侦察、利用与验证
- 多代理协同:以 AI 红队形式协作、分工执行任务
- 真实利用验证:产出可运行的 PoC,而非基于规则的误报
- 面向开发者的 CLI:给出可操作的修复建议
- 自动修复与报告生成:自动产出补丁与符合审计要求的渗透测试报告
典型使用场景
- 应用安全测试:识别并验证关键漏洞
- 快速渗透测试:数小时内完成原本需要数周的工作
- 漏洞赏金自动化:自动生成 PoC,加速提交报告
- CI/CD 集成:在流水线中阻断漏洞进入生产环境
快速开始
前置条件: Docker(运行中)、任意受支持 LLM 提供商的 API Key(OpenAI、Anthropic、Google 等)。
# 安装 Strix
curl -sSL https://strix.ai/install | bash
# 配置 AI 提供方
export STRIX_LLM="openai/gpt-5.4"
export LLM_API_KEY="your-api-key"
# 执行首次安全评估
strix --target ./app-directory
首次运行会自动拉取沙箱 Docker 镜像,结果保存至 strix_runs/<run-name>。
在编码代理中使用
Strix 支持 agent-ready 工作流,可被 Claude Code、Cursor、Codex 等符合 SKILL.md 规范的代理调用:
npx skills add usestrix/strix
该命令会安装四项技能:本地无头扫描、托管平台调用、漏洞修复与重扫、CI 中扫描 PR。
功能特性
代理式渗透测试工具集
- HTTP 拦截代理:基于 Caido 的请求/响应拦截与篡改
- 浏览器利用:自动化测试 XSS、CSRF、点击劫持、鉴权绕过
- Shell 与命令执行:交互式终端,便于编写利用脚本
- 自定义利用运行时:Python 沙箱,用于编写与验证 PoC
- 侦察与 OSINT:自动化的攻击面测绘、子域名枚举与指纹识别
- 静态与动态代码分析:覆盖 SAST(静态应用安全测试)与 DAST(动态应用安全测试)
- 漏洞知识库:结构化发现,含 CVSS(通用漏洞评分系统)打分与 OWASP 分类
综合漏洞扫描
覆盖 OWASP Top 10 及更多:访问控制失效(IDOR、权限提升)、注入类(SQL/NoSQL/命令/SSTI)、服务端漏洞(SSRF、XXE、反序列化、RCE)、客户端攻击(XSS、原型链污染、CSRF)、业务逻辑缺陷(竞态条件、支付篡改)、认证与会话(JWT 攻击、会话固定、撞库)、基础设施与云安全、API 安全。
代理图谱(多代理渗透测试)
专项 AI 代理并行执行侦察、利用、后期渗透任务,共享发现、串联漏洞,模拟真实红队协同作战。
本地 Web 查看器
每次扫描结果都会落盘,可通过一条命令在本地仪表盘中查看:
strix view # 打开最近一次运行
strix view my-run-name # 打开指定运行
该命令启动绑定 127.0.0.1 的轻量本地服务器,并通过带 token 的私有链接打开浏览器。所有数据均从本地磁盘读取,不上传云端,无需账号。
仪表盘包含: 总览(运行状态、目标、严重性分布)、漏洞详情(每条带严重等级、详情与复现步骤)、代理图谱(多代理团队的实时活动地图)、实时操控(运行中向代理发送指令调整方向)、历史记录(浏览本地历史运行)、报告(生成可分享报告并邮件发送)。
使用示例
基础用法
strix --target ./app-directory # 扫描本地代码
strix --target https://github.com/org/repo # 扫描 GitHub 仓库
strix --target https://your-app.com # 对线上应用做黑盒测试
API 测试(OpenAPI / Swagger / Postman)
strix --target ./openapi.yaml --target https://api.your-app.com
strix --target ./collection.postman_collection.json --target https://api.your-app.com
export POSTMAN_API_KEY="PMAK-..."
strix --target postman://<collection-uuid>
strix --target "postman://<collection-uuid>?env=<environment-uuid>"
进阶场景
# 带凭证的灰盒测试
strix --target https://your-app.com --instruction "Perform authenticated testing using credentials: user:pass"
# 多目标
strix -t https://github.com/org/app -t https://your-app.com
# 从文件读取目标列表
strix --target-list ./targets.txt
# 白盒源码感知扫描
strix --target ./app-directory --scan-mode standard
# 自定义指令聚焦业务逻辑与 IDOR 漏洞
strix --target api.your-app.com --instruction "Focus on business logic flaws and IDOR vulnerabilities"
# 通过文件提供详细指令(如测试范围与排除项)
strix --target api.your-app.com --instruction-file ./instruction.md
# 强制 PR diff 作用域
strix -n --target ./ --scan-mode quick --scope-mode diff --diff-base origin/main
无头模式与 CI/CD
-n/--non-interactive 标志可在无 UI 下程序化运行,实时输出发现并在结束时输出报告,发现漏洞时返回非零退出码,可直接用于 CI:
strix -n --target https://your-app.com
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 } # 必须全量历史,否则 diff 范围无法解析
- 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
配置
export STRIX_LLM="openai/gpt-5.4"
export LLM_API_KEY="your-api-key"
# 可选
export LLM_API_BASE="your-api-base-url" # 本地模型,如 Ollama、LMStudio
export PERPLEXITY_API_KEY="your-api-key" # 启用搜索能力
export STRIX_REASONING_EFFORT="high" # 推理强度(默认 high,quick 模式 medium)
配置会自动保存至 ~/.strix/cli-config.json。也可使用 ChatGPT Plus/Pro 订阅登录:
strix auth login chatgpt
export STRIX_LLM="chatgpt/gpt-5.4"
strix --target ./app-directory
strix auth status
strix auth logout
使用授权提示
Strix 会主动对指定目标发起测试,请仅针对自有或已获得明确书面授权的系统运行,并严格遵守约定范围。在大多数司法管辖区,未经授权的测试属于违法行为,使用者需自行承担合规责任。
摘要更新于 2026-08-18 00:30:35
· 原文 15891 字符
· md5 3554652f55d4…