toby-bridges/api-relay-audit
toby-bridges/api-relay-audit从 DeepSeek Harness 对 AI API 中转站和 LLM 代理运行本地安全审计,生成 Markdown 报告,覆盖提示词注入、模型替换信号、工具调用改写、错误泄漏、流完整性和按 profile 启用的 Web3 风险。
面向 DeepSeek Harness 的运行时危险操作策略、规范结果脱敏和安全审查工作流。
v0.1.3 已针对 DSH 0.1.0-rc.8 与 0.1.1-rc.1 验证,同时保留兼容 rc.6 的 peer 范围。项目继续通过 GitHub Release 分发预构建包。未加 scope 的 npm 包名已被其他发布者占用,因此本项目不在该名称下发布。
tools/pre-execute waterfall 中检查 shell、SQL 和结构化文件写入参数,返回 deny、ask 或保持原决策;standard、strict 和 permissive 三档策略,同时保留不可关闭的拒绝规则;deny 或 ask 规则;tools/post-execute waterfall 中对规范 JSON 结果、失败输出、渲染文本和拦截反馈做统一脱敏;/security-review 加载内置的只读安全审查技能。本插件不是进程沙箱、授权系统或完整的数据防泄漏服务,也不会取代下游 provider 已有的安全策略。
内置规则会拒绝对根目录或用户目录执行递归强制删除、把网络响应直接管道传给 shell、向 /dev 写入原始数据以及写入 /etc。强制推送、破坏性 SQL 和其他递归强制删除会要求审批。严格模式还会要求审批 sudo,宽松模式只保留拒绝规则。
Guardian 始终调用 next()。当其他策略监听器也返回决策时,插件保留更严格的结果,优先级依次为 deny、ask、allow。
内置模式覆盖 AWS access key ID、GitHub token、sk- API key、PEM 私钥块和常见凭据赋值。存在规范 JSON 值时,插件优先脱敏该值,并保留数组、对象、数字、布尔值和 null 的结构。这样可以避免 Code Mode 或后续渲染器在安全显示文本背后继续持有未脱敏结果。
日志只记录工具名、匹配数量和脱敏标签,不记录秘密内容。插件不会追加自定义会话事件,因为当前外部插件 API 无法声明 ignorable 事件信封。写入必须识别的未知事件会导致用户卸载插件后无法读取旧会话。
当前代码支持 DSH >=0.1.0-rc.6 <0.2.0 插件 API,要求 Node.js ^22.19 || >=24。
dsh plugin --profile web add https://github.com/lonelymoon87/dsh-guardian/releases/download/v0.1.3/dsh-guardian-0.1.3.tgz
Release tarball 已预构建,不需要构建权限。也可以固定版本从源码安装。
dsh plugin --profile web add github:lonelymoon87/dsh-guardian#v0.1.3
源码安装会运行本包的 prepare 构建。pnpm 10 及以上版本默认拒绝执行,第一次安装失败时请按 DSH 输出的提示,将准确的包键加入 profile 的构建白名单,然后重新执行同一条命令。需要装进一次性 Agent profile 时,把命令中的 web 换成 headless。
升级时用新版本的 Release URL 再执行一次 dsh plugin add。卸载时执行
dsh plugin --profile web remove dsh-guardian
- id: guardian
name: dsh-guardian
config:
profile: standard
rules:
- name: production-host
pattern: production\\.internal
action: ask
reason: production target requires review
redaction:
enabled: true
patterns:
- label: internal-token
pattern: INT_[A-Z0-9]{12}
正则 flags 只允许 i、m、s 和 u。表达式或标签无效时,插件会在加载阶段明确失败。
测试覆盖全部内置规则的正反例、结构化路径、策略组合、嵌套规范值、自定义凭据、跨块秘密、禁用脱敏、命令分派和非法配置。
dsh --dump-config 检查;latest 与 next 标签重跑真实安装;