Lewati ke isi

Keamanan/Cyber Security

Apa Itu SBOM dan Kenapa Mulai Diminta Klien Korporat?

SBOM adalah daftar komponen penyusun software. Pahami isinya, format SPDX dan CycloneDX, aturan yang mendorongnya, dan cara membuatnya untuk klien.

Terbit 5 menit baca

Jawaban singkat

SBOM (Software Bill of Materials) adalah daftar terstruktur semua komponen dan dependensi di dalam sebuah software. Klien korporat memintanya agar bisa cepat tahu apakah produk vendor terdampak celah baru, dan karena aturan di AS dan Uni Eropa mulai mendorong atau mewajibkannya.

Daftar isi
  1. Kenapa SBOM tiba-tiba penting?
  2. Pelajaran dari Log4Shell
  3. Dorongan dari regulasi
  4. Apa saja isi SBOM yang layak?
  5. SPDX atau CycloneDX?
  6. Kapan memilih SPDX, kapan CycloneDX?
  7. Bagaimana cara membuat SBOM?
  8. Apa yang perlu disiapkan saat klien meminta SBOM?
  9. Pertanyaan yang sering diajukan

SBOM, singkatan dari Software Bill of Materials, adalah daftar lengkap komponen penyusun sebuah software: pustaka open source, framework, modul pihak ketiga, beserta versi dan hubungan antarkomponennya. Bayangkan label komposisi di kemasan makanan, tapi untuk aplikasi.

Kalau kamu vendor software atau penyedia jasa pembuatan aplikasi, permintaan SBOM dari klien besar makin sering muncul di kuesioner keamanan vendor. Salah menanggapinya bisa berarti kalah tender, atau menyerahkan dokumen yang tidak bisa dipakai klien sama sekali.

Kenapa SBOM tiba-tiba penting?

Pelajaran dari Log4Shell

Saat celah Log4Shell diumumkan pada Desember 2021, banyak perusahaan menghabiskan berhari-hari hanya untuk menjawab satu pertanyaan: aplikasi mana saja yang memakai Log4j? Pustaka itu sering tersembunyi beberapa lapis di dalam dependensi lain.

Perusahaan yang punya SBOM untuk setiap aplikasi bisa menjawabnya jauh lebih cepat, cukup dengan mencari nama komponen di kumpulan SBOM. Inilah alasan utama klien meminta SBOM: bukan untuk arsip, tapi agar mereka bisa langsung tahu apakah produkmu terdampak saat celah baru muncul. Kasus seperti backdoor XZ Utils memperkuat kebutuhan yang sama.

Dorongan dari regulasi

Di Amerika Serikat, Executive Order 14028 tentang keamanan siber (Mei 2021) mendorong lahirnya standar minimum SBOM. NTIA kemudian menerbitkan dokumen "The Minimum Elements For a Software Bill of Materials" pada Juli 2021. Pada 29 Juli 2026, CISA bersama NSA, FBI, dan sejumlah lembaga keamanan siber internasional merilis versi baru, "2026 Minimum Elements for a Software Bill of Materials", yang menggantikan acuan 2021 itu dengan rincian data yang lebih banyak.

Di Uni Eropa, Cyber Resilience Act (Regulation (EU) 2024/2847) berlaku sejak 10 Desember 2024. Aturan ini mewajibkan produsen produk dengan elemen digital menyusun SBOM dalam format yang umum dipakai dan bisa dibaca mesin, setidaknya mencakup dependensi tingkat atas. Sebagian besar kewajibannya mulai diterapkan 11 Desember 2027, sedangkan kewajiban pelaporan celah yang dieksploitasi sudah berlaku sejak 11 September 2026.

Perusahaan di Indonesia yang punya induk, mitra, atau pasar di AS dan Eropa ikut terbawa arus ini. Persyaratan mereka diteruskan ke rantai vendornya, termasuk vendor lokal.

Apa saja isi SBOM yang layak?

Dokumen NTIA 2021 menetapkan tujuh data minimum untuk setiap komponen:

  • Nama pemasok (supplier name)
  • Nama komponen
  • Versi komponen
  • Pengenal unik lain, misalnya purl atau CPE
  • Hubungan dependensi (komponen ini dipakai oleh siapa)
  • Pembuat data SBOM
  • Waktu SBOM dibuat (timestamp)

Versi CISA 2026 menambah rincian di atas itu. Bila klienmu menyebut acuan tertentu, baca dokumen aslinya untuk memastikan semua kolom yang diminta terisi.

SBOM juga harus dibuat ulang setiap kali software berubah. SBOM dari rilis enam bulan lalu tidak berguna untuk menilai rilis yang sedang berjalan di server klien.

SPDX atau CycloneDX?

Dua format yang paling banyak dipakai adalah SPDX dan CycloneDX. Keduanya bisa dibaca mesin dan sama-sama diterima oleh acuan NTIA maupun CISA.

SPDXCycloneDX
PengelolaLinux FoundationOWASP Foundation
Status standarISO/IEC 5962:2021ECMA-424
Asal fokusLisensi dan kepatuhan open sourceKeamanan aplikasi dan analisis risiko
Format file umumJSON, tag-value, RDF, YAMLJSON, XML
Cocok untukAudit lisensi, kebutuhan legalPelacakan celah, integrasi dengan alat keamanan

Kapan memilih SPDX, kapan CycloneDX?

Pilih SPDX bila klienmu banyak menanyakan lisensi, misalnya tim legal yang ingin memastikan tidak ada komponen berlisensi copyleft di produk komersial. SPDX punya sejarah panjang di sisi kepatuhan lisensi dan diakui sebagai standar ISO.

Pilih CycloneDX bila klien terutama ingin memantau kerentanan dan memasukkan SBOM ke platform keamanan mereka. Banyak alat analisis keamanan aplikasi mendukung CycloneDX secara bawaan.

Kalau klien tidak menyebut format, tanyakan dulu. Hampir semua alat pembuat SBOM bisa menghasilkan keduanya, jadi menyediakan dua format sekaligus pun tidak sulit.

Bagaimana cara membuat SBOM?

SBOM sebaiknya dibuat otomatis di pipeline build, bukan diketik manual. Beberapa alat open source yang umum:

  • Syft dari Anchore, misalnya syft <nama-image> -o spdx-json > sbom.json
  • Trivy dari Aqua Security, misalnya trivy image --format cyclonedx --output sbom.json <nama-image>. Trivy juga bisa memindai celah, seperti dibahas di cara scan image Docker dengan Trivy.
  • cdxgen dari proyek CycloneDX, untuk berbagai bahasa pemrograman

Jalankan alat ini di setiap rilis, simpan hasilnya bersama artefak rilis, dan beri nomor versi yang sama dengan software-nya.

Apa yang perlu disiapkan saat klien meminta SBOM?

Sebelum mengirim file, tanyakan tiga hal kepada klien: format yang diminta (SPDX atau CycloneDX), acuan isi yang mereka pakai (NTIA 2021, CISA 2026, atau daftar sendiri), dan cakupannya. Cakupan penting karena aplikasi web misalnya terdiri dari kode aplikasi, image container, dan kadang komponen di sisi browser. Klien bisa meminta satu atau semuanya.

Setelah itu, siapkan juga penjelasan singkat tentang proses di balik SBOM: siapa yang membuatnya, seberapa sering diperbarui, dan bagaimana kamu menindaklanjuti bila ada celah baru di salah satu komponen. Klien besar biasanya lebih menilai proses ini daripada file SBOM itu sendiri. Bila kamu memakai jasa pihak ketiga untuk membangun aplikasi, masukkan kewajiban menyerahkan SBOM ke dalam kontraknya.

Pertanyaan yang sering diajukan

Apakah SBOM wajib secara hukum di Indonesia?

Sampai artikel ini ditulis, kami tidak menemukan aturan Indonesia yang secara khusus mewajibkan SBOM. Permintaan biasanya datang dari kontrak klien atau dari aturan luar negeri yang berlaku bagi klien atau induk perusahaannya.

Apakah membuka SBOM berarti membuka kode sumber?

Tidak. SBOM hanya berisi daftar komponen dan versinya, bukan kode sumbermu. Meski begitu, wajar bila kamu membagikannya lewat jalur terbatas dengan perjanjian kerahasiaan.

Seberapa sering SBOM perlu diperbarui?

Setiap kali ada rilis baru atau perubahan dependensi. Paling praktis bila dibuat otomatis di pipeline build untuk setiap rilis.

Apakah SBOM juga berguna untuk tim internal?

Sangat berguna. Saat ada celah baru, tim bisa langsung mencari komponen yang terdampak di semua aplikasi, lalu memprioritaskan patch tanpa menebak-nebak.

Sumber & referensi

Baca juga