CVE Lite CLI: Dependency Vulnerability Scanner
CVE Lite CLI: Dependency Vulnerability Scanner

Proses triase makan waktu berjam-jam, dan setelah install package pengganti pun CI masih bilang vulnerable. CVE Lite CLI hadir buat nyegetin loop itu dengan mindahin security check langsung ke terminal developer — sebelum code di-push, sebelum CI jalan, sebelum vulnerable dependency jadi bagian permanen dari project baseline.
1. Architecture & Scanning Pipeline
CVE Lite CLI didesain dengan prinsip yang sangat jelas: deterministic, local-first, dan zero source code egress. Nggak ada account, nggak ada config rumit, nggak ada source code yang keluar dari mesin lo. Vulnerability analysis-nya sengaja dibuat non-AI — “I do not think AI should decide whether a CVE exists. That part needs to be boring, repeatable, and auditable,” kata Kapoor.
[PIPELINE : LOCKFILE → FIX COMMAND]
1. Read lockfile — Baca package-lock.json, pnpm-lock.yaml, yarn.lock, atau bun.lock dari project mu.Ini yang ngebedain dari npm audit biasa — CVE Lite CLI lihat resolved dependency graph yang aktual, bukan cuma top-level packages.
2. Query OSV — Match semua package di dependency graph ke Open Source Vulnerabilities database (Google-maintained, aggregasi data dari NVD, GitHub Advisory Database, dan language-specific registries). Local cache: ~217.000 advisory records, sync dalam kurang dari 9 detik.
3. Classify — Tiap finding diklasifikasikan: severity, direct vs transitive, dan apakah ada fix path yang tersedia.
4. Output fix command — Hasilkan copy-and-run command yang scoped ke package manager lo: npm install pkg@version, pnpm add pkg@safe, dll. Fix command juga otomatis di-scan ulang buat validasi bahwa pengganti yang direkomendasikan beneran clean.
Kenapa lockfile scanning lebih baik dari npm audit biasa:
| Aspek | npm audit biasa | CVE Lite CLI |
|---|---|---|
| Dependency visibility | Top-level packages yang lo ingat install. | Full resolved graph — runtime, dev, tooling, transitive semua ikut. |
| Direct vs transitive | Nggak selalu jelas dibedain. | Eksplisit dipisah — lo tahu mana yang bisa lo fix langsung, mana yang butuh keputusan dependency lebih luas. |
| Output | Daftar CVE ID + saran bulk fix yang bisa breaking. | Copy-and-run fix command per package, divalidasi otomatis. |
| Timing | CI pipeline — berjam-jam setelah kode ditulis. | Terminal lokal — sebelum push, saat dependency decision masih fresh. |
| Source code egress | Tergantung tool — beberapa kirim ke server. | Nol — semua jalan di mesin lo. |
lint-staged, standar npm audit --omit=dev gagal mendeteksi production dependency issue yang CVE Lite CLI temukan lewat lockfile analysis. Dependency graph modern JavaScript sangat noisy — developer jarang sadar berapa banyak transitive package yang ikut masuk.2. Coverage & Evidence Features
CVE Lite CLI punya footprint yang sangat minimal — hanya 4 runtime dependencies (yaml, yarn-lockfile, better-sqlite3, fflate). Ini pilihan deliberate: tool security yang auditable harus ringan dan transparan.
- Package manager support: npm, pnpm, Yarn, dan Bun — semua via lockfile scanning.
- Output format: Terminal output (colored, human-readable), JSON (untuk CI/dashboard integration), SARIF (langsung ke GitHub Code Scanning — muncul di Security tab dan inline PR annotations), dan HTML report (self-contained, shareable untuk compliance audit atau handoff).
- Air-gapped support: Advisory database bisa di-sync ahead of time untuk restricted network atau air-gapped environment. ~217.000 advisory records, sync selesai dalam 9 detik — 9,9x lebih cepat dari implementasi awal.
- CI integration: Flag
--fail-onexit non-zero saat findings memenuhi atau melebihi severity threshold — bisa blok merge di CI tanpa perlu konfigurasi tambahan. - AI coding assistant integration: CVE Lite CLI punya “AI assistant skills” yang ngajarin tools seperti Claude Code, Codex CLI, Gemini CLI, Cursor, dan GitHub Copilot cara jalanin scanner, baca structured output-nya, dan bantu developer prioritize remediation plan. AI-nya di sini berperan sebagai explanation layer — bukan yang nentuin apakah CVE valid.
Quick start:
npm install -g cve-lite-cli# Scan project di directory sekarang
cve-lite .
# Scan dengan severity threshold — fail jika ada HIGH+
cve-lite . –fail-on high
# Output JSON (untuk CI/dashboard)
cve-lite . –output json
# Output SARIF (GitHub Code Scanning)
cve-lite . –output sarif
# Generate HTML report + auto-open browser
cve-lite . –report
# Sync advisory database untuk air-gapped env
cve-lite sync
# Contoh output terminal — direct vs transitive jelas dipisah:
# DIRECT lodash@4.17.20 HIGH CVE-2021-23337 → npm install lodash@4.17.21
# TRANSITIVE minimist@1.2.5 MEDIUM CVE-2021-44906 → via jest → no direct fix
Benchmark nyata — OWASP Juice Shop:
[TEST RESULT : OWASP JUICE SHOP]
Kapoor menguji CVE Lite CLI terhadap OWASP Juice Shop — aplikasi Node.js sengaja insecure yang dependency tree-nya representatif dengan project JavaScript production nyata.
Sebelum: 39 findings, termasuk high-severity issue.
Setelah 2 remediation pass: Turun ke 18 findings, high-severity cleared — upstream dependency risk terpisah jelas dari masalah yang bisa langsung di-fix developer.
3. Roadmap & Konteks Proyek
CVE Lite CLI punya filosofi pengembangan yang jelas dan tidak terburu-buru ekspansi. Kapoor menerima banyak request untuk support ekosistem lain (.NET, Python), tapi posisinya konsisten: memperluas terlalu cepat akan bikin tool menjadi lebih berat dan kurang jelas buat JavaScript/TypeScript developer yang jadi target utamanya.
[ROADMAP]
Fokus saat ini: Memperdalam coverage dan remediation guidance untuk npm, pnpm, Yarn, dan Bun — sebelum ekspansi ekosistem.
Ekosistem baru (.NET, Python): Ada demand, tapi belum ada komitmen timeline. Setiap ekosistem punya lockfile format, dependency graph semantics, dan advisory source sendiri — bukan pekerjaan trivial.
AI integration: Tetap sebagai explanation layer, bukan scanner. Scan deterministic, AI bantu developer pahami dan prioritize.
OWASP governance: Sebagai OWASP Lab Project, arah pengembangan dipengaruhi community feedback dan peer review — bukan vendor roadmap.
CVE Lite CLI sudah divalidasi terhadap sejumlah real-world codebase: OWASP Juice Shop, Visual Studio Code, NestJS, Ghost CMS, Gatsby, Storybook, dan Vercel AI SDK — semua dengan documented scans dan real findings, bukan demo. Ini yang bikin status OWASP Lab Project-nya punya bobot: peer-reviewed, vendor-neutral, dan terbukti di production-grade codebases.
Docs: owasp.org/cve-lite-cli
Sumber: Help Net Security (20 Mei 2026), CSO Online (26 Mei 2026), SecurityWeek (8 Juni 2026), ReversingLabs blog (10 Juni 2026).
1 Response
[…] 6. CVE Lite CLI — Dependency Vulnerability Scanner ↗ […]