Cybersäkerhet
Röja “dimman av mer” i cybersäkerhet
På RSA-konferensen i San Francisco den här månaden visades en häpnadsväckande mängd nya och hetaste lösningar upp från cybersäkerhetsbranschen. Stånd efter stånd hävdade att de var verktyget som skulle rädda din organisation från illvilliga aktörer som stjäl dina tillgångar eller utpressar dig för miljontals dollar.
Efter lång övervägning har jag kommit till slutsatsen att vår bransch är vilse. Vilse i soppan av upptäckt och svar med ändlös ström av påståenden som säger att dina problem kommer att försvinna så länge du bara lägger till ett till lager. Inhylld i en dimma av tekniska investeringar, personal, verktyg och infrastrukturlager har företag nu bildat en labyrint där de inte längre kan se skogen för träden när det gäller att identifiera och förhindra hotaktörer. Dessa verktyg, som är tänkta att skydda digitala tillgångar, orsakar i stället frustration för både säkerhets- och utvecklingsteam genom ökade arbetsbelastningar och oförenliga verktyg. “Dimman av mer” fungerar inte. Men för att vara ärlig har det aldrig fungerat.
Cyberattacker börjar och slutar i kod. Det är så enkelt. Antingen har du en säkerhetsbrist eller sårbarhet i koden, eller så skrevs koden utan att säkerhet var i åtanke. Oavsett vilket, varje attack eller rubrik du läser, kommer från kod. Och det är programvaruutvecklarna som står inför det ultimata fulla problemet. Men utvecklare är inte utbildade i säkerhet och, för att vara ärlig, kanske de aldrig kommer att vara. Så de implementerar gamla vanliga kod sökningsverktyg som enkelt söker efter mönster i koden. Och var rädd för vad du ber om, eftersom de som ett resultat får en tsunami av varningar, jagar röda hundar och spöken under större delen av dagen. I själva verket tillbringar utvecklare upp till en tredjedel av sin tid med att jaga falska positiva och sårbarheter. Bara genom att fokusera på förebyggande kan företag verkligen börja stärka sina säkerhetsprogram och lägga grunden för en säkerhetsdriven kultur.
Att hitta och åtgärda på kodenivå
Det sägs ofta att förebyggande är bättre än bot, och denna devis gäller särskilt i cybersäkerhet. Därför, trots allt stramare ekonomiska begränsningar, fortsätter företag att investera och ansluta fler säkerhetsverktyg, skapa flera barriärer för att minska sannolikheten för framgångsrika cyberattacker. Men trots att de lägger till fler och fler lager av säkerhet, fortsätter samma typer av attacker att hända. Det är dags för organisationer att anta ett nytt perspektiv – ett där vi fokuserar på problemet på rotnivå – genom att hitta och åtgärda sårbarheter i koden.
Applikationer fungerar ofta som den primära ingångspunkten för cyberkriminella som försöker utnyttja svagheter och få obehörig åtkomst till känsliga data. I slutet av 2020 avslöjades SolarWinds-kompromissen och utredarna fann en komprometterad byggprocess som tillät angripare att injicera skadlig kod i Orion-nätverksövervakningsprogramvaran. Detta angrepp underströk behovet av att säkra varje steg i programvarubyggprocessen. Genom att implementera robusta applikationssäkerhetsåtgärder, eller AppSec, kan organisationer minska risken för dessa säkerhetsbrott. För att göra detta behöver företag titta på en “skifta vänster”-mentalitet, ta med förebyggande och prediktiva metoder till utvecklingsstadiet.
Medan detta inte är en helt ny idé, kommer det med nackdelar. En betydande nackdel är ökad utvecklingstid och kostnader. Att implementera omfattande AppSec-åtgärder kan kräva betydande resurser och expertis, vilket leder till längre utvecklingscykler och högre utgifter. Dessutom utgör inte alla sårbarheter en hög risk för organisationen. Potentialen för falska positiva från upptäcktsverktyg leder också till frustration bland utvecklare. Detta skapar en klyfta mellan affärs-, ingenjörs- och säkerhetsteam, vars mål kanske inte är i linje. Men generativ AI kan vara lösningen som stänger den luckan för gott.
Att gå in i AI-eran
Genom att utnyttja den allomfattande naturen av generativ AI inom AppSec kommer vi slutligen att lära oss av det förflutna för att förutsäga och förhindra framtida attacker. Till exempel kan du träna en Large Language Model eller LLM på alla kända kodsårbarheter, i alla deras varianter, för att lära dig de väsentliga funktionerna hos dem alla. Dessa sårbarheter kan inkludera vanliga problem som buffertöverskridningar, injektionsattacker eller otillräcklig indatavalidering. Modellen kommer också att lära sig de nyanserade skillnaderna mellan språk, ramverk och bibliotek, samt vilka kodfixar som är lyckade. Modellen kan sedan använda denna kunskap för att skanna en organisations kod och hitta potentiella sårbarheter som ännu inte har identifierats. Genom att använda sammanhanget runt koden kan sökverktyg bättre upptäcka riktiga hot. Detta innebär korta söktider och mindre tid som spenderas på att jaga och fixa falska positiva och ökad produktivitet för utvecklingsteam.
Generativa AI-verktyg kan också erbjuda föreslagna kodfixar, automatisera processen att generera patchar, vilket betydligt minskar den tid och ansträngning som krävs för att fixa sårbarheter i kodbasen. Genom att träna modeller på stora repository av säkra kodbas och bästa praxis kan utvecklare utnyttja AI-genererade kodsnuttar som följer säkerhetsstandarder och undviker vanliga sårbarheter. Detta proaktiva tillvägagångssätt minskar inte bara sannolikheten för att introducera säkerhetsfel, utan accelererar också utvecklingsprocessen genom att tillhandahålla utvecklare med förtestade och validerade kodkomponenter.
Dessa verktyg kan också anpassa sig till olika programmeringsspråk och kodstilar, vilket gör dem mångsidiga verktyg för kodens säkerhet i olika miljöer. De kan förbättras över tid allteftersom de fortsätter att träna på nya data och feedback, vilket leder till mer effektiv och tillförlitlig patchgenerering.
Den mänskliga faktorn
Det är viktigt att notera att även om kodfixar kan automatiseras, är mänsklig tillsyn och validering fortfarande avgörande för att säkerställa kvalitet och riktighet hos genererade patchar. Medan avancerade verktyg och algoritmer spelar en betydande roll i att identifiera och mildra säkerhetssårbarheter, förblir mänsklig expertis, kreativitet och intuition oumbärliga för att effektivt skydda applikationer.
Utvecklare är slutligen ansvariga för att skriva säker kod. Deras förståelse för säkerhetsbästa praxis, kodstandarder och potentiella sårbarheter är avgörande för att säkerställa att applikationer byggs med säkerhet i åtanke från början. Genom att integrera säkerhetsutbildning och medvetenhet i utvecklingsprocessen kan organisationer ge utvecklare möjlighet att proaktivt identifiera och åtgärda säkerhetsproblem, vilket minskar sannolikheten för att introducera sårbarheter i kodbasen.
Dessutom är effektiv kommunikation och samarbete mellan olika intressenter inom en organisation avgörande för AppSec-succes. Medan AI-lösningar kan hjälpa till att “stänga gapet” mellan utveckling och säkerhetsoperationer, kräver det en kultur av samarbete och delat ansvar för att bygga mer motståndskraftiga och säkra applikationer.
I en värld där hotlandskapet ständigt utvecklas, är det lätt att bli överväldigad av den enorma mängden verktyg och teknologier som finns tillgängliga i cybersäkerhetsutrymmet. Men genom att fokusera på förebyggande och hitta sårbarheter i koden, kan organisationer trimma “fettet” i sin befintliga säkerhetsstack, vilket sparar en exponentiell mängd tid och pengar i processen. På rotnivå kommer sådana lösningar att kunna hitta inte bara kända sårbarheter och fixa noll-dagars-sårbarheter, utan också för-noll-dagars-sårbarheter innan de inträffar. Vi kan slutligen hålla jämna steg, om inte före, utvecklande hotaktörer.












