Kibernetička sigurnost: Što je SBOM i zašto se kompanije sve više njime bave

Kibernetička sigurnost: Što je SBOM i zašto se kompanije sve više njime bave

U vrijeme kada korporacije i države trebaju odgovoriti na sve više opasnosti iz softverskog lanca opskrbe, sve važnije postaje imati kvalitetni SBOM.

SBOM (Software Bill of Materials) je popis komponenti i međuovisnosti u nekoj aplikaciji ili sustavu, uključujući i open source i komercijalne komponente. U američkoj sigurnosnoj branši i velikim kompanijama SBOM je sve češća tema. Naročito u posljednjih godinu dana, otkako je administracija predsjednika Joea Bidena zaoštrila sigurnosne propise i uvela nove mjere za zaštitu kritične digitalne infrastrukture.

Popisati sve dobavljače u aplikaciji

Jedna od obaveza i dobrih praksi propisanih Bidenovom uredbom iz svibnja 2021. je kreiranje SBOM-a, dokumenta koji će iscrpno i sustavno popisati sastavnice i dobavljače u nekoj aplikaciji.

Sve je izglednije da će proizvođači - bilo da se radi o in-house timovima ili vanjskim kompanijama - uz softver morati isporučivati i detaljnu evidenciju njegovih komponenti, što u posljednjih 20-ak godina nije bila praksa. Smatralo se, naime, da je sastav softvera intelektualno vlasništvo proizvođača te ga se rijetko dijelilo s kupcima i korisnicima.

Danas čak 78 posto organizacija očekuje da će ili same kreirati SBOM, ili se njime koristiti. Osim što postaje dijelom regulatornog okvira, kvalitetni SBOM je bitan za pravilno razumijevanje rizika kojima se organizacija izlaže putem softvera koji koristi. To je pak osnova za bolju zaštitu i oporavak u slučaju napada. Kada se u svijetu pojavi nova kibernetička prijetnja, poput Log4j, obuhvatni SBOM omogućuje i proizvođačima i korisnicima softvera da brzo i efikasno ustanove koji su im dijelovi sustava potencijalno ugroženi, i da u skladu s tim aktiviraju mjere.

Kompanije očekuju porast napada putem softvera

Što treba znati o SBOM-u u 2022.-oj kada, po PwC-ju, više od polovice menadžera u kompanijama očekuje porast napada na softver i digitalnu infrastrukturu putem lanca opskrbe?

Popis komponenti svakako nije novost. SBOM je u upotrebi već dvadesetak godina, a nastao je iz potrebe poštivanja (nerijetko zamršenih) licenci open sourcea. Programeri su u SBOM-u navodili razne oblike licenci pod kojima su u aplikacije ugrađivali besplatni, otvoreni kod.

Danas se, međutim, fokus pomaknuo na sigurnost. SBOM nove generacije je mnogo više od popisa licenci. Omogućuje vidljivost komponenti i svih njihovih varijanti, generira se automatski i podloga je za upravljanje rizicima.

U današnje vrijeme, softver može biti pravo zamršeno klupko eksternih, open-source i statički povezanih paketa, te međuovisnosti zakopanih kroz mnogo slojeva u dubinu. Instalacijom jednog prosječnog npm paketa korisnik implicitno poklanja povjerenje u još 80-ak drugih s kojima je instalirani paket povezan.

U 84 posto aplikacija - bar jedna ranjiva komponenta

Studija iz 2021. je pokazala da prosječna aplikacija sadrži više od 500 komponenti iz open sourcea, i da se u 84 posto aplikacija nalazi bar jedna ranjiva komponenta iz otvorenog koda.

Kad organizacija nastoji ustanoviti je li i na koji način pogođena prijetnjom koja se netom pojavila, ključno je da ima uvid u sve slojeve i međuovisnosti svog softvera. Potpunost i iscrpnost danas se pokazuje kao jedna od bitnih odlika SBOM-a. Ako je popis komponenti izostavio neki od slojeva, neće biti temelj za kompletnu provjeru.

Smanjenjem broja komponenti i biblioteka te njihovih varijanti može se bitno povećati sigurnost složenije aplikacije. Međutim, ako u SBOM-u nedostaju ili su pogrešno navedena imena, verzije i proizvođači, kompanijama će biti teže ukloniti suvišne verzije iste komponente i smanjiti software bloat. Zato je pri izradi SBOM-a potrebna verifikacija, kako bi organizacije i korisnici bili sigurni da softver koji su kupili sadrži upravo i samo one dijelove koji su popisani u SBOM-u.

SBOM kao nužna karika u sigurnosti

Uz računalne programe često se isporučuju dodatni, pomoćni dijelovi: softver za pomoć pri instalaciji, zasebni instalacijski paketi i biblioteke, čak i čitavi kontejneri. Oni također mogu biti izvor sigurnosnih propusta i rizika te je nužno da ih SBOM pravilno evidentira.

Valja imati na umu i da nije dovoljno samo popisati sve što se u softveru nalazi. Ako SBOM uz podatke o komponentama vezuje i druge bitne informacije, bit će programerima bolja podloga za akciju. Tu spadaju ocjene kvalitete pojedine komponente, pokazatelji problema u lancu opskrbe, preporuke za postupanje i drugo. SBOM koji može pružiti i takve uvide znatno je bolja podloga za obranu od kibernetičkih napada.

Daljnjim razvojem regulatornog okvira, ali i dobrih praksi zaštite softvera, za očekivati je da SBOM postane nužna karika sigurnosti u organizacijama, i njihove spremnosti za odgovor na kibernetičke prijetnje.

Autor: Tomislav Peričin, suosnivač ReversingLabsa