I august 2022 kom Microsoft med en sikkerhetsoppdatering som retter en sårbarhet (CVE-2022-34689) som finnes i eldre versjoner av Windows CryptoAPI, et grunnleggende kryptobibliotek i Windows. Det benyttes av mange applikasjoner.
Til tross for at sikkerhetsfiksen var inkludert i august-oppdateringen, ble den ikke gjort kjent før to måneder senere.
Sårbarheten gjør det relativt enkelt for en angriper å forfalske identiteten sin ved å manipulere et eksisterende, offentlig x.509-sertifikat. Dette kan for eksempel brukes til å signere ondsinnet kode med et tilsynelatende legitimt sertifikat, eller til å dekryptere krypterte data, inkludert «man-in-the-middle»-angrep mot krypterte nettverksforbindelser av ulike slag.
_logo.svg.png)
.jpg)
Microsoft oppgir at selskapet fikk vite om sårbarheten av National Cyber Security Centre (NCSC) og National Security Agency (NSA). Sårbarheten ble gitt en CVSS-score på 7,5, altså et stykke unna den mest kritiske verdien, 10,0. Den er likevel karakterisert av Microsoft som kritisk.

Denne Android-skadevaren stjeler data fra hundrevis av bank-apper
Installert av under én prosent
Nå, flere måneder senere, har infrastrukturtilbyderen Akamai sett nærmere på den aktuelle sårbarheten. I tillegg til å fortelle at sårbarheten skyldes bruk av den usikre hashing-algoritmen MD5, har Akamai utviklet et konseptbevis på angrepskode som utnytter sårbarheten, i tillegg å registrere utbredelsen av internett-eksponerte servere hvor sikkerhetsoppdateringen fra august ikke har blitt installert.
– Vi fant ut at færre enn én prosent av de synlige enhetene i datasentrene er patchet, noe som betyr at resten er ubeskyttet mot utnyttelse av denne sårbarheten, skriver Akamai.
I konseptbeviset selskapet har utviklet, er det brukt en eldre utgave av Google Chrome (v48), som tar i bruk den sårbare utgaven av CryptoAPI i Windows. Nyere utgaver av Chrome er ikke berørt. Dette er ikke den mest aktuelle programvaren å bruke i dag, men sikkerhetsforskerne hos Akamai skriver at finnes mye annen kode som benytter CryptoAPI.
Mellomlagres av klienten
Det konseptbeviset handler om, er at man greier å narre for eksempel en nettleser (som benytter Windows CryptoAPI) til å koble seg til en «man-in-the-middle»-server, som er satt opp til å late som at den er nettstedet nettleserbrukeren ønsker å besøke. Den ondsinnede serveren sender da en etterlignet versjon av det legitime nettstedsertifikatet til nettstedet, til nettleseren. Derfra blir det etterlignede sertifikatet sendt til CryptoAPI, hvor det prosesseres, før det mellomlagres i minnet til brukerens PC.
I dette mellomlageret lagres sertifikatet ved å bruke en del av det digitale MD5-fingeravtrykket til sertifikatdataene som indeks. Men på grunn av svakhetene i MD5, som ikke kan garantere to ulike sertifikater kan ha samme, digitale fingeravtrykk. Dette kalles for kollisjoner og er årsaken til at det har blitt frarådet å bruke MD5 sikkerhetsøyemed siden 2009.
Sørger for kollisjoner
Det er nettopp dette som gjøres med det etterlignede sertifikatet. Det genereres på «man-in-the-middle»-serveren slik at det har samme MD5-indeks i mellomlageret som det ekte sertifikatet. Dermed vil nettleseren stole på dette sertifikatet og ikke be om et nytt fra nettstedet. Dette kan utnyttes av «man-in-the-middle»-serveren til å levere falskt innhold til nettleseren.
Akamai beskriver resten av angrepsteknikken i stor detalj på denne siden.
Selv om det ikke er å relevant å bruke en nettleser på en server, så kan det være annen programvare på serveren som fungerer som klient i kommunikasjonen med andre servere via for eksempel HTTPS, og som benytter CryptoAPI. Akamai har ikke identifisert slik programvare ennå, men for å være på den sikre siden, bør serveradministratorer og andre sørge for at den nevnte sikkerhetsoppdateringen blir installert så raskt som mulig.

Nasjonalgarden mobiliseres etter cyberangrep i USA