• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Вопрос безопасности

grafalex

New member
Подсел я на тему умного дома, поигрался с majordomo и esp8266 - все понятно, опыт "железячного" программирования большой. Можно начинать строить что нибудь серьезное.

Если с датчиками по квартире все более или менее понятно, то с "забортными" не очень. Скажем, хочу я снимать показания с теплосчетчика, который стоит в щитке на лестничной площадке. У четчика есть цифровой интерфейс. Добивать должно - там по прямой метра 3-4 всего. Вопрос в безопасности.

Скажем если делать чистый клиент, то пароль WiFi будет прописан где нибудь в скрипте. ЕСПшка, понятное дело, будет где то рядом со счетчиком. Щиток толком не закрывается (китайский замочек не считается). Значит теоретически кто нибудь может вычитать пароль из прошивки и войти в мою домашнюю сеть (люди с такими знаниями, конечно, редко будут лазить по лестничным клеткам в поисках наживы, но мало ли....)

Можно вместо клиента делать точку доступа в щитке, и еще одной ЕСПшкой из квартиры ломится к первой за показаниями. Но во-первых это уже 2 ЕСПшки, а во-вторых сразу отпадает вариант запитать такой датчик от батареи. С термометрами, например, отлично работает сценарий "проснулись, прочитали показания, отправили на сервер, заснули на 5 минут". Тут же придется постоянно слушать WiFi.

В щитке электричества нет, а от батареи точка доступа долго не протянет.

Какие еще есть варианты?
 

vad7

Active member
Если такая паранойя, то в роутере на WiFi прописывается фильтр по MAC.

Кому нужен будет ваш пароль на wifi даже не будут заморачиваться лазанием по щиткам.
Все по воздуху ломается.
 

pvvx

Активный участник сообщества
В роутере прописывается порт который виден с данного модуля и никаких более коммутаций не будет. Так-же прописываются запреты на выход в инет и прочее с того IP модуля. Роутер по тому и называется "роутер" - разводит соединения (прописываются пути), а не "свич" без мозгов.
Если такая паранойя, то в роутере на WiFi прописывается фильтр по MAC.
В любом модуле WiFi можно задать МАС. Даже в ESP8266 :)
 

Creep

Member
Вопрос в безопасности.
Все по воздуху ломается.
запреты на выход в инет и прочее с того IP модуля
намного интереснее ломать не ради интернета - а, например, самому сообщить в "голову" умного дома что-то полезное или не очень :)

вообще с безопасностью в таких проектах все очень плохо.
кстати на правах НЕрекламы /Great Scott Gadgets - HackRF One
 

pvvx

Активный участник сообщества
вообще с безопасностью в таких проектах все очень плохо.
Если у вас проблемы, болезнь, то - включите WPA Enterprise с внешним Radius сервером и пробуйте взломать сертификаты и их подтверждения на сторонних серверах :) RTL871x тянет эти опции...
 

Creep

Member
Если у вас проблемы, болезнь, то - включите WPA Enterprise с внешним Radius сервером и пробуйте взломать сертификаты и их подтверждения на сторонних серверах :) RTL871x тянет эти опции...
у меня проблем нет, ваши любимые "телепузики" как правило даже не задумываются о воздействии извне, заставить бы просто заработать и то радость. от того и все плохо с безопасностью. наличие возможности не равно ее использованию. тут какбэ нечего обсуждать, сколько не смотрю на "проекты" защиты как правило "чуть меньше чем нет" (с)
 

pvvx

Активный участник сообщества
у меня проблем нет, ваши любимые "телепузики" как правило даже не задумываются о воздействии извне, заставить бы просто заработать и то радость. от того и все плохо с безопасностью. наличие возможности не равно ее использованию. тут какбэ нечего обсуждать, сколько не смотрю на "проекты" защиты как правило "чуть меньше чем нет" (с)
Вопрос и ответ у вас совсем не верно поставлен.
Вопрос и ответ по безопасности имеет только такой смысл на ESP8266:
Зачем хрупкой повозке реактивный движок, если она и так развалится?

ESP8266 убивается стандартными WiFi пакетами передачи, не касаясь даже уровня встроенного и писанного ПО пользователем. Зачем на такое глючное поделие от Espressif вообще ставить какую-то защиту, если оно не может работать в реальных условиях и падает раньше, чем дойдет до попытки приема-передачи ключей. Сертификации к альянса WiFi на ESP8266 не было и не будет. Да даже оно не спасет - сам стандарт содержит множественные ошибки, из-за которых реализация на её WiFi драйвере каких-то безопасных вещей невозможна. Вы не сможете отключить и переназначить прием и обработку некоторых служебные сообщений по WiFi, из-за которых связь умирает от простой глушилки, передающей их :) Это делается только на профессиональных модулях, к коим ESP8266 и ESP-32S не относятся, т.к. не поддерживают полный стандарт с уровнем WPA Enterprise и т.д., где трафик служебных сообщений уровня связи тоже шифруется.
 
Последнее редактирование:

Creep

Member
Зачем на такое глючное поделие от Espressif вообще ставить какую-то защиту
а дело не только в есп. это как раньше было модно говорить, что маки и линухи вирусов не боятся так как их мало и они никому не нужны ... ога
наберется парк МК побольше в округе, можно помечтать о бот-нете на МК :) первые под удар конечно те что на вайфае, но 433мгц можно сказать, что защищены только недоступностью для "ноута из коробки". что помешает свести с ума соседский "умный дом"?
 

pvvx

Активный участник сообщества
а дело не только в есп. это как раньше было модно говорить, что маки и линухи вирусов не боятся так как их мало и они никому не нужны ... ога
наберется парк МК побольше в округе, можно помечтать о бот-нете на МК :) первые под удар конечно те что на вайфае, но 433мгц можно сказать, что защищены только недоступностью для "ноута из коробки". что помешает свести с ума соседский "умный дом"?
Если "Умный дом" сделан к примеру на модулях RTL871x специалистом, то вы ничего не сделаете - с ума его не сведете. Будут временные увеличения типа "пинга" между устройствами и не более. Для полного глушения вам придется расставить вокруг дома несколько открытых магнитронов от микроволновок с рупорами, но кто-то быстрее "полысеет" и это уже сравнимо с уровнем тяжелый танк и картонный домик :)

Как пример - на моем участке вы даже магнетроном от микроволновки не добьете до "домика". Размеры... Можно и противотанковый ров сделать с болотом вокруг :p
 

Creep

Member
Если "Умный дом" сделан к примеру на модулях RTL871x специалистом, то вы ничего не сделаете - с ума его не сведете. Будут временные увеличения типа "пинга" между устройствами и не более. Для полного глушения вам придется расставить вокруг дома несколько открытых магнитронов от микроволновок с рупорами, но кто-то быстрее "полысеет" и это уже сравнимо с уровнем тяжелый танк и картонный домик :)
так ведь я же не спорю ни в коем разе! вопрос безопасности применительно к системам управления или мониторинга зданием несправедливо редко поднимается, мой спич об этом. и то что ртл это умеет для меня, например, это не просто плюс, а необходимое требование.
 

pvvx

Активный участник сообщества
так ведь я же не спорю ни в коем разе! вопрос безопасности применительно к системам управления или мониторинга зданием несправедливо редко поднимается, мой спич об этом. и то что ртл это умеет для меня, например, это не просто плюс, а необходимое требование.
Нативно умеет, но не используется в SDK. Назначение того, что требуют "телепузики" и в стандартыне примеры высокого уровня для SDK это не входит. Вам придется покопаться не один день, чтобы доработать эти возможности до API уровня.
Управление драйвером WiFi там сделано на стандарте к линуху (то-же самое вы имеете в Андроиде, тут может и версия посвежее - 2.2)... Может чего-то не быть (каких-то процедур), т.к. имеющаяся закрытая либа драйвера собрана с опциями для задач Arduino, но есть описание всех заголовков и структур драйвера, а так-же можно нарыть полный код в инет для драйвера WiFi от Realtek для линух. HAL уровень WiFi к данному чипу полный и сам драйвер и его структура создана для множественных чипов WiFi Realtek.
От этого пока, для местных задач, только одни проблемы - объем драйвера. Из-за компоновки "на все случаи жизни" линкеру не выкинуть не используемые куски кода...
 
Последнее редактирование:

Creep

Member
Нативно умеет, но не используется в SDK. ... Вам придется покопаться не один день, чтобы доработать эти возможности до API уровня.
Управление драйвером WiFi там сделано на стандарте к линуху (то-же самое вы имеете в Андроиде, тут может и версия посвежее - 2.2)... Может чего-то не быть (каких-то процедур), т.к. имеющаяся закрытая либа драйвера собрана с опциями для задач Arduino, но есть описание всех заголовков и структур драйвера, а так-же можно нарыть полный код в инет для драйвера WiFi от Realtek для линух. HAL уровень WiFi к данному чипу полный и сам драйвер и его структура создана для множественных чипов WiFi Realtek....
все это несколько пугает, но деваться особо некуда...
 

pvvx

Активный участник сообщества
все это несколько пугает, но деваться особо некуда...
Тут вам ничем не помочь - я глубоко WiFi не знаю, т.к. нужды пока писать драйвер к нему не было и надеюсь не будет. Это всё стандарты "промышленного" типа (как наберется от разных ведущих) и они всё время меняются, пока изучите глубоко - выйдет масса поправок и опять всё переделывать :) ... Корпорации способны совмещать эти поправки в своих изделиях выпуская спектр своих совместимых устройств, а вот дома или для одной поделки - это сделать никак, не подписывая всякие NDA.
По утечкам в инет, к чипам серии RTL871x найдено это RTL00MP3/RTL00_SDKV35a/component/common/drivers/wlan/realtek at master · pvvx/RTL00MP3 · GitHub
И в других каталогах есть примитивные примеры для WPA с сертификатами...
Типа этого, WPA-EAP, WPA2-EAP — ключ к доступу сверяется с некоторой удаленной базой данных на стороннем сервере: RTL00MP3/wifi_eap_config.c at master · pvvx/RTL00MP3 · GitHub - Сейчас оно отключено в глобальных опциях моей сборки SDK. Мне не надо пожирание памяти и платить за сертификаты, чтобы получить доступ к "миганию светодиодом" в Arduino... :)
Но главная причина, что 99% телепузиков не смогут настроить Radius сервер на Винде, чтобы потом просто соединиться с модулем :)
Ну, а если, не решен низкий уровень (в драйвере WiFi), то "вопрос безопасности" не решить - городить что-то выше уровнем бесполезно.
 
Последнее редактирование:

Creep

Member
за инфу спасибо, я пока на старте, детально буду смотреть когда "туда" доберусь.
 

Creep

Member
с чего вдруг на халяву? но "хотелки", конечно
без "хотелок" это сразу в гроб
 
Последнее редактирование:

Jury_78

New member
Если заботится о безопасности не проще ли отказаться от радиоканала?
 
Сверху Снизу