Denne artikkelen er produsert og finansiert av Høyskolen Kristiania - les mer.
Folk med onde hensikter faktisk kan forårsake trafikkaos og dødsulykker. (Illustrasjonsfoto: Shutterstock / NTB)
Cybersikkerhet er et kappløp mellom hackere og sikkerhetseksperter. Forskere utvikler smart system som oppdager sikkerhetshull før det er for sent.
Tenk deg at vindusviskerne helt av seg selv begynner å jage over frontruta i full fart. Samtidig mister du kontroll over rattet og radioen skur seg på maks. volum. Bilen din lever plutselig sitt eget liv, og du ligger i høy hastighet på motorveien.
At hackere kan ta over bilen din, er ikke noe som bare skjer i science fiction-filmer.
I 2015 gjennomførte to sikkerhetseksperter et eksperiment. De ville vise at de fra flere kilometer unna kunne bryte seg inn i det digitale systemet i en bil og fjernstyre funksjonene (wired.com).
De ville gjøre oss oppmerksomme på at folk med onde hensikter faktisk kan forårsake trafikkaos og dødsulykker.
Vi omgir oss med store og små smartenheter som er tilkoblet internett – alt fra smart-telefoner til robotstøvsugeren eller bilen. Ekspertene kaller dem gjerne enheter fra tingenes internett eller IoT-enheter.
At slike sensorer og brukerapplikasjoner henger sammen via internett, gjør oss sårbare for cyberangrep.
Når vi legger til at biler, systemer for trafikkontroll og medisinsk utstyr kan hackes, er det lett å forstå hvor alvorlig galt det kan gå.
Et nytt system oppdager svakheter tidligere
Sikkerhetseksperter er hele tiden i et kappløp med hackere. Nå utvikler forskere ved Høyskolen Kristiania et nytt system.
Det bruker kunstig intelligens (KI) for å oppdage sikkerhetshull i programvaren til den typen smartenheter vi omgir oss med til daglig.
– Vi så at de eksisterende metodene for å oppdage trusler, som nettverksovervåking og sensorbaserte løsninger, ikke fant sårbarheter i kildekoden tidlig nok. Dermed merker vi ikke sikkerhetshullene før et angrep faktisk skjer.
Det sier Andrii Shalaginov. Han er leder for forskningslaben Smart Security og forskningsprosjektet ENViSEC ved Kristiania.
Den nye metoden gjør det lettere for de som utvikler programvare, å forstå hvor risikoen ligger. Den gjør det også lettere å forstå hvordan de kan rette opp i svakhetene.
Tidligere verktøy greide ofte bare å oppdage at det finnes en svakhet, men ikke hva slags svakhet det var.
– Nå får vi en mye mer detaljert tilbakemelding. Dermed kan vi jobbe raskere og mer målrettet med å forbedre programvaren, sier Shalaginov.
En skreddersydd KI-løsning har øvd og lært
Nøkkelen ligger i såkalt maskinlæring og en type kunstig intelligens der systemet lærer gjennom prøving og feiling på store mengder data.
Når KI-systemet analyserer koden i programvaren, leter den etter svakheter og klassifiserer dem som ulike typer sikkerhetstrusler. Den kan gjenkjenne mønstre og avvik. Dermed kan den oppdage mulige sikkerhetshull.
Forskerne har samlet og satt sammen et stort datasett som er brukt i alle IoT-enhetene. Datasettet er hele 162 ganger større enn i tidligere forsøk.
Det betyr at det nye systemet kan øve seg og lære av mange flere eksempler på mulige trusler og sikkerhetshull.
I tillegg er løsningen skreddersydd til smartenhetene våre.
Forskerne har utviklet et nytt rammeverk med bakgrunn i dette nye datasettet. Med det kan de med stor nøyaktighet finne og fange opp sårbarheter i koden. Verktøyet bruker maskinlæring og naturlig språkbehandling (NLP) til å analysere kildekode og finne svakheter.
Slik fungerer den nye metoden
Naturlig språkbehandling (NLP – neuro linguistic programming) brukes sammen med maskinlæringsalgoritmer for å analysere setningsoppbygging og hva ord og fraser i koden betyr. Systemet vurderer ikke bare ordene og kommandoene som brukes, men også sammenhengen de brukes i.
Ekspertene kan da finne feil og svakheter vi ellers kanskje ikke ville oppdaget. Med naturlig språkbehandling kan systemet tolke og forstå språket som brukes i koden. Dermed er det mulig å oppdage farlige kodesnutter eller sikkerhetshull som har oppstått under programmeringen.
Med dette systemet kan vi også gruppere ulike typer sårbarheter. Det finnes en standardisert liste (CWE, Common Weakness Enumeration) over kjente svakheter i programvarekoding og design. Standardlisten beskriver og klassifiserer vanlige sikkerhetsproblemer i programvare. Dermed kan utviklere kjenne dem igjen og unngå dem. Hver svakhet får et unikt CWE-nummer og en beskrivelse. Det hjelper analytikerne med å forstå hva svakheten innebærer.
Rammeverket IoTvulCode sorterer både trygge og utrygge kodeeksempler. Løsningen som forskerne utvikler nå, bidrar til å gi utviklere og analytikere mulighet til å få et forsprang.
Referanser:
Guru Prasad Bhandari mfl.: IoTvulCode: AI-enabled vulnerability detection in software products designed for IoT applications. International Journal of Information Security, 2024. Doi.org/10.1007/s10207-024-00848-6
Andy Greenberg: Hackers Remotely Kill a Jeep on the Highway—With Me in It. Wired, 2024.