CVE-2026-71260
ŚrednieCVSS 6.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 14 - wyżej niż 14% wszystkich znanych CVE
Streszczenie
ESPHome do wersji 2026.7.0-dev ujawnia hasła w postaci zwykłego tekstu przez komponent web_server. W WebServer::text_json_ (esphome/components/web_server/web_server.cpp), encja tekstowa skonfigurowana z trybem: password (TEXT_MODE_PASSWORD) ma pole JSON "state" poprawnie zamaskowane jako "********", ale ta sama ścieżka serializacji bezwarunkowo zapisuje surowe hasło do pola JSON "value" przez set_json_icon_state_value/set_json_value.
Ocena ryzyka
Ujawnienie haseł w postaci zwykłego tekstu może pozwolić atakującemu na przechwycenie poświadczeń i nieautoryzowany dostęp do urządzeń.
Rekomendacja
Zaleca się aktualizację ESPHome do wersji po 2026.7.0-dev oraz upewnienie się, że pola haseł nie są ujawniane w odpowiedziach JSON.
Inne podatności w ESPHome
Zobacz wszystkie- CVE-2026-71259Wysokie
ESPHome do wersji 2026.7.0-dev zawiera błąd pierwszeństwa operatorów w walidatorze cv.url w esphome/config_validation.py. Ponieważ [operator] wiąże mocniej niż [operator], każdy URI file: przechodzi walidację niezależnie od netloc. Ten walidator kontroluje pole schematu git w dyrektywie YAML external_components, które jest przekazywane do [funkcji] (git obsługuje file:// natywnie).
- CVE-2025-57808Wysokie
W ESPHome w wersji 2025.8.0 na platformie ESP-IDF mechanizm uwierzytelniania web_server może nieprawidłowo przepuszczać żądania, gdy dostarczona przez klienta wartość base64 Authorization jest pusta lub jest podciągiem poprawnej wartości. Pozwala to na dostęp do funkcjonalności web_server (w tym OTA, jeśli włączone) bez znajomości nazwy użytkownika ani hasła. Problem naprawiono w wersji 2025.8.1.
Oryginalny opis (angielski, źródło NVD)
ESPHome through 2026.7.0-dev discloses plaintext passwords via its web_server component. In WebServer::text_json_ (esphome/components/web_server/web_server.cpp), a text entity configured with mode: password (TEXT_MODE_PASSWORD) has its JSON "state" field correctly masked as "********", but the same serialization path unconditionally writes the raw password into the JSON "value" field via set_json_icon_state_value/set_json_value.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

