Studi 1Password yang beredar bulan lalu mendapat sorotan dengan angka khusus: hanya 26 persen patch keamanan yang dibuat AI sepenuhnya memperbaiki kerentanan yang ditargetkan. Sisanya hanya sebagian menambal, menambal fungsi yang salah, atau memperkenalkan dependensi baru dengan CVE-nya sendiri. Itu adalah masalah nyata di dunia di mana asisten kode AI membuat patch lebih cepat daripada manusia dapat meninjau, dan di mana SBOM (Software Bill of Materials) sering menjadi garis pertahanan terakhir antara kode yang dikirim dan kerentanan yang dikirim.
Kami menguji tujuh pemindai SBOM dan dependensi di desktop di seluruh portofolio campuran: Node, Python, Go, Rust, dan layanan asli kontainer. Setiap alat dalam daftar ini menghasilkan SBOM, memakannya, atau memindai grafik dependensi untuk CVE yang dikenal. Ketujuh alat ini gratis dan bersumber terbuka.
Apa yang harus dicari dalam pemindai dependensi
Pasar pemindai keamanan benar-benar ramai, dan mudah untuk memasang lima alat yang melakukan hal yang sama. Saat memilih, pertimbangkan:
- Format SBOM yang didukung. SPDX dan CycloneDX adalah dua format yang penting. Jika alat hanya menampilkan JSON miliknya sendiri, lewatkan.
- Cakupan bahasa dan ekosistem. Beberapa pemindai mencakup JVM dengan baik dan Node hampir tidak sama sekali. Cocokkan dengan tumpukan Anda.
- Kesegaran basis data CVE. OSV, NVD, dan GitHub Advisory Database adalah tiga sumber yang layak dipercaya. Agregator ada tetapi menambah latensi.
- Kesadaran kontainer. Jika Anda mengirim kontainer, pemindai harus berjalan melalui lapisan gambar, bukan hanya repo sumber.
- Integrasi CI. Dukungan GitHub Actions, GitLab CI, dan Jenkins adalah fondasi.
- Tingkat positif palsu. Pemindai yang menandai 400 CVE pada instalasi Next.js segar adalah pemindai yang tidak dibaca siapa pun.
- Laporan lisensi. SBOM semakin membutuhkan audit lisensi bersama daftar CVE.
Perbandingan cepat
| Aplikasi | Terbaik untuk | Platform | Paket gratis | Harga mulai | Format |
|---|---|---|---|---|---|
| Syft | Pembuatan SBOM | Windows, macOS, Linux | Gratis, bersumber terbuka | Gratis | SPDX, CycloneDX, asli |
| Grype | Pemindaian SBOM | Windows, macOS, Linux | Gratis, bersumber terbuka | Gratis | Membaca Syft, SPDX |
| Trivy | Pemindaian kontainer all-in-one | Windows, macOS, Linux | Gratis, bersumber terbuka | Gratis | SPDX, CycloneDX |
| Dependency-Track | Platform manajemen SBOM | Docker, self-hosted | Gratis, bersumber terbuka | Gratis | Prioritas CycloneDX |
| OWASP Dependency-Check | Klasik analisis kode sumber | Windows, macOS, Linux | Gratis, bersumber terbuka | Gratis | Laporan CVSS |
| OSV-Scanner | Frontend OSV.dev Google | Windows, macOS, Linux | Gratis, bersumber terbuka | Gratis | OSV asli, SPDX |
| Renovate | Pembaruan dependensi otomatis | Docker, self-hosted, cloud | Gratis, bersumber terbuka | Gratis (Mend hosted berbayar) | PR pembaruan |
Aplikasi
1. Syft — Pembuat SBOM terbaik
Syft dari Anchore adalah alat SBOM yang sebagian besar alat lain sekarang asumsikan Anda gunakan. Tunjuk ke direktori, gambar kontainer, atau arsip, dan itu mengeluarkan SBOM lengkap dalam format SPDX atau CycloneDX dalam hitungan detik. Cakupan bahasa luas (Go, Node, Python, Ruby, Rust, Java, .NET, dan banyak lagi), dan dukungan gambar kontainer berjalan melalui setiap lapisan tanpa perlu menjalankan kontainer.
Di mana kekurangannya: Tidak memindai CVE sendiri. Pasangkan dengan Grype (dari tim yang sama) atau masukkan SBOM ke Dependency-Track.
Harga:
- Gratis: Sepenuhnya gratis, Apache 2.0
Platform: Windows, macOS, Linux, dan sebagai kontainer
Download: Syft di GitHub · Halaman produk Anchore
Garis bawah: Pembuat SBOM default. Pasang terlebih dahulu.
2. Grype — Pemindai SBOM terbaik
Grype adalah pemindai CVE yang berpasangan secara alami dengan Syft. Berikan SBOM (atau tunjuk ke direktori sumber) dan itu mengembalikan daftar CVE yang disaring dari umpan kerentanan Anchore, yang berasal dari NVD, GitHub Advisory Database, dan data keamanan Alpine.
Di mana kekurangannya: Tidak paling berpendapat dalam mengelola positif palsu. Harapkan untuk membangun file penekanan untuk dependensi warisan yang tidak dapat Anda tingkatkan.
Harga:
- Gratis: Sepenuhnya gratis, Apache 2.0
Platform: Windows, macOS, Linux, dan sebagai kontainer
Download: Grype di GitHub
Garis bawah: Pasangan yang jelas untuk Syft, dan pemindai tercepat dalam daftar ini untuk pengoperan pohon sumber biasa.
3. Trivy — Pemindai kontainer all-in-one terbaik
Trivy dari Aqua Security adalah all-in-one yang semua orang capai ketika targetnya asli kontainer. Ini memindai kontainer, sistem file, repo git, manifes Kubernetes, IaC (Terraform, CloudFormation), dan rahasia dalam satu biner. Pembuatan SBOM tertanam untuk SPDX dan CycloneDX.
Di mana kekurangannya: Jangkauan berarti lebih lambat pada target tunggal apa pun daripada alat khusus. File konfigurasi tumbuh saat Anda menggunakan lebih banyak jenis pemindaian.
Harga:
- Gratis: Sepenuhnya gratis, Apache 2.0
Platform: Windows, macOS, Linux, dan sebagai kontainer
Download: Trivy di GitHub
Garis bawah: Jika Anda hanya dapat memasang satu pemindai, pasang ini.
4. Dependency-Track — Platform manajemen SBOM terbaik
Dependency-Track mengubah pemindaian SBOM dari aktivitas per-jalankan menjadi dasbor seluruh armada. Berikan SBOM CycloneDX dari pipa CI Anda, dan setiap proyek mendapat dasbor kerentanan, lisensi, dan kebijakan langsung. Pipa pemberitahuan mengarahkan CVE baru ke Slack, email, atau webhook per proyek.
Di mana kekurangannya: Memerlukan penyebaran Java atau kontainer yang dihost sendiri. Bukan alat “ambil biner dan jalankan”.
Harga:
- Gratis: Sepenuhnya gratis, Apache 2.0
Platform: Docker, JAR (self-hosted)
Download: Dependency-Track di GitHub
Garis bawah: Untuk tim yang melacak lebih dari segelintir layanan.
5. OWASP Dependency-Check — Klasik analisis kode sumber terbaik
OWASP Dependency-Check telah ada cukup lama sehingga sebagian besar pipa enterprise sudah mengenalnya. Java-first, tetapi versi modern mencakup Node, Python, Ruby, dan .NET. Hasilnya adalah laporan yang diskor CVSS dalam HTML, JSON, atau XML.
Di mana kekurangannya: Lebih lambat dan lebih boros sumber daya daripada alternatif modern. Jalankan pertama unduhan umpan NVD lengkap, yang membutuhkan waktu beberapa menit.
Harga:
- Gratis: Sepenuhnya gratis, Apache 2.0
Platform: Windows, macOS, Linux
Download: OWASP Dependency-Check di GitHub
Garis bawah: Klasik yang dapat diandalkan. Pasang jika tim Anda sudah mengenal; jika tidak, mulai dengan Trivy atau Grype.
6. OSV-Scanner — Frontend OSV.dev terbaik
OSV-Scanner adalah frontend resmi Google untuk OSV.dev, database kerentanan sumber terbuka. Ini memindai file kunci di Node, Python, Go, Rust, Ruby, dan banyak lainnya, referensi silang terhadap OSV.dev, dan menghasilkan daftar kerentanan per paket. Kualitas data OSV.dev tinggi karena agregat dari kumpulan database khusus ekosistem yang luas.
Di mana kekurangannya: Tidak memindai gambar kontainer. Fokus adalah file kunci terlebih dahulu.
Harga:
- Gratis: Sepenuhnya gratis, Apache 2.0
Platform: Windows, macOS, Linux
Download: OSV-Scanner di GitHub
Garis bawah: Pilihan terbaik untuk tim yang hidup dalam file kunci dan menginginkan upacara minimal.
7. Renovate — Pembaruan dependensi otomatis terbaik
Renovate bukan pemindai dalam pengertian klasik. Ini adalah bot pembaruan dependensi yang membuka PR ketika versi baru dependensi Anda mendarat, termasuk rilis patch keamanan. Dikombinasikan dengan salah satu pemindai di atas, itu menutup putaran antara “CVE ditemukan” dan “PR untuk perbaikan” tanpa orkestrasi manual.
Di mana kekurangannya: Bukan pemindai CVE secara terisolasi. Gabungkan dengan Grype, Trivy, atau OSV-Scanner untuk bagian pemindaian dan verifikasi alur kerja.
Harga:
- Gratis: Edisi komunitas self-hosted, sepenuhnya bersumber terbuka (AGPL-3.0)
- Berbayar: Mend menghosting versi terkelola untuk organisasi yang tidak ingin self-host
Platform: Docker, self-hosted, atau cloud Mend
Download: Renovate di GitHub
Garis bawah: Alat yang mengubah temuan pemindai menjadi perbaikan yang digabungkan.
Cara memilih yang tepat
Jika Anda membutuhkan satu alat dan Anda mengirim kontainer: Trivy. Ini mencakup kontainer, sistem file, IaC, dan rahasia dalam satu biner.
Jika Anda membangun alur kerja pertama SBOM: Syft ditambah Grype ditambah Dependency-Track. Syft menghasilkan, Grype memindai, Dependency-Track mengelola di seluruh layanan.
Jika tim Anda sudah di OWASP Dependency-Check: pertahankan. Versi modern dapat diterima, dan beralih di tengah pipa membuat celah.
Jika bahasa Anda adalah Python, Node, Go, atau Rust dan Anda menginginkan sinyal terketat: OSV-Scanner. Data OSV.dev berkualitas tinggi.
Jika Anda menginginkan perbaikan otomatis untuk CVE yang pemindai temukan: lapisi Renovate di atas. Itu menangani bagian pembukaan PR alur kerja.
Jika asisten kode AI Anda membuka PR patch (seperti yang dicatat dalam studi 1Password): jalankan pemindai apa pun di atas sebagai pemeriksaan yang diperlukan sebelum penggabungan. Patch yang dihasilkan AI memerlukan verifikasi mesin tepatnya karena mereka melewatkan kerentanan 74 persen dari waktu.
FAQ
Apa itu SBOM?
SBOM (Software Bill of Materials) adalah daftar terstruktur dari setiap dependensi dalam perangkat lunak, dengan versi, hash, dan lisensi. SPDX dan CycloneDX adalah dua format yang dominan. Regulator di AS dan UE semakin memerlukan SBOM untuk perangkat lunak yang dikirimkan ke rantai pasokan pemerintah.
Apakah alat SBOM gratis?
Setiap alat dalam daftar ini gratis dan bersumber terbuka. Penawaran berbayar ada (Anchore Enterprise, Aqua Enterprise, Mend hosted Renovate) tetapi versi sumber terbuka mencakup kebutuhan sebagian besar tim.
Alat mana yang memiliki positif palsu paling sedikit?
OSV-Scanner dan Grype memiliki profil positif palsu terketat dalam pengujian kami, karena keduanya ditarik dari data khusus ekosistem yang dikurasi. Alat warisan yang sangat bergantung pada string NVD cenderung menghasilkan lebih banyak kebisingan.
Apakah alat-alat ini bekerja di lingkungan yang terputus udara?
Ya, dengan konfigurasi. Trivy, Grype, dan OWASP Dependency-Check semuanya mendukung pembaruan basis data offline. Dependency-Track dapat menarik dari indeks OSS yang dicerminkan atau umpan Anchore.
Bisakah alat-alat ini memindai gambar kontainer?
Trivy, Grype, dan Syft semua memindai gambar kontainer dan berjalan melalui setiap lapisan. Dependency-Check dan OSV-Scanner adalah file kunci terlebih dahulu dan tidak menangani kontainer dengan baik.
Seberapa sering saya harus menjalankan pemindaian SBOM?
Untuk layanan yang sedang dikembangkan secara aktif, jalankan pada setiap PR dan setiap rilis. Untuk layanan yang digunakan, pindai ulang SBOM yang dikirimkan terhadap umpan CVE segar setidaknya setiap hari. Dependency-Track dan Trivy mendukung pemindaian berkelanjutan dan terjadwal.