Веб-интерфейс умных ванн Jacuzzi сливал ПДн всех любителей гидромассажа

Веб-интерфейс умных ванн Jacuzzi сливал ПДн всех любителей гидромассажа

Веб-интерфейс умных ванн Jacuzzi сливал ПДн всех любителей гидромассажа

Независимый исследователь выявил в веб-интерфейсе SmartTub уязвимости, позволяющие просматривать и редактировать данные клиентов Jacuzzi. Автор атаки также потенциально мог подстроить каверзу любому владельцу гидромассажной ванны или спа-бассейна — наполнить их кипятком, изменить цикл фильтрации и т. п.

Система SmartTub, как и другие IoT-сервисы, позволяет управлять умной ванной с помощью Android- или iOS-приложения — дистанционно включать и выключать форсунки, менять подсветку, контролировать температуру воды. В каталоге Google Play за SmartTub числится более 10 тыс. загрузок.

Белый хакер Итон Звир (Eaton Zveare) обнаружил возможность получения доступа к бэкенду SmartTub, когда занялся настройкой своей только что прибывшей умной джакузи. Создав аккаунт с помощью мобильного приложения, он получил подтверждение с сайта smarttub.io; как оказалось, регистрация на нем осуществляется через Auth0.

При попытке входа сайт выдал сообщение об ошибке 401 (Unauthorized — отказ в доступе), но перед этим на экране быстро промелькнули заголовок и таблица. Заинтересовавшись, Звир применил запись экрана и к своему удивлению обнаружил, что это панель администратора, заполненная пользовательскими данными.

 

Как оказалось, консоль реализована как одностраничное приложение на основе JavaScript-библиотеки React, и к ней можно получить полный доступ. Обойти ограничения, выдав себя за админа, исследователю помог Fiddler — инструмент тестирования, позволяющий перехватывать и анализировать трафик между клиентом и сервером.

В итоге ему удалось добраться до информации об установленных по всему миру IoT-устройствах Jacuzzi и их пользователях (в последнем случае список включал только имена и email). Подобная возможность, по словам Звира, позволяет также редактировать аккаунты и лишать владельцев права собственности.

При просмотре APK-файла приложения Android хакер обнаружил ссылку на другую админ-панель. Попытка входа под своими идентификаторами и здесь вернула ошибку, но хакер вновь преодолел преграду путем подмены JavaScript-кода, так как эта консоль тоже использует React.

Кроме тех же пользовательских данных, здесь можно было просмотреть и изменить сроки подписки, производственные логи, списки дилеров и зарегистрированных мобильных устройств (без номеров телефона).

 

О неприятных находках Звир сообщил в Jacuzzi и в ответ получил запрос на более детальное описание проблем. Дальнейшие попытки добиться исправления ситуации результата не дали; разработчик упорно игнорировал письма и DM в Твиттере, поэтому баг-хантер решил заручиться поддержкой Auth0.

Поставщику услуг авторизации далеко не сразу удалось достучаться до Jacuzzi, но в итоге искомый эффект был достигнут — спустя полгода. Одну из админ-панелей SmartTub отключили, а другую по-тихому пофиксили.

Критическая уязвимость в TLP позволяет обойти защиту Linux

В популярной утилите TLP, которую многие владельцы ноутбуков на Linux используют для управления энергопотреблением, обнаружили критическую уязвимость. Причём проблема нашлась во время обычной проверки пакета командой SUSE Security Team и располагается во вполне штатном коде.

Брешь получила идентификатор CVE-2025-67859 и затрагивает версию TLP 1.9.0, где появился новый profiles daemon.

Этот демон работает с root-правами и управляет профилями питания через D-Bus. Задумка хорошая, но реализация подвела: в механизме аутентификации Polkit нашлась логическая ошибка, которая фактически позволяет обойти проверку прав.

Как объясняют исследователи, демон должен был строго проверять, кто именно отправляет команды. Но из-за ошибки любой локальный пользователь мог взаимодействовать с ним без должной аутентификации — а значит, менять системные настройки питания от имени root.

На этом сюрпризы не закончились. В ходе анализа специалисты SUSE нашли ещё несколько проблем, уже связанных с исчерпанием ресурсов. В частности, механизм profile hold, который позволяет временно «зафиксировать» профиль питания, оказался совершенно без валидации. Локальный пользователь мог создавать неограниченное количество таких блокировок, причём без прав администратора.

В итоге это открывает прямую дорогу к DoS-атаке: демон начинает захлёбываться от бесконечных записей в структуре данных, куда попадают числа, строки с причиной и идентификаторы приложений — всё это полностью контролируется клиентом.

Любопытно, что SUSE вспомнила похожую историю с демоном управления питанием в GNOME: аналогичную проблему находили ещё несколько лет назад. Отдельно исследователи отметили вопросы к механизму «куки», которыми отслеживаются profile hold. Формально речь шла о предсказуемости значений, но в сочетании с отсутствием лимитов это лишь расширяло поверхность атаки.

К счастью, реакция была быстрой. SUSE сообщила об уязвимостях разработчикам ещё в декабре, и в версии TLP 1.9.1 проблема уже закрыта. В частности, число одновременных profile hold теперь жёстко ограничено числом 16, что убирает риск истощения ресурсов.

RSS: Новости на портале Anti-Malware.ru