Sigurnosna ranjivost u kodovima
Temeljne komponente svih digitalnih infrastruktura su softveri operacijskih sustava, aplikacija ili ugrađeni programi (firmware). No, ubrzanost i pritisak zbog rokova u digitalizacijskim projektima često vode do zanemarivanja nužnih aspekata informacijske sigurnosti. Zahtjevi za razvoj softvera obično se temelje na funkcionalnosti i naglašavaju konstruktivne aspekte, pa je štetnost sigurnosne ranjivosti u suprotnosti sa stvarnim razvojnim ciljevima: mnogi programeri nemaju dovoljno jasno i strukturirano znanje o kibernetičkoj sigurnosti.
U ovakvim situacijama razvojnim je timovima vrlo zahtjevno neprekidno pregledavati i osiguravati kodove svojih softvera, čemu svjedoče mnoge ranjivosti koje objavljuje neprofitna organizacija MITRE na svojoj CVE (Common Vulnerabilities and Exposures) listi ranjivosti i izloženosti. Sigurnosne zakrpe čak i poznatih proizvođača softvera pokušavaju zatvoriti sigurnosne propuste i to se čini kao Sizifov posao, a da ne govorimo tek o prepoznavanju istih prije nego što su objavljeni na tržištu.
Otvoreni kôd - zaseban slučaj
Pri kodiranju samostalnog softvera, programeri rado koriste biblioteke i module otvorenog koda. Praktične prednosti su očigledne: ako ne morate otkrivati toplu vodu, koristit će vam ovakva tehnologija, brzi razvoj, niži troškovi, transparentnost koju pruža otvoreni kôd, te veća interoperabilnost dobivena kroz otvorene standarde i sučelja.
Također, često se priča o tome da je otvoreni kôd puno sigurniji jer ga je potvrdio velik broj korisnika, a gomilanje podataka prikupljenih na ovakav način omogućava brzo i efikasno ispravljanje grešaka.
U stvarnosti se ovo mišljenje treba ispitati na slojevit i kritičan način. Najozbiljniji je primjer takozvana zero-day sigurnosna ranjivost Log4Shell u popularnoj biblioteci za Java aplikacije Log4J, koja je otkrivena u studenom 2021. Možda ste čuli za upozorenje o visokom riziku od Log4Shell-a koje je izdao Njemački savezni ured za informacijsku sigurnost (BSI). Biblioteka Log4J, koju je proširio Apache Foundation (organizacija za potporu projekata softvera otvorenog koda) kao funkcionalni kvazi-standard, pronašla je svoje mjesto u mnogim sustavima od 2013. - uključujući i poznate web poslužitelje kao što je Amazon AWS.
Složenost ovih visoko razvijenih i održavanih biblioteka implicitno dopušta i korištenje snažnih funkcija kojih vanjski programeri često nisu svjesni u svom radu, a koje mogu iskoristiti napadači.
Još jedan čimbenik nesigurnosti kod komponenti otvorenog koda takozvani su napadi na lanac opskrbe, tj. ciljano ugrađene ranjivosti koje zlonamjerni programeri ugrađuju pretvarajući se da su dio sredine otvorenog koda i da pomažu u razvoju koda. Takva ranjivost izrazito je korisna hakerima koji putem nje napadaju brojne organizacije koje koriste tzv. downstream. Zato nije neobično što se ubrzano povećava broj napada: istraživanje softverskog poduzeća Sonatype utvrdilo je povećanje od 650% između 2020. i 2021. godine.