AFS-Agentics/dep-vigil
GitHub: AFS-Agentics/dep-vigil
dep-vigil 是一款基于 OSV.dev 数据库的快速依赖漏洞扫描器,支持多语言项目清单文件并适配 CI/CD 流水线的安全策略执行。
Stars: 0 | Forks: 0
# dep-vigil

**快速的依赖漏洞扫描器** — 基于 OSV.dev 数据库扫描您的项目依赖,在 CVE 影响生产环境之前将其捕获。
[](https://crates.io)
[](LICENSE)
## 功能
- **6 种清单格式**:Cargo.lock, package.json, package-lock.json, requirements.txt, Pipfile.lock, pom.xml
- **OSV.dev 集成**:实时查询公开的 OSV 漏洞数据库
- **3 种输出格式**:易读的文本、结构化的 JSON、简洁的摘要
- **适配 CI 的退出码**:0 = 无漏洞,1 = 低危,2 = 中危及以上,3 = 错误
- **可配置的阈值**:使用 `--min-severity` 和 `--fail-on` 执行安全策略
- **自动检测**:扫描当前目录下的常见清单文件
## 安装说明
### 从源码构建
```
git clone https://github.com/AFS-Agentics/dep-vigil.git
cd dep-vigil
cargo build --release
cp target/release/dep-vigil /usr/local/bin/
```
### 通过 Cargo 安装(发布后)
```
cargo install dep-vigil
```
## 用法
### 基础扫描(自动检测清单文件)
```
dep-vigil
```
### 扫描特定清单文件
```
dep-vigil --manifest Cargo.lock
dep-vigil --manifest package.json
dep-vigil --manifest requirements.txt
```
### 输出格式
```
dep-vigil --format text # default — human-readable table
dep-vigil --format json # structured JSON for CI tooling
dep-vigil --format summary # compact count-only output
```
### 按严重级别过滤
```
dep-vigil --min-severity high # only report HIGH and CRITICAL
dep-vigil --fail-on medium # exit code 2 if any MEDIUM+ vulns
```
### 将输出写入文件
```
dep-vigil --output report.json --format json
```
### 退出码
| Code | Meaning |
|------|---------|
| 0 | 未发现漏洞 |
| 1 | 漏洞低于 `--fail-on` 阈值 |
| 2 | 漏洞达到/超过 `--fail-on` 阈值 |
| 3 | 扫描错误(清单文件无法解析、网络错误) |
## 支持的清单格式
| Format | File | Status |
|--------|------|--------|
| Rust | `Cargo.lock` | ✅ |
| Node.js (npm v7+) | `package-lock.json` | ✅ |
| Node.js | `package.json` | ✅ |
| Python (pip) | `requirements.txt` | ✅ |
| Python (Pipenv) | `Pipfile.lock` | ✅ |
| Java (Maven) | `pom.xml` | ✅ |
## 示例
```
$ dep-vigil --manifest Cargo.lock
dep-vigil — Dependency Vulnerability Scanner
Scanning Cargo.lock...
┌───────────────┬─────────┬────────────┬──────────┐
│ Package │ Version │ CVE │ Severity │
├───────────────┼─────────┼────────────┼──────────┤
│ tokio │ 1.35.0 │ CVE-2024-… │ HIGH │
│ serde │ 1.0.0 │ CVE-2023-… │ MEDIUM │
│ smallvec │ 1.11.0 │ CVE-2024-… │ LOW │
└───────────────┴─────────┴────────────┴──────────┘
Found 3 vulnerabilities (1 HIGH, 1 MEDIUM, 1 LOW)
```
## 许可证
MIT — 见 [LICENSE](LICENSE)
标签:Rust, 加密, 可视化界面, 文档安全, 正则表达式, 漏洞扫描器, 网络流量审计, 通知系统