В этой статье я подробно распишу процесс распаковки программы и отлов ключа.
Инструмент:
IDR - Отладчик для Delphi приложений
OllyDBG - Отладчик + плагин OllyDump.dll
ImpRec - понадобится для восстановления импортов
Начнём с того что определим упаковщик, для этого я использую программу под названием ProtectionID
Как мы уже поняли - стандартным UPX'ом с ключём -d распаковать не получится.
Придётся распаковывать в ручную...
Для начала грузим упакованный файл в OllyDBG и оказываемся по адресу 005AF200, после чего прокручиваем в самый низ и видим такое:
Это прыжок на OEP, тобишь оригинальную точку входа, ставим на ней бряк (Я уже это сделал клавишей F2) и стартуем программу на выполнение клавишей F9. Программа выполнилась и мы оказываемся на точке останова, жмём 1 раз клавишу F8 (пошаговое выполнение) и нас перекидывает на OEP самой программы:
Программа распакована и находится в памяти, теперь нам надо сделать дамп.
Для того что бы сделать дамп воспользуемся плагином OllyDump, находится он в меню => Plugins => OlleDump => Dump Debugged Process, после чего откроется такое окошко:
Копируем адрес и снимаем галочку с Rebuild Import, после чего жмём кнопку DUMP и сохраняем распакованный файл.
Но радоваться пока рано, надо ещё восстановить импорты, делается это с помощью программы под названием Import Reconstructor
Что бы восстановить импорты запускаем упакованную программу и ImpRec, в нём выбираем процесс программы и в поле OEP вводим 1201EC
Нажимаем IAT AutoSearch и если всё сделали правильно появится такое сообщение:
Далее жмём на кнопку Get Imports и наблюдаем следующие:
Отлично, осталось только профиксить дамп! Для этого жмём кнопку Fix Dump и выбираем наш дамп, после чего полностью распакованный файл будет сохранён в папке с программой.
Для этого грузим наш распакованный файл в IDR и заходим в обработчик события OnCreate
Отсюда мы видим, что в папке с программой должен быть файл activecode.key для того, что бы началась проверка лицензии.
После беглого осмотра строк я выяснил что ВСЕ проверки лицензии происходят в Button4.Click, и там же происходит генерация ключа в функции по адресу 00509310 (если вы захотите сделать кейген) Даже в обработчике OnCreate программа кликает на Button4.
Отловить регистрационный ключ не составляет проблем, ставим точку останова на адрес 00518050 и в стеке наблюдаем ключик:
Вводим этот ключ в программу и радуемся только что "купленной" лицензии:
Заключение:
Даже, казалось бы, на первый взгляд сложная защита имеет большой минус - это генерация ключа и хранение его в открытом виде.Так же если вы накроете чем то простым типо UPX'а то скрамблер вам, увы, не поможет (но от школьников защитит).
Скачать программу можно с офф сайта.
Инструмент:
IDR - Отладчик для Delphi приложений
OllyDBG - Отладчик + плагин OllyDump.dll
ImpRec - понадобится для восстановления импортов
Начнём с того что определим упаковщик, для этого я использую программу под названием ProtectionID
Как мы уже поняли - стандартным UPX'ом с ключём -d распаковать не получится.
Придётся распаковывать в ручную...
Для начала грузим упакованный файл в OllyDBG и оказываемся по адресу 005AF200, после чего прокручиваем в самый низ и видим такое:
Это прыжок на OEP, тобишь оригинальную точку входа, ставим на ней бряк (Я уже это сделал клавишей F2) и стартуем программу на выполнение клавишей F9. Программа выполнилась и мы оказываемся на точке останова, жмём 1 раз клавишу F8 (пошаговое выполнение) и нас перекидывает на OEP самой программы:
Программа распакована и находится в памяти, теперь нам надо сделать дамп.
Для того что бы сделать дамп воспользуемся плагином OllyDump, находится он в меню => Plugins => OlleDump => Dump Debugged Process, после чего откроется такое окошко:
Копируем адрес и снимаем галочку с Rebuild Import, после чего жмём кнопку DUMP и сохраняем распакованный файл.
Но радоваться пока рано, надо ещё восстановить импорты, делается это с помощью программы под названием Import Reconstructor
Что бы восстановить импорты запускаем упакованную программу и ImpRec, в нём выбираем процесс программы и в поле OEP вводим 1201EC
Нажимаем IAT AutoSearch и если всё сделали правильно появится такое сообщение:
Далее жмём на кнопку Get Imports и наблюдаем следующие:
Отлично, осталось только профиксить дамп! Для этого жмём кнопку Fix Dump и выбираем наш дамп, после чего полностью распакованный файл будет сохранён в папке с программой.
Переходим к "исследованию защиты"
Для этого грузим наш распакованный файл в IDR и заходим в обработчик события OnCreate
Отсюда мы видим, что в папке с программой должен быть файл activecode.key для того, что бы началась проверка лицензии.
После беглого осмотра строк я выяснил что ВСЕ проверки лицензии происходят в Button4.Click, и там же происходит генерация ключа в функции по адресу 00509310 (если вы захотите сделать кейген) Даже в обработчике OnCreate программа кликает на Button4.
Отловить регистрационный ключ не составляет проблем, ставим точку останова на адрес 00518050 и в стеке наблюдаем ключик:
Вводим этот ключ в программу и радуемся только что "купленной" лицензии:
Заключение:
Даже, казалось бы, на первый взгляд сложная защита имеет большой минус - это генерация ключа и хранение его в открытом виде.Так же если вы накроете чем то простым типо UPX'а то скрамблер вам, увы, не поможет (но от школьников защитит).
Скачать программу можно с офф сайта.
А что вообще эта прога дела на wmmail ?Какие функции выполняет ?
ОтветитьУдалитьВыполняет задания на сайте, читает письма и сёрфит. Рублей 5 в день заработать можно.
Удалитьhttp://morfin-blog.net/load/e_mail/cracked_wmmail_autoclicker/6-1-0-12 Вот уже готовая, без танцев с бубном. Но спасибо за пример хака.
ОтветитьУдалитьПриятно видеть крякнутый мною софт на других сайтах.
УдалитьОткрою тебе секрет, ты звезда, большое количество людей любят твои программы, и часто звучит твой ник. Так что не удивительно.
Удалитьа можно готовую программу? как со старой версией
ОтветитьУдалитьСтатья не про кряк, а про исследование защиты.
УдалитьНо если будет время - запилю кейген.
спасибо :) буду ждать, а щас попробую сам по этой инструкции сделать
УдалитьПереходим к "исследованию защиты"
ОтветитьУдалитьДля этого грузим наш распакованный файл в IDR и заходим в обработчик события OnCreate
Когда открываю IDR пишет "cannot initialize disasm" что делать?
можно подробней как это сделать? ставим точку останова на адрес 00518050 и в стеке наблюдаем ключик
ОтветитьУдалитьэтот адрес нашел, а что делать не понял =) тыкал F2? F8, F9 в breackpoint но так и не появился ключ снизу(
http://screenshot.su/show.php?img=b016341c872e8d3cea531a5f7fb05637.jpg
нужно на адресе 00518050 нажать F9, и в запущенном кликере ввести любые цифры и зарегать и на адресе появиться рег код
ОтветитьУдалитьу меня тоже с последним пунктом проблемы. не показывает ключ он. сделай кейген.
ОтветитьУдалитьДанная статья показывает типичную уязвимость половины софта и цель была только рассказать как и что делается.
УдалитьНу на счёт кейгена скажу только одно: его сделать можно за 5 минут.
сделай пожалуйста, если не сложно :)
УдалитьБольшое спасибо! Скажи пожалуйста Vans, ты программист по образованию или учился всему этому сам?
ОтветитьУдалитьПо теме: есть возможность бана на WMmail?
Ходил на платные курсы по программированию.
УдалитьСофт не мой, не знаю.
Платные курсы по программированию xD
УдалитьЖги ещё. делфоеб.
Завидуй нищеброд.
УдалитьНе понимаю людей таких....Чел им помогает а они его еще и обзывают:(автор ходил на курсы для себя, а не для других.Многие программеры делают проги на заказ и получают за это деньги.И еще цены там ого-го!А VanS делает ваши проги на заказ,при этом еще бесплатно и показывает как надо и что нужно сделать для этого!
УдалитьБлин ломать защиты прикольно )))
ОтветитьУдалитьVanS помоги :)
ОтветитьУдалитьВсё сделал, но не открывается IDR (пробовал в Windows 7 64-bit и XP 32-bit). Также не получается "отловить регистрационный ключ". Не понятно как его получить.
Всё получилось, спасибо ruslan ivanov
ОтветитьУдалитьVanS хороший ты человек!!!
VanS уж месяц прошёл а кейгена нету... найди 5минут плз, обещался ведь сделать!
ОтветитьУдалитьАвтор поменял алгоритм генерации.
Удалитьспс Ванс спс..
ОтветитьУдалитьVanS, а слабо ReallyVision крякнуть? )) Это сеьезная прога для видеонаблюдения через вебку. В нете ток демка на 10 дней, приходится каждые 10дней систему сносить чтоб ею пользоваться. А платить за лицензию более 100$ как-то дороговато (( Может чем поможешь, если не сложно?..
ОтветитьУдалитьКак взломать новую защиту подскажите?
ОтветитьУдалитьКрякни новую версию этого бота, пж
ОтветитьУдалитьПоддерживаю...
УдалитьПросим актуальную версию.
Когда открываю IDR пишет "cannot initialize disasm" что делать?
ОтветитьУдалитьНадо скачать базы - kpnc.org/idr32/download/idr_aux.rar
УдалитьНо с новой прогой всё рабно проблемы IDR требует kb2010.bin - но он растространяется за деньги :(
За деньги? Я её бесплатно получил...
УдалитьЯ тоже скачал бесплатно, но к архиву требуется пароль и на сайте написано, что архив под паролем, А пароль...
УдалитьА пароль у можно получить у разраба по E-mail
УдалитьЭтот комментарий был удален автором.
ОтветитьУдалитьАвтор не думал сделать кряк для данного софта снова ?Понимаю,что прошло уже много времени,но думаю защита сильно не изменилась
ОтветитьУдалить