gy15901580825/athelper-probe-action

GitHub: gy15901580825/athelper-probe-action

封装 ATHelper 红队 CLI 的 GitHub Action,用于在 CI/CD 中对 AI 代理进行自动化安全探测并将结果集成到 GitHub Security。

Stars: 0 | Forks: 0

# athelper-probe-action 封装 [ATHelper](https://www.at-helper.com) 红队 CLI 的 GitHub Action,专为 AI 代理设计。 ## 快速开始 ``` - uses: gy15901580825/athelper-probe-action@v2 with: api-token: ${{ secrets.ATHELPER_API_TOKEN }} target-config: | { "kind": "openai_compat", "endpoint_url": "https://api.openai.com/v1/chat/completions", "model": "gpt-4o-mini", "api_key": "${{ secrets.MY_AGENT_API_KEY }}" } threshold: warn ``` ## 输入 | 名称 | 必填 | 默认值 | 描述 | |---|---|---|---| | `api-token` | 是 | — | ATHelper API token (`secrets.ATHELPER_API_TOKEN`) | | `target-config` | 是 | — | 指向 `target.json` 的路径,或描述目标代理的内联 JSON | | `probes` | 否 | `all` | 逗号分隔的探测 ID,或 `all` 代表完整库 | | `threshold` | 否 | `warn` | `warn` / `block-on-critical` / `block-on-high` | | `per-run-cap` | 否 | `0.50` | 每次运行的 USD 费用上限 | | `cli-version` | 否 | `v0.1.1` | athelper-probe CLI 发布标签 | ## 目标模式 `target-config` 接受 5 种类型: - `openai_compat` — 兼容 OpenAI Chat Completions 的 endpoint - `anthropic_native` — Anthropic Messages API - `custom_http` — 任何带有 Jinja2 模板化请求体 + JSONPath 响应提取的 HTTP endpoint - `grpc` — 启用 reflection 的 gRPC 服务器 - `browser_use` — 使用浏览器的代理(DOM 注入 / UI 钓鱼 / 视觉提示注入 / OS-cmd 场景) 每种类型的完整字段参考:[ATHelper 文档](https://www.at-helper.com/docs/redteam/target-spec)。 ## 它的工作原理 1. 从 `gy15901580825/at_helper_cli` releases 下载 `athelper-probe` 二进制文件 2. 对您的目标运行探测;输出 SARIF 3. 将 SARIF 上传至 GitHub code-scanning(Security 选项卡) 4. 在 PR 检查摘要中发布发现计数 5. 添加 PR 检查注解(每次检查最多 50 条) 6. 如果 `threshold` 设为 `block-on-critical` 或 `block-on-high`,并且运行结果达到触发条件,则以非零状态退出 ## 阈值模式 - `warn`(默认)— 永远不会导致 PR 失败;在摘要中显示计数 - `block-on-critical` — 如果任何发现的严重性为 `critical`,则导致 PR 失败 - `block-on-high` — 如果任何发现的严重性为 `high` 或 `critical`,则导致 PR 失败 ## 从 v1 迁移 `v1` 搭配的是 CLI `v0.1.0`,由于 `v0.1.1` 的 CLI 标志重命名而导致损坏。`v2` 是当前可用的版本。 与 `v1` 的破坏性更改: - `probe-ids` 输入重命名为 `probes`。默认值现在是 `all`(CLI v0.1.1 要求此标志)。 - `cli-version` 默认值提升至 `v0.1.1`。 - CLI 二进制文件现在安装到 `$RUNNER_TEMP/athelper-bin` 而不是 `/usr/local/bin`(无需 `sudo`)。 通过将 `@v1` 更改为 `@v2` 并重命名输入来进行升级。 ## 许可证 MIT。
标签:AI安全, Anthropic, ATHelper, Chat Copilot, CI/CD安全, CISA项目, CIS基准, DevSecOps, GitHub Action, gRPC, IP 地址批量处理, Llama, LLM安全测试, OpenAI, Petitpotam, Python工具, SARIF, 上游代理, 人工智能, 代码安全, 内存规避, 大模型安全, 安全扫描, 时序注入, 漏洞枚举, 用户模式Hook绕过, 红队评估, 结构化查询, 网络安全, 自动化安全, 自定义脚本, 隐私保护, 零日漏洞检测