sikkerhet
Bakdører i matematikken kan være vanskelige å oppdage
Fransk forsker advarer.
Innenfor it-sikkerhet blir bakdører ofte forbundet med programvare-laget. Det kan for eksempel være en bevisst innebygd og hemmelig funksjonalitet i programmet som gjør det mulig å omgå vanlig autentifisering.
Noen programvare-bugs kan også ligne litt på bakdører, siden feilen gjør det mulig for uvedkommende å komme inn i et system via omveier.
Når det for eksempel viser seg å være mulig å logge inn på MacOS med administrator-rettigheter ved å skrive ‘root’ og trykke to ganger på enter.
Andre eksempler kan være når spesielle SMB-pakker gjør det mulig å utføre en vilkårlig kode på et Windows-system, eller når de tilfeldige tallene generert på et Debian-system viser seg å være for lette å forutsi.
Det kan alltid diskuteres – og det blir det også en gang iblant – om denne typen sårbarheter faktisk er et forsøk på bevisst plasserte bakdører, eller bare er et resultat av dårlig kode. I den forbindelsen kan det nok være verd å ha Hanlon's razor i bakhodet.
Uansett årsak, så er det i det sistnevnte tilfellet blitt oppdaget at noe er galt.
Men hva om bakdørs-funksjonaliteten slett ikke ligger i programvaren, men i matematikken i en krypterings-algoritme?
Dette scenariet luftet Eric Filiol under et innlegg med tittelen 'By-design Backdooring of Encryption System – Can We Trust Foreign Encryption Algorithms' på it-sikkerhetskonferansen Black Hat Europe, som ble arrangert i desember i London.
Eric Filiol er forskningssjef ved Operational Cryptology and Virology Lab ved det franske ESIEA-universitet (École Supérieure d'Informatique, Électronique, Automatique).
Filols innlegg handlet om hvordan bakdører kan plasseres i den matematiske algoritmen, slik at alle implementeringer av algoritmen i utgangspunktet vil være sårbare. Og dette kan – alt etter synsvinkelen – være fordelaktig, siden bakdører i matematikken kan være mindre iøynefallende, mener Eric Filiol.
En mur, en pansret dør og en lås
I et påfølgende intervju med Version2 sammenligner Eric Filiol kryptering med en hemmelighet omgitt av en mur, hvor det er en pansret dør med en lås.
Krypteringsnøkkelen er i Filiols forklaring nøkkelen som låser opp døren, og som gir adgang til hemmeligheten.
Eric Filiol forklarer at en vanlig bakdør kan være i forhold til nøkkelhåndtering. Det innebærer at nøkkelen blir oppbevart på en måte slik at uvedkommende kan få fatt på den og låse seg inn til hemmeligheten. Det tilsvarer for eksempel å gjemme nøkkelen under dørmatta.
En bakdør kan også ligge i programvare-implementeringen. For eksempel når en algoritme genererer tilfeldige tall som er for lette å forutsi.
En implementerings-svakhet sammenligner Filiol med at en hacker kan bryte gjennom den muren som omgir hemmeligheten.
Og så har vi den matematiske bakdøren. En slik mener Filiol kan sammenlignes med at den pansrede døren som åpner opp hemmeligheten, bevisst er sårbar.
Det kan være smart å legge bakdøren her – altså i matematikken – fordi hackere, sikkerhetsforskere og så videre, ifølge Filiol, fokuserer relativt lite på dette området.
– Man bygger ikke inn en svakhet i muren, men direkte i den pansrede døren når man konstruerer den, sier Eric Filiol.
– Hacker-samfunnet har utviklet seg mye med hensyn til antall, evner og effektivitet, så man blir nødt til å gå dypere hvis man vil unngå å bli oppdaget.
Generelt etterlyser Eric Filiol et større fokus på sikkerheten i matematikken bak kryptering for å oppdage eventuelle svakheter.
– Det er behov for at det dannes et nytt undersamfunn som jobber med dette området. Og håpet mitt er at vi kanskje om fem år har matematiske hacking-arrangementer, sier han med henvisning til blant annet innleggene på sikkerhetskonferanser som Black Hat.
BEA-1
Men er matematiske bakdører overhodet realistisk?
Ja, mener Eric Filiol, som sammen med Arnaud Bannier har lagd en proof-of-concept-algoritme for å demonstrere hvordan en matematisk bakdør kunne fungere.
Algoritmen heter BEA-1. Enhver implementering av den vil i utgangspunktet inneholde en bakdør hvor det er mulig for en angriper med kjennskap til bakdøren, å få tak i krypteringsnøkkelen og dermed dekryptere data.
BEA-1 inneholder ikke bare en bakdør, men algoritmen er også skrudd sammen slik at den umiddelbart kan bestå analyser som ellers har til formål å finne svakheter i denne typen algoritmer.
Eric Filiol forklarer at det er mulig å lure disse analysemetodene, hvis de er kjente på forhånd.
– Så lenge jeg vet hvordan du vurderer tilfeldighet, kan jeg bygge en dårlig tilfeldighetsgenerator som vil bestå testen din, sier Eric Filiol med henvisning til at tilfeldige tall utgjør grunnlaget for kryptering.
Han påpeker at derfor bør selve krypteringsalgoritmen være åpen, mens de testmetodene som brukes for å kvalitetssikre algoritmen bør være hemmelige. Altså slik at det ikke er mulig å lure dem bevisst.
300 kB
Siden algoritmen ble presentert i februar 2017, har det ifølge Eric Filiol ikke lyktes noen å identifisere bakdøren i algoritmen. Hva bakdøren består av, fortalte Eric Filiol på Black Hat Europe i desember.
Det står mer om teknikken bak i Eric Filiols slides fra Black Hat her (PDF).
Bakdøren ville innebære at hvis en angriper får fatt i 300 kB siffertekst og de tilsvarende dataene i klartekst, vil det være mulig for vedkommende å finne fram til den private nøkkelen.
Selv om det er snakk om et laboratorie-eksempel, vil en slik bakdør ifølge Filiol være brukbar også i den virkelige verden, siden 300 kB henholdsvis klartekst og siffertekst vil være realistisk få tak i.
For eksempel i forhold til kryptering av en harddisk.
– Mange områder er kryptert med null-space, som er mange situasjoner hvor man i forhold til en liten mengde klartekst kan gjette hvilke data som har blitt sendt.
Den virkelige verden?
Én sak er Eric Filiols BEA-1-algoritme, som er konstruert til formålet, men hva med matematiske bakdører i de algoritmene som blir brukt i virkelighetens verden?
Det vil ikke Eric Filiol stille seg avvisende overfor.
Og i den forbindelse trenger algoritmer slett ikke stå i flertall. I veldig mange sammenhenger er det nemlig den samme AES-algoritmen som blir benyttet.
Les også: Sikkerhet gjennom mistillit. Riv firmwaren ut av laptopen (version2.dk)