Zwaar securityprobleem maakt van elk USB-apparaat een potentiële bron van malware
Een securitylacune in de implementatie van de Universal Serial Bus kan eender welk USB-device, inclusief geheugensticks, tot een bron van malware maken, aldus een presentatie op Black Hat.
Op de Black Hat ict security-conferentie in Las Vegas tonen onderzoekers van het Duitse securityonderzoeksbedrijf Security Research Labs met hun BadUSB-onderzoek aan dat eender welk USB toestel, inclusief geheugensticks, een bron van malware kunnen vormen. Het grote voordeel van USB – een universele inzetbaarheid en een bijzonder grote gebruiksvriendelijkheid (gewoonlijk ‘plug & play’) – vormen ook de basis van de fundamentele zwakte.
Herprogrameerbare firmware
Concreet beschikt elk USB-device, ongeacht het type, over een stukje ‘firmware’ (software in chipvorm) dat aan een computer aangeeft wat de mogelijkheden van het device zijn, en die zorgt voor de communicatie met de computer. Onderzoekers Karsten Nohl en Jakob Lell hebben nu de firmware van dergelijke USB controllerchips geanalyseerd en ontdekt die chips niet beschermd zijn tegen herprogrammering. Met BadUSB tonen ze vervolgens aan dat het mogelijk is om die controlechips onmerkbaar te herprogrammeren, zodat deze een boosaardig gedrag kunnen vertonen. Zo was het mogelijk een USB device zich te laten gedragen als een toetsenbord, zodat een ingelogde gebruiker commando’s leek te geven, bijvoorbeeld om malware te installeren of bestanden te ontvreemden. Een ander voorbeeld was het imiteren van een netwerkkaart en de aanpassing van de DNS setting, zodat netwerkverkeer naar een andere bestemming werd omgeleid. Of het besmetten van een computer met een virus, nog voor het systeem opstart.
Betrouwbare bron
De onderzoekers stellen dat er op korte termijn geen brede oplossing voor het probleem bestaat, ook al omdat malware scanners geen toegang hebben tot de firmware in USB devices (de scanners controleren de inhoud van bijvoorbeeld een usb-stick, niet de firmware) en er geen USB ‘firewalls’ bestaan. Een mogelijke oplossing zou zijn om elk stukje firmware te beschermen tegen ongeoorloofde veranderingen (bijvoorbeeld door ‘code signing’) en dat ook telkens te controleren als een usb-device in een computer wordt geplugd. Helaas is dat momenteel niet voorzien, wordt het niet gedaan, en zou het telkens weer controleren op zichzelf problemen meebrengen. Bovendien zou het een hele tijd duren eer de huidige miljoenen USB-devices allemaal zijn vervangen door beveiligde exemplaren. Een en ander is vergelijkbaar met het probleem met virussen in BIOSsen (de opstart firmware van computers) van een aantal jaar geleden, dat pas met de overstap naar een andere en beveiligde vorm van firmware een oplossing kreeg.
Concreet zouden gebruikers voortaan eigenlijk een USB-device van welke aard ook, slechts mogen pluggen in een computer waarvan ze eigenaar zijn (of waarvan ze de eigenaar vertrouwen). Omgekeerd zouden in een computer ook slechts USB-devices van betrouwbare bron mogen worden ingeplugd. Immers, een USB-device waarin men vertrouwen stelt, zou immers door het inpluggen in een systeem waarin men geen vertrouwen heeft, wel eens boosaardig kunnen worden. En ja, geven de onderzoekers toe, dat zou het bijzondere gebruiksgemak van al die opslagsticks en dies meer sterk beperken. Maar, stellen ze, in wezen moet je vandaag een USB-device beschouwen als een spuitnaald, die je ook niet tussen gebruikers uitwisselt…
Fout opgemerkt of meer nieuws? Meld het hier