Onderzoekers veranderen USB Auto-Install in een volledige SYSTEEMovername op Windows 11

Windows Plug and Play kan worden misbruikt om ondertekende leverancierssoftware op te halen voor een geëmuleerd USB-apparaat en bevoorrechte installatiecomponenten uit te voeren die onderzoekers aan SYSTEEM-toegang hebben gekoppeld op een volledig bijgewerkte Windows 11-machine.

Hetzelfde PnP-pad kan worden geactiveerd via Remote Desktop zonder fysieke hardware wanneer ondersteunde Plug and Play of low-level USB-omleiding is ingeschakeld; Microsoft zegt dat omleiding standaard niet is toegestaan.

Beveiligingsonderzoekers Alejandro Hernando en Borja Martinez beschreven de techniek in “Plug And Pwn: Windows PnP automatische installatie bewapenen,” onderzoek voorbereid voor DEF CON 34.

Ze bouwden tools om willekeurige USB-apparaten te emuleren en zeiden dat een gebruiker zonder rechten onder de vereiste omstandigheden het PnP-installatiepad kan omzetten in uitvoering van SYSTEEMcode. De eigen driverdocumentatie van Microsoft beschrijft de onderliggende selectiestap: Windows ontvangt hardware- en compatibele ID’s voor een apparaat en gebruikt deze om een ​​bijpassend driverpakket te vinden.

Volgens de onderzoekers begint de fysieke keten met het emuleren van een Sierra Wireless-apparaat, zodat Windows SwiService.exe installeert, een SYSTEEM-service die een SetDNS-primitief blootlegt. Ze gebruiken het om DNS om te leiden en emuleren vervolgens een Sony FeliCa-lezer wiens mede-installatieprogramma configuratiebestanden ophaalt via HTTP in platte tekst en lokale bestandsnamen afleidt van URL-paden.

De onderzoekers zeggen dat ze door een path-traversal-fout een DLL in System32 kunnen plaatsen; het opnieuw verbinden van het Sierra-apparaat laadt vervolgens de geplante DLL en levert SYSTEM op. Hun onthulde demonstratie maakte gebruik van een volledig bijgewerkt Windows 11-systeem, dus het resultaat mag niet worden gegeneraliseerd naar een niet-getest Windows-versiebereik.

De externe variant vervangt het fysieke apparaat door synthetisch USB-verkeer via RDP. De Python-client van de onderzoekers smeedt een USB-identiteit en presenteert een fantoom Intel RealSense-apparaat, waardoor Windows het omgeleide apparaatinstallatiepad volgt.

Ze zeggen dat de resulterende RealSense-software kan worden misbruikt via een CRYPTBASE.dll-zoekopdrachtkaping vanuit een door de gebruiker beschrijfbare installatiemap, waardoor de geverifieerde gebruiker met weinig rechten SYSTEEMcode kan uitvoeren. Afzonderlijke Microsoft-documenten waarin low-level USB-randapparatuur wordt omgeleid, gebruiken hetzelfde stuurprogramma-installatieproces als een fysieke Windows-computer.

Het externe pad is afhankelijk van de configuratie en is geen standaard Windows-blootstelling. Microsoft zegt dat Remote Desktop Services standaard geen ondersteunde Plug and Play en RemoteFX USB-omleiding toestaat, en dat de USB-omleidingsrichtlijnen vereisen dat Plug en Play-omleiding is ingeschakeld voordat USB-doorsturing op laag niveau werkt.

Beheerders die de functie niet nodig hebben, kunnen deze uitgeschakeld laten. Microsoft biedt ook beperkingen voor de installatie van apparaten waarmee apparaten kunnen worden toegestaan ​​of geblokkeerd op hardware- of compatibele ID, apparaat-instance-ID en installatieklasse; op een Remote Desktop-server kan dit beleid ook van invloed zijn op omgeleide apparaten.

De fysieke keten heeft zijn eigen voorwaarde: een aanvaller moet een geëmuleerd USB-apparaat aan de doelmachine kunnen presenteren.

Het onderzoek toont misbruik aan van een legitiem geprivilegieerd installatiepad, gecombineerd met zwakke punten in ondertekende pakketten van derden. De leveranciersspecifieke exploitmechanismen van Sierra, Sony en Intel blijven bevindingen van onderzoekers en moeten toegeschreven blijven tenzij overeenkomend materiaal van de leverancier deze onafhankelijk bevestigt.

Thijs Van der Does