Skip to content
Back to skills

Dep Vuln Check

BSecurity

依赖漏洞体检、第三方库安全扫描、供应链安全检查。当用户要「查一下项目依赖有没有漏洞」「扫描 CVE」「package-lock / requirements.txt / go.sum / Cargo.lock 安全检查」「这个版本的 lodash / django / log4j 有没有已知漏洞」「上线前依赖安全审计」「SCA 软件成分分析」「该升级哪些依赖」「npm audit / pip-audit 的替代」时使用。脚本解析锁文件后查询 OSV.dev(免费、无需 API Key、覆盖 npm/PyPI/Go/crates.io/RubyGems/Packagist),输出严重度、漏洞编号(CVE/GHSA)、建议升级版本;不检查自己写的代码,不会把"未收录"说成"安全"。

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 13, 2026
ai-agentspythongorubybashnodedjangoapi

Works with

  • api

Security analysis

B76/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies
  • mediumInstalls packages at runtime which could introduce malicious dependencies
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro scans all 2 files and shows the line behind each finding

Scanned October 13, 2026

npx -y skills add po-et/workbuddy-skills --skill dep-vuln-check --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Dep Vuln Check?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Dep Vuln Check
[![Security: B — Skills Directory](https://www.skillsdirectory.com/api/skills/po-et-dep-vuln-check/badge)](https://www.skillsdirectory.com/skills/po-et-dep-vuln-check)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: dep-vuln-check
description: 依赖漏洞体检、第三方库安全扫描、供应链安全检查。当用户要「查一下项目依赖有没有漏洞」「扫描 CVE」「package-lock / requirements.txt / go.sum / Cargo.lock 安全检查」「这个版本的 lodash / django / log4j 有没有已知漏洞」「上线前依赖安全审计」「SCA 软件成分分析」「该升级哪些依赖」「npm audit / pip-audit 的替代」时使用。脚本解析锁文件后查询 OSV.dev(免费、无需 API Key、覆盖 npm/PyPI/Go/crates.io/RubyGems/Packagist),输出严重度、漏洞编号(CVE/GHSA)、建议升级版本;不检查自己写的代码,不会把"未收录"说成"安全"。
author: Captain
version: 0.1.0
display_name: "依赖漏洞体检"
display_name_en: "Dependency Vulnerability Check"
description_zh: "解析 npm/pip/go/cargo/gem/composer 锁文件,查询 OSV.dev 已知漏洞(免 API Key),输出严重度、CVE/GHSA 编号与建议升级版本。"
description_en: "Parse npm/pip/go/cargo/gem/composer lockfiles, query OSV.dev for known vulnerabilities (no API key), report severity, CVE/GHSA ids and the version to upgrade to."
examples_zh:
  - "扫描这个项目的依赖有没有已知漏洞"
  - "requirements.txt 里哪些包该升级?给我 CVE 编号"
  - "上线前做一次依赖安全审计,按严重度排序"
examples_en:
  - "Scan this project's dependencies for known vulnerabilities"
  - "Which packages in requirements.txt need upgrading? Include CVE ids"
  - "Run a pre-release dependency audit sorted by severity"
metadata:
  { "openclaw": { "requires": { "bins": ["python3"] }, "os": ["darwin", "linux", "windows"], "emoji": "🛡️" } }
---

# 依赖漏洞体检

用 OSV.dev 的公开数据给项目的第三方依赖做一次已知漏洞检查。**免费、无需 Key、零第三方依赖**,需要能访问 `api.osv.dev`。

## 核心原则

1. **只报数据库里有的。** 每条漏洞附 OSV/GHSA/CVE 编号,用户可以自己去核。
2. **"未发现"不等于"安全"。** 报告里必须写明:未收录 ≠ 不存在;本工具不看你自己的代码;无固定版本的依赖没有被查。
3. **升级建议要可执行。** 给出「建议升级到」版本,同时提醒看变更日志确认兼容;大版本跳跃要单独标出。
4. **先修最严重的。** 按 CRITICAL → HIGH → MODERATE → LOW → UNKNOWN 排序,UNKNOWN 需要人工点开链接看。

## 执行流程

### 第 1 步:扫描

```bash
python3 {baseDir}/scripts/osv_check.py --path <仓库路径或锁文件> --md out/vulns.md --out out/vulns.json
```

自动发现:`package-lock.json`(v1/v2/v3)、`requirements*.txt`(仅 `==` 固定版本)、`poetry.lock`、`Pipfile.lock`、`go.mod` / `go.sum`、`Cargo.lock`、`Gemfile.lock`、`composer.lock`;跳过 `node_modules` / `.venv` / `vendor`。
`--max-details N` 控制抓取详情的漏洞条数(默认 200,每个包保证至少一条);`--fail-on high` 让 CI 在存在高危时非零退出。

### 第 2 步:解读(这一步由你做)

- 把表格按严重度讲一遍:哪几个必须今天修(CRITICAL/HIGH 且有修复版本)、哪些可以排期、哪些是 UNKNOWN 需要人工看。
- 对每个要升级的依赖,说明从当前版本到建议版本是否跨大版本;跨大版本的提醒用户查迁移指南。
- 同一漏洞出现在多个别名(CVE / GHSA / PYSEC)时合并说,不要按条数吓人。
- 传递依赖(不是用户直接引入的)要说明升级路径:升级引入它的那个直接依赖。

### 第 3 步:交付

Markdown 报告 + 一份可执行的升级清单(命令级:`pip install "django>=6.0.8"` / `npm install lodash@latest`),并附上「未查到的依赖」清单。

## 输出契约

```
# 依赖漏洞体检
- 扫描文件 / 依赖总数 / 有漏洞的依赖 / 漏洞条目
| 严重度 | 依赖 | 当前版本 | 漏洞(编号+别名) | 建议升级到 | 来源文件 |
## 升级清单(命令)
## 未查到 / 需人工确认
## 说明(数据来源与局限)
```

## 常见问题

**没有锁文件?** 先 `npm i --package-lock-only` / `pip freeze > requirements.txt` 生成,再扫。
**内网不能访问 api.osv.dev?** 脚本会明确报错退出码 3;可把锁文件拷到能联网的机器扫,不要为此传任何凭证。
**Maven / Gradle?** 暂不解析(需要依赖解析树);可用 `mvn dependency:list` 导出后手工整理成 `requirements` 风格再查,或提需求。

Files in this skill

  • SKILL.md4.4 KB
  • scripts/osv_check.py12.5 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.