Исследование защиты программы DrugSeek
Скриншот программы DrugSeek
Программа DrugSeek когда-то была предназначена для поиска
Забираем с сайта последний доступный дистрибутив, он портативный, поэтому просто распаковываем куда-нибудь и запускаем. Ограничения заявлены по функционалу, но их проверить не получится по причине неработоспособности самой программы. Придется поверить на слово, что они действительно есть. Зато в заголовке главного окна и в окне "О программе" есть надписи о "демо-версии". Это и станет отправной точкой для исследования.
Триальные надписи в окне программы
Поиском по слову "демо" в исполняемом файле обнаруживается строка, которая дописывается в заголовок главного окна незарегистрированной программы.
Строка в файле
Поскольку файл ничем не накрыт и не упакован, то сразу отправим его на дизассемблирование. После этого посмотрим, какой код ссылается на демо-строчку и при каких условиях она задействуется.
Code (Assembler) : Убрать нумерацию
- .text:0040E639 push edx
- .text:0040E63A push [ebp+arg_0]
- ; Вызвать функцию проверки
- .text:0040E63D call sub_4101F8
- .text:0040E642 add esp, 8
- ; Если ее результат не равен 0, то демо-версию не выводить
- .text:0040E645 test al, al
- .text:0040E647 jnz short loc_40E6A2
- .text:0040E649 mov [ebp+var_30], 20h
- .text:0040E64F lea eax, [ebp+var_C]
- .text:0040E652 call unknown_libname_41
- .text:0040E657 push eax
- .text:0040E658 inc [ebp+var_24]
- ; Ссылка на строку "демо-версия"
- .text:0040E65B mov edx, offset unk_4B231A
- .text:0040E660 lea eax, [ebp+var_8]
- .text:0040E663 call sub_4AD9D0
- .text:0040E668 inc [ebp+var_24]
- .text:0040E66B lea edx, [ebp+var_8]
- .text:0040E66E lea eax, [ebp+var_4]
- .text:0040E671 pop ecx
- ; Прицепить строку к заголовку
- .text:0040E672 call @$badd$xqqrrx17System@AnsiString
- .text:0040E677 lea edx, [ebp+var_C]
- .text:0040E67A lea eax, [ebp+var_4]
- .text:0040E67D call sub_4ADB14
- .text:0040E682 dec [ebp+var_24]
Открываем на редактирование функцию по адресу 004101F8 и записываем в ее начало пару команд MOV AL,1 и RET. Сохраняем изменения, запускаем. Все упоминания о демо-версии исчезли. Ограничения по функционалу тоже, хоть это и не проверить. Цель достигнута. Такой вот крекми-пятиминутка для самых маленьких. Я на написание этой статьи потратил гораздо больше времени.
Просмотров: 1716 | Комментариев: 0
Метки: исследование защиты
Внимание! Статья опубликована больше года назад, информация могла устареть!
Комментарии
Отзывы посетителей сайта о статье
Комментариeв нет
Добавить комментарий
Заполните форму для добавления комментария