USB-enheter är uppenbarligen farligare än vi någonsin har föreställt oss. Det här handlar inte om skadlig kod som använder AutoPlay-mekanismen i Windows - den här gången är det en grundläggande designfel i själva USB.
RELATERAD: Hur AutoRun skadlig programvara blev ett problem i Windows och hur det fixades (mestadels)
Nu ska du verkligen inte plocka upp och använda misstänkta USB-flashenheter som du hittar liggande. Även om du försäkrade dig om att de var fria från skadlig programvara, kan de ha skadlig programvara firmware .
It's All In The Firmware
USB står för "universal seriell buss". Det ska vara en universell typ av port- och kommunikationsprotokoll som gör att du kan ansluta många olika enheter till din dator. Lagringsenheter som flash-enheter och externa hårddiskar, möss, tangentbord, spelkontroller, ljudheadset, nätverkskort och många andra typer av enheter använder alla USB över samma typ av port.
Dessa USB-enheter - och andra komponenter i din dator - kör en typ av programvara som kallas "firmware". I huvudsak när du ansluter en enhet till din dator är det firmware på enheten som gör att enheten faktiskt fungerar. Till exempel skulle en typisk USB-flashminne kunna hantera överföring av filer fram och tillbaka. Ett USB-tangentbordets fasta programvara skulle konvertera fysiska tangenttryckningar på ett tangentbord till digitala tangenttrycksdata som skickas via USB-anslutningen till datorn.
Denna firmware i sig är faktiskt inte en vanlig programvara som din dator har tillgång till. Det är koden som kör själva enheten, och det finns inget riktigt sätt att söka efter och verifiera att en USB-enhets firmware är säker.
Vad skadlig firmware kan göra
Nyckeln till detta problem är designmålet att USB-enheter kan göra många olika saker. Till exempel kan ett USB-minne med skadlig firmware fungera som ett USB-tangentbord. När du ansluter den till din dator kan den skicka tangentbordspressåtgärder till datorn som om någon som sitter vid datorn skriver tangenterna. Tack vare kortkommandon kan en skadlig firmware som fungerar som ett tangentbord - till exempel - öppna ett kommandotolkfönster, ladda ner ett program från en fjärrserver, köra det och godkänna ett UAC-uppmaning .
Mer snyggt kan en USB-flashenhet verkar fungera normalt, men firmware kan ändra filer när de lämnar enheten och infekterar dem. En ansluten enhet kan fungera som en USB Ethernet-adapter och dirigera trafik över skadliga servrar. En telefon eller någon typ av USB-enhet med egen internetanslutning kan använda den anslutningen för att vidarebefordra information från din dator.
RELATERAD: Inte alla "virus" är virus: 10 skadliga termer förklarade
En modifierad lagringsenhet kan fungera som en startenhet när den upptäcker att datorn startar och datorn startar sedan från USB och laddar en bit av skadlig kod (känd som ett rootkit) det skulle då starta upp det verkliga operativsystemet och köras under det.
Viktigt är att USB-enheter kan ha flera profiler associerade med sig. En USB-flashenhet kan påstå sig vara en flash-enhet, ett tangentbord och en USB Ethernet-nätverksadapter när du sätter in den. Det kan fungera som en vanlig flash-enhet samtidigt som man förbehåller sig rätten att göra andra saker.
Detta är bara en grundläggande fråga med själva USB. Det möjliggör skapandet av skadliga enheter som kan låtsas att bara vara en typ av enhet, men också vara andra typer av enheter.
Datorer kan infektera en USB-enhets fasta programvara
Detta är ganska skrämmande hittills, men inte helt. Ja, någon kan skapa en modifierad enhet med skadlig firmware, men du kommer förmodligen inte att stöta på dem. Vilka är oddsen att du får en speciellt utformad skadlig USB-enhet?
” BadUSB ”Proof-of-concept malware tar detta till en ny, skrämmande nivå. Forskare för SR Labs tillbringade två månader omvänd teknik för grundläggande USB-firmwarekod på många enheter och fann att den faktiskt kunde omprogrammeras och modifieras. Med andra ord kan en infekterad dator omprogrammera en ansluten USB-enhets firmware och förvandla den USB-enheten till en skadlig enhet. Den enheten kunde sedan infektera andra datorer den var ansluten till, och enheten kunde spridas från dator till USB-enhet till dator till USB-enhet och på och på.
RELATERAD: Vad är "Juice Jacking" och ska jag undvika allmänna telefonladdare?
Detta har hänt tidigare med USB-enheter som innehåller skadlig kod som berodde på Windows AutoPlay-funktionen för att automatiskt köra skadlig kod på datorer de var anslutna till. Men nu kan antivirusverktyg inte upptäcka eller blockera denna nya typ av infektion som kan spridas från enhet till enhet.
Detta kan potentiellt kombineras med “Juice jacking” -attacker att infektera en enhet när den laddas via USB från en skadlig USB-port.
Den goda nyheten är att detta bara är möjligt med cirka 50% av USB-enheter från och med slutet av 2014. De dåliga nyheterna är att du inte kan berätta vilka enheter som är sårbara och vilka som inte är utan att knäcka dem och undersöka de interna kretsarna. Tillverkare kommer förhoppningsvis att utforma USB-enheter säkrare för att skydda deras firmware från att modifieras i framtiden. Men under tiden är en stor mängd USB-enheter i naturen sårbara för omprogrammering.
Är detta ett verkligt problem?
Hittills har detta visat sig vara en teoretisk sårbarhet. Verkliga attacker har demonstrerats, så det är en riktig sårbarhet - men vi har inte sett det utnyttjas av någon verklig skadlig kod i naturen än. Vissa människor har teoretiserat att NSA har känt till detta problem ett tag och har använt det. NSA: erna BOMULL exploit verkar innebära användning av modifierade USB-enheter för att attackera mål, även om det verkar som att NSA också är implanterad specialhårdvara i dessa USB-enheter.
Ändå är det här problemet förmodligen inte något du kommer att stöta på snart. I vardaglig mening behöver du förmodligen inte se din väns Xbox-controller eller andra vanliga enheter med mycket misstänksamhet. Detta är dock en kärnfel i själva USB som bör åtgärdas.
Hur du kan skydda dig själv
Du bör vara försiktig när du hanterar misstänkta enheter. Under tiden med Windows AutoPlay-skadlig programvara skulle vi ibland höra om USB-minnen kvar på företagets parkeringsplatser. Förhoppningen var att en anställd skulle plocka upp flash-enheten och ansluta den till en företagsdator, och sedan skulle enhetens skadliga program automatiskt köras och infektera datorn. Det fanns kampanjer för att öka medvetenheten om detta och uppmuntra människor att inte hämta USB-enheter från parkeringsplatserna och ansluta dem till sina datorer.
Med AutoPlay nu inaktiverat som standard tenderar vi att tro att problemet är löst. Men dessa USB-firmwareproblem visar att misstänkta enheter fortfarande kan vara farliga. Plocka inte upp USB-enheter från parkeringsplatser eller gatan och koppla in dem.
Hur mycket du bör oroa dig beror naturligtvis på vem du är och vad du gör. Företag med kritiska affärshemligheter eller ekonomisk data kanske vill vara extra försiktiga med vad USB-enheter kan ansluta till vilka datorer, vilket förhindrar att infektioner sprids.
Även om detta problem bara har setts i proof-of-concept-attacker hittills, avslöjar det ett stort, kärnat säkerhetsfel i de enheter vi använder varje dag. Det är något att tänka på, och - helst - något som bör lösas för att förbättra säkerheten för USB självt.
Bildkredit: Harco Rutgers på Flickr