Ketahui Lebih Lanjut tentang Buku Karya Benny Czarny, *Cybersecurity Upside Down*

Pelajari Lebih Lanjut
Kami menggunakan kecerdasan buatan untuk menerjemahkan situs ini, dan meskipun kami berupaya semaksimal mungkin untuk memastikan keakuratan, terjemahan tersebut mungkin tidak selalu 100% tepat. Kami mengucapkan terima kasih atas pengertian Anda.

Format SBOM: Wawasan Ahli tentang Software KeamananSupply Chain 

Oleh OPSWAT
Bagikan Postingan Ini

SBOM (Software Bill of Materials) berperan sebagai elemen dasar dalam menjamin integritas komponen perangkat lunak—yang asal-usulnya dapat ditelusuri hingga upaya pengembangan perangkat lunak paling awal untuk mendokumentasikan ketergantungan pada perangkat lunak sumber terbuka pada tahun 1990-an. SBOM membantu organisasi melacak komponen dalam tumpukan aplikasi perangkat lunak mereka dan memastikan kepatuhan terhadap peraturan industri. Seiring dengan semakin kompleksnya ekosistem perangkat lunak, penerapan format SBOM yang terstandarisasi menjadi sangat penting untuk meningkatkan keamanan dan interoperabilitas. 

Definisi SBOM 

Inventarisasi Perangkat Lunak ( Software )Bill of Materials (SBOM) adalah daftar lengkap semua komponen dalam suatu aplikasi perangkat lunak, termasuk elemen perangkat lunak milik sendiri, sumber terbuka, dan pihak ketiga. Inventarisasi ini menyediakan metadata terperinci seperti nama perangkat lunak, versi, penyedia, informasi lisensi, serta nilai hash kriptografis untuk verifikasi.  

Dengan memberikan gambaran lengkap mengenai ketergantungan perangkat lunak, SBOM meningkatkan transparansi rantai pasokan, memfasilitasi praktik " vulnerability detection", serta mendukung kepatuhan terhadap peraturan. SBOM membantu organisasi memitigasi risiko keamanan, mempermudah proses audit, dan meningkatkan respons terhadap insiden dengan mengidentifikasi serta menangani potensi ancaman di dalam ekosistem perangkat lunak mereka. 

Apa itu Standar SBOM? 

Standar SBOM (daftar bahan perangkat lunak) menjamin konsistensi dan interoperabilitas di berbagai industri dan organisasi dengan menyediakan kerangka kerja terpadu untuk mendokumentasikan komponen perangkat lunak. Standar-standar ini membantu perusahaan menyederhanakan pengelolaan kerentanan, mematuhi persyaratan regulasi yang terus berkembang, serta memfasilitasi kolaborasi yang lancar antara produsen perangkat lunak, vendor, dan pengguna akhir.

Dengan menerapkan format SBOM yang terstandarisasi, organisasi dapat meningkatkan keamanan rantai pasokan perangkat lunak, mengurangi risiko manipulasi perangkat lunak, dan meningkatkan transparansi perangkat lunak secara keseluruhan.

Apa itu Format SBOM? 

Format SBOM adalah skema terstandarisasi yang dapat dibaca oleh mesin, yang digunakan untuk menyusun dan berbagi data yang terdapat dalam sebuah SBOM. Format-format ini mendefinisikan cara detail komponen perangkat lunak direpresentasikan dan dipertukarkan antar sistem.

Format SBOM yang paling banyak digunakan antara lain SPDX dan CycloneDX, yang keduanya mendukung otomatisasi, interoperabilitas, dan keterlacakan di seluruh siklus hidup perangkat lunak. Format-format ini memungkinkan peningkatan vulnerability detection, kepatuhan terhadap peraturan, dan manajemen risiko rantai pasokan dengan memastikan dokumentasi komponen perangkat lunak yang konsisten.

Komponen Utama SBOM 

gambar yang menunjukkan komponen-komponen utama dari sebuah SBOM (daftar bahan perangkat lunak)

Agar efektif, sebuah SBOM harus memuat unsur-unsur utama yang memberikan transparansi penuh terhadap suatu paket perangkat lunak. NTIA (Badan Administrasi Telekomunikasi dan Informasi Nasional) AS menetapkan tujuh komponen minimum untuk sebuah SBOM: 

  • Rincian Pemasok: Menunjukkan entitas yang bertanggung jawab atas perangkat lunak tersebut. 
  • Software dan Nama Komponen: Mengidentifikasi komponen perangkat lunak. 
  • Informasi Versi: Menjelaskan rincian rilis komponen tersebut. 
  • Nama Penulis: Orang atau organisasi (bukan alat) yang menyusun laporan SBOM. 
  • Hubungan Antar Komponen: Menjelaskan ketergantungan dan interaksi di antara elemen-elemen perangkat lunak. 
  • Cap waktu: Bagian dari meta-informasi SBOM yang mencantumkan tanggal dan waktu pembuatan laporan. 
  • Pengidentifikasi Unik Lainnya: Memberikan informasi tambahan untuk mendefinisikan komponen perangkat lunak 

Komponen penting lainnya antara lain: 

  • Jenis SBOM: Memberikan penjelasan mengenai bagaimana dan mengapa laporan SBOM diperlukan. 
  • Informasi Lisensi: Menjelaskan hak penggunaan perangkat lunak tersebut.
  • Fungsi Hash Kriptografi: Menjamin integritas dan keaslian komponen. 

Format SPDX SBOM

FormatSoftware Package Data Exchange (SPDX), yang dikembangkan oleh Linux Foundation, merupakan standar SBOM yang banyak digunakan dan dirancang untuk memfasilitasi kepatuhan terhadap lisensi perangkat lunak sumber terbuka serta pelacakan komponen perangkat lunak. Format ini menyediakan cara terstruktur untuk mendokumentasikan komponen perangkat lunak beserta metadata yang terkait, sehingga menjadikannya alat yang sangat penting bagi transparansi dan keamanan perangkat lunak.

Selain itu, SPDX adalah format yang telah memperoleh status sertifikasi ISO (Organisasi Internasional untuk Standardisasi), sehingga menjadikannya format yang memenuhi persyaratan standardisasi dan jaminan mutu.

Dokumen dalam format SPDX berisi beberapa elemen utama:

Informasi Paket

Menjelaskan paket, yang dapat terdiri dari satu atau lebih berkas – termasuk kode sumber, berkas biner, dokumen, dan sebagainya. Jenis informasi lainnya mencakup rincian mengenai penulis asli, sumber, URL unduhan, checksum, dan ikhtisar lisensi.

Metadata Tingkat File

Rincian mengenai berkas-berkas tertentu, seperti lisensi, checksum, kontributor berkas, dan sebagainya.

Informasi Lisensi Lainnya

Menjamin pengelolaan kekayaan intelektual dengan menetapkan lisensi perangkat lunak.

Software Daftar Ketergantungan

Mendokumentasikan hierarki ketergantungan perangkat lunak.

Anotasi dan Hubungan

Menyediakan metadata tambahan dan menetapkan hubungan antar artefak perangkat lunak.

Format SPDX mendukung berbagai format, sehingga memberikan fleksibilitas sesuai dengan kebutuhan penggunaan dan kompatibilitas alat:

  • Tag/Nilai (.spdx): Format berbasis teks yang sederhana
  • JSON (.spdx.json): Format yang ringkas dan dapat dibaca oleh mesin
  • YAML (.spdx.yml): Format serialisasi data yang mudah dipahami manusia
  • RDF/XML (.spdx.rdf): Format terstruktur untuk representasi data semantik
  • Lembar kerja (.xls): Format tabel yang berguna untuk analisis manual

SPDX telah diterapkan secara luas oleh perusahaan-perusahaan teknologi besar, badan pengatur, dan komunitas perangkat lunak sumber terbuka. Standar ini umumnya digunakan untuk:

  • Manajemen lisensi perangkat lunak sumber terbuka: Membantu organisasi memantau dan mematuhi persyaratan lisensi sumber terbuka.
  • Audit keamanan: Memberikan wawasan mengenai komponen perangkat lunak untuk mendeteksi kerentanan dan mengelola risiko.
  • Kepatuhan terhadap peraturan: Memastikan kepatuhan terhadap standar industri dan persyaratan hukum yang berkaitan dengan transparansi perangkat lunak.
  • Software pelacakan asal-usul: Menetapkan riwayat asal-usul komponen perangkat lunak yang jelas guna meningkatkan akuntabilitas.

Dengan memanfaatkan format SPDX, organisasi dapat meningkatkan keamanan rantai pasokan, menyederhanakan upaya kepatuhan, dan memperoleh visibilitas yang lebih baik terhadap ekosistem perangkat lunak mereka.

grafik perbandingan format SBOM SPDX dengan format SBOM Cyclone DX

Format SBOM CycloneDX 

Dikembangkan oleh OWASP Foundation, format CycloneDX menyediakan BOM (Bill of Materials) full-stack, termasuk SBOM, dan dirancang dengan penekanan kuat pada keamanan, pengelolaan kerentanan, serta transparansi perangkat lunak yang komprehensif. Format ini menyediakan model objek preskriptif yang secara efisien menggambarkan hubungan kompleks di antara komponen perangkat lunak, layanan, dan ketergantungan. 

Fitur-fitur utama format CycloneDX antara lain:

Representasi Metadata yang Komprehensif

Mencatat rincian pemasok, informasi perizinan, penulis, alat, proses produksi, dan sebagainya.

Desain yang Berorientasi pada Keamanan

Memungkinkan identifikasi kerentanan yang akurat, analisis kelayakan eksploitasi, serta dukungan untuk kasus penggunaan VEX.

Pemetaan Ketergantungan dan Komposisi

Menunjukkan hubungan langsung maupun transitif antara komponen perangkat lunak dan layanan.

Berbagai Format Serialisasi

Mendukung JSON, XML, dan Protocol Buffers (protobuf), sehingga menjamin kompatibilitas yang luas dengan alat-alat keamanan.

Kepatuhan dan Standardisasi

Terintegrasi dengan standar keamanan seperti OWASP ASVS, MASVS, SCVS, dan SAMM, sehingga menyediakan kerangka kerja yang dapat dibaca oleh mesin untuk pemantauan kepatuhan.

Berkat arsitekturnya yang kokoh dan pendekatan yang berorientasi pada keamanan, CycloneDX banyak digunakan dalam aplikasi yang berfokus pada keamanan siber untuk manajemen kerentanan dan pemantauan keamanan. Hal ini menjadikan format CycloneDX sebagai alat yang sangat penting dalam manajemen risiko rantai pasokan perangkat lunak. 

Perbandingan Format CycloneDX dan SPDX 

Fitur SPDX CycloneDX
Fokus Kepatuhan terhadap lisensi sumber terbuka dan kekayaan intelektualKeamanan aplikasi dan analisis rantai pasokan
Fitur Metadata yang lengkap untuk komponen perangkat lunakRingan, mudah digunakan, dengan fokus pada data komponen penting dan penilaian keamanan
Contoh Penggunaan Lisensi sumber terbuka (sejak awal), audit kepatuhan, dan riwayat asal-usul perangkat lunakManajemen kerentanan, analisis rantai pasokan perangkat lunak, dan pemantauan keamanan
Adopsi Perusahaan teknologi besar dan tim kepatuhanPenyedia alat keamanan dan perusahaan keamanan siber, tim DevSecOps

Menjelajahi Tag SWID 

gambar yang menunjukkan penerapan tag swid

Aplikasi Tag SWID 

Untuk mengelola perangkat lunak dengan baik, perusahaan harus menjaga keakuratan inventaris perangkat lunak pada perangkat yang dikelolanya, guna mendukung fungsi-fungsi bisnis, teknologi informasi, dan keamanan siber di tingkat yang lebih tinggi. Inventaris perangkat lunak yang akurat membantu organisasi untuk: 

  • Kelola kepatuhan terhadap perjanjian lisensi perangkat lunak dengan memantau pemasangan dan penggunaan, sehingga dapat menghindari biaya yang tidak perlu. 
  • Memastikan kepatuhan terhadap kebijakan organisasi, sekaligus mengurangi jejak perangkat lunak dan area kerentanan. 
  • Periksa pembaruan dan tambalan untuk mengurangi risiko kerentanan dan ancaman siber yang telah diketahui. 
  • Menilai konfigurasi berdasarkan kebijakan keamanan untuk memperkuat sistem dan mengurangi vektor serangan. 
  • Rencanakan investasi untuk peningkatan perangkat lunak dan penggantian sistem lama. 

Meskipun beberapa vendor menawarkan alat untuk pengelolaan lisensi, pembaruan, tambalan, dan pelacakan konfigurasi, perusahaan sering kali mengandalkan berbagai alat untuk mengelola produk perangkat lunak yang berbeda-beda. Fragmentasi ini meningkatkan risiko kesalahan manusia dan keterbatasan sumber daya, sehingga membatasi kemampuan organisasi untuk mempertahankan pengelolaan perangkat lunak yang efektif. Diperlukan mekanisme terpadu untuk memberikan gambaran menyeluruh mengenai seluruh perangkat lunak di seluruh perusahaan, terlepas dari vendornya. 

Tag SWID (Software Identification), sebagaimana didefinisikan dalam standar ISO/IEC 19770-2:2015, memenuhi kebutuhan ini dengan menyediakan cara yang transparan untuk melacak perangkat lunak yang terpasang pada perangkat yang dikelola. Berkas Tag SWID berisi metadata deskriptif mengenai rilis perangkat lunak tertentu dan mengikuti siklus hidup di mana berkas tersebut ditambahkan saat instalasi dan dihapus saat uninstalasi. Siklus hidup ini memastikan bahwa keberadaan Tag SWID secara langsung berkorelasi dengan keberadaan produk perangkat lunak yang digambarkannya. 

NIST (National Institute of Standards and Technology) merekomendasikan penerapan standar SWID Tag, dan sejumlah badan standar, termasuk TGC (Trusted Computing Group) dan IETF (Internet Engineering Task Force), telah mengintegrasikan SWID Tag ke dalam standar mereka.  

NIST terus mendorong penggunaan SWID Tags agar semakin luas diterapkan di kalangan komunitas perangkat lunak serta diintegrasikan ke dalam data referensi keamanan siber dan konten otomatisasi keamanan. Selain itu, NIST telah memasukkan data SWID Tags ke dalam NVD (National Vulnerability Database) dan SCAP (Security Content Automation Protocol) versi 1.3, sehingga meningkatkan pelacakan kerentanan dan manajemen keamanan. 

Dengan mengintegrasikan SWID Tags ke dalam kerangka kerja otomatisasi keamanan, perusahaan dapat meningkatkan pelacakan inventaris perangkat lunak, penilaian kerentanan, pemantauan kepatuhan, serta postur keamanan siber secara keseluruhan. 

Pentingnya Daftar Bahan ( Software ) 

SBOM memainkan peran penting dalam transparansi dan akuntabilitas perangkat lunak. SBOM memberikan wawasan mengenai rantai pasokan perangkat lunak, sehingga memungkinkan organisasi untuk memverifikasi integritas komponen perangkat lunak. Tingkat transparansi ini mengurangi risiko manipulasi perangkat lunak dan modifikasi yang tidak sah, yang pada akhirnya memperkuat kepercayaan antara produsen perangkat lunak, vendor, dan pengguna akhir. 

Selain itu, SBOM mendukung penanggulangan insiden dan pengelolaan siklus hidup perangkat lunak. Ketika kerentanan terdeteksi, keberadaan SBOM yang terperinci memungkinkan tim keamanan untuk segera menilai dampaknya dan menerapkan tambalan (patch) secara efektif. Pendekatan proaktif ini meminimalkan waktu henti dan memastikan bahwa sistem-sistem kritis tetap aman dari ancaman yang muncul. 

SBOM dalam Keamanan dan Kepatuhan 

SBOM merupakan alat penting untuk menjamin keamanan perangkat lunak dan kepatuhan terhadap peraturan. Dengan menyediakan daftar lengkap semua komponen perangkat lunak, SBOM memungkinkan organisasi melacak dan mengelola kerentanan secara lebih efektif. SBOM memungkinkan tim keamanan untuk secara proaktif mengidentifikasi dan memitigasi risiko, memastikan bahwa semua dependensi pihak ketiga dan sumber terbuka selalu diperbarui serta bebas dari eksploitasi yang diketahui. Visibilitas ini sangat penting seiring dengan semakin canggih dan meluasnya ancaman siber. 

Kerangka kerja regulasi seperti NIST, ISO, Perintah Eksekutif 14028, dan panduan teknis regional lainnya mewajibkan transparansi perangkat lunak serta langkah-langkah keamanan yang lebih ketat, sehingga menjadikan SBOM sebagai persyaratan penting untuk kepatuhan. Organisasi yang memanfaatkan SBOM dapat dengan lebih mudah menunjukkan kepatuhan terhadap standar-standar tersebut, sekaligus menghindari potensi konsekuensi hukum dan finansial. Dengan menjaga SBOM agar tetap akurat dan terkini, perusahaan dapat mempermudah proses audit, mengurangi beban administrasi kepatuhan, dan memastikan bahwa perangkat lunak memenuhi peraturan industri. 

Perbandingan Format SBOM 

Kekuatan dan Kelemahan 

Setiap format SBOM memiliki tujuan yang berbeda-beda, sehingga sangat penting untuk memilih format yang tepat sesuai dengan kebutuhan spesifik. 

Fitur KekuatanKelemahan
SPDXLengkap dan banyak digunakan. Sangat berfokus pada perizinan dan kepatuhan. Bisa jadi rumit untuk proyek-proyek berskala kecil
CycloneDX Dioptimalkan untuk manajemen keamanan dan kerentanan. Kurang menekankan pada detail perizinan
Tag SWID Terintegrasi ke dalam perangkat lunak Standarisasi yang terbatas di berbagai sektor industri

Kesimpulan 

Memahami dan menerapkan SBOM sangat penting bagi keamanan perangkat lunak modern. Dengan memanfaatkan format seperti SPDX, CycloneDX, dan SWID tags, organisasi dapat meningkatkan transparansi rantai pasokan perangkat lunak mereka serta memitigasi risiko keamanan. 

Langkah-Langkah Selanjutnya 

Evaluasi praktik rantai pasokan perangkat lunak organisasi Anda saat ini dan pelajari berbagai format SBOM yang sesuai dengan kebutuhan keamanan dan kepatuhan Anda. 

Untuk mengetahui lebih lanjut tentang cara mengamankan rantai pasokan perangkat lunak Anda dengan solusi SBOM yang andal, kunjungi OPSWATdan lihat solusi keamanan Software Supply Chain . 

Ikuti terus kabar terbaru dari OPSWAT!

Daftar sekarang untuk mendapatkan kabar terbaru dari perusahaan, cerita, informasi acara, dan masih banyak lagi.