cpu13.ru - форум OMRON
http://cpu13.ru/

Пароли на контроллеры.
http://cpu13.ru/viewtopic.php?f=10&t=4
Страница 1 из 4

Автор:  Олег [ Сб окт 07, 2006 15:22 ]
Заголовок сообщения:  Пароли на контроллеры.

Попытался снять пароль перебором на контроллере CJ1M, определил посылку в протоколе которая отправляет пароль в контроллер, начал сочинять прогу для перебора... потом подсчитал за сколько времени на скорости порта 115000 перебором снимется пароль, получилось 70 лет.
Чтобы сильно не растраиваться написал под супервайзор ломалку для старых контроллеров. Тестировал только на CPM2A, но должна работать и на других старичках. Для них максимум 9 часов на скорости 9600.

Ктонибудь знает способы снять защиту с CS/CJ ???

скаду положил в раздел "Примеры" Password.zip

Автор:  Pavel [ Сб окт 21, 2006 16:26 ]
Заголовок сообщения:  Re: Новая ломалка паролей из супервайзора

Как насчёт снятия пароля с CQM1H.
Проблема в следующем. В отличии от предидущих контроллеров в нём при неправильном введении пароля боле 3 (или 5 - не помню) - пароль меняется на другой. Ну во всяком случае преждний уже не подходит.
Кто нибудь решал данный вопрос?

Автор:  Олег [ Пт дек 15, 2006 18:52 ]
Заголовок сообщения: 

На всех омроновских контроллерах пароль находится в программе пользователя, которая в свою очередь является скомпилированным из ЛАД двоичным файлом. чтобы получить пароль нужно вытащить этот файл из контроллера. на SC1/CJ1 возможно переписать запароленную прогу на флеш карту, а потом на компьютер.

В полученном файле "*.OBJ" пароль хранится в незашифрованном виде. Достаточно открыть этот файл двоичным редактором вроде WinHex, и пароли на программу и задачи видно в первых строчках файла. Смещение (offset) С8-начало пароля на программу CF-последний символ пароля.
D0-первый символ пароля на задачи,D7-последний.

Рисунок


"12345678" пароль на контроллер
"55555555" пароль на задачи.

Таким образом можно получить пароли на программу чтобы открыть её в контроллере, а можно заменить в файле значения паролей на "00" в двоичном виде, т.е. удалить пароли, и открыть файл программером.

Теперь ведро дёгтя в мёд (а может и бальзам на душу). у контроллеров SC1/CJ1 начиная с версий 2.0 появилась защита от передачи программы в карту памяти. Сейчас тот кто пишет прогу, может запретить запись проги из контроллера на карту памяти, может разрешить, а может просто забыть запретить. Можно-ли обойти этот момент или нет, я не знаю. Ещё появилась возможность полностью заблокировать запороленный контроллер от записи новой программы, т.е. записать новую прогу может только тот-кто знает все пароли, и предварительно снимет всю защиту. Или выпендриваться с батарейкой.


Нет возможности проверить CQM1H, контроллер зашищён от перебора паролей, но поиск пароля также возможен через карту памяти. Скорее всего имея карту с микросхемой EPROM, можно перезаписать в неё программу с паролем, вынуть микросхему и прочитать её содержимое.

У кого-нибудь есть желание продолжить эксперименты? В частности по CQM1H?

Автор:  Oleg [ Чт янв 11, 2007 14:40 ]
Заголовок сообщения: 

Эх, а мне как раз попался CQM1 запароленный (сеттинги, конфиги сливает, программу не дает, пишет " um protected " ) И даже телефончик итальянский в PT зашит, а труба говорит что нет такого номера (((((

А offset начиная с C8 , насколько я понял, Вы получили опытным путем? Не может это значение меняться для разных типов ПЛК?
Что то у меня при раскодировании не то получается

Автор:  Олег [ Ср апр 11, 2007 14:41 ]
Заголовок сообщения: 

К сожалению если на контроллере CQM1H включен пароль, переписать программу на карту памяти невозможно. И он засранец, после ввода нескольких неправильных паролей, начинает выпендриваться, и на все посланые пароли отвечает что они не верные.

Однако, если в запароленном контроллере установлена кассета памяти с резервной копией проги, снять пароль несложно.

1. перевести контроллер в "програм"
2. сравнить битом AR14.02 содержимое кассеты с программой в CPU, если совпадает продолжаем, если нет... ишем другие пути.
3. Сливаем программером все настройки и все область памяти, сохраняем где-нибудь.
Далее всё нужно делать самописной прогой.
4. Отправляем в контроллер посылку "@00MB520A00FDEC000000FFFF"+FCS и конец кадра. т.е. делаем полную инициализацию контроллера.
5. По получению ответа отправляем "@00WJ001300000002" и перезаписываем прогу из кассеты в CPU.
6. Получив ответ, четыре раза отправляем "@00MB31060000"+"пароль"
7. Если не получили заветное подтверждение "@00MB000400004B*" (успешное завершение) начинаем заново с пункта 4.

После вскрытия пароля, естественно необходимо залить сохранённые настройки и память обратно в контроллер.

Правильно написанная прога, перебирает все пароли примерно за три часа.

Кстати, после ввода нескольких неверных паролей, пароль в контроллере не меняется, а только блокируется, это подтверждается сравнением с кассетой памяти. Как можно другим способом сбросить эту блокировку???

У кого-нибудь есть описание команд С-режима с кодом "MB"? или какая другая полезная информация об этом коде?


Если кому-то удалось вытащить бинарник с карты памяти CQM1H, то в виде текста пароль должен выглядети примерно так "1E3101000100AAAA8F" , в бинарном виде соответственно"31 45 33 31 30 31 30 30 30 31 30 30 41 41 41 41 38 46", "AAAA" в данном случае пароль. Это только предположение, может кто подтвердит или опровергнет?

----------------------------------------------------------------
В этом контроллере есть счётчик ввода паролей, причём не один, доступен только тот что по адресу AR16, после перезаливки проги или после снятия пароля значение в слове устанавливается в 5, и после каждого неверного ввода уменьшается на 1, когда дойдёт до 0, ввод пароля дальше невозможен. К сожалению установить какое-то значение туда невозможно, не помогает, контроллер блокируется по какому-то другому скрытому счётчику, а вот как-бы его сбросить?

Автор:  Oleg [ Пт апр 13, 2007 11:05 ]
Заголовок сообщения: 

у меня с CQM ничего к сожалению не получилось, кассеты с памятью там не было.
но тем не менее, поставив на уши Италию, программиста нашли, потом пытали, потом еще:), и код он отдал)))
на мой взгляд, если нет доступа через флэш.- проблема без вскрытия нерешаемая.

Автор:  ScrewDriver [ Пт июн 01, 2007 04:31 ]
Заголовок сообщения: 

Олег, а можно по подробнее, как подбиралкой пользоваться? Я раньше с ОМРОНАМИ не работал, но вот пришлось....

Автор:  Олег [ Пт июн 01, 2007 14:23 ]
Заголовок сообщения: 

Проще всего наверно попробовать из раздела "Файлы" pwl_omron.zip подсоединяещь комп к контроллеру, с помощью CX-Programmer убеждаешся в наличии связи, Убедившись что связь есть, отключаешь CX-Programmer, и запускаешь ломалку с нужными настройками порта, открываеш порт, потом Pusk, програмка начинает посылать в порт пароли, нужно визуально по сигналу Rx убедится что контроллер тебе отвечает. Потом ждать. Сиё действие безопасно для программы в контроллере.

Если речь идёт о CQM1H, то тут сложнее, нужно более-менее знать омроновские контроллеры, иначе можно убить программу.

Автор:  jeka [ Ср июн 18, 2008 03:51 ]
Заголовок сообщения: 

Олег писал(а):
чтобы получить пароль нужно вытащить этот файл из контроллера. на SC1/CJ1 возможно переписать запароленную прогу на флеш карту, а потом на компьютер.


А каким образом можно скинуть программу на флешку не имея под рукой комп?

Автор:  Robot [ Вт ноя 11, 2008 16:45 ]
Заголовок сообщения: 

А знает ли кто как можно сломать пароль на передачу данных в терминале NS5?
Очень нужно дописать туда кое чего... :twisted:

Автор:  Олег [ Пн май 11, 2009 11:17 ]
Заголовок сообщения: 

Свершилось чудо, кто-то надыбал простой способ извлечения паролей из старых контроллеров, в том числе и из CQM1H.
http://plcforum.uz.ua/viewtopic.php?t=10592

Принцип простой, берём прогу Plc Backup Tools V6.0 из "Файлов" и чё я её раньше не увидел.

и выкачиваем UM память. Контроллер отдаёт прогу несмотря на то что она запаролена. Потом любым просмоторщиком смотрим бинарный файл с прогой, я пользовался листером из тотал командера, переключил его в шестнадцатеричный режим и начиная со смещения 590, увидел пароль.

На CQM1H ввод полученного таким образом пароля может не прокатить, т.к. до этого возможно были попытки подбора паролей и контроллер перестал реагировать даже на правильный пароль. Но это не беда. Сначала бекапим программером всё что можно из контроллера (на всякий случай), потом делаем полный бекап прогой Plc Backup Tools. и из прграммера делаем инициализацию контроллера. Потом прогой Plc Backup Tools восстанавливаем программу контроллера, подключаемся программером и выкачиваем прогу, у меня контроллер даже пароль не спросил. После получения проги можно восстановить всю остальную память.

Возможно без проблем пройдёт и другая последовательность действий.

Моё старое предположение что пароль в бинарнике идёт после текста 1E3101000100 оказалось верным, эх, знал бы раньше, как этот бинарник из контроллера вытащить...

Автор:  Сергей Сергеевич [ Пн май 11, 2009 14:25 ]
Заголовок сообщения: 

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

Автор:  Олег [ Пн май 11, 2009 15:19 ]
Заголовок сообщения: 

теперь при попытке прочитать первые байты проги мультивей пишет
[!]: Read not possible: Protected (2002)

Автор:  Ark011 [ Ср окт 07, 2009 00:46 ]
Заголовок сообщения:  Пароли на контроллеры.

Здраствуйте.
Хотел бы прояснить ряд вопросов:
1. Каким образом переписать запароленную программу на флэшку?
(контроллер CJ1G-HPU44)
2.Подойтет ли утилита для перебора паролей к данному контроллеру(имеется ввиду не заблокируется ли он после неправильного введения 3 паролей)?

Спасибо за внимание.

Автор:  Олег [ Сб окт 10, 2009 12:46 ]
Заголовок сообщения:  Re: Пароли на контроллеры.

не заблокируется.
переписать с помощью сх-программера.

Страница 1 из 4 Часовой пояс: UTC + 3 часа (Russia: MSK)
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/