Dolphin: A Proactive Inspection-based Security Defense Plugin

前言

DeepSeek Harness(DSH)是一个以插件为核心的生态。在安全开发流程中,被动等待告警往往滞后,无法及时掌握系统状态。Dolphin(小海豚)将渗透测试的方法论(信息收集、漏洞探测、利用验证、报告)转化为主动防御巡检流程,填补了 DSH 生态中“主动防御巡检”的空白。它像海豚巡游一样,定期、主动地对目标主机做安全扫描与评估。

核心能力

Dolphin 主要提供以下能力:

  • 基于 Semgrep 的扫描:利用静态分析引擎进行规则匹配。
  • 基于 SSH 的远程巡逻:通过 SSH 将扫描命令下发至远程主机执行,回收结果并本地存档。
  • 结构化报告生成:输出统一的 SecurityFinding 数据模型,存档为 JSON 报告。
  • 跨平台支持:支持 Windows / Linux / macOS / WSL2。
  • 隔离部署:自动在目标端隔离部署 semgrep,避免污染生产环境(支持 pipx / venv / 便携包)。
  • 零硬编码路径:所有数据路径由运行时 API 推导,兼容 Windows 与 POSIX 路径。
  • SSH 层纯 JS:基于 ssh2,控制端与目标端可以是任意操作系统组合。
  • 自动健康检查:巡逻前自动探测远端环境。
  • 远程命令 POSIX 化校验:下发命令前进行语法校验,防止注入。

安装与依赖

本插件由 ccr-wer 维护,采用 MIT 协议。

  1. 安装插件
    通过 npm registry 安装:
    npm install dsh-dolphin-security
  1. 环境要求

    • Node.js >= 20
    • npm 包管理器
  2. 前置依赖
    Dolphin 依赖 semgrep(LGPL-2.1)。必须先安装 semgrep 并确保其可在命令行中直接调用:

    pip install semgrep
安装后可通过 `semgrep --version` 验证。

使用方式

Dolphin 既可在 DSH 宿主中作为插件运行,也可作为独立 CLI 脚本使用。

本地扫描
对指定目录执行静态扫描:

node dolphin-patrol.js --local <目录>
# 示例
node dolphin-patrol.js --local D:/your-project/src

远程巡逻
通过 SSH 对远程主机进行巡检。需先定义目标主机信息(通常参考 test-ssh-hosts.js 模板),然后执行:

node dolphin-patrol.js --patrol <alias> <远程目录>
# 示例
node dolphin-patrol.js --patrol server01 /srv/app

远端未安装 semgrep 时,插件会自动在隔离环境(如 ~/.local/share/pipx 或 /tmp)中部署并执行扫描。

自测与调试

# 运行自检
node dolphin-patrol.js
# 模拟数据自测
node dolphin-core.js --mock [目录]
# SSH 引擎自检
node dolphin-ssh-core.js
# 测试主机库与健康检查
node test-ssh-hosts.js
# 起本地 ssh2 服务端验证完整闭环
node test-ssh-hosts.js --live

技术细节与架构

  • 架构:采用“眼睛(扫描层)、手脚(执行层)、大脑(融合控制器)”三层架构。dolphin-core.js 负责扫描封装,dolphin-ssh-core.js 负责 SSH/SFTP 能力,dolphin-patrol.js 负责下发命令与结果聚合。
  • 安全部署:远端工具部署采用隔离技术(pipx / venv / 便携包),严禁使用 sudo 或写入系统 site-packages。远端命令经严格 POSIX 语法校验。
  • 跨平台:SSH 层基于纯 JS 实现,支持任意操作系统组合的控制端与目标端。

注意事项

  • 免责声明:本项目严禁用于非法渗透测试。仅限用于你拥有合法所有权或已获得明确书面授权的系统与代码。使用本工具对第三方系统发起扫描可能违反相关法律法规。
  • 权限要求:必须先安装 semgrep 并加入 PATH。
  • 安装方式:请务必通过 npm install 安装,不要手工拷贝目录,以免缺失运行文件。

资源

  • 官方目录:https://www.skillhub.cn/plugins/ccr-wer/dsh-dolphin-security
  • 源码仓库:https://github.com/ccr-wer/dsh-dolphin-security
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye