Forsker finder sårbarheder i Logitech-dongles: Muligt at opsnappe tastetryk

9. juli 2019 kl. 15:247
Forsker finder sårbarheder i Logitech-dongles: Muligt at opsnappe tastetryk
Illustration: Marcus Mengs youtube screenshot.
En sikkerhedsforsker har fundet flere sårbarheder i Logitechs Unifying-dongles. Kun nogle af dem bliver patched.
Artiklen er ældre end 30 dage
Manglende links i teksten kan sandsynligvis findes i bunden af artiklen.

Sikkerhedsforskeren Marcus Mengs har fundet flere sårbarheder i Logitechs Unifying-dongles, der blandt andet bliver brugt til at forbinde trådløse tastaturer og mus til computere i hobetal verden over. Det fortæller ZDNet, som henviser til en rapport fra Mengs.

De pågældende dongles kan identificeres på en orange stjerne på en af siderne på USB-enheden. Se et billede på Wikipedia her.

Sårbarhederne, Mengs har identificeret, gør det blandt andet muligt at opsnappe tastetryk og at injecte keyboard-kommandoer til en klient.

Sidstnævnte vil sige, at en angriber kan sende tastatur-tryk til et sårbart system, og potentielt få systemet til at eksekvere kode.

Opsnapning af tastetryk

Mengs fortæller i rapporten om flere sårbarheder, som gør opsnapning af tastetryk mulig.

Artiklen fortsætter efter annoncen

Den ene sårbarhed, CVE-2019-13052, forudsætter, at en angriber lytter med, mens en enhed er ved at blive parret med en dongle. I denne situation skulle det være muligt på sårbart udstyr at opfange de krypteringsnøgler, der bliver udvekslet.

CVE-2019-13052 gør det også muligt for en angriber at injecte tastetryk til donglen. Ifølge Marcus Mengs' rapport har Logitech ingen planer om at patche denne sårbarhed.

Mengs har lagt en video op her, der demonstrerer CVE-2019-13052.

Remote video URL

Artiklen fortsætter efter annoncen

En anden sårbarhed, CVE-2019-13055, gør det ifølge Mengs også muligt at følge med i, hvad der bliver tastet.

CVE-2019-13055 forudsætter fysisk adgang til udstyret. Men så skulle sårbarheden også gøre det muligt som følge af udokumenterede leverandør-kommandoer (eng. undocumented vendor commands) og mangelfuld databeskyttelse at hive krypteringsnøgler ud af parrede enheder på mindre end et sekund.

Herefter skulle en angriber være i stand til både at opsnappe tastetryk og injecte tastetryk i den trådløse kommunikation.

Logitech har ifølge Mengs meddelt, at virksomheden vil patche CVE-2019-13055 i august 2019.

Mengs har lagt en video ud på Twitter, der skal vise CVE-2019-13055

Remote video URL

Mengs fortæller om flere andre sårbarheder i sin rapport. Nogle af sårbarhederne er af ældre dato.

ZDNet har rettet henvendelse til Logitech for en kommentar. Tastaturproducenten er ikke vendt tilbage med et svar, inden mediet udgav sin artikel.

7 kommentarer.  Hop til debatten
Denne artikel er gratis...

...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.

Debatten
Log ind eller opret en bruger for at deltage i debatten.
settingsDebatindstillinger
7
18. juli 2019 kl. 02:36

For det første er det slet ikke det der er problemet: Problemet er at nøgleudveksling kan opfanges. Det er et decideret protokol problem (for dine senere kommentarer: nøglepar kan sagtens være tilfældigt genereret, de skal bare huskes siden sidste pairing.

Nu snakkede vi et mere hypotetisk tilfælde omkring paring. Logitech har patched plaintext angreb og de angreb der findes kræver fysisk adgang til receiveren.

Ordenligt gennemført er paring kun sårbar mod et man-in-the-middle angreb. Det er selvfølgeligt nemt nok at sikre at nøgler ikke opsnappes i udvekslingen, men det er umuligt at beskytte sig mod man-in-the-middle angreb hvis man ikke "deler" en form for hemmelighed med modparten eller har en kommunikationskanal der ikke kan angribes af 3. part. Mine kommentarer var rettet mod et man-in-the-middle angreb.

Der er ingen grund til at nøgler skal kunne hentes ud af devicet, og der er rigeligt hardwareløsninger der gør den private nøgle utilgængelig, også ved fysisk adgang).

Man kan ikke lave hardwareløsninger der er tamperproof. Hvis man har adgang til hardwaren, så har man i sidste ende også adgang til indholdet. Hvis blot man er villig til at brug tilstrækkelige ressourcer. Der findes ikke "rigeligt hardwareløsninger der gør den private nøgle utilgængelig" - der findes faktisk ingen hvis modstanderen er fx. en stor efterretningstjeneste.

6
17. juli 2019 kl. 09:52

Problemet er at der ikke er nogen gode brugervenlige metoder for trådløs parring. Bluetooth har samme problem. Eneste sikre trådløse løsning er at lade brugeren taste en 128 bit kode ind på tastaturet som han læser fra skærmen. Det virker desværre kun med devices der har tastatur og det er i øvrigt ikke særligt brugervenligt.

For det første er det slet ikke det der er problemet: Problemet er at nøgleudveksling kan opfanges. Det er et decideret protokol problem (for dine senere kommentarer: nøglepar kan sagtens være tilfældigt genereret, de skal bare huskes siden sidste pairing. Der er ingen grund til at nøgler skal kunne hentes ud af devicet, og der er rigeligt hardwareløsninger der gør den private nøgle utilgængelig, også ved fysisk adgang).

Angående selve pairingen: Nu er det jo HID devices. Som en led i pairingen er det meget simpelt at bede folk tjekke at keyboard og/eller mus virker som de skal. Sådan er det allerede i dag (og man fanger alligevel hurtigt hvis der er noget galt). Alternativt kunne man sandbox'e devicet indtil brugeren har accepteret.

5
11. juli 2019 kl. 14:55

Alt hvad der kan klikkes på kan man indtaste noget med hvis man vil. Hvad er langt værre er det helt unævnte problem at ikke alt udstyr overhovedet er krypteret. I det mindste er der en form for sikkerhed i den pågældende dongle!

Det du gemmer i donglen; det skal krypteres. Hvor vil du gemme nøglen? I donglen? Der er ikke nogen krypteringsløsning på det problem. Hvis man har donglen, så har man fat i det der er i den.

Eneste ligefrem?</p>
<p>Hvad med en betroet 3. part, der opbevarer dimsens privatnøgle? Fx en online-service, som computer-brugeren kan logge ind på.

Ok. Jeg var for skarp - der er andre løsninger. Og ja, du kan opfinde løsninger med mere komplekse flows der er sikre. Pointen var at hvis den eneste form form kommunikation mellem donglen er wireless, så er der ingen gode løsninger.

Hvis jeg skulle vælge mellem din betroede 3. part og at lave parringen i et faradaybur så vælger jeg buret. Husk på at det kun er parringen der er sårbar og at folk som skal opsnappe parringen skal stå i umiddelbar nærhed. Jeg kan ikke se om angrebet er et traditionelt man-in-the-middle angreb, men i så fald skal angriberens apparat være i enhedernes umiddelbare nærhed for at enhederne virker bagefter. Det er ikke et praktisk angreb med mindre man har mange ressourcer.

4
10. juli 2019 kl. 23:53

Eneste sikre trådløse løsning er at lade brugeren taste en 128 bit kode ind på tastaturet som han læser fra skærmen

Eneste ligefrem?

Hvad med en betroet 3. part, der opbevarer dimsens privatnøgle? Fx en online-service, som computer-brugeren kan logge ind på.

Ved parring trækker dimsen en random nonce og sende den til computeren. Computeren sender nonce videre til 3-parten, der returnerer:

key=hash(nonce, pk)

Dimsen laver samme udregning og vupti er der en delt krypteringsnøgle.

3
10. juli 2019 kl. 15:19

Alt hvad der kan klikkes på kan man indtaste noget med hvis man vil. Hvad er langt værre er det helt unævnte problem at ikke alt udstyr overhovedet er krypteret. I det mindste er der en form for sikkerhed i den pågældende dongle!

2
10. juli 2019 kl. 13:41

Det må være et rimeligt grundlæggende issue siden at det er den CVE Logitech vælger ikke at fikse.

Problemet er at der ikke er nogen gode brugervenlige metoder for trådløs parring. Bluetooth har samme problem. Eneste sikre trådløse løsning er at lade brugeren taste en 128 bit kode ind på tastaturet som han læser fra skærmen. Det virker desværre kun med devices der har tastatur og det er i øvrigt ikke særligt brugervenligt.

1
10. juli 2019 kl. 11:51

Nu mangler der bare en måde at få pairede enheder til øjensynligt ikke at virke ordenligt, så en bruger prøver at køre en ny pairing. Det virker hverken usandsynligt at det kan lade sig gøre, eller at det ville være en reaktion fra brugerne (her er faktisk et tilfælde hvor brugere med lidt mere teknisk viden er i større fare end dem der slet ikke ved noget).

Med det ville CVE-2019-13052 kunne udvides til en komplet sniffing løsning.

Det må være et rimeligt grundlæggende issue siden at det er den CVE Logitech vælger ikke at fikse.