ENISA, Unsplash ENISA, Unsplash

ENISA upozorava na sigurnost package managera

Pitamo se zašto su ovisnosti softvera nova meta kibernetičkih napada.

Europska agencija za kibernetičku sigurnost ENISA objavila je novo tehničko savjetovanje koje se bavi sigurnim korištenjem package managera. Naime, radi se o alatu koji je temelj modernog razvoja softvera. Help Net Security primjećuje da upravo ti sustavi, koji omogućuju programerima brzo preuzimanje i integraciju gotovih biblioteka i modula, mogu predstavljati ozbiljan sigurnosni rizik ako se ne koriste pravilno.

Preporuke ENISA-e dolaze u trenutku kada su napadi na lanac opskrbe softvera postali jedna od najbrže rastućih prijetnji kibernetičke sigurnosti.

    Sve više aplikacija oslanja se na open-source biblioteke i vanjske pakete. No, kompromitacija samo jednog od tih elemenata može imati lančane posljedice za tisuće projekata i organizacija.

    Saznajte zašto su package manageri postali sigurnosni problem. Zatim, koje rizike agencija ističe u svojoj najnovijoj preporuci, ali i kako tvrtke mogu smanjiti rizik od napada na lanac opskrbe softvera.

    Kako ENISA može pomoći

    ENISA (European Union Agency for Cybersecurity) je agencija Europske unije osnovana 2004. godine s ciljem jačanja razine kibernetičke sigunosti u Europi. Sjedište agencije nalazi se u Ateni, a njezina je uloga pružanje stručne podrške državama članicama, institucijama EU i privatnom sektoru u području digitalne sigurnosti.

    Također upravlja različitim projektima vezanim uz certificiranje sigurnosti ICT proizvoda i koordinaciju među državama članicama EU.

    U posljednjih nekoliko godina ENISA sve više fokus stavlja na sigurnost lanca nabave softvera, odnosno zaštitu cijelog ekosustava razvoja softvera. Poanta je da zaštiti programere, ali i biblioteke do krajnjih aplikacija.

    Package manageri i razvoj softvera

    Moderni razvoj softvera gotovo je nezamisliv bez package managera. Riječ je o alatima koji omogućuju programerima da preuzmu i instaliraju gotove biblioteke i komponente iz javnih repozitorija.

    Donosimo primjere popularnih sustava:

    • npm za JavaScript
    • Maven za Java
    • NuGet za .NET ekosustav

    Takvi sustavi omogućuju brži razvoj, jer programeri ne moraju pisati sve funkcionalnosti od početka. Umjesto toga mogu koristiti postojeće biblioteke koje rješavaju standardne probleme.

    No, upravo ta ovisnost o vanjskim paketima stvara i sigurnosni rizik. Prema ENISA-i, moderni softverski projekti[ ovise o stotinama ili tisućama vanjskih komponenti, što značajno povećava površinu napada.

    Ako se kompromitira samo jedna biblioteka u tom lancu, napadač može potencijalno ugroziti veliki broj aplikacija koje koriste taj paket.

    Napadi na lanac opskrbe softvera

    Napadi na lanac opskrbe softvera posljednjih su godina postali jedna od najvećih prijetnji. Takvi napadi ciljaju proizvođače softvera ili repozitorije koda kako bi zlonamjerni kod bio distribuiran zajedno s legitimnim paketima.

    ENISA definira takav napad kao kompromitaciju dobavljača softvera koja omogućuje napadaču pristup sustavima korisnika koji koriste taj softver.

    Poznati primjeri takvih napada:

    • kompromitirane open-source biblioteke
    • zlonamjerni softveri u repozitorijima
    • manipulacija ovisnostima (dependency confusion)
    • kompromitirani razvojne alate

    Takva situacija je dovela do instalacije malwarea na tisućama sustava.

    Koje su preporuke?

    Novo tehničko savjetovanje ENISA-e fokusira se na sigurnu uporabu package managera tijekom životnog ciklusa razvoja softvera (SDLC). Dokument objašnjava kako programeri mogu smanjiti rizike prilikom odabira, integracije i održavanja vanjskih paketa.

    Savjetovanje naglašava da sigurnost mora biti integrirana u svaki korak razvoja aplikacije, od početnog odabira paketa do kontinuiranog praćenja ranjivosti.

    Neke od preporuka su provjera reputacije paketa, redovito ažuriranje ovisnosti i aktivno praćenje sigurnosnih ranjivosti.

    enisa.europa.eu/publications/enisa-technical-advisory-for-secure-use-of-package-managers?utm_source=chatgpt.com#contentList

    Rizici korištenja open-source paketa

    Open-source softver donosi brojne prednosti, ali i određene sigurnosne izazove. Jedan od najvećih problema je činjenica da mnogi projekti ovise o velikom broju neovisnih paketa koje razvijaju različiti autori.

    U nekim slučajevima programeri koriste biblioteke koje održava samo jedna osoba ili mali tim. Ako takav projekt postane kompromitiran ili prestane biti održavan, sigurnosni rizik za korisnike značajno raste.

    Napadači ciljaju takve manje projekte. Ipak je lakše ubaciti zlonamjerni kod u paket koji nema veliku sigurnosnu kontrolu.

    Ovako možete smanjiti rizik

    ENISA u svojim preporukama naglašava da tvrtke moraju razviti jasne procese za upravljanje ovisnostima u softverskim projektima.

    Neizostavna je provjera paketa prije integracije u projekt. Tvrtke moraju napraviti analizu izvornog koda, reputacije projekta i aktivnosti zajednice koja održava paket.

    Kibernetički napad, lanac opskrbe, softver, Unsplash
    Kibernetički napad, lanac opskrbe, softver; Izvor: Unsplash

    Drugi važan korak je kontinuirano praćenje sigurnosnih ranjivosti. Tvrtke trebaju koristiti alate koji automatski skeniraju ovisnosti i upozoravaju na sigurnosne probleme.

    Treći element je upravljanje verzijama. Preporučuje se korištenje zaključanih verzija paketa kako bi se spriječile neočekivane promjene u ovisnostima.

    Software Bill of Materials i transparentnost

    Jedan od alata koji se sve češće koristi za upravljanje sigurnošću softvera je Software Bill of Materials (SBOM). Riječ je o popisu svih komponenti koje čine određeni softverski proizvod.

    SBOM omogućuje organizacijama da brzo identificiraju koje aplikacije koriste određene biblioteke i jesu li te komponente ranjive.

    ENISA potiče korištenje SBOM-a jer povećava transparentnost u softverskom ekosustavu i omogućuje brže reagiranje na sigurnosne probleme.

    Čuvajte lanac opskrbe softvera

    Sigurnost lanca opskrbe softvera danas je jedna od najvažnijih tema za sigurnost. Ako napadač kompromitira popularnu biblioteku, paket ili razvojni alat, zlonamjerni kod može se proširiti na tisuće projekata koji koriste tu komponentu.

    Napadi se distribuiraju kroz legitimne kanale i teže ih je prepoznati i zaustaviti.

    U budućnosti se očekuje veća primjena automatiziranih alata za analizu ovisnosti, umjetne inteligencije za otkrivanje ranjivosti te strožih regulatornih zahtjeva za proizvođače softvera.

    Iz tog razloga ENISA razvija tehničke smjernice koje pomažu organizacijama da sigurnije upravljaju softverskim komponentama i zaštite digitalni ekosustav od novih napada.

    Odgovori

    Vaša adresa e-pošte neće biti objavljena. Obavezna polja su označena sa * (obavezno)