För bara några år sedan tog det månader att omvandla en nyupptäckt säkerhetsbrist i mjukvara till en verklig cyberattack. Idag, som de senaste rubrikerna om Anthropics Project Glasswing visar, kan generativ AI utföra samma uppgift på några minuter – ofta till en kostnad av under en dollar i molntid.

Men även om stora språkmodeller utgör ett verkligt hot, öppnar de också möjligheter att stärka cyberförsvaret. Enligt Anthropic har deras förhandsgranskade modell Claude Mythos redan hjälpt försvarare att proaktivt identifiera över tusen noll-dagars-sårbarheter, inklusive brister i alla större operativsystem och webbläsare. Företaget koordinerar även rapporteringen och patchningen av de upptäckta bristerna.

Det är ännu oklart om AI-driven buggupptäckt i slutändan kommer att gynna angripare eller försvarare. För att förstå hur försvarare kan öka sina chanser – och kanske till och med skaffa sig ett övertag – är det värt att titta på en tidigare våg av automatiserad sårbarhetsupptäckt.

Fuzzing: En tidig automatiserad metod för att hitta brister

I början av 2010-talet dök en ny kategori mjukvara upp som kunde attackera program med miljontals slumpmässiga, felaktiga indata – en sorts digital apa som slumpmässigt trycker på tangenterna tills den hittar en sårbarhet. När sådana verktyg som American Fuzzy Lop (AFL) lanserades, upptäcktes kritiska brister i alla större webbläsare och operativsystem.

Säkerhetsgemenskapens reaktion var lärorik. Istället för panik industrialiserade organisationer försvaret. Google byggde till exempel ett system kallat OSS-Fuzz, som kontinuerligt kör fuzzers dygnet runt på tusentals mjukvaruprojekt. På så sätt kunde mjukvaruleverantörer upptäcka buggar innan de släpptes, istället för att angripare hittade dem först.

Förväntningen är att AI-driven sårbarhetsupptäckt kommer att följa samma mönster. Organisationer kommer att integrera verktygen i sin standardutvecklingsprocess, köra dem kontinuerligt och etablera en ny säkerhetsbaslinje.

En ny obalans: Låg tröskel för angripare, hög för försvarare

Men analogin har sina gränser. Fuzzing krävde betydande teknisk expertis för att sättas upp och användas. Det var ett verktyg för specialister. En språkmodell, däremot, hittar sårbarheter med bara en prompt – vilket skapar en oroande obalans. Angripare behöver inte längre vara tekniskt sofistikerade för att utnyttja kod, medan robusta försvar fortfarande kräver ingenjörer som läser, utvärderar och agerar på det som AI-modellerna upptäcker. Den mänskliga kostnaden för att hitta och utnyttja buggar kan närma sig noll, men att fixa dem kommer det inte att göra.

Kan AI bättre hitta buggar än att fixa dem?

I inledningen till sin bok Engineering Security konstaterade Peter Gutmann att

‘många av dagens säkerhetsteknologier är ‘säkra’ endast för att ingen någonsin har brytt sig om att undersöka dem.’
Den observationen gjordes innan AI dramatiskt sänkte kostnaden för att leta efter buggar.

Större delen av dagens kod – inklusive den öppna källkodsinfrastruktur som kommersiell mjukvara är beroende av – underhålls av små team, deltidsmedarbetare eller frivilliga utan dedikerade säkerhetsresurser. En bugg i ett öppet källkodsprojekt kan få stora konsekvenser nedströms.

År 2021 exponerade en kritisk sårbarhet i Log4j – ett loggningsbibliotek som underhålls av ett fåtal frivilliga – hundratals miljoner enheter. Log4js utbredda användning gjorde att en sårbarhet i ett enda volontärunderhållet bibliotek blev en av de mest spridda mjukvarubristerna någonsin. Det är bara ett exempel på det bredare problemet med kritiska mjukvaruberoenden som aldrig har granskats på allvar.