跳到正文

cdxiaodong/dsh-guardian

41最近提交 2026年8月15日

dsh-guardian DSH 插件

dsh-guardian 是一个基于 Cordis 的 DeepSeek Harness 插件,在每次 Agent 工具调用前进行安全审查。它内置五大检测引擎(危险命令、凭据保护、密钥泄露、SSRF、提示注入与工具投毒),结合风险评分系统和三级处置(拒绝/人工确认/日志),帮助用户防范 Agent 被恶意利用或误操作。

如何安装 dsh-guardian DSH 插件

dsh plugin --profile web add github:cdxiaodong/dsh-guardian

复制不会执行命令。安装 dsh-guardian DSH 插件前请核对仓库和版本。

dsh-guardian DSH 插件数据来源

dsh-guardian DSH 插件快照日期:2026年8月16日

discovered

dsh-guardian DSH 插件能做什么

  • 拦截危险命令,如 rm -rf、dd、mkfs、fork 炸弹、反弹 Shell、管道执行和提权操作。
  • 保护凭据文件,禁止读取 .ssh、.aws、.env、/etc/shadow 等敏感文件。
  • 检测 25 种以上密钥类型(AWS、GitHub、OpenAI 等),使用正则和香农熵过滤降低误报。
  • 阻止 SSRF 攻击,包括云元数据地址、内网网段及 file://、gopher:// 等危险协议。
  • 识别提示注入和工具投毒模式,如忽略之前指令、DAN 越狱、零宽字符、HTML 注释藏指令等。
  • 提供路径沙箱,通过 realpath 解析、白名单根目录、编码变体解码和空字节截断检测增强安全性。
  • 基于多信号概率加权计算风险评分 0~1,按阈值分级处置(deny/block/warn/allow)。

dsh-guardian DSH 插件适合哪些场景

  • 防止 LLM Agent 执行 shell 命令时意外或恶意删除重要文件。
  • 阻止 Agent 未经授权读取 SSH 私钥、AWS 凭据等敏感凭据文件。
  • 避免 API 密钥、Token 等敏感信息通过网络请求外泄到远程服务器。
  • 防护内网扫描或元数据服务的 SSRF 攻击。
  • 检测并拦截试图劫持 Agent 行为的提示注入攻击。

dsh-guardian DSH 插件适合谁

  • 使用 DeepSeek Harness 的开发者,希望为 Agent 添加运行时安全防护。
  • 部署执行 shell 命令、读写文件或发起网络请求的 LLM Agent 的团队。
  • 关注安全性的用户,希望降低提示注入或工具投毒带来的风险。

dsh-guardian DSH 插件的限制

  • 所有正则/启发式规则都可能被对抗样本绕过,本插件是风险降低工具,不能替代完整安全方案。
  • 依赖 Cordis 事件系统,人工确认(block 级别)需要监听回调;若无监听器,block 默认拒绝。
  • 当前仅测试了 DSH 插件环境,其他环境兼容性未验证。
  • 路径沙箱基于白名单根目录,不提供完整的文件系统隔离。

dsh-guardian DSH 插件的仓库 README 摘录

以下文字摘自 dsh-guardian DSH 插件的上游仓库 cdxiaodong/dsh-guardian 的 README,版权归原作者,仅作引用。

> **Agent 安全护栏** · 基于 [Cordis](https://github.com/cordiverse/cordis) 时空可组合元内核的 DeepSeek Harness 插件。 > 在 Agent 每次工具调用前做安全审查,命中危险即拦截或要求人工确认。 [![CI](https://github.com/cdxiaodong/dsh-guardian/actions/workflows/ci.yml/badge.svg)](https://github.com/cdxiaodong/dsh-guardian/actions/workflows/ci.yml) --- ## 🎯 解决什么问题 LLM Agent(Claude Code / DeepSeek Harness)能自主执行 shell、读写文件、发网络请求。一旦被**提示注入**、**工具投毒**或**模型误判**带偏,可能在你不知情时 `rm -rf`、读取 `.ssh/id_rsa`、把密钥外泄到远程。本插件是一道**运行时安全网**: ``` Agent 想执行工具 → guardian/check 前置审查 → 命中规则 → 拦截 / 人工批准 → 才放行 ``` ## 🛡️ 五大检测引擎 | 引擎 | 检测内容 | 借鉴来源 | |---|---|---| | **CMD/INJ** 危险命令 | rm -rf、dd、mkfs、fork炸弹、反弹shell、管道执行、提权 | Sigma 规则、PayloadsAllTheThings | | **CRED** 凭据保护 | 读 .ssh/.aws/.env/kubeconfig、/etc/shadow | mcp-safeguard CRED 系列 | | **SECRET** 密钥泄露 | AWS/GitHub/OpenAI/Anthropic/Slack/Stripe 等 25+ 种密钥正则 + Shannon 熵过滤降误报 | gitleaks、trufflehog | | **SSRF** 网络目标 | 云 metadata(169.254.169.254)、内网网段、file://、gopher:// | mcp-safeguard SS 系列 | | **PI/TP** 提示注入+工具投毒 | ignore previous instructions、DAN越狱、零宽字符、HTML注释藏指令、瞒用户指令 | Rebuff、LLM Guard、Vigil | 外加: - **路径沙箱**(`guardian/path`):realpath 解析 + 白名单根目录 + 编码变体解码 + 空字节截断检测——比纯正则可靠 - **风险评分引擎**(`risk.ts`):多信号并集概率式加权

阅读完整 README仓库未声明许可,使用前请先与作者确认。

dsh-guardian DSH 插件常见问题

如何安装 dsh-guardian?

使用 DSH 插件命令安装:`dsh plugin --profile web add github:cdxiaodong/dsh-guardian`。安装前请确保已正确配置 DeepSeek Harness 环境。该命令会将插件添加到你的 DSH profile 中。

当工具调用被拦截为 'block' 级别时会发生什么?

'block' 级别需要人工确认。你需要监听 `guardian/approve` 事件,并在回调中决定是否放行。如果没有监听器,插件默认会拒绝该操作。回调会收到工具名称、触发规则和上下文片段,你可以返回 `{ approved: ok }` 来批准。

dsh-guardian 能阻止所有安全风险吗?

不能。该插件是一个风险降低工具,不是完整的安全方案。所有正则和启发式规则都可能被对抗样本绕过。它应该与人在环确认和最小权限沙箱一起使用。请始终遵循最小权限原则。

如何配置允许访问的文件路径?

在初始化插件时设置 `allowedRoots` 选项,例如:`ctx.plugin(guardian, { allowedRoots: ['/home/user/workspace'] })`。路径沙箱会解析真实路径,只允许访问白名单目录下的文件。

dsh-guardian 能检测工具输出中的密钥吗?

是的,SECRET 引擎可以检测 25 种以上密钥类型(AWS、GitHub、OpenAI、Anthropic、Slack、Stripe 等),使用正则和香农熵过滤。这有助于防止敏感密钥通过网络请求或文件写入泄露。当设置 `scanSecrets: true` 时默认启用该引擎。