Tarlogic i nieudokumentowane komendy HCI w ESP32 — zarzut „backdoora” i odpowiedź Espressif
Zespół badawczy z firmy Tarlogic Security odkrył nieudokumentowaną funkcję w mikrokontrolerze ESP32, szeroko stosowanym w urządzeniach IoT. Badacze przedstawili ją jako „backdoor” zagrażający milionom urządzeń. Dzień po publikacji tego wpisu Espressif odpowiedział, że chodzi o wewnętrzne komendy debugowe, których nie da się wywołać zdalnie.
Aktualizacja 2026-10-02: pierwotna wersja wpisu (2025-03-09) powstała przed oświadczeniem producenta. Dopisałem sekcję o odpowiedzi Espressif i poprawce oraz oznaczyłem, które zagrożenia to teza badaczy, a nie ustalony fakt.
Czym jest ESP32?
ESP32 to seria niskokosztowych, energooszczędnych mikrokontrolerów z wbudowanym Wi-Fi i Bluetooth, opracowanych przez chińską firmę Espressif Systems. Od momentu wprowadzenia na rynek w 2016 roku, ESP32 znalazł zastosowanie w szerokiej gamie urządzeń, od inteligentnych domów po sprzęt medyczny. Więcej o samym frameworku do programowania tych układów: ESP-IDF w 2026.
Odkrycie Tarlogic
Podczas konferencji RootedCON 2025 badacze z Tarlogic przedstawili wyniki swoich badań nad ESP32. Znaleźli 29 nieudokumentowanych komend HCI (vendor-specific, opcode 0x3F) w firmware Bluetooth tego chipu (bleepingcomputer.com). Według badaczy komendy pozwalają m.in. odczytywać i zapisywać pamięć RAM i flash, zmieniać adres MAC oraz wstrzykiwać pakiety LMP/LLCP. Sprawa ma identyfikator CVE-2025-27840.
Potencjalne zagrożenia — według Tarlogic
Badacze wskazali następujące scenariusze:
- Ataki typu impersonation: podszywanie się pod zaufane urządzenia dzięki zmianie adresu MAC.
- Trwałe infekcje: modyfikacja pamięci pozwalająca wprowadzić złośliwy kod, który przetrwa restart urządzenia.
- Ataki na łańcuch dostaw: wykorzystanie komend do wprowadzenia backdoorów na etapie produkcji.
Kluczowe pytanie, którego pierwsze relacje nie stawiały, brzmi: kto może wysłać te komendy? Od odpowiedzi zależy, czy to zdalna podatność, czy narzędzie dla kogoś, kto już ma kontrolę nad urządzeniem.
Reakcja społeczności i producenta
W dniu publikacji tego wpisu (2025-03-09) Espressif nie wydał jeszcze oświadczenia. Już 9 marca BleepingComputer zmienił tytuł i treść swojego artykułu, rezygnując ze słowa „backdoor” po zgłoszonych zastrzeżeniach (bleepingcomputer.com).
2025-03-10 Espressif opublikował odpowiedź (espressif.com, developer.espressif.com). Najważniejsze punkty, jako deklaracje producenta:
- To wewnętrzne komendy debugowe dla deweloperów; według Espressif takie prywatne komendy nie są w branży niczym wyjątkowym.
- Nie da się ich wywołać przez Bluetooth, sygnał radiowy ani internet, chyba że w aplikacji albo w protokołach radiowych istnieje inna podatność.
- W typowym zastosowaniu host i kontroler Bluetooth działają w jednym programie na ESP32. Taka aplikacja i tak ma pełny dostęp do pamięci i radia, więc komendy nie dokładają powierzchni ataku.
- Ryzyko dotyczy rzadszej konfiguracji, w której ESP32 jest koprocesorem i dostaje komendy HCI przez UART od zewnętrznego hosta. Żeby je wysłać, atakujący musi najpierw przejąć ten host albo mieć fizyczny dostęp do interfejsu szeregowego — to atak drugiego etapu, nie samodzielna podatność.
- Komendy występują tylko w oryginalnym ESP32. Serie ESP32-C, ESP32-S i ESP32-H ich nie mają.
Mimo oceny, że realnego zagrożenia nie ma, Espressif zapowiedział poprawkę usuwającą dostęp do tych komend we wspieranych wersjach ESP-IDF oraz udokumentowanie wszystkich komend HCI specyficznych dla producenta. 26 maja 2025 poprawki weszły do stosu oprogramowania — szczegóły w biuletynie AR2025-004.
Wnioski
- „Nieudokumentowane” to nie to samo co „zdalnie wykorzystywalne”. Pierwsze relacje zrównały te dwie rzeczy. Ocena zagrożenia zależy od tego, kto ma dostęp do interfejsu HCI, a w większości urządzeń z ESP32 nie ma go nikt z zewnątrz.
- Słaby punkt odpowiedzi producenta: to deklaracje Espressif, nie niezależny audyt. Nie weryfikowałem ich samodzielnie. Ocena ryzyka w CVE-2025-27840 też nie jest ostateczna — wpis w GitHub Advisory Database ma status „Unreviewed”.
- Co zrobić w praktyce: jeśli używasz oryginalnego ESP32 jako koprocesora Bluetooth przez UART HCI, zaktualizuj ESP-IDF do wersji zawierającej poprawkę z AR2025-004. W pozostałych zastosowaniach aktualizacja jest higieną, nie łataniem dziury.