Исследование защиты программы Do Your Data Recovery
Скриншот программы Do Your Data Recovery
Do Your Data Recovery - утилита для быстрого восстановления удаленных или поврежденных файлов жестких дисков, карт памяти цифровых устройств и т.п. Программа также может восстановить утерянные файлы с удаленных разделов. Без регистрации восстанавливает не более 1 гигабайта файлов. Будем это исправлять.
Забираем с сайта дистрибутив, устанавливаем. Кстати, не имеет значения, какой дистрибутив качать, они все одинаковые, отличаются только названием файла. Главный исполняемый файл ничем не упакован, отправляем его на дизассемблирование.
Запускаем программу. Никаких посторонних окон при старте нет, но в заголовке окна красуется надпись "Trial". Значит где-то должны быть строки, соответствующие платным лицензиям. Давайте поищем их. В файле легко обнаруживается список всех типов, от бесплатной до технарской.
Строки в файле
Вернемся в дизассемблер и посмотрим, как эти типы лицензий появляются в заголовке окна. Это делается конструкцией SWITCH-CASE на основании значения, полученного из функции проверки статуса регистрации:
Code (Assembler) : Убрать нумерацию
- .text:0046EB7F mov [ebp+var_4], 0
- .text:0046EB86 call sub_412B90
- .text:0046EB8B mov ecx, eax
- ; Вызвать функцию проверки статуса
- .text:0046EB8D call sub_459980
- ; Сохранить статус регистрации
- .text:0046EB92 mov [ebp+var_14], eax
- .text:0046EB95 cmp [ebp+var_14], 2
- .text:0046EB99 jl short loc_46EBBD
- .text:0046EB9B lea ecx, [ebp+var_18]
- .text:0046EB9E call sub_497870
- .text:0046EBA3 mov byte ptr [ebp+var_4], 1
- .text:0046EBA7 push 1
- .text:0046EBA9 lea ecx, [ebp+var_18]
- .text:0046EBAC call sub_497AD0
- .text:0046EBB1 mov byte ptr [ebp+var_4], 0
- .text:0046EBB5 lea ecx, [ebp+var_18]
- .text:0046EBB8 call sub_497890
- .text:0046EBBD loc_46EBBD:
- ; Статус регистрации программы
- .text:0046EBBD mov ecx, [ebp+var_14]
- .text:0046EBC0 mov [ebp+var_134], ecx
- .text:0046EBC6 cmp [ebp+var_134], 5 ; switch 6 cases
- .text:0046EBCD ja short loc_46EC3A ; default
- .text:0046EBCF mov edx, [ebp+var_134]
- .text:0046EBD5 jmp ds:off_46F1D8[edx*4] ; switch jump
- .text:0046EBDC loc_46EBDC:
- .text:0046EBDC push offset aFree
- ; jumptable 0046EBD5 case 0
- .text:0046EBE1 lea ecx, [ebp+var_10]
- .text:0046EBE4 call ds:mfc90_945
- .text:0046EBEA jmp short loc_46EC3A ; default
- .text:0046EBEC ; ---------------------------------------
- .text:0046EBEC loc_46EBEC:
- .text:0046EBEC push offset aTrial
- ; jumptable 0046EBD5 case 1
- .text:0046EBF1 lea ecx, [ebp+var_10]
- .text:0046EBF4 call ds:mfc90_945
- .text:0046EBFA jmp short loc_46EC3A ; default
- .text:0046EBFC ; ---------------------------------------
- .text:0046EBFC loc_46EBFC:
- .text:0046EBFC push offset aProfessional_2
- ; jumptable 0046EBD5 case 2
- .text:0046EC01 lea ecx, [ebp+var_10]
- .text:0046EC04 call ds:mfc90_945
- .text:0046EC0A jmp short loc_46EC3A ; default
- .text:0046EC0C ; ---------------------------------------
- .text:0046EC0C loc_46EC0C:
- .text:0046EC0C push offset aTechnician
- ; jumptable 0046EBD5 case 3
- .text:0046EC11 lea ecx, [ebp+var_10]
- .text:0046EC14 call ds:mfc90_945
- .text:0046EC1A jmp short loc_46EC3A ; default
Code (Assembler) : Убрать нумерацию
- .text:00459980 sub_459980 proc near
- .text:00459980 push ebp
- .text:00459981 mov ebp, esp
- .text:00459983 push ecx
- .text:00459984 mov [ebp+var_4], ecx
- .text:00459987 call sub_494EF0
- .text:0045998C mov ecx, eax
- .text:0045998E call sub_4959F0
- .text:00459993 mov esp, ebp
- .text:00459995 pop ebp
- .text:00459996 retn
- .text:00459996 sub_459980 endp
Программа успешно "зарегистрирована"
В заголовке главного окна и в окне "О программе" красуется надпись "Technicial", то есть макксимально доступная лицензия. В файле есть еще строки статуса лицензии "Enterprise" и "AdvancedPE", они также есть в блоке SWITCH-CASE, но на сайте про них ни слова. Так что ограничимся технарской лицензией. Проверяем восстановление, никаких ограничений по объему сохраняемых данных нет. Цель достигнута.
Просмотров: 1708 | Комментариев: 1
Метки: исследование защиты
Внимание! Статья опубликована больше года назад, информация могла устареть!
Комментарии
Отзывы посетителей сайта о статье
xussr
(23.08.2019 в 21:46):
Все енто 64 бита а значит ольга не помошник хотя на сайте производителя этого дермософта есть как рас чистые 32 битные продукты которые с радостью ковыряются в ольге как и в прочем другом кроме примеров ассемблере
Добавить комментарий
Заполните форму для добавления комментария