- OSV-Scanner v2.3.5 của Google quét dependencies, container và source code cho CVE thật với false positive thấp nhờ call analysis, layer-aware container scan và guided remediation.
- Apache-2.0, plug thẳng vào CI.
TL;DR
OSV-Scanner là scanner lỗ hổng open-source của Google, frontend chính thức cho database OSV.dev. Phiên bản v2.3.5 (25/03/2026) quét dependencies, SBOM, container image và Git commit, đối chiếu với CVE thật. Điểm mạnh: call analysis cho Go/Rust giúp giảm false positive, layer-aware scan cho Debian/Ubuntu/Alpine, và guided remediation tự đề xuất nâng cấp tối thiểu để vá lỗ hổng. Apache-2.0, miễn phí, plug thẳng vào GitHub Actions.
Có gì mới
OSV-Scanner V2 GA tháng 3/2025, tới phiên bản v2.3.5 (tháng 3/2026) đã tích lũy các tính năng đáng giá cho DevSecOps:
- Layer-aware container scanning: chỉ ra chính xác layer nào trong Dockerfile đã đưa package dính lỗ hổng vào image, phát hiện base image, và lọc bớt vulnerability không ảnh hưởng runtime.
- Guided remediation (
osv-scanner fix): xếp hạng upgrade path theo dependency depth, severity, fix strategy, ROI — gợi ý bộ nâng cấp tối thiểu để clear vulns thay vì bump toàn bộ. - Interactive HTML report: output có thể share, filter, sort — phù hợp dev không ngồi terminal.
- Transitive scanning cho Python
requirements.txtqua deps.dev API (v2.3.5) — nhìn được vuln trong indirect dependencies.
Tại sao quan trọng
Supply chain attack đã vượt ngưỡng "tuần nào cũng có" — từ xz backdoor đến npm typosquatting hàng loạt, rồi các malicious package được publish ngay trong giờ làm việc. Đội DevSecOps cần tool đủ nhanh để chạy trong CI, đủ chính xác để không spam alert, và đủ actionable để dev tự vá. Đa số scanner thương mại giải quyết 2 trong 3; OSV-Scanner nhắm cả ba bằng data pipeline do Google vận hành và call-graph analysis để lọc vuln không reachable.
Điểm khác biệt chiến lược: data đến từ OSV.dev — một schema chuẩn hoá advisory xuyên ecosystem (GitHub Advisory, PyPA, RustSec, Go vuln DB, Debian, Alpine...). Thay vì mỗi tool gom dữ liệu riêng rồi bị drift, OSV gom về một chỗ, version-aware tới từng commit range. Kết quả: match chính xác hơn, update nhanh hơn, và ít alert kiểu "CVE này có dính không?" — nó trả lời thẳng là có hay không cho đúng version đang dùng.
Technical facts
| Hạng mục | Chi tiết |
|---|---|
| Phiên bản hiện tại | v2.3.5 (25/03/2026) |
| Ngôn ngữ hỗ trợ | C/C++, Dart, Elixir, Go, Java, JS, PHP, Python, R, Ruby, Rust |
| Package managers | npm, pip, yarn, maven, go modules, cargo, gem, composer, nuget, uv & khác |
| Ecosystems / lockfiles | 11+ ecosystems, 19+ lockfile types |
| SBOM formats | CycloneDX, SPDX |
| Container layer-aware | Debian, Ubuntu, Alpine |
| Call analysis | Go, Rust |
| License | Apache-2.0 |
| Ngôn ngữ viết | Go (87.6%) |
| GitHub stars | ~9.1k |
Lệnh phổ biến:
osv-scanner scan source -r /path/to/your/dir
osv-scanner scan image my-image:tag
osv-scanner --licenses path/to/repository
osv-scanner fix --max-depth=3 --min-severity=5 -L path/to/package-lock.jsonSo với Trivy, Snyk, Grype
| Tool | Điểm mạnh | Điểm yếu so với OSV-Scanner |
|---|---|---|
| Trivy | Rộng: IaC, secret, misconfig | Noise cao hơn, không có call analysis hay guided remediation |
| Snyk | UI đẹp, auto-fix PR, enterprise | SaaS trả phí ở quy mô; khóa vào vendor |
| Grype | CVE coverage tương đương | Không có guided remediation, không có call-graph filtering |
| OSV-Scanner | Data từ OSV.dev, call analysis, guided fix, miễn phí | Call analysis mới chỉ Go/Rust; container scan chưa có RHEL/distroless |
Use cases
- Gate CI/CD: dùng osv-scanner-action chặn PR đưa vuln mới vào main.
- Forensics container:
osv-scanner scan image my-image:tagchỉ ra layer Dockerfile nào là thủ phạm — cực nhanh khi phải triage production image. - Audit monorepo: recursive source scan quét toàn bộ lockfile trong một lượt.
- Compliance SBOM: feed CycloneDX/SPDX cho yêu cầu SSDF hoặc executive order về software bill of materials.
- Sprint vá lỗ hổng:
osv-scanner fix --max-depth=3 --min-severity=5để bulk upgrade với churn tối thiểu.
Limitations & pricing
Pricing: miễn phí hoàn toàn, Apache-2.0, không có tier trả phí, không vendor lock-in.
Giới hạn cần biết:
- Call analysis hiện chỉ hỗ trợ Go và Rust. Các ngôn ngữ khác vẫn dính toàn bộ vuln match kể cả không reachable.
- Layer-aware container scan giới hạn Debian, Ubuntu, Alpine — chưa parity cho RHEL hay distroless.
- Guided remediation mạnh nhất cho npm và Maven pom.xml; ecosystem khác yếu hơn.
- Không có dashboard trung tâm — đội cần pair với DefectDojo hoặc tương tự để aggregate kết quả nhiều repo.
- Phụ thuộc coverage của OSV.dev — tốt nhưng không phải nguồn advisory tư nhân nào cũng mirror về.
What's next
Tín hiệu roadmap: mở rộng call analysis sang thêm ngôn ngữ, phát hiện base image sâu hơn, và tích hợp chặt hơn với OSV-Scalibr để extract artifact từ wheels, uber jars, Go binaries. Với mức độ adoption và chất lượng data của OSV.dev, đây là lựa chọn mặc định rất hợp lý cho indie dev, startup, và đội DevSecOps không muốn cõng thêm chi phí Snyk enterprise.
Nguồn: google/osv-scanner, Google Security Blog, osv.dev blog, AppSecSanta review 2026.


