DeepSeek Harness 插件:dsh-daiyi-aimy-skill

前言

DeepSeek Harness(DSH)的插件生态通过 Cordis 架构将各类能力以模块形式注入会话。在安全与渗透测试场景中,模型需要访问目标网络、执行侦察与漏洞检测,但直接暴露网络接口会带来授权边界不清、请求失控等风险。dsh-daiyi-aimy-skill 在此基础上提供了「授权范围内」的侦察与 Web 漏洞检测能力:8 个原生工具 + 8 个技能,默认拒绝任何网络访问,只做检测,零运行时依赖。

插件定位

dsh-daiyi-aimy-skill 是 Python CLI 工具 aimy-sikll v2.0.0 的 DeepSeek Harness Cordis 插件再开发版。它把上游命令行脚本改造为宿主内常驻的原生工具,并加上了「授权范围护栏」:没有登记授权范围时,任何网络工具都不会执行。插件形态为 ESM Cordis 插件,运行时仅使用 Node 内置模块,不依赖第三方 HTTP 库或安全框架。

插件由戴亿维护,版本 3.0.0,采用 MIT 许可证。

核心能力

8 个模型可调用工具

插件提供 8 个工具供模型直接调用,覆盖侦察、检测、审计与报告全流程:

  • aimy_scope:登记 / 查看 / 移除 / 清空授权范围,试判目标是否放行(本身不需要授权范围)。
  • aimy_recon:DNS、HTTP 基线、安全响应头、技术栈指纹、robots.txt 侦察。
  • aimy_port_scan:TCP 端口连通性探测(仅握手),高危端口暴露告警。
  • aimy_dir_fuzz:路径/目录枚举,软 404 基线过滤,敏感路径告警。
  • aimy_crawl:同源爬取:页面、链接、表单、参数、JS 接口路径。
  • aimy_web_scan:一次跑一组 Web 检测,支持 12 类检查项。
  • aimy_jwt_audit:离线 JWT 审计:算法、弱密钥、声明、外部密钥源(纯本地)。
  • aimy_report:汇总、列发现、导出 Markdown / JSON / SARIF(纯本地)。

默认拒绝与授权护栏

任何网络目标必须先通过 aimy_scope 登记,未登记直接拒绝并提示下一步。登记时需提供授权说明(≥ 8 字符),支持 host、host:port、scheme、*. 通配子域、路径前缀与过期时间。范围变更会写入审计日志,回环/内网地址默认禁止访问。所有网络请求经过 lib/http.js 护栏探针,逐请求校验 scope、预算、超时、响应体截断与重定向复检。

12 个检测模块 + 3 个侦察模块

检测模块覆盖常见 Web 漏洞类型:SQL 注入、XSS、命令注入、服务器端模板注入、SSRF、非 SQL 注入、本地文件包含、CORS、JWT 审计、GraphQL、协议污染、HTTP 头部检查。侦察模块提供爬虫、参数挖掘、技术栈指纹能力。端口与目录枚举在工具层实现。

8 个中文技能

技能是方法指导,不会自动执行工具,也不能绕过 aimy_scope:

  • aimy-authorized-scope:会话开始、切换/扩大目标或工具返回 NO_SCOPE / NO_MATCH / EXPIRED / PRIVATE_BLOCKED 时加载。
  • aimy-recon-workflow:范围已登记,需要摸清域名、端口、目录、页面、参数与技术栈时加载。
  • aimy-web-vuln-triage:已有带参数的 URL,需要判定 Web 漏洞真伪与定级时加载。
  • aimy-auth-and-jwt:目标有登录态、Bearer token、JWT,或要验证会话与对象级授权时加载。
  • aimy-api-and-graphql:存在 /api、/graphql、/swagger 等接口面时加载。
  • aimy-finding-report:一轮检测结束,需要出报告或给 CI 出 SARIF 时加载。
  • aimy-rookie-mode:新手、生产环境,或 mode=rookie 时加载。
  • aimy-veteran-mode:授权明确、预发/靶场,需要更高覆盖与链式验证时加载。

三种报告格式与零运行时依赖

报告支持 Markdown、JSON、SARIF 三种格式,默认对疑似凭据脱敏。插件不依赖 requests 等第三方 HTTP 库,仅使用 Node 内置模块,宿主提供 dsh-tools 与 dsh-skill 作为辅助。插件无 UI 面板,只提供工具、技能与报告文件。

只做检测

插件不提供反弹 shell、反序列化利用链、SSRF 横向、OOB 带外回连、WAF 绕过、数据提取、凭据攻击、MITM 凭据捕获等武器化能力。所有检测基于响应差异启发式,存在误报漏报,结论必须由有授权的人类复核。

安装与启用

前置环境:DSH 桌面端 >=0.2.0-rc.1 <0.3.0,Node ^22.19 || >=24。插件没有构建步骤,也没有运行时依赖。

方式 A:用 DSH 插件管理器(推荐)

打开 DSH 桌面端「设置 → 插件」,用插件管理器安装:

  • 本地目录:选择本仓库目录(含 package.json 与 cordis.patch.yml)。
  • git 仓库:填 https://github.com/DaiYiqq/dsh-daiyi-aimy-skill。

安装后插件管理器的 reconcile 会读取本包的 dsh.bundle.patch,把 cordis.patch.yml 的 insert 项(id: daiyi-aimy-skill)写入 profile。

方式 B:手动放进插件目录

  1. 把本目录放到 DSH 插件目录下(例如 ~/.dsh/plugins/dsh-daiyi-aimy-skill)。
  2. 在 profile 的 package.json 的 dependencies 中加入:
   {
     "dsh-daiyi-aimy-skill": "file:~/dsh/plugins/dsh-daiyi-aimy-skill"
   }

file: 后面写本机绝对路径;上面的 ~/... 只是示意。
3. 在 profile 目录执行 pnpm install。
4. 重启 / 重新加载 DSH。插件管理器 reconcile 时会因为本包声明了 dsh.bundle.patch,把包名加入 dsh.profile.bundles。

安装成功后,会话里能看到 8 个 aimy_* 工具,技能目录里出现 8 个 aimy-* 技能。

典型用法

下面是一个 5 行快速流程示例,展示了从授权登记到侦察、爬取、检测与报告的完整链路:

// 第 1 步:登记授权范围——不登记,后面所有网络工具都会拒绝
aimy_scope(action="add", target="example.com", authorization="客户授权函 #A-1024,范围 example.com 全站", expiresInHours=72)
aimy_recon(target="https://example.com")
aimy_crawl(target="https://example.com/", maxPages=10)
aimy_web_scan(target="https://example.com/search?q=test", checks=["xss", "sqli"])
aimy_report(action="report", format="md", outputPath="reports/example-com.md")

工具返回的结构化结果包含 target、checks、skipped、params、findings、requests、notes 等字段。findings 中每条包含 module、checkId、title、severity、confidence、url、param、payload、evidence、cwe、remediation 等信息,便于模型直接输出或写入报告。

配置与模式

插件配置来自 cordis.patch.yml 的 config,与默认值合并;非法值回退默认并记录 warning。主要配置项包括:

  • mode:rookie 或 veteran,默认 rookie。影响请求预算、payload 激进度与超时时间,不放宽授权边界。
  • persistScope:是否把授权范围写入磁盘,默认 true。
  • scopeFile:授权范围文件路径,默认 <DSH_HOME>/daiyi-aimy-skill/scope.json。
  • timeoutMs:单请求超时,rookie 模式 8000ms,veteran 模式 12000ms,上限 60000ms。
  • maxRequests:单次工具调用请求预算,rookie 24,veteran 60,上限 400。
  • concurrency:并发上限,rookie 4,veteran 8,上限 32。
  • maxBodyBytes:响应体上限 262144 字节(4 MiB)。
  • followRedirects:是否跟随重定向,默认 false。
  • maxRedirects:跟随时的最大跳数,默认 3。
  • userAgent:默认 UA,目标可识别测试来源。
  • allowPrivateNetworks:是否允许登记/访问回环与内网地址,默认 false。
  • redactSecrets:报告中对疑似凭据脱敏,默认 true。
  • maxFindings:内存中最多保留的 finding 数,默认 800。
  • maxRuns:内存中最多保留的运行记录数,默认 60。

配置示例:

- insert:
    - id: daiyi-aimy-skill
      name: dsh-daiyi-aimy-skill
      config:
        mode: rookie
        persistScope: true

适用场景与注意

dsh-daiyi-aimy-skill 适合已获得书面授权的目标,用于自动化侦察、漏洞检测与报告生成。插件以当前 DSH 进程权限运行,安装前应检查源码与许可证。

插件不承诺检出率,检测基于响应差异启发式,存在误报漏报。所有网络请求均经过授权护栏,范围必须明确、可追溯。插件不保存凭据,不提供武器化能力,仅作为检测辅助工具。

小结

dsh-daiyi-aimy-skill 为 DeepSeek Harness 提供了一套「授权范围内」的侦察与 Web 漏洞检测能力:8 个原生工具、8 个中文技能、默认拒绝的授权护栏、单一网络出口、三种报告格式,且零运行时依赖。它通过 deny-by-default 的设计,把网络接口控制在授权边界内,适合需要安全合规的渗透测试与自动化安全评估场景。

  • 目录页:https://www.skillhub.cn/plugins/DaiYiqq/dsh-daiyi-aimy-skill
  • GitHub:https://github.com/DaiYiqq/dsh-daiyi-aimy-skill
羽毛球分组比赛记分
小程序二维码

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

小夜