Hvis du har hørt, at forskere gik uden om Windows Hello på bærbare computere fra Dell, Lenovo og Surface, er dette alt, hvad du behøver at vide.
Nøgle takeaways
- Forskere har formået at omgå Windows Hello på bærbare computere fra Dell, Lenovo og Microsoft, hvilket fremhæver sårbarheder i fingeraftryksscanningsteknologien.
- Fingeraftrykssensorerne på disse bærbare computere bruger "Match on Chip"-teknologi til at udføre biometrisk verifikation på deres egne mikroprocessorer, men dette forhindrer ikke i sagens natur spoofingangreb.
- Microsofts Secure Device Protection Protocol (SDCP) har til formål at løse disse sårbarheder, men forskerne fandt ud af, at nogle bærbare computere, inklusive Lenovo ThinkPad T14s og Microsoft Surface Type Cover, brugte slet ikke SDCP, hvilket gjorde dem mere modtagelige for angreb.
Hvis du har en Windows bærbar, så er du sikkert stødt på Windows Hello. Det er et biometrisk login, der på understøttede bærbare computere giver brugerne mulighed for at logge ind med enten en ansigtsscanning, en irisscanning eller en fingeraftryksscanning. I tilfælde af at bruge et fingeraftryk til at komme ind i din bærbare computer, skal du dog være advaret: forskere fra Blackwing HQ har omgået Windows Hello på tre forskellige bærbare computere fra Dell, Lenovo og Microsoft.
Taler ved Microsofts BlueHat-konference i Redmond, Washington, Jesse D'Aguanno og Timo Teräs demonstreret hvordan de havde formået at omgå Windows Hello på Dell Inspiron 15, Lenovo ThinkPad T14s og Microsoft Surface Pro Type Cover med Fingerprint ID (til Surface Pro 8/X). Det betød, at de kunne få adgang til brugerkontoen og brugerens data, som om de var en normal bruger. Desuden er sensorerne, der bruges på disse tre enheder, fra henholdsvis Goodix, Synaptics og ELAN, hvilket betyder, at disse sårbarheder ikke er begrænset til kun én fingeraftryksscannerproducent eller bærbar computer OEM.
Match on Chip, SDCP, og hvordan bærbare producenter skruede sammen
Først og fremmest er det bydende nødvendigt at forstå, hvordan disse fingeraftryksscannere fungerer og interopererer med værtssystemet. Alle tre fingeraftryksscannere bruger "Match on Chip" (MoC) teknologi, hvilket betyder, at de pakker deres egen mikroprocessor og lager. Al fingeraftryksverifikation udføres på denne chip, inklusive sammenligning med databasen med "fingeraftryksskabeloner"; de biometriske data fingeraftrykssensoren indhenter. Dette sikrer, at selv hvis værtsmaskinen er kompromitteret (i dette tilfælde selve den bærbare computer), er de biometriske data ikke i fare.
En anden fordel ved MoC er, at det forhindrer en hacker i at kompromittere en forfalsket sensor og sende biometriske data til værtssystemet. Det forhindrer dog ikke en ondsindet sensor i at foregive at være en legitim sensor, der fortæller systemet, at brugeren har godkendt. Det kan heller ikke forhindre genafspilningsangreb, hvor en angriber ville opsnappe et gyldigt loginforsøg og derefter "genafspille" det tilbage til værtssystemet. Windows Hello Advanced Sign-in Security (ESS) kræver brug af MoC-sensorer, men du kan allerede se en række måder, hvorpå kreative angribere kan forsøge at komme ind på en brugers bærbare computer. Det er derfor, Microsoft udviklede SDCP, Secure Device Protection Protocol.
SDCP har følgende mål:
- Sikring af, at fingeraftryksenheden er pålidelig
- Sikring af, at fingeraftryksenheden er sund
- Beskytter input mellem fingeraftryksenheden og værten
SDCP er en doktrin, der angiver, at hvis systemet accepterer et biometrisk login, kan det gøre det med den antagelse, at enhedsejeren var fysisk til stede på tidspunktet for login. Den fungerer i en tillidskæde og sigter mod at besvare følgende spørgsmål om den anvendte sensor:
- Kan værten stole på, at den taler til en ægte enhed?
- Kan værten stole på, at enheden ikke er blevet hacket eller ændret?
- Er dataene, der kommer fra enheden, beskyttet?
Dette er grunden til, at SDCP opretter en ende-til-ende-kanal mellem værten og fingeraftrykssensoren. Dette udnytter Secure Boot, som sikrer, at et modelspecifikt certifikat og en privat nøgle fungerer som en tillidskæde for at bekræfte, at al kommunikation er blevet umanipuleret. Kompromitteret firmware kan stadig bruges, men systemet vil vide, at den er blevet kompromitteret og ændret, og forskerne bemærkede, at alle testede enheder også signerede deres firmware for at forhindre manipulation.
Alt ovenstående lyder godt, og SDCP som koncept er en fantastisk sikkerhedsfunktion, som OEM'er bør bruge. Som et resultat kom det som en overraskelse for forskerne, da Lenovo ThinkPad T14s og Microsoft Surface Type Cover slet ikke gjorde brug af SDCP.
For at citere forskerne fra Blackwing HQ:
"Microsoft gjorde et godt stykke arbejde med at designe SDCP for at give en sikker kanal mellem værten og biometriske enheder, men desværre ser enhedsproducenterne ud til at misforstå nogle af målene. Derudover dækker SDCP kun et meget snævert område af en typisk enheds drift, mens de fleste enheder har en betydelig angrebsoverflade, som slet ikke er dækket af SDCP.
Endelig fandt vi ud af, at SDCP ikke engang var aktiveret på to ud af tre af de enheder, vi målrettede mod."
Angriber Dell, Lenovo og Surface
I tilfældet med Dell Inspiron 15 fandt forskerne ud af, at de kunne tilmelde et fingeraftryk via Linux, som igen ikke ville gøre brug af SDCP. Mens det viser sig, at sensoren gemmer to databaser med fingeraftryk til både Linux og Windows (derfor sikre, at SDCP kun bruges på Windows, og en bruger ikke kan tilmelde sig på Linux for at logge ind på Windows) er det muligt at opsnappe forbindelsen mellem sensor og vært for at fortælle sensoren at bruge Linux-databasen, på trods af at maskinen er startet op i Windows.
Dette var alt muligt takket være en uautoriseret pakke, der kontrollerede det opstartede operativsystem og kunne blive kapret til at pege på Linux-databasen i stedet. Det krævede at bruge en Raspberry Pi 4 for at tilmelde brugere til Linux-databasen og oprette forbindelse til sensoren manuelt, men det virkede og tillod forskerne at logge ind på Windows-systemet, mens de brugte et hvilket som helst fingeraftryk, mens de stadig beholdt SDCP intakt.
Kilde: Blackwing HQ
I tilfældet med Lenovo ThinkPad T14s krævede det omvendt konstruktion af en brugerdefineret TLS-stak, der sikrede kommunikationen mellem værten og sensoren, og sprang SDCP helt over. Nøglen, der blev brugt til at kryptere denne kommunikation, viste sig at være en kombination af maskinens produkt navn og serienummer, og udnyttelse blot fordi et "ingeniørproblem", som forskerne udtrykker det.
Når først angriberens fingeraftryk kunne tvangsregistreres på listen over gyldige id'er, var det muligt at starte op i Windows og bruge angriberens fingeraftryk til at logge ind på systemet.
Kilde: Blackwing HQ
Den værste og mest uhyggelige af de tre kommer fra Microsoft Surface Covers fingeraftrykssensor fra ELAN. Der er ingen SDCP, den kommunikerer over USB i klartekst, og den gør ingen indsats for at autentificere brugeren. Den eneste autentificeringskontrol, den foretager, er en kontrol hos værtssystemet for at se, om antallet af tilmeldte fingeraftryk på værten matcher det nummer, sensoren har. Dette kan stadig nemt omgås med en falsk sensor, der spørger den rigtige sensor, hvor mange fingeraftryk der er registreret.
Hvad kan du gøre?
Hvis du ejer en af disse berørte bærbare computere, kan du være sikker på, at det er meget usandsynligt, at et angreb som dette vil ske for dig. Disse er højt specialiserede angreb, der kræver en stor indsats fra angriberens side, og de har også brug for fysisk adgang til din bærbare computer. Hvis det er et problem, er den bedste vej frem enten at opgradere til en mere sikker bærbar eller i det mindste deaktivere Windows Hello helt.
Deaktivering af Windows Hello skulle forhåbentlig være nok, da det vil kræve, at du logger ind manuelt, og systemet vil slet ikke forvente, at en fingeraftrykssensor logger ind. Hvis du stadig ikke har tillid til din bærbare computer, så at hente en ny kan være en god idé.