Posted in Ohjelmisto

Avoimen lähdekoodin ohjelmistojen riskinä ovat riippuvuussuhteet

Linux Foundation ja ohjelmistokehityksen tietoturvaan erikoistunut Snyk ovat julkaisseet raportin missä mitataan ja analysoidaan avoimen lähdekoodin ohjelmistojen tietoturvan tilaa. Avoimesta lähdekoodista on tullut valtavirtaa ohjelmistokehityksessä ja sen myötä tietoturvariskit ovat kasvaneet. Erityiseksi huolen aiheeksi raportissa nousee valmiiden avointen ohjelmistokomponenttien sisällyttäminen tekeillä oleviin ohjelmiin.

Linux Foundation on arvioinut jopa 70-90 prosenttia moderneista ohjelmistoista sisältävän avointa lähdekoodia. Avoimen lähdekoodin hyödyt ovat siis vakuuttaneet lähes kaikki ohjelmistoja kehittävät organisaatiot. Vuosia sitten moni pelkäsi lisensointiongelmia ja mahdollisia oikeusjuttuja jos koodissa kuitenkin olisi muuta kuin avointa lähdekoodia. Tätä ei enää pidetä riskinä, mutta tietoturva on noussut todelliseksi riskiksi.

Jokaisen ohjelmiston toiminnallisuus, luotettavuus ja turvallisuus on riippuvainen toisesta komponentista jos sellainen on otettu mukaan. Sisällytetty komponentti voi puolestaan olla riippuvainen muista ohjelmamoduleista. Riippuvuusketju voi olla pitkä ja mutkikas.

Ohjelmistokehityksen kannalta tällainen aiemmin tehtyjen toimintojen uudelleenkäyttö on erinomaisen järkevää. Se on ehdottomasti yksi avoimen lähdekoodin suurista hyödyistä: kaikkea ei tarvitse tehdä alusta asti itse, vaan voi hyödyntää valmiita toimintoja.

Tämä vahvuus on samalla riski, sillä väistämättä jokaisessa 10 riviä laajemmassa ohjelmakoodissa on virheitä. Kun virheet ovat muiden tekemissä ohjelmamoduleissa ja niistä aiheutuu tietoturvaongelmia, riskit omalle ohjelmistolle voivat olla tuntuvia.

Log4j on se kuuluisa ongelma, joka viimeistään herätti tietoturva-asiantuntijat ja ohjelmistokehittäjät avoimen lähdekoodin riippuvuusketjujen riskeihin. Log4j on web-palvelinohjelman lokikirjoitusmoduli, jota Java-ohjelmistot hyödyntävät. Log4j on niin yleinen, että se löytyy esimerkiksi Cisco Webex -kokousohjelmasta, Minecraft-pelistä, Filezilla-tiedostopalvelimesta ja Mars 2020 -ohjelmistoista. Vaikka Log4j on päivitetty, ja korjattu version on saatavilla, sen odotetaan aiheuttavan vakavia ongelmia kymmenen vuotta eteenpäin sillä kaikki eivät tiedä sen olemassaolosta heidän palvelimilla, eivätkä ole sitä päivittäneet.

Linux Foundationin ja Snykin raportti State of Open Source Security 2022 arvioi, että keskimäärin ohjelmiston kehitysprojektissa on 79 riippuvuutta muualta hankittuihin moduleihin, joista puolestaan aiheutuu 49 tietoturvaongelmaa. Virheiden jäljittäminen on melkoista painajaista jo tällaisessa keskimääräisessä projektissa.

mielipiteet open source ohjelmistojen tietoturvan tasosta
Lähde: State of Open Source Security 2022.

Vain 3% kyselyyn vastanneista piti avoimen lähdekoodin ohjelmia erittäin heikkoina tietoturvan kannalta. 17% piti avoimen lähdekoodin tietoturvaa erittäin hyvänä. Jotakuinkin huolestuttavana tietoturvaa piti 14% kun 42% luotti siihen melko paljon.

Samaan aikaan kun riski joutua kyberhyökkäyksen, kuten ransomware-kiristyksen kohteeksi kasvaa, ohjelmistovirheiden korjaaminen muuttuu hankalammaksi. Vuonna 2021 avoimen lähdekoodin ohjelmistossa olevaa virhettä jouduttiin metsästämään keskimäärin 114 päivää. Suljetun lähdekoodin ohjelmista virheitä haettiin hieman lyhyemmän ajan, 96 päivää.

open source ohjelmiston keskimääräinen virheenkorjausaika
Lähde: State of Open Source Security 2022.

Raportissa on runsaasti tietoa, jonka pohjalta kirjoittajat ovat laatineet suosituksia miten omia ohjelmistoja kehittävät organisaatiot voivat kohentaa tietoturvaa. Tässä raportin viisi suositusta.

  • Määrittele kybertietoturvan säännöt ja prosessit. Avoimen lähdekoodin käytännöt ohjelmistojen kehityksessä huomioitava myös.
  • Ohjelmistokehittäjien tietoturvaosaaminen on varmistettava koulutuksella.
  • Ohjelmistojen tietoturvan tarkastamiseen on olemassa työkaluja. Käytä niitä.
  • Ohjelmiston kehitysprosessiin on mahdollista liittää tietoturvatarkastuksia. Työkaluja on olemassa.
  • Omaan ohjelmistoon mukaan otettavat avoimen lähdekoodin modulit on tarkastettava ja varmistettava niiden tietoturva ja päivitysvalmius.

Raportin laatimiseen on käytetty Snyk-yhtiön keräämää dataa ja kyselyn tuloksia, johon saatiin 550 vastausta vuoden 2022 alussa.

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *