Microsofts Windows Hello-fingeravtrykkautentisering ble forbigått på bærbare datamaskiner fra Dell, Lenovo og Surface

Hvis du har hørt at forskere gikk utenom Windows Hello på bærbare datamaskiner fra Dell, Lenovo og Surface, er dette alt du trenger å vite.

Viktige takeaways

  • Forskere har klart å omgå Windows Hello på bærbare datamaskiner fra Dell, Lenovo og Microsoft, og fremhever sårbarheter i fingeravtrykksskanningsteknologien.
  • Fingeravtrykksensorene på disse bærbare datamaskinene bruker "Match on Chip"-teknologi for å utføre biometrisk verifisering på sine egne mikroprosessorer, men dette forhindrer ikke iboende falske angrep.
  • Microsofts Secure Device Protection Protocol (SDCP) har som mål å løse disse sårbarhetene, men forskerne fant at noen bærbare datamaskiner, inkludert Lenovo ThinkPad T14s og Microsoft Surface Type Cover, brukte ikke SDCP i det hele tatt, noe som gjorde dem mer utsatt for angrep.

Hvis du har en Windows bærbar PC, så har du sannsynligvis kommet over Windows Hello. Det er en biometrisk pålogging som på støttede bærbare datamaskiner lar brukere logge på med enten en ansiktsskanning, en irisskanning eller en fingeravtrykkskanning. I tilfelle du bruker et fingeravtrykk for å komme inn i den bærbare datamaskinen, vær imidlertid advart: forskere fra Blackwing HQ har omgått Windows Hello på tre forskjellige bærbare datamaskiner fra Dell, Lenovo og Microsoft.

Snakker på Microsofts BlueHat-konferanse i Redmond, Washington, Jesse D'Aguanno og Timo Teräs demonstrert hvordan de hadde klart å omgå Windows Hello på Dell Inspiron 15, Lenovo ThinkPad T14s og Microsoft Surface Pro Type Cover med Fingerprint ID (for Surface Pro 8/X). Dette betydde at de kunne få tilgang til brukerkontoen og brukerens data som om de var en vanlig bruker. Videre er sensorene som brukes på disse tre enhetene fra henholdsvis Goodix, Synaptics og ELAN, noe som betyr at disse sårbarhetene ikke er begrenset til bare én fingeravtrykkskannerprodusent eller bærbar datamaskin OEM.

Match on Chip, SDCP, og hvordan bærbare produsenter har skrudd sammen

Surface Pro 7 + med sort dekseltastatur

Først og fremst er det viktig å forstå hvordan disse fingeravtrykkskannerne fungerer og samvirker med vertssystemet. Alle tre fingeravtrykkskannere bruker "Match on Chip"-teknologi (MoC), som betyr at de pakker sin egen mikroprosessor og lagring. All fingeravtrykkverifisering utføres på denne brikken, inkludert sammenligning med databasen med "fingeravtrykkmaler"; de biometriske dataene fingeravtrykksensoren innhenter. Dette sikrer at selv om vertsmaskinen er kompromittert (i dette tilfellet selve den bærbare datamaskinen), er de biometriske dataene ikke i fare.

En annen fordel med MoC er at den forhindrer en angriper i å kompromittere en forfalsket sensor og sende biometriske data til vertssystemet. Det forhindrer imidlertid ikke at en ondsinnet sensor utgir seg for å være en legitim sensor, og forteller systemet at brukeren har autentisert. Den kan heller ikke forhindre replay-angrep, der en angriper vil avskjære et gyldig påloggingsforsøk og deretter "replay" det tilbake til vertssystemet. Windows Hello Advanced Sign-in Security (ESS) krever bruk av MoC-sensorer, men du kan allerede se en rekke måter kreative angripere kan prøve å komme inn på en brukers bærbare datamaskin. Det er derfor Microsoft utviklet SDCP, Secure Device Protection Protocol.

SDCP har følgende mål:

  1. Sikre at fingeravtrykkenheten er klarert
  2. Sikre at fingeravtrykksenheten er sunn
  3. Beskytter inndata mellom fingeravtrykksenheten og verten

SDCP er en doktrine som sier at hvis systemet godtar en biometrisk pålogging, kan det gjøre det med antagelsen om at enhetseieren var fysisk tilstede på tidspunktet for pålogging. Den fungerer i en tillitskjede og tar sikte på å svare på følgende spørsmål om sensoren som brukes:

  1. Kan verten stole på at den snakker til en ekte enhet?
  2. Kan verten stole på at enheten ikke er blitt hacket eller modifisert?
  3. Er dataene som kommer fra enheten beskyttet?

Dette er grunnen til at SDCP oppretter en ende-til-ende-kanal mellom verten og fingeravtrykksensoren. Dette utnytter Secure Boot, som sikrer at et modellspesifikt sertifikat og en privat nøkkel fungerer som en tillitskjede for å bekrefte at all kommunikasjon har vært umanipulert. Kompromittert fastvare kan fortsatt brukes, men systemet vil vite at den har blitt kompromittert og modifisert, og forskerne bemerket at alle enheter som ble testet også signerte fastvaren for å forhindre tukling.

Alt det ovennevnte høres bra ut, og SDCP som konsept er en flott sikkerhetsfunksjon som OEM-er bør bruke. Som et resultat kom det som en overraskelse for forskerne da Lenovo ThinkPad T14s og Microsoft Surface Type Cover ikke benyttet seg av SDCP i det hele tatt.

For å sitere forskerne fra Blackwing HQ:

"Microsoft gjorde en god jobb med å utforme SDCP for å gi en sikker kanal mellom verten og biometriske enheter, men dessverre ser det ut til at enhetsprodusenter misforstår noen av målene. I tillegg dekker SDCP bare et veldig smalt omfang av en typisk enhets operasjon, mens de fleste enheter har en betydelig angrepsoverflate som ikke er dekket av SDCP i det hele tatt.

Til slutt fant vi ut at SDCP ikke engang var aktivert på to av tre av enhetene vi målrettet mot."

Angriper Dell, Lenovo og Surface

Når det gjelder Dell Inspiron 15, fant forskerne at de kunne registrere et fingeravtrykk via Linux, som igjen ikke ville bruke SDCP. Mens det viser seg at sensoren lagrer to databaser med fingeravtrykk for både Linux og Windows (derfor sikre at SDCP bare brukes på Windows, og en bruker ikke kan registrere seg på Linux for å logge på Windows) er det mulig å avskjære forbindelsen mellom sensor og vert for å fortelle sensoren om å bruke Linux-databasen, til tross for at maskinen startes opp i Windows.

Dette var alt mulig takket være en uautentisert pakke som sjekket det oppstartede operativsystemet og kunne kapres for å peke til Linux-databasen i stedet. Det krevde å bruke en Raspberry Pi 4 for å registrere brukere i Linux-databasen og koble til sensoren manuelt, men det fungerte og tillot forskerne å logge på Windows-systemet mens de brukte et hvilket som helst fingeravtrykk, mens de fortsatt beholdt SDCP intakt.

Kilde: Blackwing HQ

Når det gjelder Lenovo ThinkPad T14s, krevde det omvendt utvikling av en tilpasset TLS-stabel som sikret kommunikasjonen mellom verten og sensoren, og hoppet over SDCP helt. Nøkkelen som ble brukt til å kryptere denne kommunikasjonen viste seg å være en kombinasjon av maskinens produkt navn og serienummer, og utnyttelse rett og slett fordi et "ingeniørproblem" som forskerne sa den.

Når angriperens fingeravtrykk kunne tvangsregistreres i listen over gyldige IDer, var det mulig å starte opp i Windows og bruke angriperens fingeravtrykk for å logge på systemet.

Kilde: Blackwing HQ

Den verste og mest forferdelige av de tre kommer fra Microsoft Surface Covers fingeravtrykksensor fra ELAN. Det er ingen SDCP, den kommuniserer over USB i klartekst, og den gjør ingen anstrengelser for å autentisere brukeren. Den eneste autentiseringskontrollen den foretar er en sjekk med vertssystemet for å se om antallet registrerte fingeravtrykk på verten samsvarer med nummeret sensoren har. Dette kan fortsatt enkelt skjørt med en falsk sensor som spør den virkelige sensoren hvor mange fingeravtrykk som er registrert.

Hva kan du gjøre?

Hvis du eier en av disse berørte bærbare datamaskinene, kan du være trygg på at det er svært usannsynlig at et slikt angrep vil skje med deg. Dette er høyt spesialiserte angrep som krever mye innsats fra angriperens side, og de trenger også fysisk tilgang til den bærbare datamaskinen. Hvis det er et problem, er den beste veien videre enten å oppgradere til en sikrere bærbar PC eller i det minste deaktivere Windows Hello helt.

Deaktivering av Windows Hello burde forhåpentligvis være nok, da det vil kreve at du logger på manuelt og systemet ikke forventer at en fingeravtrykkssensor logger på i det hele tatt. Hvis du fortsatt ikke stoler på den bærbare datamaskinen, da å hente en ny kan være en god idé.