🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

灵眼渗透模式 guaidao2/dsh-lingeye

DeepSeek Harness
guaidao23 天前有提交已提供中文文档扫描:含敏感能力

渗透测试不是扫清单,而是不断改变判断。灵眼是 DeepSeek Harness…

38.9/100
综合分
3
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/29 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查有告警:未发布到 npm registry,仅可从源码安装。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add guaidao2/dsh-lingeye
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · security
装得上吗
本站已在 dsh 0.2.1-rc.2 下真实安装成功
非静态推断
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 3 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意

未发布到 npm registry,仅可从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包dsh-lingeye(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/31 03:45:03

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件写入剪贴板(不计风险)发起外部网络请求
查看扫描证据(共 25 处,展示前 22 条)
  • 写入本地文件
    src/acl-patch.js:111
    mkdirSync(dir, { recursive: true })
  • 写入本地文件
    src/acl-patch.js:123
    writeFileSync(temporary, content)
  • 写入本地文件
    src/acl-patch.js:124
    renameSync(temporary, path)
  • 写入本地文件
    src/acl-patch.js:131
    copyFileSync(PACKAGE_PRELOAD, preloadTemporary)
  • 写入本地文件
    src/acl-patch.js:132
    renameSync(preloadTemporary, preload)
  • 读取本地文件
    src/mcp.js:30
    if (existsSync(candidate)) return await import(pathToFileURL(candidate).href)
  • 写入剪贴板
    src/client.js:761
    navigator.clipboard.writeText(markdown)
  • 发起网络请求
    src/client.js:895
    fetch('/lingeye/mcp', { cache: 'no-store', credentials: 'same-origin' })
  • 发起网络请求
    src/client.js:907
    fetch('/lingeye/mcp', {
  • 发起网络请求
    src/client.js:927
    fetch('/lingeye/mcp', {
  • 发起网络请求
    src/client.js:1030
    fetch('/lingeye/projects', { cache: 'no-store', credentials: 'same-origin' })
  • 发起网络请求
    src/client.js:1036
    fetch('/lingeye/environment', { cache: 'no-store', credentials: 'same-origin' })
  • 发起网络请求
    src/client.js:1051
    fetch('/lingeye/environment', {
  • 写入本地文件
    src/report.js:188
    await mkdir(base, { recursive: true })
  • 写入本地文件
    src/report.js:189
    await mkdir(join(base, 'findings'), { recursive: true })
  • 写入本地文件
    src/report.js:190
    await mkdir(join(base, 'evidence'), { recursive: true })
  • 写入本地文件
    src/report.js:194
    await mkdir(join(target, '..'), { recursive: true })
  • 写入本地文件
    src/report.js:195
    await writeFile(target, content, 'utf8')
  • 读取本地文件
    src/report.js:222
    } else if (evidence.refPath !== '' && existsSync(evidence.refPath)) {
  • 写入本地文件
    src/report.js:224
    await copyFile(evidence.refPath, target)
  • 读取本地文件
    src/gitbash-core.js:90
    if (!statSync(candidate).isFile()) return undefined
  • 读取本地文件
    src/gitbash-core.js:105
    if (existsSync(candidate)) return candidate
扫描于 2026/11/1(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/schemastery@deepseek-ai/cordis@deepseek-ai/dsh-session@deepseek-ai/dsh-storage-domain@deepseek-ai/dsh-tools
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
展开完整介绍(90 字)↓

渗透测试不是扫清单,而是不断改变判断。灵眼是 DeepSeek Harness 的授权安全测试模式:探索图记录信念,证据约束结论,侦察、利用、复测与报告连成可复核的一条链。MIT。

README

由 DeepSeek 最新模型翻译生成
dsh-lingeye(灵眼渗透测试模式) 面向 DeepSeek Harness 的授权安全测试模式。 灵眼不是普通功能插件,而是一个 agent 模式:新建会话时像「标准模式」「创造模式」一样选择「灵眼渗透测试模式」。进入后,指挥官 agent 维护目标、探索链路、资产、漏洞、证据与复测;执行与复测交给子 agent,所有记录落在一个共享的存储域里,并由 Web 页签实时展示。 灵眼总览 它解决什么 渗透测试的难点不是"扫什么",而是"下一步做什么实验最能改变判断"。灵眼把这件事落成数据: - 探索图是 DAG-MDP 的信念状态:goal → intent → fact → 新 intent → finding;事实带 basis(observed / inferred / assumed / negative)与置信度,否定结论和假设都保留。 - 意图是实验:每条意图写清预期观测;利用动作同时是信息动作;失败落 negative 事实,不静默丢弃。 - 依赖门控与优先级排序:ly_next 按依赖就绪、优先级、运行状态和资产数给出前沿,并单独返回信念缺口;信息增益尚未进入排序,不要把它当成已实现的求解器。 - 交付物是一等公民:漏洞带可复现步骤、证据、复测历史;报告与证据包可导出。
展开完整文档(README 剩余 1 节)
dsh-lingeye(灵眼渗透测试模式)

面向 DeepSeek Harness 的授权安全测试模式。

灵眼不是普通功能插件,而是一个 agent 模式:新建会话时像「标准模式」「创造模式」一样选择「灵眼渗透测试模式」。进入后,指挥官 agent 维护目标、探索链路、资产、漏洞、证据与复测;执行与复测交给子 agent,所有记录落在一个共享的存储域里,并由 Web 页签实时展示。

灵眼总览

它解决什么

渗透测试的难点不是"扫什么",而是"下一步做什么实验最能改变判断"。灵眼把这件事落成数据:

- 探索图是 DAG-MDP 的信念状态:goal → intent → fact → 新 intent → finding;事实带 basis(observed / inferred / assumed / negative)与置信度,否定结论和假设都保留。
- 意图是实验:每条意图写清预期观测;利用动作同时是信息动作;失败落 negative 事实,不静默丢弃。
- 依赖门控与优先级排序:ly_next 按依赖就绪、优先级、运行状态和资产数给出前沿,并单独返回信念缺口;信息增益尚未进入排序,不要把它当成已实现的求解器。
- 交付物是一等公民:漏洞带可复现步骤、证据、复测历史;报告与证据包可导出。
- 设计上把源码残留、拼接点、双层解码、token 信任边界都落成一等数据,而不是写在报告里的事后注释。

设计哲学

为什么把渗透测试当成不完全信息博弈,为什么探索图是 DAG-MDP,以及那四条安全经验怎样变成数据结构:见 article/lingeye-philosophy.md。

认知层面的续篇讨论投影、寻路同构、结构生长/修剪、归纳与证伪、因果一致性:见 article/lingeye-cognition.md。相关论文与文献附注见 article/lingeye-references.md。

功能

- 探索链路:目标、意图、事实、漏洞、提示、约束、攻击路径。
- 项目聚合(可选):用 projectId 把同一项目的多个会话关联起来,侧栏「灵眼项目」只读汇总意图、事实、漏洞、资产与会话入口;数据仍由各会话写入。项目卡上的「解除分组」只清 projectId,不删除会话数据;没有 projectId 的独立会话卡显示「归档会话」,归档后从面板和侧栏消失,可在归档中恢复。
- 角色化子 agent:执行、复测、情报、枚举、威胁建模五类子 agent 预设,指挥官按需要派发;编排仍由 DSH 提供。
- 资产图与覆盖率:资产按类型归一化去重;只有 finding 或带证据的事实才算"已测"。
- 证据:命令 / HTTP / 文本 / 文件,记录观测信道与逐层解释,正文按 sha256 内容寻址。
- 数据流:记录 source → transform → sink 的拼接点。
- 复测:独立复测记录,结论 reproduced / fixed / inconclusive,不覆盖原始漏洞。
- 报告与导出:report.md、findings.json、assets.json、graph.json、coverage.json、逐漏洞 Markdown、证据文件。
- 可选宿主调度器:侦察/执行子 agent 可由宿主按前沿自动派发。
- Web 页签:总览、探索(列表/链路图切换)、资产、漏洞、证据、数据流、报告、复测。

复测页签

安装

需要 DSH >= 0.2.1-rc.2 < 0.3.0 与 Node.js >= 22.5(宿主自带)。

从本地目录安装(开发或内部分发):

dsh plugin --profile web add <path-to-dsh-lingeye>

从 tarball 安装:

npm pack
dsh plugin --profile web add ./dsh-lingeye-0.3.2.tgz

安装后重启 DSH,新建会话时选择「灵眼渗透测试模式」。

新建会话选哪个模式

只选「灵眼渗透测试模式」。

「灵眼执行(子 agent)」「灵眼复测(子 agent)」「灵眼情报(子 agent)」「灵眼枚举(子 agent)」「灵眼威胁建模(子 agent)」是给指挥官内部派发用的子 agent 预设,手动开这类会话拿不到完整的指挥、探索与报告流程。DSH 目前没有隐藏预设的字段,所以这些预设都会出现在选择菜单里;我们只能用名称标明它们的用途。

子 agent 的会话(包括从父会话打开的详细模式)里,灵眼页签没有数据是预期边界,不是数据丢失:页签按会话绑定交战,子 agent 会话本身没有指挥官面板和 engagement,所以没有可展示的记录;回到父会话看面板即可。这是已知问题,不需要清数据或重建会话。

开始一次测试

在会话里给出目标与目的即可,例如:

目标是 example.com,目的是确认对外暴露面并验证一个可复现的低危问题,授权为本地测试。

指挥官会先调用 ly_start 建立交战;之后你可以让它继续推进,也可以自己用斜杠命令观察状态。

工具

指挥官:

| 工具 | 作用 |
| ly_start | 建立/重置交战:目标、目的、授权、范围、约束、可选 projectId |
| ly_project_link | 把当前交战关联到项目分组(只改分组键,不移动数据) |
| ly_project_unlink | 解除整个项目分组(只清 projectId,保留所有会话与数据) |
| ly_state / ly_next | 读取完整状态 / 态势、前沿与信念缺口 |
| ly_goal_add / ly_goal_prove | 目标与达成判定 |
| ly_intent_add / ly_intent_update | 批量建意图(最多 4 条)/ 改意图状态 |
| ly_hint_add / ly_constraint_add | 注入策略提示 / allow-deny 约束 |
| ly_asset_add / ly_evidence_add / ly_flow_add | 资产、证据、数据流 |
| ly_findings / ly_assets / ly_coverage / ly_review | 漏洞、资产、覆盖率、复核 |
| ly_report / ly_export | 报告与交付包 |
| ly_retest_create / ly_attack_path_add | 发起复测 / 攻击路径 |
| ly_dispatch_status / ly_dispatch_now | 查看/手动运行宿主调度器 |

执行子代理(lingeye-worker 预设):ly_fetch、ly_submit、ly_asset_add、ly_trace_append。

角色子代理(lingeye-intel / lingeye-enumerator / lingeye-threat-modeler 预设)复用同一组 worker 工具,只收窄 persona 与工作重点;委派时仍要给出真实父 intentId。

复测子代理(lingeye-retest 预设):ly_retest_begin、ly_retest_finish。

宿主调度器(可选)

默认关闭。在配置档的 cordis.patch.yml 里覆盖 store 行启用:

- id: lingeye-store
config:
autoDispatch: true
maxWorkers: 2
debounceMs: 800

启用后,存储域发生变化会触发一次去抖派发:对当前有活跃会话的交战,按 ly_next 同样的依赖门控挑选 open 意图,用 subagent 的 spawn 通道拉起 lingeye-worker,结果回注父会话。每个意图只自动派发一次(避免失败循环),并发受 maxWorkers 限制;指挥官仍负责判定与收尾。

Windows 说明(非系统盘工作区)

在 Windows 上,如果工作区位于 D:/E:/F: 等非系统盘,DSH 的 workspace-write 沙箱可能在命令 spawn 前失败:

SetNamedSecurityInfoW failed (Win32 5): grantWrite(<workspace-path>)

这是上游已知问题(DSH 0.1.7+ 的 Windows ACL 沙箱:非系统盘目录默认没有当前用户 FullControl,沙箱打 Low 完整性标签需要 WRITE_OWNER)。灵眼内置了社区修复:vendor/acl-sandbox-patch 来自 dsh-acl-sandbox-patch(MIT,见 THIRD_PARTY_NOTICES.md)。它不改任何系统 ACL,只在进程内包装沙箱自己的 FFI 调用:严格路径失败时降级为 DACL-only,并在降级环境跳过子进程降完整性。

补丁运行文件会复制到 $DSH_HOME/lingeye-acl-patch/,宿主和子进程都加载这一份,降级状态文件因此共享;NODE_OPTIONS 指向那里的稳定 bootstrap,升级或卸载插件不会让子进程指向已删除的包路径。卸载时插件会移除自己加的 NODE_OPTIONS;已在运行的子进程不受影响,重启后彻底干净。

如果升级或卸载后,Node 子进程在插件加载前就报 Cannot find module ...preload.cjs,说明启动 DSH 的那层环境还带着旧 NODE_OPTIONS。在启动 DSH 的终端里执行 Remove-Item Env:NODE_OPTIONS,再重启桌面端;插件内部无法自愈启动前的环境。没有无空格的稳定目录时补丁会直接跳过并记一条 warning,不会设置一个会崩的 NODE_OPTIONS。

Windows 上默认启用;如需关闭,在配置档 patch 里覆盖该行:

- id: lingeye-acl-patch
config:
enabled: false

兼容性

- DSH:>= 0.2.1-rc.2 < 0.3.0(engines.dsh)。
- 存储:lingeye 域使用配置档默认后端(JSON);记录按会话隔离,重启不丢。
- 客户端:手写 window.__ModuleLoader__ 工厂,无构建步骤;页签只在该模式会话显示。
- 上游修复 ACL 问题后,可直接关闭内置补丁,行为与出厂一致。

开发

无需构建步骤:宿主半是 ESM JavaScript,客户端半是手写的 __ModuleLoader__ 工厂。

npm test # node --test,报告与导出用例

本地调试:

dsh plugin --profile <dev-profile> add <path-to-repo>
dsh --profile <dev-profile> --no-open --port 0

许可

MIT。Copyright (c) 2026 guaidao2 & coolmoon。内置的 Windows ACL 修复来自 dsh-acl-sandbox-patch(MIT),署名与许可见 THIRD_PARTY_NOTICES.md。

参考

- dsh-pentest(MIT,已归档):工程基座与插件范式。
- ARTEX(AGPL-3.0):双图、planner/worker、复测、证据与报告。
- Cairn(AGPL-3.0):Fact / Intent / Hint 黑板、三种任务型与调度。
- XuanMu-RedTeam-Agent(MIT):多角色协作、推理黑板、证据平面与攻击路径。

参考项目只借鉴设计与数据模型,运行时代码为本项目独立实现;内置 Windows ACL 修复是唯一随包分发的第三方代码,署名见第三方声明。
预览分享卡片长什么样 ↓guaidao2/dsh-lingeye
分享 · DeepSeek Harness Hub
guaidao2/dsh-lingeye

渗透测试不是扫清单,而是不断改变判断。灵眼是 DeepSeek Harness…

回到顶部