Strix

usestrix/strix 访问 GitHub ↗
🔤 Python ★ 54159 ⑂ 0 daily #2 (+598) 抓取 2026-08-18

一句话简介

Strix 是一个基于 Python 的开源安全测试与漏洞扫描工具,提供自动化的渗透测试与代码审计能力,帮助开发者和安全团队识别系统风险。

标签

  • 安全测试
  • 渗透测试
  • 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…