Sådan bliver USB-lagermedier en grum trussel mod din computer

Illustration: Virrage Images/Bigstock
Der kan være malware på USB-nøgler, der er næsten umulig at opdage, fordi det er forklædt som firmware, viser to sikkerhedsforskere. Deres råd er at droppe brugen af de små USB-lagermedier.

Folk deler USB-nøgler ud, som var det et silicium-visitkort. Og det, selvom man ved, at de ofte indeholder malwareinfektioner. I stedet håber, satser, regner vi med, at antivirusscanningerne og formateringer holder vores USB-hukommelsespind fri for at blive smittekilde til den næste digitale epidemi - men sådan hænger verden ikke sammen. Det skriver Wired.com, som har talt med sikkerhedsefterforskerne Karsten Nohl og Jakob Lell, som har undersøgt de små digitale hukommelser.

Og at der er noget galt med USB-hukommelserne, har de to forskere planer om at vise i næste uge, hvor de vil demonstrere en kollektion af malware, udviklet til lejligheden, som viser, hvordan sikkerheden i USB-enheder længe har været fundamentalt ødelagt.

Deres malware, som er døbt BadUSB, kan installeres på et USB-drev og kan efterfølgende tage kontrollen over en pc, i det skjulte ændre filer, som er installeret på hukommelsespinden, eller måske omdirigere brugerens internettrafik.

Fyld USB-indgangen med superlim

Fordi BadUSB ikke residerer i selve lagerpladsen på USB-enheden, men i den firmware, der kontrollerer dens basale funktioner, kan angrebskoden holde sig skjult længe efter, at indholdet er blevet slettet.

De to efterforskere siger, at der ikke er nogen let måde at klare problemet på, medmindre man forbyder at dele USB-enheder eller fylder ens USB-porte med superlim.

»Disse problemer kan ikke blive patched. Vi udnytter den måde, som USB'en er designet på,« lyder det fra Nohl, som mener, at man faktisk bør smide sin USB-enhed ud, så snart den har rørt en ikkesikker computer.

Gælder alle USB-enheder

Nohl og Lell, som forsker for sikkerhedskonsulenterne SR Labs, er langtfra de første til at pointere, at USB-enheder kan opbevare og sprede malware. Men de to white-hat-hackere har ikke kun kopieret deres egen specialkodede infektion ind i USB-enheders hukommelse. De har brugt måneder på at genudvikle den firmware, som kører de basale kommunikationsfunktioner på USB-enhederne - det vil sige chippen, som tillader enheden at kommunikere med en PC, og som lader brugere flytte filer til og fra enheden.

Deres centrale fund er, at USB-firmware, som eksisterer i forskellige former, kan blive genprogrammeret til at gemme en angrebskode.

»Du kan give den til dine it-sikkerhedsfolk, de kan scanne den, slette nogle filer og give dig den tilbage med beskeden om, at den er ren. Men rengøringsprocessen rører ikke engang de filer, vi taler om,« siger Nohl.

Problemet rammer ikke kun USB-hukommelsesenheder. Det rammer ifølge de to hackere alle USB-enheder. Mus, tastatur, og hvad man nu eller kan komme i tanke om, der smides i en USB-port.

Sikkerhedsforskerne kontaktede et taiwansk USB-firma og fortalte om deres fund, men firmaet nægtede, at det var muligt at udføre de ting, som Nohl og Lell havde demonstreret. Samtidig mener de to sikkerhedsfolk, at problemet måske kan overkommes ved, at virksomheder kun benytter USB-enheder fra visse producenter, og opfordrer ellers brugerne til at omgås USB-nøgler på samme måde som kanyler, som smides væk efter brug.

Tips og korrekturforslag til denne historie sendes til tip@version2.dk
Kommentarer (80)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Jesper Kildebogaard

Ja, det er forvirrende på dansk, hvor der ikke er et godt, dækkende, nemt ord for den slags hardware, som så af mange bliver kaldt USB-stik i daglig tale. Jeg har nu rettet USB-stik til USB-lagermedie, USB-drev, USB-nøgle eller USB-hukommelsespind. Det ville være nemmere, hvis vi gjorde som i Norge - der hedder det en mindepind.

vh. Jesper, Version2

  • 8
  • 1
Poul-Henning Kamp Blogger

Problemet er ikke USB "minnepinde" som vores nordiske broderfolk kalder dem, men at folk ikke forstår computere og netværk.

Inde i enhver relevant USB device er der en CPU og når man forbinder USB-dimsen til en computer taler dennes CPU med USBdimsens CPU via en netværksprotokol der hedder "USB".

Harddiske og SSD diske er samme historie, der er også indlejrede CPUer som taler med din computers CPU via en netværksprotokol der hedder SATA.

Selv ikke ethernet controlleren på bundkortet er anderledes: Her hedder protokollen PCI*.

Sikkerhedsmæssigt er der ingen relevant forskel TCP/IP og alle disse andre netværksprotokoller.

Enten har man 100% styr på det fysiske kredsløb og hvilken kode der kører i begge ender af det, eller også har man et sikkerhedsproblem der kræver at man ikke stoler på noget som helst fra den
anden ende, før man har kigget det igennem i alle ender og kanter.

Og længere er den ikke.

Det er ret trivielt at lave firmware til en USB stick som når den plugges i en Windows maskine viser et sæt filer til den "malware scanner" der først tygger på drevet, for derefter at levere skadeligt filindhold når brugeren åbner filen i et andet program.

Ret mange af de NSA "tools" som Snowden har lækket datablade på virker på præcis den måde.

Den eneste måde at undgå det problem, er at udveksle filer på passive datamedier f.eks hulstrimmel, floppydiske og DVD skiver, hvor man er sikker på at man læser det samme indhold hver gang.

  • 20
  • 0
Christian Nobel

Ja... jeg må indrømme jeg også kalder det for et usb stik, det gør de fleste jeg kender også.. det er nok ikke korrekt, men det er desværre sådan folk snakker :/

Kalder du det eller skriver du det - udtalen er nemlig den samme, men stavemåden er det ikke.

Desværre ser vi en sørgelig forfladigelse af det danske sprog, og journalister, der om nogen burde være sprogrøgtere, er desværre blandt de værste.

  • 3
  • 3
Helle Eriksen

Hvis man vender problematikken om er det jo en mulighed for sikkerheds software. Hvis en computer automatisk installerer en software, som sender informationer tilbage, på alle usb hukommelser der har været tilsluttet computeren, så er det jo farligt at stjæle fra en computer, og de autoriserede brugere tager ikke skade af det.

  • 1
  • 12
Jarnis Bertelsen

Jeg kan se, hvorfor det kan være næsten umuligt at beskytte sig mod enheder, der er skabt som malware spredere. Men hvorfor kan firmwaren opdateres på en almindelig hukommelsespind? Hvor mange forbrugere har benyttet denne mulighed, efter enheden har forladt fabrikken? Hvis man implementerede denne funktionalitet i ren hardware, kunne jeg i det mindste stole på min egen enhed, selvom den havde været i et usikkert miljø. Det samme burde kunne gælde for alle usb-enheder, der er simple nok til at firmware opdateringer (næsten) aldrig forekommer.

  • 1
  • 0
Helle Eriksen

@ christian nobel Og hvad er det så han skriver der gør at jeg tomles ned? (jeg har som du siger ikke forstået det) Prøv at skrive noget forståeligt som almindelige mennesker kan forstå uden at gå på kompromis med din faglighed. Jeg spurgte om hvorfor - jeg bad ikke om en stupid negativ kommentar om min evne til at forstå.

  • 2
  • 11
Christian Nobel

@ christian nobel Og hvad er det så han skriver der gør at jeg tomles ned? (jeg har som du siger ikke forstået det) Prøv at skrive noget forståeligt som almindelige mennesker kan forstå uden at gå på kompromis med din faglighed. Jeg spurgte om hvorfor - jeg bad ikke om en stupid negativ kommentar om min evne til at forstå.

Helt ærligt, mener du at jeg engang til skal forklare hvad det er PHK så tydeligt har skrevet tidligere i denne tråd?

Sagen er meget kortfattet, at ligegyldigt hvordan du vender og drejer den, så vil et medie med egen intelligens og mulighed for både at kunne læse og skrive være en potentiel sikkerhedsrisiko.

  • 6
  • 2
Michael Weber

Hvis man vender problematikken om er det jo en mulighed for sikkerheds software.

I en virksomhed, kunne man vel godt - på alle PC´ere - installere noget software, der detektere typen af firmware på en tilsluttet USB-stick og overskrive den, hvis den ikke er "godkendt" af virksomheden.
Den firmware, der så er godkendt af virksomheden, kan så sætte virksomheden i stand til at se, hvad der eventuelt er/bliver kopieret over på USB-sticken.

  • 0
  • 4
Helle Eriksen

@christian nobel - Ja en potentiel risiko hvis der anvendes en usb hukommelse med malware på en computer - men vendt om - en større chance for at spore hvem der har plantet malwaren eller hvem der har stjålet data. Selvfølgelig bør man generelt forholde sig til denne trussel ved ikke at anvende usb hukommelser på computere man ikke stoler på.

  • 1
  • 12
Maciej Szeliga

Catch:
Tillader hardwaren det ikke, lukker PC´en ned for enheden.
Driveren til USB skal så nok indeholde den funktionalitet.

Du glemmer at i mange tilfælde ligger driveren på den USB enhed du tilslutter.
Husk i øvrigt at det her rammer i princippet ALLE USB enheder samt andre enheder med "usynlig" intelligens f.eks. SATA.

  • 3
  • 1
Nicolai Rasmussen

Beklager, hvis jeg lige havde glemt det tilfælde, hvor hardwaren ikke giver lov til det.

Catch:
Tillader hardwaren det ikke, lukker PC´en ned for enheden.
Driveren til USB skal så nok indeholde den funktionalitet.

Og helt præcist hvordan havde du tænkt dig det realiseret? Du vil måske indføre et ekstra sæt dedikerede ledninger direkte fra PC'en, der kan gå direkte ind i dataområdet på chippen på USB enheden og overskrive indholdet af koden? Skal man selv ætse huset af chippen og bond'e ledningerne direkte på die'en hver gang?

Eller måske du havde tænkt dig en anden model:
[naivPCkode] banke banke på...
[Skummelkode] JA?
[naivPCkode] jeg vil gerne overskrive din kode, med min sikre kode...
[Skummelkode] Sågerne, send sikker kode nu...
[naivPCkode] ok, her er den...
[Skummelkode] Ok nu er den installeret...
[naivPCkode] åh, det var dejlig nu er jeg tryg igen...

  • 10
  • 0
Nicolai Rasmussen

Hvis man vender problematikken om er det jo en mulighed for sikkerheds software. Hvis en computer automatisk installerer en software, som sender informationer tilbage, på alle usb hukommelser der har været tilsluttet computeren, så er det jo farligt at stjæle fra en computer, og de autoriserede brugere tager ikke skade af det.

Det kan være vi ikke forstår det du siger? Umiddelbart giver det ingen mening.

Hvis en computer automatisk installerer en software,


Hvor skal denne software installeres? På USB enheden?

en software, som sender informationer tilbage, på alle usb hukommelser der har været tilsluttet computeren


Sender hvad tilbage til hvor? Taler du om Data på sticken eller firmwaren? Sendes til USB enheden? Eller til en central database på internettet? Det giver ikke meget mening for mig det du skriver.

, så er det jo farligt at stjæle fra en computer, og de autoriserede brugere tager ikke skade af det.


Hvordan er det farligt at stjæle fra en Computer fordi et program har sendt noget tilbage?

  • 7
  • 2
Helle Eriksen

@Nikolaj Rasmussen m.fl. Husk lige at dette ikke er et lukket fagligt forum men et forum hvortil der linkes fra f.eks. ing.dk. Jeg vil ikke forholde mig til nogen detaljer. Jeg har ingen anelser om hvilke begrænsninger der er for malware. Faktum er: En USB hukommelse hvor et sikkerhedsprogram har installeret noget software der er egnet til sporing har større sandsynlighed for at kunne blive et problem for den kriminelle bruger. Også f.eks. i forbindelse med en ransagning.

  • 1
  • 11
Michael Weber

Og helt præcist hvordan havde du tænkt dig det realiseret?

Den forkromede løsning har jeg ikke lige på hånden.
Men jeg læser - på wired - følgende:

Any time a USB stick is plugged into a computer, its firmware could be reprogrammed by malware on that PC, with no easy way for the USB device’s owner to detect it.

Så programmet på pc´en skal - ligesom i alwaren beskrevet ovenfor - forsøge at opdatere firmwaren på USB-enheden, og mislykkedes det, skal programmet disable usb-enheden.

  • 0
  • 4
Helle Eriksen

@Nikolaj Rasmussen Jeg tror du sidder i en osteklokke lige nu. Det jeg skriver er helt klart. Der ligger på f.eks. en datatyvs USB hukommelse en information om at USB hukommelsen har været anvendt på den og den computer. Det må du kunne forstå uden at nørde helt ud.

  • 1
  • 12
Nicolai Rasmussen

Du glemmer at i mange tilfælde ligger driveren på den USB enhed du tilslutter.

Skal det forstås sådan at når USB enheden selv har driveren, så installere den selv driveren på PC'en? Hvad er det for enheder der har USB drivere indbygget? Har de så både DOS, Windows, Linux og BSD drivere liggende?

Jeg var af den faste overbevisning at PC'en selv skulle have en USB driver, for at kunne kommunikere med en USB enhed.

  • 5
  • 0
Nicolai Rasmussen

@Nikolaj Rasmussen m.fl. Husk lige at dette ikke er et lukket fagligt forum men et forum hvortil der linkes fra f.eks. ing.dk.

Der er fair nok at man ikke ved noget, og man er nysgerrig og gerne vil vide mere. Og det er også fint at spørge, men det var jo ikke de du gjorde. Du fortalte at "det var en mulighed for sikkerhedsfirmaer...", hvilket det IKKE er. Når man ikke har sat sig ind i hvordan verden er skruet sammen, så skal man være varsom med at skrive at noget er på en bestemt måde. Hvis man vil være klogere må man spørge, det virker også herinde (ofte).

Jeg vil ikke forholde mig til nogen detaljer. Jeg har ingen anelser om hvilke begrænsninger der er for malware.


Det er nok her dit problem opstår...

Faktum er: En USB hukommelse hvor et sikkerhedsprogram har installeret noget software der er egnet til sporing har større sandsynlighed for at kunne blive et problem for den kriminelle bruger. Også f.eks. i forbindelse med en ransagning.

Nej det er ikke "Faktum", det er noget sludder. Det er noget direkte vås. Hvis du satte dig ind i de detaljer du ikke vil forholde dig til, så ville du indse at du i den grad har misforstået tingene. Og det er præcis pga. dine skarpe formuleringer (f.eks. "Faktum er") og din ringe viden om tingene, der gør at du bliver taget imod på den måde.

  • 8
  • 2
Nicolai Rasmussen

@Nikolaj Rasmussen Jeg tror du sidder i en osteklokke lige nu. Det jeg skriver er helt klart. Der ligger på f.eks. en datatyvs USB hukommelse en information om at USB hukommelsen har været anvendt på den og den computer. Det må du kunne forstå uden at nørde helt ud.


Du har ikke forstået problemstillingen. Hvis du gad bruge tid på det, ville der åbne sig en verden 1000 gange større og enormt meget mere kompleks end den du kender. Vi taler ikke om en person der fysisk render rundt på direktionsgangen og bryder ind i kontorer og downloader hemmelige filer til sin USB-enhed. Vi taler om en Hacker der fra et kontor i f.eks. Kina, Rusland eller USA laver et program, der stjæler alle data fra ALLE computere på firmanetværket og sender dem over internettet UANSET at man har beskyttet sig med antivirus, firewall osv. osv. osv. Artiklen handler om at man kan gøre dette muligt ved hjælp af USB enheder, på en måde du helt tydeligt ikke har forstået.

Det var sikkert ikke det du læste ud af artiklen, men det var det artiklen handlede om.

  • 6
  • 2
Helle Eriksen

Jeg synes ikke der i nogen af de kommentarer der kritiserer mig står noget relevant. Mit første indlæg anser jeg for at være lige aktuelt nu som før.

Vi taler ikke om en person der fysisk render rundt på direktionsgangen og bryder ind i kontorer og downloader hemmelige filer til sin USB-enhed.

Jo det er faktisk bl.a. det jeg taler om og bl.a. det artiklen drejer sig om. Spredning af malware ved hjælp af USB.

Når man møder mennesker som jer er det rart at skrive under et trygt pseuonym og det interesserer mig ikke det fjerneste hvorfor det alligevel ikke er trygt i den og den protokol hvis en møl er kravlet ind i hardwaren og er blevet pisset på af en myre.

  • 1
  • 12
Nicolai Rasmussen

Så programmet på pc´en skal - ligesom i alwaren beskrevet ovenfor - forsøge at opdatere firmwaren på USB-enheden, og mislykkedes det, skal programmet disable usb-enheden.

Jeg tror ikke du helt har forstået det. Hvis en hacker har kontrol over USB enheden, så er det vanskeligt at sikre at ens egen kode rent faktisk overskriver den skadelige kode. Det ville skulle ske med den skadelige kodes accept. Hvordan vil du forhindre at den skadelige kode ikke bare lader som om den overskriver? Kort tid efter offentliggørelsen af din fine "sikre" løsning, vil hackeren jo vide hvad det er din "sikre" kode gør, og så opdaterer han sin kode så den lader som om den har overskrevet sin egen kode, mens den i virkeligheden ikke gjorde det.

  • 6
  • 0
Nicolai Rasmussen

Jo det er faktisk bl.a. det jeg taler om og bl.a. det artiklen drejer sig om. Spredning af malware ved hjælp af USB og i dette tilfælde at plante malware på en datatyvs USB nøgle.

Datatyven kan forhindre at din "sikkerhedsløsning" kan få lov til at installere noget på USB enheden, da han har mulighed for at lægge sin egen kode på først. Men lad os bare lege med tanken. I hvilke situationer forestiller du dig, at det er nyttigt at kunne identificere om en USB enhed har været tilsluttet en bestemt PC? Hvis du fanger manden på fast gerning eller umiddelbart efter, så er det jo ligegyldigt, da han så er i besidelse af de stjålne data (som skulle være nok til at få ham dømt). Hvis det er senere, kan han jo kopiere data over på sin egen computer og destruere USB enheden.

  • 2
  • 0
Jesper Poulsen

Hun er helt tydeligt faret vild.


Jeg gætter på, at hendes IT-erfaring udelukkende handler om software, hvor hardware er gemt under et abstraktionslag. Problemet opstår, når den softwarefunktionalitet man forestiller sig ikke understøttes af hardwaren der ligger til grund for forestillingen og man ikke ønsker at sætte sig ind i hardwarens formåen på dette område. Så render man i en hardware exception.

  • 6
  • 1
Henrik Dalsager

Det er vel egentligt på tide at nogen beviste at USB også er sårbart.

Sidste gang jeg hørte den her debat var da folk viste DMA angreb vha. Firewire. .
Men det var jo også kun et problem hvis man snakkede med hardware man ikke selv havde bygget. ..

  • 0
  • 0
Henrik Dalsager

Det er vel egentligt på tide at nogen beviste at USB også er sårbart.

Sidste gang jeg hørte den her debat var da folk viste DMA angreb vha. Firewire. .
Men det var jo også kun et problem hvis man snakkede med hardware man ikke selv havde bygget. ..

  • 0
  • 0
Henrik Dalsager

Det er vel egentligt på tide at nogen beviste at USB også er sårbart.

Sidste gang jeg hørte den her debat var da folk viste DMA angreb vha. Firewire. .
Men det var jo også kun et problem hvis man snakkede med hardware man ikke selv havde bygget. ..

  • 0
  • 0
Henrik Dalsager

Det er vel egentligt på tide at nogen beviste at USB også er sårbart.

Sidste gang jeg hørte den her debat var da folk viste DMA angreb vha. Firewire. .
Men det var jo også kun et problem hvis man snakkede med hardware man ikke selv havde bygget. ..

  • 0
  • 0
Henrik Dalsager

Det er vel egentligt på tide at nogen beviste at USB også er sårbart.

Sidste gang jeg hørte den her debat var da folk viste DMA angreb vha. Firewire. .
Men det var jo også kun et problem hvis man snakkede med hardware man ikke selv havde bygget. ..

  • 0
  • 0
Henrik Dalsager

Det er vel egentligt på tide at nogen beviste at USB også er sårbart.

Sidste gang jeg hørte den her debat var da folk viste DMA angreb vha. Firewire. .
Men det var jo også kun et problem hvis man snakkede med hardware man ikke selv havde bygget. ..

  • 0
  • 0
Nicolai Rasmussen

Hvis man som Jarnis foreslår holder op med at lave firmware med umiddelbar opdaterbar firmware og samtidig laver en fysisk kontakt til at afbryde write benet på chippen, så er man kommet langt. Det er bare ikke særlig udbredt.

Kanguru stick er den eneste jeg har kunne finde som i dag har et fysisk write protect. Og den ved jeg ikke om er sikker mht. angreb på CPU'en. Man savner opensource hardware/firmware, så man kan verificere og kommenterer/forbedre på hardwaren.

  • 0
  • 0
John Stumpe

Tonen er jo tydeligvis lidt skarp her, men jeg forsøger alligevel ;-)

Udover den tydelige forvirring opstået af sticks vs stik debatten, så oplever jeg at også ordet "firmware" skaber lidt forvirring (jeg har sikkert ikke ret, men prøver alligevel) ... Er det rigtige svar ikke "driver"?
Som jeg forstår problemet, så opstår det ved at når jeg sætter en USB device i min computer, så spørger den "hvem er du, hvad laver du og har du en opdateret devicedriver så du kan køre optimalt?", svaret bliver så "Jeps, det kan du tro, du loader lige denne driver, så kører jeg top$" ... Det er så denne driver der kan være inficeret, så den kommer på PC'en (og iøvrigt bliver der, når det inficerede memorystick hives ud igen).
HVIS (her skriver jeg udtrykkeligt "hvis"), dette er den korrekte opfattelse af problemstillingen, så kan systemadministratoren (formentlig) låse for installation af devicedrivers fra USB porten og udelukkende understøtte "godkendte devices" ...

P.S. Er min opfattelse korrekt, så kan denne problemstilling i realiteten være tilfældet med alle USB devices, herunder også tastaturer, mobiltelefoner m.v. (det stiller bare større krav til udvikleren af malware og til distributionen) ...

Ha' en fortsat skøn dag :-)

  • 2
  • 0
Jesper Poulsen

Er det rigtige svar ikke "driver"?


Nej. Firmware er OS-uafhængig og hardwarespecifik software. Det gælder for alle hardwaredevices, uanset om der er tale om et tastatur, en harddisk eller en router.
Firmware anvendes af producenten i samme øjeblik som denne har valgt en CPU-baseret løsning (altså noget der ikke er hardkodet i hardware). BIOS i din PC er også firmware.

En driver er en OS-specifikt stykke software der gør det muligt for et givent OS at benytte et stykke hardware. Begrebet anvendes primært i forbindelse med Windows, da bl.a. Linux har kernel-support for hardware (enten som direkte support eller som kernel-moduler).

  • 4
  • 0
Jørgen Elgaard Larsen

Som jeg forstår problemet, så opstår det ved at når jeg sætter en USB device i min computer, så spørger den "hvem er du, hvad laver du og har du en opdateret devicedriver så du kan køre optimalt?"


Nej, det er et andet problem (men stadig et problem).

Lad os tage firmwaren først - det som artiklen handler om, og som PHK forklarede om:

Alle USB-dimser (tastaturer, mus, USB-sticks/mindepinde/USB-drev), består af flere komponenter.

  • Der vil f.x. være en komponent, der har ansvaret for at "tale USB", altså at sørge for kommunikationen med PC'en.
  • Der vil være en eller flere komponenter, der udfører det, som USB-dimsen laver. Hvis det er et tastatur, så vil der f.x. være en komponent, der aflæser tastetryk - og måske endda en anden komponent, der styrer lamperne på tastaturet. På en USB-hukommelsespind vil der være noget hukommelse af en slags (f.x. Flash).
  • Der vil være en CPU, der styrer kommunikationen mellem de forskellige andre komponenter

CPU'en kører et program, som styrer, hvordan der skal snakkes med de forskellige komponenter. Dette program kalder man firmware.

I den ideelle verden vil firmwaren opføre sig nogenlunde fornuftigt. Vi regner f.x. normalt med, at firmwaren på en USB-hukommelsespind opfører sig nogenlunde sådan her:

  1. PC'en spørger om, hvilke filer, der findes på USB-hukommelsespinden. Dette kommer ind via USB-snakke-komponenten.
  2. CPU'en får dette at vide og spørger hukommelses-komponenten, hvilke filer, den har
  3. CPU'en får listen fra hukommelseskomponenten.
  4. CPU'en omformatter listen til noget en PC kan forstå
  5. CPU'en sender den omformatterede liste til USB-snakke-komponenten
  6. PC'en får listen og er glad.

Det, som artiklen handler om, er at en skummel firmware kan få CPU'en til at lyve. Det kunne f.x. ske ved, at den fiflede med listen i punkt 4). Et banalt eksempel er, hvis firmwaren kan lugte, når det er virusscanneren, der spørger. Så får virusscanneren en ufarlig liste, mens alle andre får den fulde liste.

Og netop hvis firmwaren er inficeret, har man tabt. Den kan lyve om alt. Hvis man spørger den, om den er inficeret, svarer den "Nænej, hvordan kunne du tro det". Hvis man spørger den, hvilken version, den har, svarer den med et versionsnummer, man stoler på. Hvis man beder den om at sende en kopi af sig selv, så man selv kan checke det - så kan den bare have en ufarlig firmware liggende, som den kan sende en kopi af.

Hvis man er mistænksom overfor firmwaren, vil man måske prøve at overskrive den med en sikker firmware. Men udskiftning af firmware sker jo netop ved at man sender den nye firmware til USB-enheden, hvorefter den gamle firmware skal sørge for, at den nye bliver installeret. Men igen kan en inficeret firmware jo bare lyve.

Så er der devicedriveren. For de fleste USB-dimser er der en standardiseret måde at snakke med dem på - alle USB-hukommelsespinde, USB-harddiske og mange telefoner vil f.x. præsentere sig som et "Mass storage device". Så ved man, hvordan man skal snakke med dem.

På Linux, Mac og mange andre systemer vil der være en standard devicedriver til hver slags USB-dims. De systemer er ligeglade med, om USB-dimsen kan noget "smart" udover standarden, så de behøver ikke en driver til hver fabrikat.

I Windows-verdenen har der været en tradition for, at hver enkelt hardwareproducent lavede deres egen driver. På den måde var producenterne ikke afhængige af, at Microsoft skrev en driver, før man kunne bruge hardwaren. Til gengæld endte man så med at have et hav af drivere til den samme slags udstyr fra hver sin producent.

Med tiden blev det et konkurrenceparamerer, hvilken producent, der lavede de bedste drivere. Det er blevet bedre nu, men der er stadig en tendens til, at nogle producenter leverer drivere, som egentlig er overflødige, men som sigter på at give brugeren en bedre oplevelse ("Jeg bruger altid gamer-tastaturer fra My Little Pony, fordi de gør min skrivebordsbaggrund lyserød").

Det er naturligvis muligt, at driveren til en USB-hukommelsespind kan være inficeret - men den burde altså være overflødig. Hvis man installerer den alligevel, beder man om problemer.

Så den fare, artiklen handler om, er langt mere grundlæggende end problemet med devicedrivere. Dels vil den ramme alle styresystemer, dels er den umulig at opdage, og dels kan man ikke fjerne den.

Noget helt andet er, at det ikke er en nyhed, at det teoretisk kan lade sig gøre - det ligger i sagens natur. Det nye er, at nogle gutter påstår, at de har lavet en firmware, der udnytter det.

  • 10
  • 0
Maciej Szeliga

Jeg bruger ofte et USB stik/connector/kabel til opladning af f. eks. mobiltelefon/smartphone. ;-)


...og denne magiske mobilenhed har ikke noget firmware til at håndtere USB kommunikation ?
Jeg vil gøre det meget værre for dig: mange af de nye USB laddere indeholder selv en del intelligens (og dermed USB firmware) så de kan potentielt angribe intetanende smartphones når man prøver at oplade dem.

  • 2
  • 0
Michael Weber

Så den fare, artiklen handler om, er langt mere grundlæggende end problemet med devicedrivere. Dels vil den ramme alle styresystemer, dels er den umulig at opdage, og dels kan man ikke fjerne den.

Måske man skal betragte en USB-enhed - sådan principielt - mere som en PC, man forbinder til via internettet end som en enhed, der er en del af PC´en. Der har man jo nogenlunde samme usikkerhed m.h.t. hvad man kommunikere med i den anden ende og man kan heller ikke gøre noget, for at fjerne eventuel "snask" i den anden ende.

Betragter man det sådan, kan man vel sætte en firewall mellem OS og USB og lade firewallen monitorer trafikken, der går via USB-protokollen.
Device-driveren "fortæller" så firewallen,hvilken funktionalitet USB-enheden tilbyder og dermed hvilken slags trafik, der er tilladt mellem OS og USB-enheden. Giver USB-enheden sig ud for at være et tastatur, tager man den - så at sige - på ordet og tillader kun trafik relateret til tastaturet. Udgiver enheden sig for at være en Mass Storage enhed og spørger man den om en filliste, betragtes fillisten som én, fået fra en ftp-server. Måske er det den fulde filliste, måske ikke. Måske er filerne inficeret, måske ikke. Det er ligemeget, da man betragter og behandler trafikken som enhver anden netværkstrafik.

  • 2
  • 0
Log ind eller Opret konto for at kommentere