- Ремонт “умной” розетки TP-Link HS110
- TP-LINK HS110 — домашний помощник или очередная розетка с Wi-Fi?
- Аппаратная часть
- Программная часть
- Заключение
- Tp link hs110 не работает
- HS110 не видно в KASA
- HS110 не видно в KASA
- Re: HS110 не видно в KASA
- Re: HS110 не видно в KASA
- Re: HS110 не видно в KASA
- Re: HS110 не видно в KASA
- Re: HS110 не видно в KASA
- Взлом умной розетки TP-LINK HS110 WI-FI
- НАСТРОЙКА УСТРОЙСТВА
- ИССЛЕДУЕМ ПРОШИВКУ TP-LINK HS110
- BUSYBOX
- СКАНИРОВАНИЕ ПОРТОВ
- ИССЛЕДУЕМ TP-LINK SMART HOME PROTOCOL
- АНАЛИЗ КОМАНД ПРОТОКОЛА TP-LINK SMART HOME
- Системные команды:
- Wi-Fi-команды
- Облачные команды
- Ищем устройства TP-Link через Device Debug Protocol:
- ТЕСТОВЫЙ РЕЖИМ
- ВЫВОДЫ
Ремонт “умной” розетки TP-Link HS110
Наверное не у одного меня на “страже” нашего оборудования стоят какие нибудь “умные” розетки или реле.
Я в своё время перебрал несколько производителей и моделей и остановился на розетках TP-Link HS110 и реле Sonoff POW. И то и то устройство рассчитаны на ток 16А. Но сегодня речь пойдёт только о TP-Link HS110.
Эксплуатировались они у меня в режиме 24/7 со средней нагрузкой 1200-1400W, иногда пиковая нагрузка могла достигать 1900W, в общем всё в пределах нормы.
Примерно через полтора года с интервалом в 10-15 дней из трёх розеток из строя вышли две. На последней оставшейся нагрузка меньше, чем на двух “умерших”, ватт на 300. Может в этом причина её живучести.
27.11.2019: Сегодня обратил внимание что вышедшие из строя розетки имеют Hardware Version 2.0, у той что уцелела Hardware Version 1.0. Какая между ними разница пока сказать не могу, т.к. уцелевшую розетку не вскрывал, может попозже руки дойдут, тогда добавлю сюда сравнительные фото версий.
Признаками “смерти” на одной розетке было то что она самопроизвольно включалась-выключалась по нескольку раз в минуту, а вторая просто зависла и ни на что не реагировала, горел только её жёлтый индикатор.
При вскрытии сразу в глаза бросился какой то жёлтый налёт на внутренней стороне крышки и на одной и на другой розетке.
Дальнейшее “препарирование” выявило и виновника – вздувшийся конденсатор 470μF 16V
Под руками к сожалению не нашлось такого же по параметрам твердотельного электролита, поэтому заменил на такой же по параметрам LOWESR, на всякий случай заменил и соседний 4,7μF 50V
После замены конденсаторов обе розетки нормально завелись и работают.
Добавлено 02.12.2019:
Собственно добрался добрался до уцелевшей розетки TP-Link HS110 Hardware ver. 1.0 и разобрал её, что бы посмотреть отличия от hardware ver. 2.0.
Внутри другая схема, отличная от второй версии, модульный конструктив на разъёмах и твердотельный конденсатор, чем и обусловлена её живучесть.
HS110 Hv. ver. 1.0 – модульное исполнение HS110 Hv. ver. 1.0 – твердотельный электролит
Источник
TP-LINK HS110 — домашний помощник или очередная розетка с Wi-Fi?
Когда в мои руки попала эта розетка, я подумал, что это не более чем временное развлечение, умный гаджет, который со временем перекочует на полку и будет собирать там пыль. Но спустя полгода использования, я смело могу сказать: он работает каждый день!
Поэтому я хочу поделиться своим опытом эксплуатации и заметками на тему использования умных розеток. Тем более что производителя этого устройства я раньше знал исключительно, как фирму, выпускающую роутеры. Поэтому протестировать такое устройство было в разы интереснее. Встречаем TP-LINK HS110.
Начнем с того, что у компании TP-Link на данный момент есть две умные розетки: HS100 и HS110. Обе умеют работать по расписанию и управляются со смартфона. Но у старшей модели также имеется монитор энергопотребления, о котором я расскажу позже. Разница между моделями составляет около 300 рублей, что не так уж существенно. Поэтому я выбрал более функциональную версию HS110.
Комплектация устройства довольно проста: сама розетки и инструкция. Мануал есть и на русском языке, потому разобраться не составит проблем.
Посмотрим ближе: Если приглядеться, то в верхней части можно увидеть две кнопки: одной можно непосредственно включать и выключать питание нагрузки, а вторая(маленькая сверху) служит для управления. Подключение происходит посредством Wi-Fi сначала со смартфона к розетке, а после розетка подключается к домашней точке доступа.
Что касается нижней части, то все довольно просто. Стандартная вилка с контактами заземления.
Аппаратная часть
Очень сложно было удержаться и не разобрать устройство, поэтому я поддался искушению, открутил один винт и снял крышку.
Внутри крепкого корпуса скрываются две платы, соединенные тонкими ножками-проводниками. Одна плата отвечает за логику и связь по Wi-Fi.
А вторая плата имеет на борту адаптер питания для логики, реле включения нагрузки (как видно, управляется постоянным током и напряжением в 5В), систему измерения тока и хорошо пропаянные проводники.
Программная часть
Начнем с того, что после включения розетки в розетку умной розетки в розетку обычную, smart-девайс необходимо подключить к сети и настроить. Подразумевается, что дома есть Wi-Fi роутер и нормальный доступ в Интернет. Первым делом надо подключиться к точке доступа. Для этого проще всего зайти на розетку со смартфона используя утилиту Kasa, доступную в маркетах для Android и iOs.
После этого выбираем необходимую сеть Wi-Fi и вводим параметры подключения, если они потребуются.
После этого розетка подключится к облачному сервису и ей можно управлять из любого места, где есть Интернет. Вся информация появляется на смартфоне мгновенно.
Например, можно посмотреть потребленную энергию за день на главной странице
Если нажать на цифру мощности, то можно перейти к следующему окну, где будет отображено текущее потребление, среднее и суммарное потребление за 7 дней и за 30 дней. Очень наглядная статистика получается. У меня розетка подключена к бойлеру, который готовит горячую воду для дома, где постоянно проживают 3 человека и частенько бывают гости. Так я выяснил, что каждый человек в день потребляет горячей воды столько, что на ее нагрев тратится около 3-4 КВт*ч. А уж то, что только на подготовку горячей воды тратится более 300 киловатт*часов в месяц стало для меня неожиданной новостью.
И тут очень пригодились интеллектуальные возможности этой розетки. Один из пунктов имеет раздел планирования. Настраиваем время включения розетки.
Таким же образом выставляем время выключения и получаем нагрев воды по ночному тарифу, который, как правило, на треть дешевле дневного. Встречаются места, где ночной тариф дешевле в несколько раз.
Если использовать розетку не для отопления, а для полива огорода, то можно задать расписание включения насоса не только по часам, но и по дням недели!
Кроме того, он умеет работать по таймеру. То есть задаем значение «включить» или «выключить» и выставляем время, через которое розетка изменит состояние.
Также есть Away Mode, который предусматривает эмуляцию присутствия человека, когда вы находитесь удаленно. То есть можно поставить розетку, запрограммировать время действия и торшер\телевизор\радио будет включаться и выключаться самостоятельно.
Конечно же, включать розетку можно просто нажав соответствующую кнопку в приложении. Или нажав кнопку на корпусе устройства.
Заключение
Стоит ли тратить почти 3 тысячи на умную розетку, которая будет очередным гаджетом в доме? Я ответил для себя на этот вопрос после того, как увидел, сколько электричества уходит на нагрев воды. Простое математическое вычисление подсказало, что на нагреве воды можно экономить. Так, днем 1 КВт*ч стоит 2,87 руб, а ночью — 1,95. То есть ночью греть воду дешевле на 92 копейки или на 32%. С учетом разницы в цене, розетка окупится после 3141 КВт*ч, потраченных ночью. А с учетом моего потребления — это около 10 месяцев. А что такое 10 месяцев, когда это устройство из разряда поставил и забыл?
К тому же, таких розеток можно установить много и каждой управлять из одного приложения — все они будут отображаться в одном меню. А благодаря возможности переименования, можно их обозначить так, чтобы избежать путаницы.
Итак, из разряда новомодных гаджетов с громким маркетинговым названием «Интернет вещей» умная розетка TP-LINK HS110 перешла для меня в разряд удобных электронных помощников. И если раньше я сомневался, то теперь рекомендую!
Источник
Tp link hs110 не работает
Дорогие пользователи! У нас появился новый форум на платформе tp-link.community (Сообщество)
Форум доступен по ссылке https://community.tp-link.com/ru
Просим Вас отнестись с пониманием к новому форуму, он находится в стадии доработки и в скором времени будет полностью завершен.
Если при регистрации в Сообществе Вы укажете адрес электронный почты, который используете на данном форуме, то Ваши данные будут перенесены на форум Сообщества автоматически.
Также, если на форуме Сообщества Ваш никнейм будет занят, то Вам предложат сменить его или оставить, но с приставкой «_RU».
Убедительная просьба не дублировать темы на старом/новом форуме.
HS110 не видно в KASA
HS110 не видно в KASA
Сообщение LetoZima » 26 фев 2018, 22:24
Re: HS110 не видно в KASA
Сообщение Goodwin » 27 фев 2018, 17:40
Re: HS110 не видно в KASA
Сообщение LetoZima » 27 фев 2018, 20:34
Re: HS110 не видно в KASA
Сообщение sclll » 28 фев 2018, 17:26
Re: HS110 не видно в KASA
Сообщение LetoZima » 28 фев 2018, 22:22
пинганул рядом с усилителем:
Обмен пакетами с 192.168.0.120 по с 32 байтами данных:
Ответ от 192.168.0.137: Заданный узел недоступен.
Ответ от 192.168.0.137: Заданный узел недоступен.
Ответ от 192.168.0.137: Заданный узел недоступен.
Ответ от 192.168.0.137: Заданный узел недоступен.
Статистика Ping для 192.168.0.120:
Пакетов: отправлено = 4, получено = 4, потеряно = 0
(0% потерь)
притащил к роутеру — в KASA появилась.
ресетнул розетку, отнес к усилителю, подключил рядом с ним — не пашет
зашел в настройки усилителя — обе розетки видно
DHCP-сервер на усилителе выключал, толку ноль, сейчас на авто
может быть такая ерунда из-за того, что у меня SSID и пароли одинаковые на роутере и усилителе?
Re: HS110 не видно в KASA
Сообщение reaper » 02 мар 2018, 15:36
LetoZima писал(а): пинганул рядом с усилителем:
Обмен пакетами с 192.168.0.120 по с 32 байтами данных:
Ответ от 192.168.0.137: Заданный узел недоступен.
Ответ от 192.168.0.137: Заданный узел недоступен.
Ответ от 192.168.0.137: Заданный узел недоступен.
Ответ от 192.168.0.137: Заданный узел недоступен.
Статистика Ping для 192.168.0.120:
Пакетов: отправлено = 4, получено = 4, потеряно = 0
(0% потерь)
притащил к роутеру — в KASA появилась.
ресетнул розетку, отнес к усилителю, подключил рядом с ним — не пашет
зашел в настройки усилителя — обе розетки видно
DHCP-сервер на усилителе выключал, толку ноль, сейчас на авто
может быть такая ерунда из-за того, что у меня SSID и пароли одинаковые на роутере и усилителе?
Источник
Взлом умной розетки TP-LINK HS110 WI-FI
Желание управлять всем вокруг с телефона вполне понятно для любого, кто хоть как-то связан с IT. Именно поэтому пару лет назад в наших домах стали появляться умные чайники, лампочки и прочие «кофеварки на Linux». Но увеличение количества таких умных устройств ведет к дополнительной возможности проникнуть в вашу сеть. Сегодня мы расскажем про взлом умной розетки TP-LINK HS110 WI-FI.
HS110 Wi-Fi — это Wi-Fi-розетка с мониторингом энергопотребления от TP-Link. Устройство подключается к обычной розетке и после настройки предоставляет:
- удаленный доступ для управления подключенными устройствами со смартфона с помощью мобильного приложения Kasa;
- подачу и отключение электричества по расписанию для управления подключенными приборами;
- мониторинг энергопотребления для просмотра статистики энергопотребления в реальном времени.
Разумеется, HS110 Wi-Fi — это далеко не первое устройство подобного класса, так что долго останавливаться на его функциональности нет смысла. Исследователи Любомир Штрётман (Lubomir Stroetmann) и Тобиас Эссер (Tobias Esser) провели анализ разреверсенной прошивки розетки и ее Android-приложения Kasa, сетевого трафика между приложением и устройством, а также фаззинг его проприетарного протокола. На момент написания статьи об исправлениях ошибок ничего известно не было, а поскольку устройство достаточно типовое, этот подход может успешно применяться для исследования и других девайсов подобного класса.
НАСТРОЙКА УСТРОЙСТВА
Умная розетка имеет только две физические кнопки — переключатель «Вкл./ выкл.» и кнопку перезагрузки, которая сбрасывает настройки устройства, если ее держать нажатой более пяти секунд. После включения ненастроенное устройство с заводскими настройками запускает незащищенную точку доступа с именем вида TP-LINK_Smart Plug_XXXX, где XXXX — четыре шестнадцатеричных числа. После быстрого поиска в WiGLE было найдено несколько умных розеток TP-Link с настройками по умолчанию:
А это, в свою очередь, означало, что рано или поздно подобные устройства попадут под прицелы исследователей ИБ — это лишь вопрос времени. Сегодня мы рассмотрим уязвимости в одном из таких устройств — умной Wi-Fi-розетке TP-Link HS110 Wi-Fi.
Приложение от TP-Link для управления такими устройствами — Kasa подключает смартфон к созданной точке доступа, отправляя широковещательные UDP-пакеты 255.255.255.255 для поиска IP-адреса устройства и последующей установки имени SSID и пароля, которые пользователь ввел в приложении. Затем умная розетка выключает точку доступа и соединяется с указанной Wi-Fi-сетью как клиент.
Авторы провели KARMA-атаку, используя MANA Toolkit от SensePost, принудительно деаутентифицировав умную розетку и попытавшись соединиться небезопасной поддельной точкой доступа с тем же именем. Увы, атака не увенчалась успехом, хотя таким образом можно вызывать временный отказ от обслуживания устройства.
Кстати, не только умные розетки подключаются подобным способом, но и другие устройства. Например, популярный (и неоправданно дорогой) комбайн LIFX настраивается посхожемуалгоритму.
ИССЛЕДУЕМ ПРОШИВКУ TP-LINK HS110
Следующим шагом авторы скачали официальную прошивку для устройства HS110(US)_V1_151016.zip и натравили на него binwalk для анализа содержимого.
Как видишь, прошивка содержит обычную Linux-систему, состоящую из трех частей:
• U-Boot Bootloader 1.1.4 (Oct 16 2015 — 11:22:22);
• Linux Kernel 2.6.31 — LSDK-9.2.0_U11.14 (yt@yangtao.localdomain);
• Squashfs filesystem.
В файловой системе авторы нашли следующие интересные файлы:
1. /bin/busybox v1.01 (2015.10.16 — 03:17+0000).
2. /etc/newroot2048.crt — этот сертификат используется для проверки облачного сервера. Файл содержит корневой сертификат VeriSign Class 3 Public Primary Certification Authority — G5. Это означает, что при установлении TLS-соединения в облако проверяется, подписан ли предоставленный сервером сертификат с помощью Symantec VeriSign CA for Extended Validation (EV) certificates (CA pinning). Атакующий может купить себе собственный EV-сертификат и использовать его для своего сервера, чтобы он «выглядел» как облако.
3. /etc/shadow — после дешифрования оказалось, что пароль media root:7KBNXuMnKTx6g:15502:0:99999:7.
4. /usr/bin/shd — основное серверное приложение.
5. /usr/bin/shdTester — клиент для калибровки экрана энергии.
6. /usr/bin/calDump — дамп данных калибровки из /dev/caldata.
Вся проприетарная серверная логика находится в исполняемом файле shd (Smart Home Daemon), который является MIPS32 R2 Big Endian:
Также в нем содержится OpenSSL 1.0.1j 15 Oct 2014 для установки TLS-соединения с облачным сервером.
BUSYBOX
Предоставляемая версия BusyBox из прошивки подвержена уязвимости CVE2011-2716, инъекции команд в компоненте udhcpc (DHCP-клиенте). Она позволяет внедрять команды в одну из следующих DHCP-опций:
• (12) Hostname;
• (15) Domainname;
• (40) NIS Domain;
• (66) TFTP Server Name.
Проанализировав исполняемый файл, авторы нашли, что shd создает shellскрипт /tmp/udhcpc.script:
а затем выполняется udhcpc:
К сожалению, здесь hostname захардкожена, а другие опции не используются. Так что уязвимость неэксплуатируема.
СКАНИРОВАНИЕ ПОРТОВ
Запустив Nmap после сканирования всех TCP и UDP, получили следующее:
• 80/tcp — HTTP;
• 9999/tcp — TP-Link Smart Home Protocol;
• 1040/udp — TP-Link Device Debug Protocol (TDDP).
Веб-сервер на 80-м порту отвечает бессмысленными троеточиями, вне зависимости от запроса:
Внутри shd этот ответ HTTP-сервера зовется fake_httpd и всегда возвращает захардкоженный ответ.
TCP-порт 9999 используется для управления умной розеткой в локальной сети с помощью приложения Kasa и описан в TP-Link Smart Home Protocol, а UDPпорт 1040 — в TP-Link Device Debug Protocol.
ИССЛЕДУЕМ TP-LINK SMART HOME PROTOCOL
Прослушав локальный Wi-Fi-трафик, авторы увидели, что мобильное приложение общается с HS110 через порт 999, используя данные, похожие на зашифрованные. После декомпиляции Android-приложения они нашли функцию шифрования:
Мы видим, что инициализирующий ключ (вектор) — это захардкоженное значение -85 (= 171). Первый байт открытого текста ксорится (XOR) с этим ключом. Затем ключ ставится в незашифрованный байт. В ходе очередной итерации следующий байт открытого текста ксорится с предыдущим байтом открытого текста. Дешифровка работает по тому же принципу.
Этот алгоритм известен как autokey cipher. Несмотря на то что его статические свойства лучше, чем в стандартном XOR-шифровании с помощью повторяющегося ключа, он все равно может быть легко взломан известными атаками.
Теперь, когда мы знаем алгоритм и ключ, мы можем сделать Wireshark-диссектор на Lua, который автоматически дешифрует TP-Link Smart Home пакеты на 9999-й порт. Сам протокол устройства использует JSON, так что можно добавить и диссектор для него. В итоге мы можем читать данные между Kasa-приложением и умной розеткой в Wi-Fi-сети.
Команды для умной розетки сгруппированы в следующие категории:
• system;
• netif (WLAN interface commands);
• cnCloud (соединение с облаком);
• time;
• emeter (измерение энергии);
• schedule (расписание вкл./выкл.);
• count_down (таймер вкл./выкл.);
• anti_theft (рандомное расписание вкл./выкл.).
АНАЛИЗ КОМАНД ПРОТОКОЛА TP-LINK SMART HOME
Авторы опубликовали полный список (txt) JSON-команд и Python-клиент для их отправки.
Системные команды:
Получить информацию о системе:
Через написанный Python-клиент это будет так:
Или можно отправлять свои JSON-команды:
Чтобы включить или выключить, используется команда set_relay_state со значением 1 и 0 соответственно:
Перезагрузка через определенное время:
Сброс настроек до заводских и превращение в точку доступа:
А если вспомнить, что у устройства нет аутентификации в сети, то получается, что любой пользователь Wi-Fi-сети может выполнить все указанные команды. Напомню про ссылку выше, по ней полный список команд ;-).
Из интересного стоит еще отметить команду установки прошивки. Загружается она с произвольного URL-адреса:
Состояние загрузки можно получить через команду get_download_state:
А для установки используется flash_firmware:
Просто так установить модифицированный образ не получится, поскольку он должен быть подписан одним из четырех захардкоженных RSA-ключей:
Wi-Fi-команды
Умную розетку можно еще использовать для сканирования ближайших точек доступа:
Эта команда вернет полный список.
Подключиться к нужной точке доступа с необходимыми параметрами:
Напомню, что все JSON-команды можно выполнять вне зависимости от состояния устройства. То есть в обычное время подключение к нужной сети требуется только для несконфигурированного состояния — когда умная розетка в режиме точки доступа.
Облачные команды
Умная розетка постоянно пытается соединиться с сервером TP-Link по адресу devs.tplinkcloud.com:50443, используя TLS. Это поведение сохраняется, даже если в Kasa установлена настройка работать только локально. Но мы можем изменить адрес сервера на нужный нам следующей командой:
Только не забудь, что там должен быть действительный сертификат от Symantec EV Root CA.
Далее можно зарегистрировать устройство в облаке:
С помощью этих команд атакующий может отвязать устройство и изменить владельца. Еще он может перехватить регистрационные данные, отправляемые Kasa-приложением.
Ищем устройства TP-Link через Device Debug Protocol:
TP-Link Device Debug Protocol — запатентованный в Китае протокол TP-Link, в котором описывается, как устроены TDDP-пакеты. Этот протокол используется для пинга и поиска устройств TP-Link в сети посредством широковещательных сообщений, чтения и установки опций и выполнения специальных команд. Целостность TDDP поддерживается с помощью MD5, встроенного в заголовок каждого пакета:
Полезная нагрузка пакета также шифруется с помощью DES. Это означает, что любые читаемые или записанные настройки будут зашифрованы. DESключ устанавливается как половина (16 шестнадцатеричных чисел, или 8 байт) MD5-хеша от конкатенации имени пользователя и пароля устройства:
Так как HS110 не поддерживает какую-либо аутентификацию, то имя пользователя и пароль были захардкожены в shd-файл:
Для остальных устройств TP-Link можно проверить эти же данные или провести брутфорс-атаку по логину. С помощью одного UDP-пакета авторы смогли получить некоторую информацию об устройстве. Для воспроизведения нескольких интересных случаев было написано несколько скриптов («тестовая» строка, deviceID и hardwareID):
ТЕСТОВЫЙ РЕЖИМ
После дальнейшего анализа авторы нашли скрытый тестовый режим. Его видно в параметрах командной строки shd-файла:
Этот параметр запускает функцию wlan_start_art, которая, в свою очередь, запускает Atheros Radio Test (ART) для тестирования производительности Wi-Fi-адаптеров Atheros.
Функция wlan_start_art выполняет следующие команды:
Этот кусок отладочного кода уже всплывал ранее в уязвимости роутеров TP-Link в 2013 году, которую можно было стриггерить с помощью скрытого адреса на web-сервере TP-Link http/tftp backdoor.
Эти команды соединяются с FTP-сервером, скачивают файл nart.out, делают его исполняемым и запускают. Для успешной эксплуатации достаточно сделать shell-скрипт с таким именем и расположить по нужному адресу. Достаточно даже будет запустить демон telnetd:
Кстати, запуск этого режима возможно сделать удаленно. Для этого есть JSON-команда set_test_mode:
В память устройства будет установлен специальный флаг, который проверяется в процессе загрузки. Поэтому нужно перезагрузить устройство:
После этого устройство попытается соединиться с сетью hs_test и паролем 12345670.
Для установки точки доступа hs_ test авторы использовали hostapd со следующим конфигурационным файлом hostapd.conf:
Увы, но здесь разработчики подсуетились. Поведение в тестовом режиме не отличается от стандартного. Хотя в коде и есть обращение к wlan_start_art, но загрузки и исполнения скрипта не происходит. Возможно, эти строки были закомментированы.
ВЫВОДЫ
Как видишь по этому небольшому райтапу, безопасность умных устройств пока еще находится в зачаточном состоянии. Никаких сложных техник защиты в массовых клиентских устройствах не применяется, да и простая аутентификация используется далеко не всегда. Конечно, со временем эта область прогрессирует, как это было с вебом, но пока у независимых исследователей есть отличная возможность прокачать скиллы на несложных кейсах, а заодно сделать мир вокруг себя чуточку безопаснее.
В рамках этого исследования был написан плагин для Wireshark (под проприетарный протокол) и несколько Python-скриптов для проведения атаки. Все это авторы опубликовали в своем GitHub-репозитории.
Самих же авторов, можно найти здесь.
Источник