Az SBOM (Software Bill of Materials) a szoftverkomponensek integritásának biztosításában alapvető elemként szolgál - eredete a legkorábbi, a nyílt forráskódú függőségek dokumentálására irányuló szoftverfejlesztési erőfeszítésekig nyúlik vissza az 1990-es években. Az SBOM-ok segítenek a szervezeteknek nyomon követni a szoftveralkalmazásukban lévő komponenseket, és fenntartani az iparági szabályozásoknak való megfelelést. Mivel a szoftver ökoszisztémák egyre összetettebbé válnak, a szabványosított SBOM-formátumok elfogadása alapvető fontosságúvá válik a biztonság és az interoperabilitás javítása érdekében.
- SBOM meghatározása
- Mi az a SBOM-szabvány?
- Mi az a SBOM formátum?
- Az SBOM fő összetevői
- SPDX SBOM formátum
- CycloneDX SBOM formátum
- CycloneDX vs SPDX Formátumok
- SWID-címkék felfedezése
- A Software anyagjegyzékek fontossága
- SBOM-formátumok összehasonlítása
- Egyéb SBOM-mal kapcsolatos formátumok
- Következtetés
- Következő lépések
SBOM meghatározása
A Software Bill of Materials (SBOM) ) egy szoftveralkalmazáson belüli összes komponens átfogó leltára, beleértve a saját, a nyílt forráskódú és a harmadik féltől származó szoftverelemeket is. Részletes metaadatokat tartalmaz, például a szoftver nevét, verzióját, szállítóját, licencadatokat és az ellenőrzéshez szükséges kriptográfiai hash-eket.
A szoftverfüggőségek teljes átláthatóságát biztosítva az SBOM-ok növelik az ellátási lánc átláthatóságát, lehetővé teszik a vulnerability detection, és támogatják a jogszabályoknak való megfelelést. Segítenek a szervezeteknek a biztonsági kockázatok mérséklésében, az auditok egyszerűsítésében és az incidensekre való reagálás javításában azáltal, hogy azonosítják és kezelik a szoftver ökoszisztémán belüli potenciális fenyegetéseket.
Mi az a SBOM-szabvány?
A SBOM (szoftver anyagjegyzék) szabványok biztosítják a különböző iparágak és szervezetek közötti konzisztenciát és átjárhatóságot azáltal, hogy egységes keretet biztosítanak a szoftverkomponensek dokumentálásához. Ezek a szabványok segítik a vállalkozásokat a sebezhetőségek kezelésének racionalizálásában, a fejlődő szabályozási követelményeknek való megfelelésben, valamint a szoftvergyártók, a gyártók és a végfelhasználók közötti zökkenőmentes együttműködés elősegítésében.
A szabványosított SBOM-formátumok elfogadásával a szervezetek javíthatják a szoftverellátási lánc biztonságát, csökkenthetik a szoftverhamisítás kockázatát, és fokozhatják a szoftver általános átláthatóságát.
Mi az a SBOM formátum?
Az SBOM-formátumok szabványosított, gépileg olvasható sémák, amelyeket az SBOM-ban szereplő adatok strukturálására és megosztására használnak. Ezek a formátumok határozzák meg, hogy a szoftverkomponensek részleteit hogyan kell ábrázolni és kicserélni a rendszerek között.
A legelterjedtebb SBOM-formátumok közé tartozik az SPDX és a CycloneDX, amelyek mindkettő támogatja az automatizálást, az interoperabilitást és a nyomon követhetőséget a szoftver teljes életciklusa során. Ezek a formátumok a szoftverkomponensek következetes dokumentációjának biztosításával lehetővé teszik a vulnerability detection jobb vulnerability detection, a jogszabályi megfelelés és az ellátási lánc kockázatkezelését.
Az SBOM fő összetevői
Ahhoz, hogy hatékony legyen, az SBOM-nak olyan kulcsfontosságú elemeket kell tartalmaznia, amelyek teljes átláthatóságot biztosítanak a szoftvercsomagban. Az amerikai NTIA (National Telecommunications and Information Administration) hét minimális elemet határoz meg az SBOM számára:
- Szállítói részletek: A szoftverért felelős szervezetet azonosítja.
- Software és komponens neve: A szoftverkomponens azonosítása.
- Verziós információk: Megadja az összetevő kiadásának adatait.
- Szerző neve: Az a személy vagy szervezet (de nem az eszköz), aki vagy amely a SBOM-jelentést létrehozta.
- Komponenskapcsolatok: A szoftverelemek közötti függőségeket és kölcsönhatásokat írja le.
- Időbélyegző: A SBOM metainformáció része, amely a jelentés elkészítésének dátumát és időpontját adja meg.
- Egyéb egyedi azonosítók: További információkat ad a szoftverkomponensek meghatározásához
Egyéb lényeges összetevők:
- Az SBOM típusa: Megadja a kontextust, hogy hogyan és miért van szükség az SBOM-jelentésre.
- Licencinformációk: Meghatározza a szoftver használati jogait.
- Kriptográfiai kivonat: Biztosítja az összetevők integritását és hitelességét.
SPDX SBOM formátum
A Linux Foundation által kifejlesztett Software Package Data Exchange (SPDX) formátum egy széles körben használt SBOM-szabvány, amelyet a nyílt forráskódú licenceknek való megfelelés és a szoftverkomponensek nyomon követésének megkönnyítésére terveztek. Strukturált módot biztosít a szoftverkomponensek és a hozzájuk tartozó metaadatok dokumentálására, így a szoftverek átláthatóságának és biztonságának alapvető eszköze.
Ezenkívül az SPDX az a formátum, amely megkapta az ISO (Nemzetközi Szabványügyi Szervezet) tanúsítási státuszát, így ez a formátum megfelel a szabványosítási és minőségbiztosítási követelményeknek.
Az SPDX formátumú dokumentumok több kulcsfontosságú elemet tartalmaznak:
Csomagolási információk
Leírja a csomagot, amely egy vagy több fájlból állhat - beleértve a forráskódot, bináris állományokat, dokumentumokat stb. Az egyéb típusú információk közé tartoznak az eredeti szerzőre, a forrásra, a letöltési URL-re, az ellenőrző összegre és az áttekintő licencelésre vonatkozó adatok.
Fájl szintű metaadatok
Az egyes fájlokra vonatkozó részletek, mint például licenc, ellenőrző összeg, fájl-hozzájárulók stb.
Egyéb engedélyezési információk
Biztosítja a szellemi tulajdon kezelését a szoftverlicencek meghatározásával.
Software lista
Dokumentálja a szoftverfüggőségek hierarchiáját.
Megjegyzések és kapcsolatok
További metaadatokat biztosít és kapcsolatokat hoz létre a szoftver leletek között.
Az SPDX formátum több formátumot is támogat, ami a felhasználási esetek és az eszközkompatibilitás alapján rugalmasságot biztosít:
- Címke/érték (.spdx): Egyszerű szövegalapú formátum
- JSON (.spdx.json): Könnyű, gépileg olvasható formátum
- YAML (.spdx.yml): Emberbarát adatszerializációs formátum
- RDF/XML (.spdx.rdf): Szemantikus adatok strukturált ábrázolási formátuma.
- Táblázat (.xls): táblázatos formátum, amely hasznos a kézi elemzéshez
Az SPDX-et a nagy technológiai vállalatok, a szabályozó szervek és a nyílt forráskódú szoftverközösségek széles körben alkalmazzák. Általában a következő célokra használják:
- Nyílt forráskódú szoftverlicencek kezelése: Segít a szervezeteknek nyomon követni és betartani a nyílt forráskódú licencelési követelményeket.
- Biztonsági ellenőrzés: Betekintést nyújt a szoftverkomponensekbe a sebezhetőségek felderítése és a kockázatok kezelése érdekében.
- Szabályozási megfelelés: Biztosítja az iparági szabványok és a szoftver átláthatóságával kapcsolatos jogi követelmények betartását.
- Software eredetének nyomon követése: A szoftverkomponensek egyértelmű származásának megállapítása a jobb elszámoltathatóság érdekében.
Az SPDX formátum kihasználásával a szervezetek fokozhatják az ellátási lánc biztonságát, egyszerűsíthetik a megfelelési erőfeszítéseket, és nagyobb átláthatóságot nyerhetnek szoftveres ökoszisztémáikban.
CycloneDX SBOM formátum
Az OWASP Foundation által kifejlesztett CycloneDX formátum teljes körű BOM (Bill of Materials), beleértve az SBOM-ot is, és nagy hangsúlyt fektet a biztonságra, a sebezhetőségek kezelésére és a szoftverek átfogó átláthatóságára. Olyan előíró objektummodellt biztosít, amely hatékonyan írja le a szoftverkomponensek, szolgáltatások és függőségek közötti összetett kapcsolatokat.
A CycloneDX formátum legfontosabb jellemzői a következők:
Kiterjedt metaadat-reprezentáció
Rögzíti a beszállítói adatokat, a licencadatokat, a szerzőket, a szerszámokat, a gyártási folyamatokat stb.
Biztonságközpontú tervezés
Lehetővé teszi a sebezhetőség pontos azonosítását, a kihasználhatóság elemzését és a VEX felhasználási esetek támogatását.
Függőség és összetétel leképezése
A szoftverkomponensek és szolgáltatások közötti közvetlen és tranzitív kapcsolatok megjelenítése.
Többféle szerializációs formátum
Támogatja a JSON, XML és protokollbuffereket (protobuf), így széles körű kompatibilitást biztosít a biztonsági eszközökkel.
Megfelelés és szabványosítás
Integrálható az olyan biztonsági szabványokkal, mint az OWASP ASVS, MASVS, SCVS és SAMM, így gépileg olvasható keretet biztosít a megfelelőség nyomon követéséhez.
A CycloneDX robusztus architektúrájának és biztonságközpontú megközelítésének köszönhetően a CycloneDX-et széles körben alkalmazzák a kiberbiztonságra összpontosító alkalmazásokban a sebezhetőségek kezelésére és a biztonsági felügyeletre. Ez teszi a CycloneDX formátumot a szoftverellátási lánc kockázatkezelésének alapvető eszközévé.
CycloneDX vs SPDX Formátumok
Jellemző | SPDX | CycloneDX |
Fókusz | Nyílt forráskódú licenceknek való megfelelés és szellemi tulajdon | Alkalmazásbiztonság és ellátási láncelemzés |
Jellemzők | Átfogó metaadatok a szoftverkomponensekhez | Könnyű, felhasználóbarát, az alapvető komponensadatokra és a biztonsági értékelésre összpontosítva |
Felhasználási esetek | Nyílt forráskódú licencelés (eredetileg), megfelelőségi auditok és a szoftverek eredete | Sebezhetőség-kezelés, szoftverellátási lánc elemzése és biztonsági felügyelet |
Örökbefogadás | Nagy technológiai vállalatok és megfelelőségi csapatok | Biztonsági eszközszolgáltatók és kiberbiztonsági cégek, DevSecOps csapatok |
A Software anyagjegyzékek fontossága
Az SBOM-ok döntő szerepet játszanak a szoftverek átláthatóságában és elszámoltathatóságában. Betekintést nyújtanak a szoftverellátási láncba, lehetővé téve a szervezetek számára a szoftverkomponensek integritásának ellenőrzését. Ez az átláthatósági szint csökkenti a szoftver meghamisításának és a jogosulatlan módosításoknak a kockázatát, és végső soron erősíti a szoftvergyártók, a gyártók és a végfelhasználók közötti bizalmat.
Emellett a SBOM-ok támogatják az incidensek kezelését és a szoftver életciklus-menedzsmentet. Ha sebezhetőségeket fedeznek fel, a részletes SBOM lehetővé teszi a biztonsági csapatok számára, hogy gyorsan felmérjék a hatást és hatékonyan implementálják a javításokat. Ez a proaktív megközelítés minimalizálja az állásidőt, és biztosítja, hogy a kritikus rendszerek továbbra is biztonságosak maradjanak a felmerülő fenyegetésekkel szemben.
SBOM-ok a biztonságban és a megfelelőségben
Az SBOM kritikus fontosságú eszköz a szoftverbiztonság és a jogszabályi megfelelés biztosításához. Azáltal, hogy az SBOM-ok átfogó leltárt nyújtanak az összes szoftverkomponensről, lehetővé teszik a szervezetek számára a sebezhetőségek hatékonyabb nyomon követését és kezelését. Lehetővé teszik a biztonsági csapatok számára a kockázatok proaktív azonosítását és mérséklését, biztosítva, hogy minden harmadik féltől és nyílt forráskódú függőség naprakész és mentes legyen az ismert exploitoktól. Ez a láthatóság elengedhetetlen, mivel a kiberfenyegetések egyre kifinomultabbá és áthatóbbá válnak.
Az olyan szabályozási keretrendszerek, mint a NIST, az ISO, az Executive Order 14028 és más regionális technikai útmutatók szigorúbb szoftver-áttekinthetőségi és biztonsági intézkedéseket írnak elő, így az SBOM-ok a megfelelés alapvető követelményévé válnak. Az SBOM-okat alkalmazó szervezetek könnyebben tudják bizonyítani az ezen szabványok betartását, elkerülve a lehetséges jogi és pénzügyi következményeket. A pontos és naprakész SBOM-ok fenntartásával a vállalkozások egyszerűsíthetik az ellenőrzéseket, csökkenthetik a megfelelési költségeket, és biztosíthatják, hogy a szoftver megfeleljen az iparági előírásoknak.
SBOM-formátumok összehasonlítása
Erősségek és gyengeségek
Az egyes SBOM-formátumok különböző célokat szolgálnak, ezért fontos, hogy az egyedi igények alapján válasszuk ki a megfelelőt.
Jellemző | Erősségek | Gyengeségek |
SPDX | Átfogó és széles körben használt. Nagy hangsúlyt fektet az engedélyezésre és a megfelelőségre. | Kisebb projektek esetében összetett lehet |
CycloneDX | Optimalizált biztonsági és sebezhetőségi menedzsment. | Kevesebb hangsúly az engedélyezési részletekre |
SWID címkék | Szoftverbe integrálva | Korlátozott szabványosítás az iparágak között |
Következtetés
Az SBOM-ok megértése és végrehajtása kulcsfontosságú a modern szoftverbiztonság szempontjából. Az olyan formátumok, mint az SPDX, a CycloneDX és a SWID címkék kihasználásával a szervezetek növelhetik a szoftverellátási lánc átláthatóságát és csökkenthetik a biztonsági kockázatokat.
Következő lépések
Értékelje a szervezet jelenlegi szoftverellátási lánc gyakorlatát, és vizsgálja meg a biztonsági és megfelelőségi követelményeknek megfelelő SBOM-formátumokat.
Ha többet szeretne megtudni a szoftverellátási lánc robusztus SBOM-megoldásokkal történő biztosításáról, látogasson el az OPSWAT Software Supply Chain Security megoldására.