Tapio Särkelä

Tapio Särkelä

Helping software companies to make Secure DevOps.

Suurin osa nykyaikaisesta sovelluskehityksestä perustuu avoimen lähdekooodin kirjastoihin. Veracoden ESG-tutkimusyhtiöllä teettämän tutkimuksen mukaan yli 96 prosenttia yrityksistä ja organisaatioista käyttää avoimen lähdekoodin kirjastoja sovelluskehityksessään. Hämmentävää on sen sijaan tutkimuksessa esiin tullut tieto, että vain alle puolella yrityksistä ja organisaatoista on jonkinlainen tietoturvakontrolli kirjastoissa piileiville haavoittuuvuksille.

Miksi avoimen lähdekoodin kirjastojen tietoturvaskannaus on tärkeää?

Veracoden State of Software Security: Open Source Edition -raportissa analysointiin 85 000 sovelluksessa olevasta avoimen lähdekoodin kirjastosta. Yksi keskeisiä tuloksia oli, että 70 prosentissa kirjastoja on ainakin yksi haavoittuvuus ensimmäisessä skannauksessa. Yleisimmät haavoittuvuudet olivat cross -site scripting, turvaton sarjallistamisen purku (insecure deserialization) sekä kolmantena rikkinäinen pääsynhallinta (broken access control). Jos sovelluksille ei olisi tehty lainkaan tieturvaskannausta, em. virheet olisivat voineet altistaa kyberhyökkäykselle.

Equifax pääsi aikanaan otsikoihin, kun sen käyttämiä avoimen lähdekoodin kirjastoja ei oltu skannattu. Vuonna 2017 Equifax kärsi valtavasta Apache Struts -ympäristöön tehdystä tietomurrosta, jossa vietiin 143 miljoonan yhdysvaltalaisien tietoja, mm. henkilötunnuksia, Tietomurron seurauksena Equifaxin osakkeen hinta putosi 13 prosenttia. Jos Equifax olisi tehnyt tietoturvaskannaukset avoimen lähdekoodin kirjastoilleen, tietomurto olisi todennäköisesti vältetty.

Percentage of codebase pulled from opensource

Miksi organisaatiot eivät sitten skannaa avoimen lähdekoodin kirjastojaan?

Jos kerran 96 prosenttia yrityksistä ja organisaatioista käyttää avoimen lähdekoodin kirjastoja ja 70 prosentissa sovelluksissa olevista kirjastoista on haavoittuvuus, niin miksi sitten vain alle 50 prosenttia skannaa avoimen lähdekoodin kirjastonsa? Yleisin syy lienee siinä, että koodarit olettavat kirjaston kehittäjien jo tarkistaneen sen haavoittuvuuksien varalta. Valitettavasti emme kuitenkaan voi ihan luottaa siihen, että kirjastojen koodaajat huolehtisivat, että ne olisivat turvallisia. Tästä kertoo tulos, jonka mukaan 42 prosentista ns. kolmannen osapuolen koodista löydettiin haavoittuvuus ensimmäisellä skannauksella. Ja vaikka kolmannen osapuolen koodi näyttäisikin olevan virheetön, lähes 47 prosentissa kirjastojen koodista on ns. transitiivinen virhe eli kirjastossa viitataan toiseen kirjastoon, jossa on tietoturvahaavoittuvuus.

Transitive and direct open source vulnerabilities

Miten hallita kirjastoissa olevia tietoturvahaavoittuvuuksia?

Aluksi on hyvä pitää mielessä, että avoimen lähdekoodin kirjastoissa olevat virheet on yleensä helppo korjata. Lähes 74 prosenttia virheistä voidaan poistaa vain päivittämällä uudempaan versioon tai ajamalla kirjastoon saatavilla oleva patch. Jopa  91 prosenttia  vakavista virheistä on helpointa korjata päivityksellä.
Patching open source flaws

Yhteenvetona voisi todeta, että kirjastojen tietoturvavirheiden hallinnan oikea kysymys ei ole ”Miten korjaan virheen?” vaan ”Miten löydän virheen?”. Tässä työssä Veracode SCA on tehokas väline, joka löytää avoimen lähdekoodin kirjastoissa olevat haavoittuvuudet ja antaa tarvittaessa suositukset versionvaihdosta tai patchin asentamisesta.

Veracode SCA (Software Composition Analysis) on helppokäyttöinen palvelu. Palvelun voi integroida kehitysalustaan komentoriviltä käynnistettäväksi agentiksi ja se kertoo tulokset muutamassa sekunnissa. Samaa agenttia voidaan käyttää suoraan myös IDE-ympäristöstä ja saada tulokset vielä nopeammin. 

SCAta käyttämällä voidaan paljastaa ei pelkästään koodarin itsensä mahdollisesti tekemät virheet, vaan myös transitiiviset virheet, joita kirjastot voivat välittää useidenkin kerrosten takaa. Veracode SCA löytää myös useampia virheitä kuin mitä NVD (National Vulnerability Database) sisältää. Kaikki kehttäjät eivä raportoi virheitään NVD:lle. Veracode käyttää tiedon louhintaa, luonnollisen kielen käsittelyä (NLP) ja koneoppimista oman SCA -tietokannan kasvattamiseksi ja näin löytää uusia ja aiemmin raportoimattomia virheitä.

Lisätietoja sovellusten tietoturvan testuksesta ja sen trendeistä ESG:n raportissa Modern Application Development Security.

Veracode feature picture

Veracode

SAST – Koodin staattinen tarkistus SCA – Kirjastoanalyysi ja inventaario SDLC sovelluskehitysintegraatio Yrityksen koko sovellusportfolion tietoturvariskien hallinta samassa palvelussa Veracoden palvelun avulla voidaan tutkia ja

Lue lisää »
Veracode container scanning
sdlc
Saku Tuominen

Veracode Container Securityn hyödyntäminen pilvisovellusten ohjelmistokehityksen turvaamisessa

Pilvipohjainen ohjelmistokehitys on kantava voima, koska se antaa mahdollisuuden rakentaa ja ottaa käyttöön sovelluksia vauhdilla ja skaalautuvasti. Mikropalveluiden, pilvi-infrastruktuurin ja API-rajapintojen ohella kontit (containers) ovat tärkeä osa tätä kehitysprosessia. Tutkitaanpa hieman konttien turvallisuusvaikutuksia pilvipohjaisten sovellusten kehittämisessä ja niiden aiheuttamien tietoturvahaasteiden hallintaa.

Lue lisää »
Veracode State of Software Security 12
Veracode
Thomas

Veracode State of Software Security 12

Viime vuoden tapaan tarkastelimme aktiivisten sovellusten koko historiaa, emme vain sovellukseen liittyvää aktiviteettia yhden vuoden aikana. Näin saamme näkymän sovellusten koko elinkaareen, mikä taas johtaa tarkempiin mittareihin ja havaintoihin.

Lue lisää »
Veracode SoSS 11: Open Source Edition
Veracode
Thomas

Veracode SoSS 11: Open Source Edition

Veracode julkisti äskettäin uuden version avoimen lähdekoodin kirjastojen skannausten tuloksista. Raportti antaa näkymän sovelluskirjastojen tietoturvan nykytilasta ja hieman viitteitä tulevaisuudesta. Raporttiin on koottu tulokset n. 13 miljoonasta skanauksesta yli 86 000 repositoryyn n. vuoden mittaisen ajanjakson aikana.

Lue lisää »
Tapio Särkelä

Tapio Särkelä

Helping software companies to make Secure DevOps.

ota yhteyttä

Pyydä rohkeasti lisätietoa. Vastaamme todennäköisesti nopeammin kuin osasit kuvitella.