Blog. Just Blog

Исследование защиты программы Intel Hex File Compare

Версия для печати Добавить в Избранное Отправить на E-Mail | Категория: Темная сторона Силы | Автор: ManHunter
Скриншот программы Intel Hex File Compare
Скриншот программы Intel Hex File Compare

Программа Intel Hex File Compare предназначена для сравнения двух файлов в формате Intel HEX. Никакими другими привычными инструментами для сравнения файлов это сделать невозможно. Тем, кто работает с микросхемами и прошивками, предмет разговора должен быть хорошо знаком, а остальным оно и даром не надо, кроме как в познавательных целях. Без регистрации программа работает всего несколько дней, активируется и фиксирует триал исключительно онлайн, после чего перестает запускаться до момента оплаты.

Забираем с офсайта дистрибутив, устанавливаем, смотрим что и как. В папке с установленной программой, помимо каких-то рантаймовых библиотек и главного исполняемого файла находится файл IHFC.dat.

Содержимое файла IHFC.dat
Содержимое файла IHFC.dat

Если посмотреть его содержимое, то обнаружится характерная структура исполняемого файла, но если его переименовать, то он не запустится. Энтропия секции кода также говорит о том, что файл либо упакован, либо зашифрован. Секций навесного упаковщика не видно, так что скорее всего это именно шифрование. Ладно, пока оставим этот файл и попробуем запустить главный файл. Первым делом он потребует соединение с интернетом, чтобы зарегистрировать триал. Придется выпустить приложение в сеть хотя бы раз, иначе дальше ничего не произойдет. Зато когда появится окно самой программы, можно полюбопытствовать, какому-такому процессу оно принадлежит?

Информация о процессе
Информация о процессе

И вот тут получается интересная ситуация. Оказывается, что владелец главного окна - тот самый странный файл IHFC.dat. Значит он каким-то образом все-таки запускается. Можно предположить, что главный исполняемый файл является враппером, который контролирует триал, выполняет проверку активации и всякое такое, а потом загружает в память файл IHFC.dat в статусе "SUSPENDED", выполняет с ним определенные действия, чтобы тот стал запускаемым, ну и в конце запускает. Для таких случаев у меня написана программа UnWrapper Helper. Чтобы не возиться с дампами, воспользуемся версией Dynamic.

Исправляем файл на диске
Исправляем файл на диске

В списке процессов выбираем IHFC.dat, нажимаем кнопку "Fix File". После работы UnWrapper Helper'а на диске появляется файл IHFC_fixed.exe, в котором полностью восстановлена секция кода и убрана цифровая подпись, поэтому он немного меньше по размеру. Проверяем его на предмет работоспособности, никаких проблем нет, все запускается. Файл враппера больше не нужен, поэтому его можно удалить, а исправленный файл переименовать и записать вместо него.

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

Поделиться ссылкой ВКонтакте Поделиться ссылкой на Facebook Поделиться ссылкой на LiveJournal Поделиться ссылкой в Мой Круг Добавить в Мой мир Добавить на ЛиРу (Liveinternet) Добавить в закладки Memori Добавить в закладки Google
Просмотров: 492 | Комментариев: 9

Комментарии

Отзывы посетителей сайта о статье
Exit (25.07.2021 в 06:33):
В папках PicDis'ов нет *.dat файла и в свойствах *.exe нет Protexis, а дальше не смотрел.


Жека, PicDis'ы не распознали интеловскую прошивку.
Exit (25.07.2021 в 05:46):
ManHunter, спасибо! Поищу, в сети.

Жека, спасибо. гляну)

P.S. главное правильно задать вопрос))
https://www.google.com/search?...disassembler
Жека (24.07.2021 в 20:35):
Exit, у того же производителя - которого тут крякают, есть что то подобное... там не смотрел у них на сайте????
ManHunter (22.07.2021 в 10:01):
Так а чо, формат Intel HEX известен https://ru.wikipedia.org/wiki/...%D0%BE%D0%B5 , можно выделить из него блоки данных без служебного префикса и CRC, собрать в кучу, перевести побайтно hex->bin и потом загнать в какой-нибудь дизасм. Я не специалист в прошивках, могу только предположить. Чем-то же прошивки ковыряют, значит должны быть дизассемблеры и инструменты для извлечения данных.
Exit (22.07.2021 в 09:54):
ManHunter, спасибо за статью!
Случайно, не попадалась, прога, которая переводит этот HEX фарш, в какой то удобоваримый формат?
ManHunter (15.07.2021 в 23:29):
Федя, я бы еще понял, если б это voffka написал. А ты-то что сделал для хип-хопа?
Федя (15.07.2021 в 19:39):
Да понты можно что то уже и поинтереснее хотя фиг
ManHunter (07.07.2021 в 22:22):
Protexis. Щаз уже и сайт сдох. Туда им в преисподнюю и дорога.
voffka (07.07.2021 в 19:41):
В нулевые довольно распространённый протектор был. Производитель и название в свойствах exe.

Добавить комментарий

Заполните форму для добавления комментария
Имя*:
Текст комментария (не более 2000 символов)*:

*Все поля обязательны для заполнения.
Комментарии, содержащие рекламу, ненормативную лексику, оскорбления и т.п., а также флуд и сообщения не по теме, будут удаляться. Нарушителям может быть заблокирован доступ к сайту.
Наверх
Powered by PCL's Speckled Band Engine 0.2 RC3
© ManHunter / PCL, 2008-2021
При использовании материалов ссылка на сайт обязательна
Время генерации: 0.08 сек. / MySQL: 2 (0.0096 сек.) / Память: 4.75 Mb
Наверх