Zależność, której prawie nikt nie widzi

1 lipca 2026 roku firma bezpieczeństwa runZero ujawniła siedem podatności w FatFs, małej bibliotece, która pozwala urządzeniu odczytywać i zapisywać formaty FAT i exFAT używane na pamięciach USB i kartach SD. To jeden z tych fragmentów kodu, które są wszędzie i widoczne dla prawie nikogo. Siedzi w oprogramowaniu układowym kamer bezpieczeństwa, dronów, sterowników przemysłowych, sprzętowych portfeli kryptowalut, kiosków publicznych, bankomatów i maszyn do głosowania z portem USB.

Trzy z luk mają wysoką wagę. CVE-2026-6682 to przepełnienie liczby całkowitej podczas montowania woluminu FAT32; CVE-2026-6687 przepełnia bufor przez etykietę woluminu exFAT; CVE-2026-6688 przepełnia kod opakowujący, który wiele produktów dodaje wokół FatFs. Na prawdziwym sprzęcie najgorsze z nich stają się uszkodzeniem pamięci i wykonaniem kodu. Biblioteka trafia do tych produktów przez popularne zestawy narzędzi, Espressif ESP-IDF, STMicroelectronics STM32Cube, Zephyr, MicroPython, ArduPilot, RT-Thread, Mbed, Samsung TizenRT i aktualizator SWUpdate, i właśnie dlatego tak wielu dostawców jeszcze nie będzie wiedzieć, że są w zasięgu rażenia.

Dostęp fizyczny to sedno, nie wymówka

Niektórzy zbędą to stwierdzeniem, że potrzebny jest dostęp fizyczny. Dla dotkniętych kategorii urządzeń to właśnie jest podatnością, a nie łagodzeniem. Kamera bezpieczeństwa, kiosk publiczny, bankomat, maszyna do głosowania: cała obietnica projektowa polega na tym, że osoba z publiczności może go dotknąć albo coś do niego podłączyć, nie kompromitując go. Te błędy łamią tę obietnicę. Napastnik ze spreparowaną pamięcią USB, kartą SD lub plikiem aktualizacji może uszkodzić pamięć i uruchomić kod.

Dwie z luk, przepełnienie FAT32 i dzielenie przez zero w exFAT, są także osiągalne przez bezprzewodowe aktualizacje oprogramowania układowego. To poszerza narażenie z kogoś stojącego przed maszyną na każdego, kto może wpłynąć na kanał aktualizacji, i oznacza, że nieudana aktualizacja może unieruchomić sprzęt w terenie. runZero opublikowało obrazy dysków proof of concept, stanowisko testowe i działający exploit oparty na QEMU, więc materiał, którego potrzebowałby napastnik, jest już na wierzchu.

Gdy poprawka nie ma właściciela

Niewygodnym sednem tej historii jest utrzymanie. FatFs prowadzi jeden programista, a runZero mówi, że wielokrotnie próbowało dotrzeć do tego opiekuna i włączyło japońskie centrum koordynacji JPCERT/CC, bez odpowiedzi. Tylko jeden z siedmiu błędów, zawieszenie przez odmowę usługi, jest oficjalnie naprawiony w wydaniu R0.16. Sześć problemów z uszkodzeniem pamięci nie ma oficjalnej łatki, listy mailingowej bezpieczeństwa ani żadnego mechanizmu, dzięki któremu liczne produkty dołączające FatFs dowiedziałyby się, że są dotknięte.

Tak naprawdę wygląda nowoczesne ryzyko łańcucha dostaw dla aktywów fizycznych. Nie głośne włamanie, lecz nośny element z jednym ludzkim punktem awarii, osadzony tak głęboko, że firmy, które go dostarczają, nie potrafią wyliczyć własnego narażenia. Metoda odkrycia podkreśla, jak przesunęła się równowaga: runZero znalazło je w marcu 2026 roku gotowym fuzzerem wspomaganym przez SI, pracą, którą ręczny audyt lata wcześniej przeoczył. Narzędzia do znajdowania tych błędów są dziś tanie i szeroko dostępne, co oznacza, że mają je również napastnicy.

Czego powinien żądać właściciel

Nie da się z tego wyłatać od zewnątrz, więc uczyń z tego kwestię zakupów i zarządzania dostawcami. Dla każdej floty połączonych lub wbudowanych urządzeń, kamer, sterowników, kiosków, portfeli, zadaj każdemu dostawcy bezpośrednie pytanie: czy wasze oprogramowanie układowe używa FatFs, w jakiej wersji i jaki jest wasz plan wobec sześciu niezałatanych CVE? Dostawca, który nie potrafi szybko odpowiedzieć, mówi ci coś o własnym wglądzie we własny kod.

Wewnętrznie traktuj porty fizyczne i kanały aktualizacji jako żywą powierzchnię ataku. Ogranicz, kto może podłączać nośniki do wystawionych urządzeń, i potwierdź, że aktualizacje oprogramowania układowego są podpisane i zweryfikowane, zanim zostaną zastosowane. Własna wskazówka runZero dla zespołów inżynierskich, sprawdź swoją wbudowaną wersję, sprawdź swoje opakowania, sprawdź swoją obsługę nazw i rozmiarów plików, to lista kontrolna, którą należy wręczyć każdemu dostawcy, który buduje dla ciebie sprzęt.