jashidsany/sentinelprobe

GitHub: jashidsany/sentinelprobe

SentinelProbe 是一个用于授权环境下执行 AI 提示词注入和 agent 边界安全测试的 CLI 工具,通过可重复的 YAML 测试用例和确定性评分帮助团队评估 AI 应用的安全防护能力。

Stars: 1 | Forks: 0

# SentinelProbe SentinelProbe 是一个 CLI 工具,用于授权的 AI 提示词注入(prompt-injection)和 agent 边界测试。它针对 AI 助手、企业搜索工具、基于浏览器的 AI 应用、HTTP 测试垫片和本地 CLI agent 运行可重复的 YAML 测试用例,然后通过确定性检查对响应进行评分。 仅在获得批准的系统、获批的账户、虚假文档和虚假密钥上使用它。 ## 安装 从源码安装: ``` python3 -m pip install . ``` 用于隔离环境安装: ``` pipx install . ``` 用于浏览器自动化: ``` python3 -m pip install '.[browser]' python3 -m playwright install chromium ``` 在 PyPI 发布后: ``` pipx install sentinelprobe ``` ## 快速开始 检查本地设置: ``` sentinelprobe doctor sentinelprobe doctor --target claude-code sentinelprobe doctor --target browser ``` 列出内置套件: ``` sentinelprobe list-suites ``` 列出目标预设: ``` sentinelprobe presets list sentinelprobe presets show claude-code sentinelprobe presets init glean-browser --output sentinelprobe-targets/glean-browser.json ``` 运行本地 mock 基线: ``` sentinelprobe run --cases builtin --provider mock --verbose ``` 使用仅响应默认值运行 Claude Code: ``` sentinelprobe claude-code ``` 针对 Claude Code 运行基于文件的 coding-agent 提示词注入: ``` sentinelprobe claude-code --test agent-files --agent-files --verbose --only-findings --html-report ``` 在冒烟测试期间限制成本: ``` sentinelprobe claude-code --test indirect --mutations --limit 5 --verbose --only-findings ``` 创建 HTML 和 trace 产物: ``` sentinelprobe claude-code --test agent-files --agent-files --html-report --trace-file reports/agent_files_trace.txt ``` 比较两份报告: ``` sentinelprobe compare --before reports/baseline.json --after reports/latest.json --html-report ``` 在开发期间运行源码树回归检查: ``` python3 scripts/check.py python3 scripts/check.py --build --wheel-smoke ``` ## 测试套件 - `direct-basic`:基本的直接提示词注入测试用例。 - `direct-advanced`:高级的直接提示词注入测试用例。 - `direct`:基本加上高级的直接提示词注入测试用例。 - `indirect`:内联检索内容提示词注入测试用例。 - `agent-files`:基于文件的 coding-agent 提示词注入测试用例。 - `builtin`:所有内置测试用例。 使用 `--mutations` 来扩展定义了确定性变体的测试套件。 ## Providers - `mock`:本地安全基线。 - `http`:获批的 API 或内部测试垫片。 - `command`:围绕 CLI agent 的本地包装器。 - `browser`:由 Playwright 驱动的浏览器会话,用于获批的基于浏览器的 AI 工具。 ## 预设 预设为常见目标类型提供了安全的入门命令和设置说明: - `claude-code` - `claude-code-agent-files` - `glean-browser` - `generic-http` - `generic-browser` - `custom-command` ## 报告 SentinelProbe 默认输出 JSON 报告。添加 `--html-report` 以获取可移植的审查产物,添加 `--trace-file` 以获取完整的提示词和响应证据。 检测结果采用以下分类: - `pass`:未发现确定性问题。 - `review`:可疑的输出或不完整的安全处理,需要人工分类。 - `fail`:确定的不安全行为,包括虚假密钥泄露。 ## 文档 详细的使用方法、provider 设置、用例格式、评分行为、浏览器工作流和 PyPI 说明详见 [docs/usage.md](docs/usage.md)。 测试用例 YAML 和 JSON 报告的 schema 记录在 [docs/schema.md](docs/schema.md) 中。 ## 安全范围 - 仅使用获批的系统和账户。 - 使用虚假文档、虚假密钥和沙盒数据。 - 不要测试破坏性操作、凭证窃取、持久化、恶意软件或绕过逻辑。 - 将自动检测结果视为需要人工验证的分类信号。
标签:AI安全, Blue Team, Chat Copilot, DLL 劫持, Python, 人工智能, 大语言模型, 文档结构分析, 无后门, 特征检测, 用户模式Hook绕过, 逆向工具