I legenden om det Trojanska kriget berättas det om hur grekerna lurade sina motståndare med hjälp av en så kallad trojansk häst. Advenicas CTO drar i följande text en parallell till förekommande problematik med modern teknologi för IT-säkerhet.
Staden Troja hade varit under belägring en lång tid, och grekerna hade inte lyckats ta sig in i staden. Genom en vilseledningsmanöver fick grekerna de försvarande styrkorna att tro att man drog sig undan. Samtidigt lämnades en stor trähäst kvar. Trojanerna tog hand om trähästen som ett krigsbyte och tog den in i staden. Vad man inte visste var att det inuti hästen fanns ett antal gömda krigare. Dessa klev i skydd av mörkret ut ur hästen och släppte in de grekiska krigare som väntade utanför stadsporten.
Historien har senare kommit att användas i överförd mening för att beskriva mjukvara som sägs göra en sak, men som i verkligheten också gör något annat (illvilligt). En stor del av det för trojanerna fatala beslutet att ta in hästen i staden baserades på att man gjorde antaganden av vad man observerade utan att verifiera innehållet. Om man hade sett till att undersöka innehållet i hästen hade man haft fördelen att kunna möta soldaterna dagtid, och kanske ännu viktigare – förhindra att stadsporten öppnades för att släppa in resten av styrkan. Nu kunde soldaterna istället fritt utföra sitt uppdrag i skydd av nattmörkret.
Vad var det då trojanerna gjorde? Det de gjorde var att de accepterade vad som såg ut som en häst, utan att kontrollera innehållet. Det kanske till och med är så att vilken spektakulär krigstrofé som helst hade resulterat i samma agerande.
Hur skulle en jämförelse med modern IT-säkerhetsteknik se ut?
Finns motsvarande problemställning även i modern IT-säkerhetsteknik? Det finns faktiskt många exempel. Tillfällena är många då skyddsmekanismer fattar beslut baserat på transportmetoden dvs protokollet istället för den data som transporteras. Därmed löper man också risken att oönskat innehåll kommer med. Brandväggar opererar ofta på portar eller protokoll. Om man till exempel använder en brandvägg som accepterar all trafik bara den kommer över port 80 löper man risk att utsättas för samma fara som trojanerna. Ändå är ett sådant förfarande vanligt idag, det används av många IT-organisationer.
Vad är orsaken till det?
Delvis handlar det antagligen om historiska skäl.
Utvecklingen av försvarsmekanismer följer utvecklingen av attackmetoder, men ligger oftast ett steg efter.
Det har inte bedömts motiverat att införa skydd mot attacker som ännu inte inträffat. I vissa fall är det en acceptabel strategi – i andra fall kan det få förödande konsekvenser. Det handlar hela tiden om att analysera och förstå konsekvensen ifall skyddet fallerar.
Finns det mer precisa sätt att kontrollera innehållet och inte bara förpackningen? Ja, det finns det givetvis. Genom att tydligt definiera det innehåll man vill släppa in (eller ut!) i sitt nät får man en helt annan skyddsnivå. Risken för såväl intrång som informationsläckage reduceras avsevärt. Innehållsmedvetna brandväggar är ett bra steg på vägen, men ännu bättre är policystyrd allowlisting av godkänt datainnehåll. Med en sådan metodik kan man styra och kontrollera på godtyckligt granulär nivå, ner på minsta databit ifall man så önskar.
Genom att granska innehållet istället för förpackningen kan man uppnå full kontroll och spårbarhet. Därmed kan man även undvika att hamna i samma sits som det trojanska försvaret.
Jonas Dellenvall, CTO, Advenica AB