---
title: "用 DeepSeek Harness 扫描项目依赖漏洞"
seo_title: "dsh-dep-vuln-scan 教程：用 DSH 与 OSV 扫描依赖漏洞"
description: "在 DeepSeek Harness（DSH）安装 dsh-dep-vuln-scan 0.1.1，只读解析锁文件、查询 OSV、解释 CVSS 与修复版本，不自动修改项目。"
canonical: https://52dsh.com/tutorials/988hj7tczd-oss-dsh-dep-vuln-scan-install-config/
authors: ["52DSH 编辑部"]
audience: []
outcomes: []
prerequisites: ["Node.js 与 pnpm","独立 web Profile","可丢弃测试工作区"]
difficulty: intermediate
estimated_action_time: null
next_steps: null
published_at: 2026-09-02
updated_at: 2026-09-02
verified_on: 2026-09-02
maintenance_status: community
verification_level: source_reviewed
risk_level: medium
dsh_version: 0.1.1-rc.2
plugin_id: 988hj7tczd-oss-dsh-dep-vuln-scan
tutorial_kind: plugin_configuration
related_plugin_url: https://52dsh.com/plugins/988hj7tczd-oss-dsh-dep-vuln-scan/
---

# 用 DeepSeek Harness 扫描项目依赖漏洞

在 DeepSeek Harness（DSH）安装 dsh-dep-vuln-scan 0.1.1，只读解析锁文件、查询 OSV、解释 CVSS 与修复版本，不自动修改项目。

dsh-dep-vuln-scan 0.1.1 只读解析多种项目锁文件，通过 OSV API 查询已知依赖漏洞、修复版本与建议命令。

如果你的目标是用 DSH 只读扫描项目锁文件并解释 OSV 漏洞与修复版本，本教程会说明如何在 DeepSeek Harness（DSH）中准备、安装、配置、验证和回退 dsh-dep-vuln-scan。本文锁定作者仓库提交 `db879fc01cd0`；已复核固定提交的原始资料，未进行运行实测。

> 对应插件：[查看 dsh-dep-vuln-scan 的功能、权限与兼容性说明](/plugins/988hj7tczd-oss-dsh-dep-vuln-scan/)。先确认它适合你的工作流，再执行安装。

## 先确认是否适合你

- **分类**：安全治理
- **风险等级**：medium
- **核验证据**：source_reviewed
- **兼容性边界**：0.1.1 采用 DSH Bundle 并依赖 fs、tools 和 systemPrompt 服务，未声明明确 DSH peer；固定提交和 npm 精确包静态审阅未扫描真实工作区或联网请求 OSV。
- **主要权限关注**：读取用户指定路径下的锁文件，把生态、包名和精确版本发送到 api.osv.dev，并把漏洞详情和修复命令写入会话结果；插件本身不写锁文件或执行修复命令。

如果你准备在重要工作区使用，先阅读插件详情页的权限和数据流说明；“源码已审阅”或“资料已整理”都不等于安全认证。

## 安装前准备

1. 安装 Node.js 22.19、Node.js 24 或项目当前声明支持的更高版本，并确认 `pnpm` 可用。
2. 使用独立的 `web` Profile 和可丢弃测试工作区，不直接连接生产目录。
3. 备份当前 Profile 配置，并记录安装前的 `--dump-config` 输出。
4. 核对固定来源中的外部服务、账号、运行时和平台限制。
5. 作者资料未显示明确的插件专属环境变量；如果运行时要求凭据，不要根据同类插件猜测变量名。

## 安装 dsh-dep-vuln-scan

52DSH 使用目录中记录的精确安装目标，避免直接跟随可能变化的默认分支：

```bash
npx --yes @deepseek-ai/dsh@0.1.1-rc.2 plugin --profile web add dsh-dep-vuln-scan@0.1.1
```

GitHub 源码插件如果被 pnpm 拦截构建脚本，先检查终端提示的具体包和脚本。只在 `web` Profile 中放行确实需要的构建项，不要全局放行未知依赖。

作者文档还出现了以下命令。它们用于核对功能或开发流程，不应替换上面的锁定安装命令，也不要一次全部执行：

- `dsh plugin --profile demo add ./dsh-dep-vuln-scan`
- `dsh --profile demo --dump-config | grep -A2 dep-vuln-scan`

## 插件专属配置

### 配置目标

- `dep_vuln_scan.path`：明确限制在当前测试仓库或单个锁文件。
- `dep_vuln_scan.effort`：fast 只查根目录；full 最深 8 层且最多 200 个锁文件。

### 首次只读扫描参数

证据：[固定来源](https://github.com/988hj7tczd-oss/dsh-dep-vuln-scan/blob/db879fc01cd02b9f0821a87ba728a310ae08d9ac/README.md)。将路径、账号和凭据占位符替换为测试值。

```json
{
  "path": "/绝对路径/隔离测试仓库",
  "ecosystems": ["npm"],
  "effort": "fast"
}
```

### 安装后设置

1. 重启 DSH，并先确认工具参数中的 path 指向隔离测试仓库。
2. 首次使用 fast 和单一生态，不运行报告中的修复命令。


## 配置验证与成功结果

1. **对隔离仓库执行 fast 扫描。**

   期望结果：报告列出扫描范围、锁文件、包数和 OSV 错误；仓库文件未变化。

2. **检查 Git 状态和进程。**

   期望结果：没有锁文件修改、安装进程或自动修复提交。

## 第一次使用

- 扫描当前测试仓库 package-lock.json，只解释高危项，不执行任何升级命令。

## 数据、权限与凭据

**数据流：**工作区锁文件 → 本机解析与去重 → api.osv.dev querybatch 与漏洞详情 API（包名、生态、版本）→ 结构化漏洞与修复建议 → DSH 工具结果；源码未发现自动修改或安装。

**权限关注：**读取用户指定路径下的锁文件，把生态、包名和精确版本发送到 api.osv.dev，并把漏洞详情和修复命令写入会话结果；插件本身不写锁文件或执行修复命令。

**数据存储：**锁文件在本机只读解析；包名、生态和精确版本发送到 OSV，结构化报告保存在 DSH 会话记录。

真实 Token、API Key、Cookie 和账号 ID 不应写进 Git 仓库、网页截图或公开 Issue。测试结束后撤销临时凭据。

## 卸载、回退与清理

1. 从 web Profile 移除 dsh-dep-vuln-scan@0.1.1 并重启。
2. 删除测试 Session；插件不写工作区，无需恢复锁文件。

## 常见问题

### 安装成功但页面或命令没有出现

先运行 `--dump-config` 确认 Bundle 已进入 `web` Profile，再重启 DSH Web 并硬刷新浏览器。不要通过反复扩大权限来解决加载问题。

### 插件运行后没有得到预期结果

把问题缩小到本页的最小验证任务，检查作者文档要求的变量、外部服务和平台限制。保存终端错误原文，并核对当前安装目标是否仍对应本页固定提交。

作者固定资料中未识别到独立故障章节。遇到插件特有错误时，应先停止 DSH、保留日志并回退插件。

## 固定来源证据

以下资料是本文配置结论的依据：

- [README.md](https://github.com/988hj7tczd-oss/dsh-dep-vuln-scan/blob/db879fc01cd0/README.md)

继续查看：[返回 dsh-dep-vuln-scan 插件详情页](/plugins/988hj7tczd-oss-dsh-dep-vuln-scan/)，重新核对兼容性、权限、同类插件和来源状态。

## 原始来源

- https://github.com/988hj7tczd-oss/dsh-dep-vuln-scan
- https://github.com/988hj7tczd-oss/dsh-dep-vuln-scan/blob/db879fc01cd0/README.md
