Сейчас на форуме: (+6 невидимых)

 eXeL@B —› Вопросы новичков —› Исследование проги на Делфи. Куда двигаться дальше?
<< . 1 . 2 .
Посл.ответ Сообщение

Ранг: 1.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 21 августа 2010 13:06 · Поправил: byOstaff
· Личное сообщение · #1

Здравствуйте, уважаемые товарищи специалисты реверсинга! После того, как изложу вопрос, сильно не пинайте, ведь я совсем новичек в этом деле ;) Итак, оговорился я как-то раз, что типа "крэкер" (конечно, не тот, что в пачке и на полке в магазине ;))) ) ну, естественно, меня и попросили об услуге реверсинга. Я чтоб не обламываться взял и согласился, блин. Мне объяснили задачу и я наспех сделал вывод - легко! А задача состаяла в том, чтобы убрать надоедливое сообщение (MessageBoxW) о том, что используется триал-версия программы. По порядку. Программа называется Jigsaw Puzzle Creator (jpc.exe - объект исследования, написан на Делфи и ничем не упакован) от разработчика Casperlab Software. С помощью этой программы можно создавать пазлы из картинок и сохранять созданую пазл-игру в отдельный exe-шник (упаковывает его), в котором рамдомно и выскакивает этот MessageBox, если программа триальна. Сначала я думал, что игра создается из jigsaw.exe - по идеи автора будто так и должно быть, даже если запустить этот ехе-шник, то рамдомно выскакивает это самое сообщение. Поэтому я и решил, что будет легко, именно поэтому, сняв с него все то, что напялил разработчик - UPX 1.xx-2.0 - я первым сунул в Оллю его (прям эротика получается ;) ). QUnpack показал:
Opened jigsaw.exe
Quick self analyze.... UPX 1.xx-2.0
PESniffer EP Scan: UPX v0.89.6 - v1.02 / v1.05 -v1.22 (Delphi) stub
PEiD scanning... UPX 0.89.6 - 1.02 / 1.05 - 1.24 (Delphi) stub -> Markus & Laszlo
Вдоволь начитавшись мануалов по крэкингу я все-таки нашел тот джамп, который вызывает процедуру генерации MessageBox по адресу 0054F0EF, вот:
Code:
  1. 0054F0EF     7E 15    JLE SHORT jigsaw.0054F106

Для отмены сообщения я изменил код на:
Code:
  1. 0054F0EF     EB 15    JMP SHORT jigsaw.0054F106

И в этот момент я подумал, что стал супер-пупер крекером и быстренько запустил jpc.exe, создал новый пазл, нажал "Build EXE" и полез искать только-что созданную игру. Какое было разочарование, когда игра снова показала это надоедливое сообщение... Выяснил, что прога просто проверяет на существование jigsaw.exe, даже если подменить файл, она достанет из ресурсов свой ехе-шник. А может я ошибаюсь. И тут начались бессонные ночи ;) Мои дальнейшие действия. В About'е программы есть label с текстом "Evaluation version", а в заголовке надпись [Shareware]. Было бы легче найти код проверки на валидность рег.кода, если б триал закончился и можно было бы отлавливать сообщение о неправильном рег.коде. Но так и непонял, куда пишет дату. Пробовал Filemon7.03 - ничего такого не заметил, а Regmon_v7.04 вообще отказывается запускаться, пишет ошибку "Отказано в доступе. Убедитесь в том, что ваша учетная запись имеет права на загрузку драйверов и не запущен ли уже RegMon [перевод]", хотя на компе (WinXP SP3) только одна админ.учетка. Не знаю, что это может быть. Потом пробовал отловить вызов формы - модального окна - (возможно ли вообще такое?), чтоб уже потом найти код, который генерит эту надпись "Evaluation version" в About'e. Искал зацепки по API-функциям типа CreateWindow, ShowWindow и т.д. Потом пытался найти код, который пишет в заголовок всякую чушь, типа "Шаровары" - бесполезно. Но оказалось не под силу - потерял много времени и сил (моя жена была от меня в шоке, она до сих пор думает, что я не спал 3 сутки подряд ;))).
Но я такой настойчивый, что просто дальше - некуда, вот и привела моя наивность на КрэкЛаб, который давно уже забит в закладках браузера. Подскажите, пожалуйста, с чего начать двигаться, где искать, толкните носом, что хотите, то и делайте со мной, но только помогите, чтоб я мог насладиться расправой над этой софтиной. Вот.
P.S. Извините, совсем забыл за программу...
Вот ссыль, надеюсь таже сборка, что и уменя (№63)
Скачать Jigsaw Puzzle Creator (6.89 Мб)
Скачать jigsawcreator.exe (~7 MB) - везде пишут, что версия 2.02



Ранг: 1.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 22 августа 2010 14:12 · Поправил: byOstaff
· Личное сообщение · #2

Фух, ничего не понятно) Скачал WinHex, в нем открыл этот самый DAT-файл и... и как обычно в обычном редакторе. Не понял откуда-куда копировать, как мне показалось - это 16-битное ехе-приложение. Я не могу понять, как ты там увидел 4 проги???
Киньте кто-нибудь ссылку на мануал, где можно почитать как извлекать файл WinHex'ом из файлов-контейнеров, пожалуйста, ато я даже не могу сформулировать строку для поиска в гугле на такую тематику)




Ранг: 533.6 (!), 232thx
Активность: 0.450
Статус: Uploader
retired

Создано: 22 августа 2010 15:03
· Личное сообщение · #3

по сигнатуре в начале файла

-----
Лучше быть одиноким, но свободным © $me




Ранг: 1.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 22 августа 2010 15:40 · Поправил: byOstaff
· Личное сообщение · #4

вот я ж тупица((( взять и попробовать нельзя))) Получилось Достал первый ехе-шник) только выделять не совсем удобно блоки, но может быть я просто не привык еще, ведь выдернул в WinHex'e впервые! Всем спасибо за участие, не даром я зарегился на этом сайте. Но как для новичка не всегда были понятны Ваши ответы, например, можно было просто объяснить так: открой в НЕХ-редакторе player.dat, выдели блок начиная с сигнатуры MZP и заканчивая последним нулевым байтом (00 00 00, до начала следующей сигнатуры, не захватывая мусор, т.е. то, что находится между 00 00 00 и MZP). Но может это только для меня было не сразу понятно
Еще раз всем спасибо и риспект!
зы. Alt+1 - Alt+2 = выделение блока в ВинНЕХ (может еще один такой как я нуб-новичек читает эту тему:s5


<< . 1 . 2 .
 eXeL@B —› Вопросы новичков —› Исследование проги на Делфи. Куда двигаться дальше?
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати