Forsker efter EFAIL: Stol ikke på PGP-værktøjer til meget følsom kommunikation
Offentliggørelsen af det såkaldte EFAIL-angreb mod krypterede mails har vakt en del postyr.
Med professor ved Münster University of Applied Sciences Sebastian Schinzel i spidsen kunne en gruppe forskere forleden fortælle om flere sårbarheder relateret til mails krypteret via PGP og S/MIME. Sårbarhederne er nærmere forklaret på efail.de
I kølvandet på nyheden har forskerne blandt andet fået kritik for at hype EFAIL, og for et uansvarligt forløb omkring offentliggørelse af sårbarhederne.
Eksempelvis i form af dette tweet fra mailtjenesten ProtonMail: Efail is a prime example of irresponsible disclosure. There is no responsibility in hyping the story to @EFF and mainstream media and getting an irresponsible recommendation published (disable PGP), ignoring the fact that many (Enigmail, etc) are already patched.
Derudover har offentliggørelsen af EFAIL også affødt en debat, hvem der har skylden for, at angrebet kan lade sig gøre.
Inden vi når til, hvad denne diskussion drejer sig om, skal vi lige omkring en ganske kort opsummering af EFAIL.
EFAIL
Otte forskere er krediteret for kortlægningen af angrebsteknikkerne. Forskerne kommer fra tre universiteter: Damian Poddebniak, Christian Dresen, Fabian Ising og Sebastian Schinzel fra Münster University of Applied Sciences. Jens Müller, Juraj Somorovsky og Jörg Schwenk fra Ruhr University Bochum og Simon Friedberger fra KU Leuven.
Forskerne har påvist, at det på forskellig vis er muligt at manipulere mails krypteret via S/MIME og PGP på en måde, så en angriber i sidste ende kan få kendskab til fortroligt indhold. Altså i udgangspunktet en alvorlig sag.
Det skal her bemærkes, at alle angrebsteknikkerne forudsætter, at en angriber har adgang til mails i krypteret format. Det ligger dog næsten i sagens natur, da eksempelvis PGP netop bliver brugt ud fra forudsætningen om, at uvedkommende kan have adgang til kommunikationen. Det kunne være via den mail-server, der bliver anvendt .
EFAIL dækker over flere angrebsteknikker. En af teknikkerne er relativt simpel og udnytter, at visse mail-klienter har håndteret indhold på en måde, så en angriber kan læse med i ellers krypteret indhold.
Altså en sårbarhed i disse klienter. OpenPGP er en open source-baseret standard for PGP-kryptering. PGP gør blandt andet muligt at signere og kryptere indhold. GnuPG er et frit tilgængeligt software-projekt, der implementerer OpenPGP-standarden.OpenPGP og GnuPG
Kilde: Wikipedia mfl.
Men forskerne har også givet udtryk for, at de bagvedliggende standarder bør opdateres. Det vil sige henholdsvis OpenPGP og S/MIME.
GnuPG
Forskernes melding om, at om, at der skulle være plads til forbedring OpenPG standarden har vakt en del debat. S/MIME er en helt anden historie, som vi vender tilbage til.
Debatten handler egentlig ikke om selve krytperingsdelen - matematikken er såvidt vides solid nok. Kernen i debatten er mere en diskussion om workflow mellem forskellige værktøjer
Et centralt værktøj i den sammenhæng er GnuPG. Det er et software-projekt, der implementerer OpenPGP-standarden, og som andre systemer gør brug af. Eksempelvis mail-klienten Thunderbird, der via Enigmail-plugin'et og GnuPG håndterer PGP-indhold. S/MIME er en krypteringsstandard, der er implementeret i flere mail-klienter, og som bruges til krypteret kommunikation.S/MIME
Kilde: Wikipedia mfl.
Den tekniske rapport om EFAIL nævner eksplicit, GnuPG og Enigmail, som eksempler på software, der overholder OpenPGP-standarden, men som ifølge forskerne alligevel er sårbare overfor EFAIL.
I en pressemeddelelse fremgår det, at holdet bag GnuPG er uenig i den udlægning. GnuPG-folkene mener entydigt, at problemet er fejlfyldte mail-klienter - ikke OpenPGP-standarden eller GnuPG.
Argument for, hvorfor problemet i relation til EFAIL alene skulle ligge i mail-klienterne er, at der omkring år 2000 blev implementeret et check i OpenPGP og GnuPG, som kan opdage, hvis der bliver manipuleret med datapakker i eksempelvis en mail. (OpenPGP er ikke kun til mail kryptering.)
EFAIL-angrebet beror her 18 år senere på, at der i visse tilfælde faktisk alligevel kan manipuleres med datapakkerne, trods integritetstjekket.
MDC
Checket, der blev introduceret i PGP-standarden og i GnuPG omkring år 2000, hedder ganske sigende Modification Detection Code (MDC).
Fejl i MDC-tjekket får GnuPG til at spytte en advarselsbesked ud. Denne besked er ikke nødvendigvis direkte synlig for brugeren, men kan eksempelvis bruges af et program, der anvender GnuPG-implementeringen af OpenPGP.
EFAIL lader sig gøre, netop fordi det er op til brugeren eller mailklient-softwaren at håndtere en eventuel MDC-fejl i PGP.
Eksempelvis kan mail-klienten vælge mere eller mindre at ignorere advarslen og vise så meget som muligt af den krypterede mail. Et alternativ kunne være slet ikke at vise noget indhold ved MDC-fejl og give brugeren besked om, at der er noget galt med integriteten af indholdet.
Endnu et alternativ kunne være, at GnuPG ved MDC-fejl ikke nøjedes med en advarsel, men helt droppede at behandle det krypterede indhold, som så aldrig ville nå til eksempelvis Thunderbird.
Hovedforfatten til GnuPG Werner Koch forklarer her, hvorfor programmet har givet en advarsel i stedet for helt at afvise indhold ved problemer med MDC.
Kochs begrundelse handler kort fortalt om, at visse OpenPGP-implementeringer var sene til at understøtte MDC, så af kompatibilitetshensyn bliver indhold med MDC-problemer ikke bare skrottet. I stedet kommer GnuPG med en advarsel, som brugere eller andet software så kan håndtere.
Eller lade være med at håndtere. Forskerne har nemlig analyseret en stribe mailklienter og fundet frem til, at de håndterer MDC-fejl forskelligt. Nogle klienter viser eksempelvis indholdet af mails, selvom MDC fejler.
Og det har forskerne udnyttet til at snige manipuleret indhold ind i mailklienten, hvilket har gjort det muligt at trække potentielt følsomme data ud af programmet.
Standarden
Årsagen til det problem hænger ifølge forskerne sammen med OpenPGP-standarden.
Standarden får i EFAIL-rapporten kritik for at være for vag i forhold til, hvordan MDC-fejl skal håndteres.
Der står eksempelvis, at MDC-fejl SKAL behandles som et sikkerhedsproblem, som BØR rapporteres til brugeren.
Standarden går ikke umiddelbart i nærmere detaljer med, hvad der ligger i at behandle MDC-fejlene som et 'sikkerhedsproblem', ligesom det altså tilsyneladende heller ikke er obligatorisk at informere brugeren i den forbindelse.
Her vil nogen anføre, at klientsoftware, eksempelvis et mailprogram, der uden videre dikkedarer viser indhold på trods af fejl i et integritet-tjek ikke er videre smart skruet sammen. Disse fejl SKAL jo behandles som et sikkerhedsproblem, jævnfør standarden.
Men forskerne mener altså, at standarden bør forbedres, og at den vage definition i forhold til MDC-håndtering bærer en del af skylden for, hvorfor diverse mail-klienter har vist sig sårbare overfor EFAIL.
Jævnfør en tabel i rapporten har forskerne undersøgt en række mailklienter. I den forbindelse fremgår det, at det ved PGP er muligt via angrebet at trække data ud af blandt andet Outlook 2017, Thunderbird og Apple Mail, selvom MDC-tjekket har fejlet.
Det lyder måske slemt, det står dog langt værre til, hvad S/MIME-standarden angår.
Ekspert: S/MIME er i stykker
Her er forskernes liste over sårbare mail-klienter nemlig meget længere. Forklaringen er ifølge forskerne, at S/MIME slet ikke indeholder tiltag, der kan modvirke et EFAIL-angreb. Altså ikke som med MDC i OpenPGP.
Matthew D. Green er adjunkt(eng. assistant professor) ved Johns Hopkins Universitetet i den amerikanske delstat Maryland. Han forsker i kryptering.
Da detaljerne om EFAIL-angrebet kom frem mandag i denne uge, kommenterede han det via flere Twitter-beskeder. Her rettede han umiddelbart en anklagende finger mod GnuPG for at have overladt det til klienterne at håndtere forsvarsmekanismen mod et angreb som EFAIL.
So in summary, PGP clients are vulnerable because 17 years after a vulnerability was known, the mitigation was not made a default in GnuPG and defense was instead “left to PGP clients”, which also make a convenient scapegoat when it goes pear-shaped. 12/
I en mail til Version2 uddyber Green sine Twitter-betragtninger i forhold til EFAIL.
Han starter med at understrege, at det mest væsentlige ved EFAIL-sårbarhederne ikke er OpenPGP, men usikkerheden ved S/MIME, som forskerne har påvist.
»Den protokol bliver brugt af et stort antal virksomheder til håndtering af fortrolige mails. Det faktum, at den protokol - og Microsoft Outlook - er i stykker, er en stor ting.«
S/MIME bruges blandt andet til kryptering af mail i virksomhedssammenhæng og er indbygget i Microsofts Outlook.
Green nævner i den forbindelse, at der har været adskillige læk hos forsvarsvirksomheder i USA. Underforstået: Det hænger måske sammen med S/MIME-sårbarheden, som kortlagt i EFAIL.
»Det er et meget stort problem, at vores 'hoved' virksomhedsmail-krypteringsprotokol er så svag.«
Green: PGP mangler lederskab
Hvad PGP angår, så giver Green udtryk for, at han ikke synes, det er så interessant at placere et ansvar for problemet.
»Faktum er, at EFAIL er en meget alvorlig fejl, som eksisterer på tværs at et stort antal mail-klienter. Den (EFAIL, red.) muliggør total dekryptering af mail-beskeder, noget som absolut ikke burde være muligt i 2018.«
Green peger på, at fejlene, der ligger til grund for EFAIL, har været kendt siden omkring år 2000-2001. Altså omkring det tidspunkt, hvor MDC blev indført i standarden og i GnuPG, om ekstra beskyttelse.
»Det faktum, at dette sker i så mange forskellige mail-klienter indikerer overfor mig, at PGP-værktøjs-udvikler-communitiet ikke forfølger kryptografisk sikkerhed i den udstrækning, der er nødvendig for et seriøst krypteringsværktøj.«
Ifølge Green, så er hovedårsagen til, at EFAIL i dag er et problem for PGP, manglende lederskab af communitiet.
»Lederskab i denne forstand vil sige, nogen som er i en position til at influere, hvem der arbejder på diverse projekter, og hvem der bruger og kommunikerer med andre udviklere i dette rum.«
Sådan en leder vil ifølge Green også reagere på, når klienter gør tingene forkert. Altså eksempelvis hvis klient-software gladeligt viser mail-indhold til trods for MDC-fejl.
Her fremhæver Green TLS-kryptering, som et open source-projekt, der er bedre styr på end PGP.
Green: Stoler foreløbigt ikke på PGP-værktøjer
Et naturligt sted at placere lederskabet for PGP ville ifølge Green være hos GnuPG, da mange systemer anvender dette software.
»Men lederne af GnuPG projektet har hovedsageligt besluttet sig for, at dette er nogle andres problem. Og det har de tydeliggjort via den måde, hvorpå de reagerede på EFAIL,« skriver Green med henvisning til, at GnuPG har givet udtryk for, at problemet alene ligger hos fejlfyldte mail-klienterne.
Indtil der kommer styr på lederskabet i forhold til PGP, så har Green følgende formaning.
»Pas særdeles godt på med at bruge dette økosystem,« skriver Green.
Han mener, det er op til brugerne selv at undersøge, hvorvidt diverse PGP-værktøjer fungerer - også i kommunikationen med hinanden - da ingen andre gør det.
Og det er i den forbindelse ikke nok at få styr på egne værktøjer, det er også nødvendigt at være sikker på, den eller dem man vil kommunikere med, har styr på deres værktøjer.
»Så - indtil dette grundlæggende ændrer sig - så ville jeg ikke stole på PGP-økosystemet til ekstremt følsom kommunikation.«
Efter Matt Green sendte mailen med sine betragtninger til Version2, har han lagt samme svar på Twitter, hvor det kan læses i sin helhed og på originalsproget.
Someone asked me to summarize my views on the Efail matter, and the “controversy” in the PGP community. In case my rants yesterday were too incoherent for you, this is how I responded. https://t.co/D5L2Txm8PH pic.twitter.com/QmOEs7V38K

...men det er dyrt at lave god journalistik. Derfor beder vi dig overveje at tegne abonnement på Version2.
Digitaliseringen buldrer derudaf, og it-folkene tegner fremtidens Danmark. Derfor er det vigtigere end nogensinde med et kvalificeret bud på, hvordan it bedst kan være med til at udvikle det danske samfund og erhvervsliv.
Og der har aldrig været mere akut brug for en kritisk vagthund, der råber op, når der tages forkerte it-beslutninger.
Den rolle har Version2 indtaget siden 2006 - og det bliver vi ved med.