Android 'SMS of Death': zero-click lek, PoC is uit
Er ligt sinds deze week een werkende proof-of-concept voor een Android-lek waarmee je met één sms-bericht de telefoniefunctie van een toestel kunt platleggen. Onderzoeker Mark B publiceerde de techniek onder de naam SMS of Death en zette de bijbehorende app op GitHub. Het lek heeft CVE-2026-58882 meegekregen.
Het bijzondere eraan is dat het slachtoffer niets hoeft te doen en ook niets ziet. Het bericht komt binnen als data-sms op poort 2948 en wordt door Android verwerkt vóór het de inbox bereikt. Er verschijnt geen melding, geen bericht in Berichten, en het nummer van de afzender is nergens te zien.
Een cast zonder bereikcontrole
De fout zit in WapPushOverSms.decodeWapPdu() in Android's telefonieframework. Die functie leest de lengte van de WSP-header als een uintvar, krijgt die terug als long, en cast hem zonder bereikcontrole naar int. Die waarde gaat daarna rechtstreeks de grootte van een nieuwe byte-array in.
Een uintvar van vijf bytes 88 80 80 80 00 decodeert naar 0x80000000. Als signed 32-bits int is dat -2147483648. Een new byte[-2147483648] gooit een NegativeArraySizeException op de hoofdthread van telefonie, en die wordt niet gevangen. Gevolg: com.android.phone gaat onderuit. De hele payload is acht bytes lang.
Omdat dat proces de mobiele verbinding beheert, valt het netwerk één tot twee seconden weg en worden lopende gesprekken afgebroken — inclusief gesprekken met 112, met DisconnectCause CS_DEATH. De onderzoeker meldt reproductie op onder meer een Pixel 9 en diverse Samsung Galaxy- en A-serietoestellen.
Het blijft hangen
Eén bericht is al hinderlijk, maar het effect versterkt zichzelf. Een niet-bevestigd bericht wordt door de provider opnieuw aangeboden, waarna het toestel opnieuw crasht; in tests leidde één bericht tot wekenlang terugkerende storingen. Het bericht blijft bovendien in de wachtrij staan en wordt bij elke boot opnieuw verwerkt.
Bij ongeveer twintig berichten is een toestel praktisch onbruikbaar. Op een Android 12-apparaat startte Androids RescueParty het toestel ongeveer elke negentig seconden opnieuw op in recovery. Daar komt een gewone gebruiker niet uit: herstellen vraagt een computer en ADB, waarmee je de betreffende rijen uit content://sms/raw verwijdert. Kiest iemand in dat recoverymenu voor "wipe data", dan is de telefoon leeg.
Gepatcht, maar niet overal
Google loste het op in de Android-beveiligingsupdate van oktober 2026. De bijbehorende commit in AOSP heet "Fix remote DoS in decodeWapPdu" en vangt de RuntimeException af tijdens het decoderen, waarna het giftige bericht uit de raw-database wordt gegooid. Dat laatste is belangrijk: het haalt ook de crashlus eruit.
De fix is uitgebracht voor Android 14 tot en met 17. De kwetsbare code zit volgens de onderzoeker ook in Android 12 en 13, en die versies vallen buiten het venster voor beveiligingsupdates. Ze krijgen de reparatie dus niet. Het lek werd op 5 mei 2026 gemeld via Google's Android & Devices VRP en op 29 oktober openbaar gemaakt; volgens BleepingComputer staat het niet in Googles beveiligingsbulletin van oktober vermeld.
Wat je nu kunt doen
- Controleer op je Android-toestellen het beveiligingspatchniveau. Staat dat op oktober 2026 of later en is het een Android 14-, 15-, 16- of 17-toestel, dan zit de fix erin. Een herstart kan nodig zijn om de installatie af te ronden.
- Of een update beschikbaar is, hangt af van de fabrikant en de provider. Toestellen op Android 12 of 13 krijgen hem niet; voor die apparaten is er geen patch om op te wachten.
- Beheer je een vloot Android-toestellen, inventariseer dan welke daarvan nog op 12 of 13 staan. Dat is hier de groep waar je iets aan moet doen.