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

Мой проект системы контроля доступа на ESP32 PN532 DS3231 MQTT

gerkimuyda

New member
Хе-хе ;) На видео показано, как некий человек хакнул систему и заставил ее принимать левые данные уже не существующих людей :D Например, система думает, что он Маяковский, а потом он заставил ее думать, что он Чехов :p
 

dadja_sam

New member
Хе-хе ;) На видео показано, как некий человек хакнул систему и заставил ее принимать левые данные уже не существующих людей :D Например, система думает, что он Маяковский, а потом он заставил ее думать, что он Чехов :p
Напугал :) 2 раза пересмотрел видосик. На самом деле это я так ловко оперирую ключами. Второй ключ присваивается Чехову.
 

Алексей.

Active member
dadja_sam, Смотрел смотрел так и не нашел как обеспечивается безопасное соединение с MQTT брокером,
и как выполняется персонализация карт (ключей), совсем не понятно где же база по которой принимается решение на проход при отсутствии соединения с сервером.
 

dadja_sam

New member
dadja_sam, Смотрел смотрел так и не нашел как обеспечивается безопасное соединение с MQTT брокером,
и как выполняется персонализация карт (ключей), совсем не понятно где же база по которой принимается решение на проход при отсутствии соединения с сервером.
Сейчас соединение не шифрованое. Сам сайт доступен по https, но брокер пока нет. Поэтому соединение не защищено. Планирую поразбираться как прикрутить сертификат Let's Encrypt к брокеру. База хранится в 2х местах. Первое это сервер, второе это SPIFFS устройства. Ключи (на данный момент) записываются в устройство при редактировании пользователя, либо при нажатии кнопки "Синхронизация" в списке устройств на сайте. Спасибо за вопрос, подзабыл про проблему безопасного соединения.
 

Алексей.

Active member
Планирую поразбираться как прикрутить сертификат Let's Encrypt к брокеру.
Это вершина айсберга, ssl хэндшейк то Вы выполните, а как проверить подлинность сертификата не понятно...
второе это SPIFFS устройства
Для прохода в офис устанавливаем "систему контроля", интересует максимальный объем записей и производительность.
 

dadja_sam

New member
@Алексей. Скажу честно, проблему безопасного соединения не изучал. Ответить на вопрос о проверке подлинности сертификата не могу. Есть аналогичный проект на ESP8266 - GitHub - omersiar/esp-rfid: MFRC522 RFID on ESP8266 featuring WebSocket, JSON, NTP Client, Javascript , SPIFFS В этом проекте тк же используется SPIFFS для хранения записей. Написано что протестировано на 1000 записях о ключах. Жалоб на производительность нет.
 

enjoynering

Well-known member
как на счет DDoS атак? А то esp не справится с потоком проглючит, выставит высокий на релюхах замка и привет - давай досвидания.
 

dadja_sam

New member
как на счет DDoS атак? А то esp не справится с потоком проглючит, выставит высокий на релюхах замка и привет - давай досвидания.
Никому бы не порекомендовал оснащать оконечные устройства белым IP адресом и выставлять его в интернет. Такие устройства всегда за чем-то. Дома это роутер. В сетях предприятий это какой нибудь серьезный фаервол, а так же служба айти на страже. ДДОС сервисов предприятия из сети самого предприятия это конечно серьезный плевок в лицо службе безопасности. Поэтому первое что ляжет при ДДОСе это устройство за которым находится оконечное устройство.
 

Алексей.

Active member
О чем Вы, какие там ДДОСы, кому это нужно выводить есп из сервиса.
Реальная угроза ДНС атака, атакующий на запрос разрешения доменного имени моментально отвечает пачкой с адресом вражеского сервера на котором MQTT брокер с топиком для нашего есп для открытия двери.
И что дальше делать будем?
 

gerkimuyda

New member
Реальная угроза ДНС атака, атакующий на запрос разрешения доменного имени моментально отвечает пачкой с адресом вражеского сервера на котором MQTT брокер с топиком для нашего есп для открытия двери.
Зачем вам DNS ? Создайте шифрованный vpn-канал от вашего роутера до нужного хоста (по IP) в инете и сквозь него гоняйте данные.

Вот вы странные люди. Заботитесь о системе безопасности, а сами гоняете данные о вашей двери в инет? ЗАЧЕМ? Чтобы при отключении инета часть функционала не работала?
Такие вещи должны быть в локальной области под полным контролем. Если нужен инет - отдельным сервисом реализовывайте это (на сервере), и не приплетайте сюда микроконтроллеры.
А то сейчас получается, (я не о конкретно вашем проекте, а про тенденцию в мире), что розетками и лампочками управляют все кому не лень, включая и соседей, но только не владелец.
Абсурднее можно сделать только систему видеонаблюдения на IP-камерах без паролей с открытым доступом в инете.
 

Алексей.

Active member
Зачем вам DNS ? Создайте шифрованный vpn-канал от вашего роутера до нужного хоста (по IP) в инете и сквозь него гоняйте данные.
Это Вы будете в оправдание отсутствия защищенного соединения заказчику говорить?
У него есть бесплатное и безлимитное по трафику wifi соединение, использующее публичные сети, так ему надо и ещё свой собственный роутетер поставить? нет не прокатит.
Типа чтож я почту по безопасному соединению получаю на всяких там смартфонах и т.п. работающих в этой сети, а для вашего устройства я должен ещё что то докупить?

"vpn-канал от вашего роутера до нужного хоста"
И у хостера пусть за недорого выделенный сервер для поднятия vpn-сервера докупить?

розетками и лампочками управляют все кому не лень, включая и соседей, но только не владелец
Проект на первый взгляд интересен, но вопросы безопасности IoT я считаю должны иметь наивысший приоритет, но почему то на форуме многие о безопасности совсем не думают, это я про лампочки и розетки и гаражные ворота.
 
Последнее редактирование:

Алексей.

Active member
Ключи (на данный момент) записываются в устройство при редактировании пользователя, либо при нажатии кнопки "Синхронизация" в списке устройств на сайте.
Если я правильно понял, то ввод ключа выполняется руками, а откуда но должен быть получен пока не ясно, и какие карты используете майфер или исо7816 то же хотелось узнать.
 

gerkimuyda

New member
Это Вы будете в оправдание отсутствия защищенного соединения заказчику говорить?
У него есть бесплатное и безлимитное по трафику wifi соединение, использующее публичные сети, так ему надо и ещё свой собственный роутетер поставить? нет не прокатит.
Типа чтож я почту по безопасному соединению получаю на всяких там смартфонах и т.п. работающих в этой сети, а для вашего устройства я должен ещё что то докупить?
А надо как? Говорить мужику, приехавшему на бентли: - Нафиг вам автосигнализацию дорогую покупать? Вон, поставьте на машину китайскую 433 и будет вам счастье. А если еще прилепить sonoff - то можно машину прогревать удаленно?

Так и тут: безопасностью должны заниматься специальные устройства, а не исполнительные. Вы ведь к электрозамку претензий не предъявляете, что он подвержен хакерской атаке путем прямого подключения к его проводам. Мол, что он вражеские 12воль не отличает от хозяйских?o_O

И да - безопасность должна быть КОМПЛЕКСНАЯ! А не так, что SSL повесили, а вот вход на страничку даже паролем не закрыли. Еще и поисковых ботов на сайт натравили...:D
 

dadja_sam

New member
Отсутствие интернета - верно, устройство при отсутствии интернета должно быть функционально. В случае с контроллером доступа он должен выполнять свой базовый функционал при отсутствии сети, принимать решение о допуске (ключи хранятся и в устройстве), запись лога событий (какое то временное хранилище в устройстве). Конечно же новые ключи прописать невозможно при отсутствии сети. Так же как и в других подобных системах т.к. данные о ключах хранятся на удаленном сервере.
Безопасность - Полностью согласен с доводом о приоритетности безопасности устройства. Но тут как говорится "по мере сил". Сейчас реализован только SSL от сайта до брокера. Т.е. от браузера пользователя до сервера. Про вход на страничку без пароля вывод не понятен. Где нет пароля?
Ключи - ввод ключа производится со считывателя устройства из интерфейса создания пользователя либо из интерфейса редактирования пользователя. Для этого нужно выбрать устройство с которого необходимо считывать ключ. Карты MIFARE CLASSIC.
 

pvvx

Активный участник сообщества
Отсутствие интернета - верно, устройство при отсутствии интернета должно быть функционально.
Отсутствие интернета там всегда обеспечит WiFi Jammer или подобный (автоматический дисконнектор WiFi) на ESP8266.
По этому нет никакой ясности - зачем там ESP-32?
В случае с контроллером доступа он должен выполнять свой базовый функционал при отсутствии сети, принимать решение о допуске (ключи хранятся и в устройстве), запись лога событий (какое то временное хранилище в устройстве).
Т.е. он является специальной мобильной базой ключей. Снял кому надо и у нес все ключи?
Ключи - ввод ключа производится со считывателя устройства из интерфейса создания пользователя либо из интерфейса редактирования пользователя. Для этого нужно выбрать устройство с которого необходимо считывать ключ. Карты MIFARE CLASSIC.
А карты то зачем?
Их очень неудобно использовать - пользователю надо постоянно с собой иметь портфель с десятками карт и ключами от всего?

У пользователей дверью нет мобильников? Им сложно нажать кнопку на своем телефоне у двери в сплывающем приложении, активирующемуся при подходе к области, где установлена дверь?
Ну пусть тогда подносят телефон к считывалке NFC…
 
Последнее редактирование:
Сверху Снизу