Cyber Security Academy · Pelajaran

Bil Bahan Perisian (SBOM)

Menyenaraikan kandungan perisian anda.

Pelajaran 2 daripada 413 langkah

Bil Bahan Perisian (SBOM) ialah pelajaran Cyber Security Academy percuma di CoddyKit. Ini ialah pelajaran 2 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Cyber Security Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Cyber Security Academy merangkumi sejumlah 4 pelajaran.

Apakah Itu SBOM

Senarai Bahan Perisian (SBOM) ialah inventori formal yang boleh dibaca mesin bagi setiap komponen dalam sesuatu perisian: perpustakaan, versi, lesen dan maklumat pembekal.

Seperti label makanan menyenaraikan ramuan, SBOM membolehkan Anda menjawab dalam beberapa saat: adakah produk ini mengandungi versi X yang terdedah? Tanpanya, soalan itu boleh mengambil masa berhari-hari untuk dijawab melalui penyiasatan manual yang memakan masa.

Mengapa SBOM Penting Kini

Apabila kerentanan kritikal ditemui, soalan operasi pertama ialah tentang pendedahan: produk kita yang manakah mengedarkan komponen yang terjejas?

Semasa insiden Log4Shell, organisasi yang mempunyai SBOM menyoal inventori mereka dan membuat pengutamaan dalam masa beberapa jam. Organisasi tanpa SBOM menghabiskan berminggu-minggu mencari dalam direktori binaan. Pengawal selia dan pembeli utama semakin memerlukan SBOM sebagai syarat perolehan.

  • Analisis pantas terhadap kesan kerentanan
  • Pematuhan lesen dan penjejakan kewajipan
  • Ketelusan rantaian bekalan untuk pelanggan dan juruaudit

Format SBOM Standard

Dua standard terbuka paling banyak digunakan. Alat biasanya boleh menukar antara kedua-duanya.

  • SPDX — standard Linux Foundation yang menekankan pelesenan dan diterima secara meluas oleh pengawal selia
  • CycloneDX — standard OWASP yang berfokus pada keselamatan serta menyokong data kerentanan dan hubungan kebergantungan

Elakkan mencipta format sendiri; pengguna dan pengimbas menjangkakan format ini.

Kandungan Entri

Setiap entri komponen hendaklah mengandungi maklumat identiti yang mencukupi untuk dipadankan dengan suapan kerentanan. Medan utama:

  • nama dan versi — tepat, bukan julat
  • PURL (alamat pakej) — pengecam sejagat seperti pkg:npm/lodash@4.17.21
  • cincangan — untuk mengesahkan integriti
  • lesen — pengecam lesen SPDX
  • pembekal — pihak yang menghasilkannya
# A PURL uniquely identifies a component across ecosystems
pkg:npm/lodash@4.17.21
pkg:pypi/requests@2.31.0
pkg:golang/github.com/gin-gonic/gin@v1.9.1

Menjana SBOM

Jana SBOM secara automatik daripada sumber atau artifak binaan. Syft ialah penjana merentas ekosistem yang lazim dan menghasilkan kedua-dua format standard tersebut.

# from a project directory (CycloneDX JSON)
syft dir:. -o cyclonedx-json=sbom.cdx.json

# from a container image (SPDX JSON)
syft my-app:1.4.0 -o spdx-json=sbom.spdx.json

# CycloneDX has native generators per ecosystem too
cyclonedx-npm --output-file sbom.json

SBOM Sumber berbanding Binaan berbanding Masa Jalan

SBOM yang dijana pada peringkat berbeza merakam keadaan sebenar yang berbeza.

  • SBOM sumber — perkara yang diisytiharkan oleh manifes; mungkin terlepas kod yang dihimpunkan atau disertakan secara setempat
  • SBOM binaan — perkara yang sebenarnya ditarik masuk oleh binaan; paling tepat untuk keluaran
  • SBOM masa jalan / yang digunakan — perkara yang benar-benar terdapat dalam imej yang sedang berjalan, termasuk pakej OS

Untuk jaminan rantaian bekalan, jana pada masa binaan daripada artifak sebenar dan imbas bekas akhir untuk pakej peringkat OS juga.

Mengimbas SBOM untuk Mengesan Kerentanan

SBOM menjadi berkuasa apabila diberikan kepada pemadan yang memetakan komponen kepada CVE yang diketahui. Ini memisahkan penjanaan daripada analisis: imbas SBOM lama pada hari CVE baharu muncul.

# match an SBOM against vulnerability databases
grype sbom:sbom.cdx.json

# OSV scanner consumes SBOMs directly
osv-scanner --sbom=sbom.spdx.json

# fail CI above a severity threshold
grype sbom:sbom.cdx.json --fail-on high

VEX: Menyatakan Perkara yang Boleh Dieksploitasi

SBOM mungkin menunjukkan komponen terdedah yang sebenarnya tidak boleh dieksploitasi dalam produk Anda (fungsi terdedah itu tidak pernah dipanggil). Dokumen VEX (eXchange Kebolehcerobohan Kerentanan) merekodkan penilaian tersebut.

VEX mengurangkan hingar: daripada setiap pelanggan panik kerana CVE yang disenaraikan, Anda menerbitkan pernyataan not_affected dengan justifikasi atau affected dengan pemulihan. Ia menukar inventori mentah menjadi proses pengutamaan yang boleh ditindaklanjuti.

Mengedarkan dan Menandatangani SBOM

SBOM hanya boleh dipercayai jika sahih dan dipautkan kepada artifak tepat yang diterangkannya. Tandatanganinya dan lampirkannya sebagai pengesahan, bukan fail longgar.

# attach a signed SBOM attestation to an image with cosign
cosign attest --predicate sbom.cdx.json \
  --type cyclonedx \
  my-registry/my-app:1.4.0

# verify the attached SBOM attestation
cosign verify-attestation --type cyclonedx my-registry/my-app:1.4.0

Mengautomasikan SBOM dalam Integrasi Berterusan

SBOM manual cepat menyimpang. Sambungkan penjanaan ke saluran paip supaya setiap keluaran menghasilkan dan menyimpan satu SBOM sebagai artifak binaan, sebaik-baiknya ditandatangani dan diimbas dalam tugas yang sama.

  • Jana daripada artifak yang dibina, bukan repositori sahaja
  • Simpan SBOM dalam registri yang boleh dibuat pertanyaan, dengan versi sebagai kunci
  • Imbas semula SBOM tersimpan mengikut jadual terhadap suapan CVE terkini
  • Sekat keluaran berdasarkan hasil pengimbasan kerentanan

Kesilapan Lazim SBOM

SBOM gagal tanpa disedari apabila dianggap sekadar tanda semak.

  • Lapuk — dijana sekali dan tidak pernah dijana semula
  • Tidak lengkap — terlepas pakej OS serta kod yang dipautkan secara statik atau disimpan secara setempat
  • Tidak disahkan — tiada cincangan yang memautkannya kepada artifak yang digunakan
  • Tidak digunakan — dihasilkan tetapi tidak pernah diimbas atau disoal

SBOM yang tepat, dijana semula, ditandatangani dan diimbas secara berterusan ialah matlamatnya, bukan fail JSON sekali guna.

Semakan Ringkas: Tujuan SBOM

Gunakan perkara yang telah Anda pelajari dalam senario insiden.

Imbas Kembali: SBOM

Kini Anda boleh menyenaraikan kandungan perisian Anda dan mengambil tindakan berdasarkan maklumat itu.

  • SBOM ialah senarai setiap komponen yang boleh dibaca mesin, dalam format SPDX atau CycloneDX
  • Kenal pasti komponen menggunakan PURL, versi, cincangan dan lesen
  • Jana pada masa binaan, kemudian berikan kepada pemadan (grype, osv-scanner) untuk mencari CVE
  • Gunakan VEX untuk menyatakan kebolehcerobohan sebenar dan mengurangkan amaran palsu
  • Tandatangani dan automatikkan dalam integrasi berterusan; imbas semula SBOM tersimpan terhadap suapan baharu

Seterusnya: membuktikan asal artifak melalui penandatanganan.

Percuma untuk bermula

Pelajari Cyber Security Academy dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
76
Pelajaran
303

Soalan Lazim

Adakah pelajaran “Bil Bahan Perisian (SBOM)” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Cyber Security Academy, termasuk “Bil Bahan Perisian (SBOM)”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Cyber Security Academy merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Bil Bahan Perisian (SBOM)”?

Menyenaraikan kandungan perisian anda. Anda berlatih Cyber Security Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Cyber Security Academy?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Cyber Security Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 2 daripada 4.

Berapa lamakah pelajaran “Bil Bahan Perisian (SBOM)” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Cyber Security Academy ini?

Ya. Setiap pelajaran Cyber Security Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Ancaman Rantaian Bekalan
  2. Bil Bahan Perisian (SBOM)
  3. Penandatanganan Kebergantungan dan Artifak
  4. Melindungi Saluran Paip CI/CD
← Kembali ke Cyber Security Academy