Исследование защиты программы SmartUndelete
Скриншот программы SmartUndelete
Разгребал старые архивы, нашел вот такую программу. SmartUndelete предназначена для восстановления удаленных файлов с различных носителей, в том числе с созданных ранее образов дисков. Проект давно перестал существовать, но установщик последней версии у меня остался. Купить программу уже нельзя даже при всем желании, поэтому давайте просто поковыряемся у нее во внутренностях.
Забираем маленький дистрибутив, устанавливаем, смотрим что и как. Главный файл ничем не упакован, отправляем его на разбор в дизассемблер. Запускаем программу, выясняем, что основное ограничение незарегистрированной версии заключается в том, что она показывает, но не восстанавливает удаленные файлы. Попробуем зарегистрировать ее какими-нибудь левыми данными:
Сообщение о неправильной регистрации
Отлично, текст сообщения о неправильной регистрации у нас есть. Вернемся в листинг дизассемблера и посмотрим, где эта строка используется:
Code (Assembler) : Убрать нумерацию
- .text:004046B4 push 1
- .text:004046B6 call sub_430F5A
- ; Указатель на эталонную строку
- .text:004046BB mov ecx, lpData
- ; Указатель на введенный серийник
- .text:004046C1 mov eax, [esi+5Ch]
- .text:004046C4 push ecx ; char *
- .text:004046C5 push eax ; char *
- ; Сравнить две строчки
- .text:004046C6 call __strcmpi
- .text:004046CB add esp, 8
- .text:004046CE test eax, eax
- .text:004046D0 push 0 ; uType
- ; Строки одинаковые, регистрация прошла успешно
- .text:004046D2 jz short loc_4046E8
- ; Вывести сообщение о неправильной регистрации
- .text:004046D4 push offset aMessage ; "Message"
- .text:004046D9 push offset aWrongRegistrat
- ; "Wrong Registration Key"
- .text:004046DE mov ecx, esi
- .text:004046E0 call sub_4302DE
- .text:004046E5 pop esi
Программа успешно зарегистрирована
Ладно, пробуем повторить регистрацию с этой строкой. Программа благодарит нас за успешную регистрацию. Пробуем восстановить какой-нибудь файл, все нормально, никаких подвохов и ограничений. Автору, конечно, спасибо за полезную утилиту, но как-то странно, сделать программу такого уровня, а защиту сделать вообще никакую.
Просмотров: 1616 | Комментариев: 0
Метки: исследование защиты
Внимание! Статья опубликована больше года назад, информация могла устареть!
Комментарии
Отзывы посетителей сайта о статье
Комментариeв нет
Добавить комментарий
Заполните форму для добавления комментария