Вразливість для аутентифікації веб -сервера Esphome

Вразливість для аутентифікації веб -сервера Esphome
Вразливість для аутентифікації веб -сервера Esphome

Критична вразливість безпеки, виявлена ​​у компоненті веб-сервера Esphome, виявила тисячі пристроїв розумного дому на несанкціонований доступ, ефективно наніваючи базовий захист аутентифікації на впровадженні платформи ESP-IDF.

В недолік, призначений CVE-2015-57808 з оцінкою CVSS 8,1, впливає на версію ESPHOME 2025.8.0 і дозволяє зловмисникам обходити механізми аутентифікації без будь-яких знань про законні дані.

Вразливість випливає з основної логічної помилки в перевірці основної аутентифікації HTTP в межах Esphome web_server_idf компонент.


Google News

При обробці запитів на аутентифікацію система AsyncWebServerRequest::authenticate Функція порівнює лише байти з довжиною значення авторизації, що надається клієнтом, а не валідації повного рядка облікових даних.

Цей недолік реалізації створює два різних вектори атаки, які повністю компрометують безпеку пристрою.

Найважчий аспект цієї вразливості передбачає порожні заголовки авторизації, де зловмисники можуть отримати повний доступ, просто надіславши запит Authorization: Basic Далі йде порожня струна.

Аналітики Github визначили, що цей вектор атаки не вимагає попередніх знань імен користувачів чи паролів, що робить його особливо небезпечним для зловмисників, що знаходяться в мережі.

Крім того, недолік приймає часткові відповідні пароля, тобто зловмисник, який виявляє навіть підрядку правильного пароля, може успішно автентифікувати.

Механізм нападу та технічна експлуатація

Технічний фундамент вразливості полягає в неправильній логіці порівняння рядків, яка обробляє дані, кодовані Base64.

Коли законний пристрій налаштований з обліковими записами, як user:somereallylongpass (закодовано як dXNlcjpzb21lcmVhbGx5bG9uZ3Bhc3M=), хибна перевірка аутентифікації приймає коротші рядки, такі як dXNlcjpz (Представлення user:s) як дійсні дані.

Практична експлуатація вимагає мінімальної технічної витонченості. Зловмисники можуть використовувати прості команди завитки, щоб продемонструвати вразливість:-

curl -D- -H 'Authorization: Basic ' http://target.local/

Ця команда повністю обходить автентифікацію, повернувши відповіді HTTP 200 замість очікуваного 401 несанкціонованого статусу.

Вразливість стає особливо стосовною, коли функція оновлення в ефірі (OTA) увімкнена, оскільки зловмисники отримують повний контроль над прошивкою пристрою та налаштуваннями конфігурації.

Esphome вирішив цю критичну недолік у версії 2025.8.1, впроваджуючи належну перевірку облікових даних, що порівнює повні рядки авторизації, а не часткові збіги.

Boost your SOC and help your team protect your business with free top-notch threat intelligence: Request TI Lookup Premium Trial.