Попытка взлома пароля ПЛК1
Имеется контроллер DirectLogic 05, в нем программа, задача - скачать (открыть для редактирование) программу. Мы знаем, что,Авторское право действует с момента создания программы для ЭВМ в течение всей жизни автора и 50 лет после его смерти, а право авторства, право на имя и право на защиту репутации автора охраняются бессрочно, но сегодня не об этом)
Небольшой эксперимент. Максимально количество 8 цифр в пароле . Это большое количество вариантов)))) но мы знаем что человек установил 4 или 5 цифр. Ок. При попытке скачать программу окно просит ввод пароля, небольшая программка использует обычный брутфорс.
Скорость ввода увеличил до 0.3 сек.......на видео только начало.....
Это подопытный....
видео работы брутфорса на маленькой скорости

Столкнулся по работе с такой же проблемой - оборудование, смонтировано подрядчиками больше 10 лет назад, документация не была передана или не дошла до настоящего времени.
И так, имеем плк Direct Logic DL06, который при подключении запрашивает пароль.
Поиск информации по этой теме выдает исчерпывающую статью, в которой описаны уязвимости, закрытые в последней версии ПО.
https://www.dragos.com/blog/the-trojan-horse-malware-passwor...
Если кратко - есть два способа снятия пароля - прямой перебор брутфорсом (https://forum.powerbasic.com/forum/user-to-user-discussions/... и https://www.rapid7.com/db/modules/auxiliary/scanner/scada/ko...) и использование уязвимости, заключающейся в том, что на специально подготовленный пакет отправленный на com или ethernet порт, плк отвечает паролем в открытом виде (наглядная демонстрация в статье выше и на видеоролике https://www.youtube.com/watch?v=1NryZdShLJo).
Брутфорс работает, в моем случае скорость перебора 30 паролей\сек, что требует для полного перебора порядка 38 дней.
Коллеги с форума подсказали последовательность, которую отправляет китайская прога - "4B2105015001FA04040017AB", опытным путем было установлено, что для корректного ответа команду надо разбить на две с паузой 500мсек.
Вот итоговая инструкция
1. устанавливаем RealTerm, запускаем от имени администратора,
2. на вкладке display выбираем HEX[space], на вкладке port выбираем 9600,odd,8,1,none, открываем порт
3. на вкладке send в первом окне ввода команды вводим "0x4B 0x21 0x05", во втором "0x01 0x50 0x01 0xFA 0x04 0x04 0x00 0x17 0xAB",
4. кликаем на кнопки send 1 и 2 с задержкой 0,5 сек.
5. в окне терминала видим свой пароль
В версии firmware 2.72 эту уязвимость пофиксили, без знания пароля нельзя даже сбросить ПЛК до заводского состояния. Для того, чтобы привести ПЛК в чувство (ценой потери рабочей программы) можно залить во флэш (с помощью программатора) дамп предыдущей версии ПО.