Przejdź do głównej zawartości

Tarlogic i nieudokumentowane komendy HCI w ESP32 — zarzut „backdoora” i odpowiedź Espressif

· 4 min aby przeczytać
Przemysław Majdak
Full-Stack Developer, Automation Engineer & Web Security Specialist

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.