wifilDe ontdekker van het Broadpwn-lek, dat recentelijk door onder meer Apple is gedicht, presenteerde zijn onderzoek donderdag in Las Vegas. Tijdens de presentatie toonde Nilay Artenstein een demo van een worm die zich via wifi naar mobiele apparaten verspreidt.

Zo toonde hij hoe de kwaadaardige software van telefoon naar telefoon kon verspreiden, zonder dat gebruikers daarvoor een actie uit hoefden te voeren. Hiermee wilde hij de gevolgen van het Broadpwn-lek aantonen, waarvan de details inmiddels staan beschreven in een blogpost. Tijdens zijn presentatie ging hij in op de ontdekking van deze remote exploit die werkt op Android en iOS. De aanval richt zich op de Broadcom BCM 43xx-wifichipset en maakt het mogelijk om op afstand code uit te voeren in de application processor van kwetsbare smartphones. Google en Apple hebben het lek met kenmerk CVE-2017-9417 inmiddels gepatcht.

Artenstein legde uit dat er drie vereisten zijn om van een daadwerkelijke remote exploit te kunnen spreken. Zo mag er geen menselijke interactie nodig zijn, mogen er geen aannames gemaakt worden over het doelsysteem omdat er weinig over bekend is, en moet het systeem na uitvoeren van de exploit zo stabiel mogelijk blijven. Onder deze voorwaarden ging hij op zoek naar een exploit die zoveel mogelijk apparaten zou raken.

Het direct aanvallen van de processor is moeilijk. Daarom keek de Exodus Intelligence-onderzoeker naar twee chips die in verbinding staan met de processor: baseband en wifi. Deze vormen een mogelijkheid om de kernel aan te vallen. Het probleem met baseband was dat er veel fragmentatie tussen verschillende fabrikanten is, waardoor een enkele bug een beperkt effect heeft. Daarom richtte hij zich op de wifichipset, die in alle gevallen afkomstig is van Broadcom. Een mooie bijkomstigheid daarbij is dat er geen beschermingsmaatregelen als aslr en dep aanwezig zijn.

Een andere bijkomstigheid was dat een deel van Broadcom recentelijk was overgenomen door Cypress, dat veel specificaties openbaar maakte. Met zicht op de eerste 'regel' van remote exploits ging hij op zoek naar een exploit die geen interactie vereiste. Hij maakte hierbij gebruik van het feit dat een wifi-apparaat regelmatig uitzendt naar welke accesspoint het op zoek is. Voordat bijvoorbeeld een smartphone een via wpa2 beveiligde verbinding maakt, is er een sprake van een associatieproces zonder authenticatie. Daarbij wordt gebruikgemaakt van authenticatiepakketten, die volgens de onderzoeker een interessante eigenschap bezaten. Zo had het pakket een gedeelte van variabele lengte waarin informatie opgeslagen kon worden.

Door een bug in een protocol voor de prioritering van netwerkverkeer kwam hij erachter dat hij op deze manier de buffer op de chipset kon overschrijven. De indeling van het geheugen wordt daarbij vastgelegd tijdens het opstarten, waardoor deze statisch is. Dat zorgt ervoor dat goed te voorspellen is welk gedeelte te overschrijven is door middel van de overflow, ook na een herstart van het apparaat. Door enig geluk was het uiteindelijk mogelijk om een manier te vinden een payload af te leveren en code uit te voeren. Het enige wat een slachtoffer daarvan merkt is dat zijn wifi-icoontje voor korte tijd verdwijnt. Bevindt de telefoon zich bijvoorbeeld in de broekzak en staat wifi aan, waardoor het vaak onzichtbaar zal zijn.

Op deze manier was Artenstein in staat om een worm te ontwikkelen, die zich van het ene geïnfecteerde toestel naar het andere verspreidt. Volgens de onderzoeker is het de eerste echte netwerkworm sinds een lange tijd.

Bron: Tweaker.net