Перейти к содержанию

Посты

🧠 Пока вы взвешиваетесь — кто-то взвешивает, сколько весов он может взломать Прочитал на…

8 июня 2025 г. в 20:28Max Knyazev is typing…Зеркало Telegram
🧠 Пока вы взвешиваетесь — кто-то взвешивает, сколько весов он может взломать

Прочитал на днях оригинал статьи, перевод которой относительно недавно вышел на Хабре. Суть в чем: один исследователь (Spaceraccoon) взял и взломал миллионы умных весов. Да, миллионы. Те самые, что по Bluetooth и Wi-Fi шлют ваши данные в облако, чтобы потом приложение заботливо сообщило вам: «Сегодня +2 кг. Надо бы сократить сладкое». Только теперь это может увидить не только пользователь, а любой человек, умеющий взаимодействовать с API 😳

Статью в подробностях вы можете прочитать и без меня (все ссылки я оставил в этом посте выше), а я расскажу вам все в более кратком варианте. Разберемся в причинах, сделаем выводы, пошутим... ну как обычно 🤝

Что вообще произошло?

Началось всё с иконки Wi-Fi на весах в отеле. Оказалось, что эти штуки подключаются к интернету и обмениваются данными с серверами через мобильное приложение. А если быть точнее — через уязвимое API. Там, где происходит самое важное: привязка пользователя к устройству 🧐

И вот тут начинается магия (чернокнижная, а точнее черношляпная) 😎

Автор понял, что многие бренды (даже те, что кажутся совершенно не связанными друг с другом) используют одну и ту же библиотеку — com.qingniu.heightscale. То есть, если нашёл баг в одном приложении — можно быть практически уверенным в том, что он будет и в десятке других 🪄

🤌 Самое мясо:

1⃣Через баг в API можно было подобрать серийники устройств

2⃣Эти серийники использовались не только как идентификатор, но и как ключ. То есть знаешь MAC-адрес устройства — можешь привязать его к своему аккаунту

3⃣SQL-инъекция с хитрой WAF-обходкой ('or\n@@version\nlimit 1#) позволяла вытаскивать серийники тысяч устройств, просто двигая offset

4⃣В API логике была дыра, что позволило отправлять токен пользователя вместо токена устройства, и сервер честно привязывал чужое устройство к тебе


Вуаля — у тебя весы незнакомого человека, а у него теперь «Ошибка соединения». Что ты с ними делаешь дальше — вопрос совести. Или фантазии 😅

👍 Что особенно круто — автор не ограничился только API. Он разобрал весы Withings WBS06, нашёл debug-порты, подключился через UART, вытащил прошивку, нашёл TLS-сертификаты, приватные ключи и… получил shell. На весах. Да. Там реально была консоль. На весах (зачем?)

И всё это было не ради фана, а чтобы понять, как работает связка «железо → приложение → сервер» и где в ней то, что так сильно болит 💀

🫡 Небольшие выводы от меня (побуду моралистом):

API = точка входа. Даже если у вас супербезопасное железо, всё рушится, если на бэке забыли добавить валидацию 🤓

Серийник ≠ секрет. Нельзя строить безопасность на том, что легко узнать ⛔️

mTLS — это не броня, если логика не вытягивает 💯

Хорошие производители фиксируют баги даже 3 января. Респект тем, кто слушает таких вот исследователей (да, разработчики оперативно все устранили в новогодние праздники) 🎅


Я бы не сказал, что после этой истории хочется срочно перестать взвешиваться на умных весах. Но точно стоит помнить: если девайс подключается к интернету — рано или поздно кто-то к нему тоже подключится. И не факт, что это будете вы 😉

#интернет_вещей
#информационная_безопасность
Открыть исходный пост в Telegram