Een afhankelijkheid die bijna niemand ziet

Op 1 juli 2026 onthulde beveiligingsbedrijf runZero zeven kwetsbaarheden in FatFs, een kleine bibliotheek waarmee een apparaat de FAT- en exFAT-formaten kan lezen en schrijven die op USB-drives en SD-kaarten worden gebruikt. Het is een van die stukjes code die overal zitten en voor bijna niemand zichtbaar zijn. Het zit in de firmware van beveiligingscamera's, drones, industriele besturingen, hardware-cryptowallets, publieke kiosken, geldautomaten en stemmachines met een USB-poort.

Drie van de lekken zijn als hoog ingeschaald. CVE-2026-6682 is een integer-overflow bij het aankoppelen van een FAT32-volume; CVE-2026-6687 laat een buffer overlopen via een exFAT-volumelabel; CVE-2026-6688 laat de wrapper-code overlopen die veel producten rond FatFs toevoegen. Op echte hardware worden de ergste hiervan geheugenbeschadiging en code-uitvoering. De bibliotheek bereikt deze producten via gangbare toolkits, Espressif ESP-IDF, STMicroelectronics STM32Cube, Zephyr, MicroPython, ArduPilot, RT-Thread, Mbed, Samsung TizenRT en de SWUpdate-updater, en juist daarom zullen zo veel leveranciers nog niet weten dat ze binnen het bereik vallen.

Fysieke toegang is de kern, niet het excuus

Sommigen wuiven dit weg omdat er fysieke toegang nodig is. Voor de getroffen apparaatcategorieen is dat juist de kwetsbaarheid, geen verzachting. Een beveiligingscamera, een publieke kiosk, een geldautomaat, een stemmachine: de hele ontwerpbelofte is dat een lid van het publiek het kan aanraken, of er iets in kan steken, zonder het te compromitteren. Deze bugs breken die belofte. Een aanvaller met een geprepareerde USB-drive, SD-kaart of updatebestand kan geheugen beschadigen en code uitvoeren.

Twee van de lekken, de FAT32-overflow en een deling door nul in exFAT, zijn ook bereikbaar via draadloze firmware-updates. Dat verbreedt de blootstelling van iemand die voor de machine staat naar iedereen die het updatekanaal kan beinvloeden, en het betekent dat een mislukte update hardware in het veld onbruikbaar kan maken. runZero heeft proof-of-concept-schijfimages, een testopstelling en een werkend, op QEMU gebaseerd exploit gepubliceerd, waardoor het materiaal dat een aanvaller nodig zou hebben al openligt.

Als de oplossing geen eigenaar heeft

De ongemakkelijke kern van dit verhaal is onderhoud. FatFs wordt door een enkele ontwikkelaar bijgehouden, en runZero zegt herhaaldelijk te hebben geprobeerd die beheerder te bereiken en het Japanse coordinatiecentrum JPCERT/CC te hebben ingeschakeld, zonder reactie. Slechts een van de zeven bugs, een vastloper door denial-of-service, is officieel opgelost in versie R0.16. De zes geheugenbeschadigingsproblemen hebben geen officiele patch, geen beveiligingsmailinglijst en geen enkel mechanisme waarmee de vele producten die FatFs meeleveren kunnen vernemen dat ze getroffen zijn.

Zo ziet modern toeleveringsketenrisico er werkelijk uit voor fysieke activa. Geen inbraak op de voorpagina, maar een dragend onderdeel met een enkel menselijk faalpunt, zo diep ingebed dat de bedrijven die het uitleveren hun eigen blootstelling niet kunnen opsommen. De ontdekkingsmethode onderstreept hoe de balans is verschoven: runZero vond deze in maart 2026 met een kant-en-klare, door AI ondersteunde fuzzer, werk dat een handmatige audit jaren eerder had gemist. De middelen om deze bugs te vinden zijn nu goedkoop en breed beschikbaar, wat betekent dat aanvallers ze ook hebben.

Wat een eigenaar moet eisen

Je patcht je hier van buitenaf niet uit, dus maak er een inkoop- en leveranciersbeheervraag van. Stel voor elke vloot van verbonden of ingebedde apparaten, camera's, besturingen, kiosken, wallets, aan elke leverancier een directe vraag: gebruikt jullie firmware FatFs, welke versie, en wat is jullie plan voor de zes ongepatchte CVE's? Een leverancier die niet snel kan antwoorden, vertelt je iets over zijn eigen zicht op zijn code.

Behandel intern fysieke poorten en updatekanalen als een levend aanvalsoppervlak. Beperk wie media in blootgestelde apparaten mag steken, en bevestig dat firmware-updates zijn ondertekend en gevalideerd voordat ze worden toegepast. runZero's eigen advies aan engineeringteams, controleer je meegeleverde versie, controleer je wrappers, controleer je verwerking van bestandsnamen en bestandsgroottes, is de checklist om te overhandigen aan elke leverancier die hardware voor je bouwt.