mcpField
S
strix

strix

github.com/akillness安全53435 次安装4 天前更新
代码仓库

关于 strix

strix 是面向安全测试人员的 AI 驱动应用安全扫描 CLI,可检查代码仓库、目录和授权的线上目标。它在 Docker 沙箱中运行,并支持不同扫描深度及 CI/CD 无交互执行。

主要功能

  1. 01扫描本地目录、GitHub 仓库和线上目标
  2. 02支持多目标组合扫描
  3. 03提供 quick、standard、deep 模式
  4. 04通过指令文件设置范围与凭据
  5. 05支持无交互 CI/CD 扫描

适用场景

  1. 01在 Pull Request 中快速检查代码
  2. 02评估授权的预发布站点
  3. 03关联仓库代码与线上问题
  4. 04在 CI/CD 中执行安全扫描

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/akillness/jeo-skills --skill strix

安装后在 Claude Code 中输入/strix确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

SKILL.toon
evals/
evals.json
references/
built-in-skills.md
providers-and-config.md
scan-modes-and-ci.md
commands.md
scripts/
ci-scan.sh
run-scan.sh
install.sh
skill-autoresearch-strix/
SKILL.md.baseline
dashboard.html
changelog.md
results.tsv
results.json

详细介绍

strix - AI 驱动的应用安全测试

关键词:strix · ai pentest · vulnerability scan cli · strix ci

仅可使用 Strix 测试你拥有或明确获准测试的系统。

Strix 是一款 AI 驱动的应用安全命令行工具。它在 Docker 支持的沙盒中运行扫描,使用 LLM 提供商进行推理,并可评估本地目录、GitHub 仓库、在线 URL、域名以及多个目标的组合。

何时使用此技能

  • 安装 Strix,并验证 Docker 和沙盒是否就绪
  • 配置 STRIX_LLM、LLM_API_KEY、可选的 LLM_API_BASE 及相关运行时设置
  • 对仓库或目录运行本地白盒扫描
  • 对获准测试的类生产环境或生产环境 URL 运行黑盒或灰盒扫描
  • 使用 --instruction 或 --instruction-file 提供凭据、范围或交战规则
  • 选择合适的扫描深度:quick、standard 或 deep
  • 在 CI/CD 中以无头模式运行 Strix,并解读退出代码
  • 了解 Strix 内部的安全“技能”,以及它们与此仓库中的技能有何不同

说明

第 1 步:安装并进行预检
  1. 运行 bash scripts/install.sh
  2. 确认 strix --version 能够成功运行
  3. 确保已安装 Docker 且守护进程正在运行
  4. 首次设置时,让安装程序拉取沙盒映像,除非你有意跳过
  5. 手动安装的替代方案和直接命令请参阅 references/commands.md
第 2 步:配置模型提供商

运行扫描前,设置以下必需的最少环境变量:

export STRIX_LLM="openai/gpt-5.4"
export LLM_API_KEY="your-api-key"

可选运行时变量:

  • LLM_API_BASE,用于 OpenAI 兼容代理或本地端点
  • PERPLEXITY_API_KEY,用于扫描期间的网页搜索
  • STRIX_REASONING_EFFORT,用于调整模型的推理力度
  • STRIX_DISABLE_BROWSER=true,在不需要 UI 自动化时使用
  • STRIX_TELEMETRY=0,用于禁用默认遥测

提供商示例、配置文件格式和可选环境变量请参阅 references/providers-and-config.md。

第 3 步:选择目标和扫描模式

Strix 接受以下目标类型:

  • 本地目录:./app
  • GitHub 仓库 URL:https://github.com/org/repo
  • 在线 Web 应用 URL:https://staging.example.com
  • 域名或 IP
  • 通过重复使用 --target 或 -t 进行多目标扫描

扫描模式:

  • quick:PR 检查、冒烟测试、快速获取 CI 反馈
  • standard:常规安全审查
  • deep:默认的完整评估,以及耗时更长、类似漏洞赏金的探索

详细的模式和 CI 指南请参阅 references/scan-modes-and-ci.md。

第 4 步:运行扫描

使用 bash scripts/run-scan.sh 执行可重复的包装脚本,或直接调用 strix。

常用的直接命令:

strix --target ./app
strix --target https://github.com/org/repo
strix --target https://staging.example.com --instruction-file ./instruction.md
strix -t https://github.com/org/repo -t https://staging.example.com

当身份验证或测试范围很重要时,优先使用 --instruction-file,而不是冗长的内联提示词,这样凭据、排除项和交战规则就能清晰明确且便于审查。

第 5 步:查看输出并迭代

Strix 会将结果存储在 strix_runs/<run-name> 下。

请记住以下退出代码:

  • 0:已完成,未发现问题
  • 1:执行或环境错误
  • 2:无头模式下发现漏洞

使用运行产物确认 Strix 测试了哪些内容、发现了哪些问题,以及修复后需要重新验证哪些内容。

第 6 步:在 CI/CD 中自动化运行

在自动化流程中使用无头模式:

strix -n --target ./ --scan-mode quick

CI 运行器需要访问 Docker。对于拉取请求,默认使用 quick;将 standard 或 deep 留给定时任务或发布阶段的任务。请参阅 references/scan-modes-and-ci.md 和 scripts/ci-scan.sh。

步骤 7:了解 Strix 内部技能

Strix 在 strix/skills/ 下有自己的内部安全知识包。它们与此仓库的 Agent 技能不同。

  • Strix 会为每项任务自动选择最多 5 个相关的内部技能
  • 类别包括漏洞、框架、技术、协议和工具
  • 这些内部技能会在扫描过程中增强 Strix Agent 的行为

在假设两个生态系统中的“技能”含义相同之前,请参阅 references/built-in-skills.md。

示例

示例 1:快速扫描本地仓库中的 PR
export STRIX_LLM="openai/gpt-5.4"
export LLM_API_KEY="your-api-key"
strix -n --target ./ --scan-mode quick
示例 2:标准扫描 GitHub 仓库
strix --target https://github.com/acme/payments --scan-mode standard
示例 3:对预发布环境 URL 进行灰盒扫描
strix --target https://staging.example.com \
  --instruction-file ./instruction.md \
  --scan-mode deep
示例 4:结合仓库与在线目标
strix -t https://github.com/acme/payments \
  -t https://staging.example.com \
  --instruction "Correlate source paths with exposed runtime issues"
示例 5:禁用浏览器、专注于 API 的扫描
STRIX_DISABLE_BROWSER=true \
strix --target https://api.example.com --scan-mode standard
示例 6:脚本化运行封装
bash scripts/run-scan.sh \
  --target ./app \
  --scan-mode quick \
  --non-interactive

最佳实践

  1. 仅测试你拥有或明确获准评估的资产。
  2. 在 CI 中从 quick 开始,只有在发现的信号足以证明额外运行时间合理时,才扩大扫描深度。
  3. 将机密保存在环境变量、机密存储或由你控制的指令文件中,而不要将它们零散地直接写入内容。
  4. 需要更好的复现和修复背景信息时,同时使用源代码和在线目标。
  5. 预计首次运行会较慢,因为 Strix 可能需要拉取其沙箱镜像。
  6. 将 strix_runs/ 视为证据:归档有用的运行记录,尤其是在发现结果即将进入分类或修复阶段时。
  7. 明确说明范围、排除项、凭据和速率限制,避免 Strix 浪费时间探索无关的攻击面。
  8. 区分此仓库的 strix 技能与 Strix 内部技能,以避免指令混淆。

参考资料

评论

支持 Markdown