Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 12 ноября!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Исследование DVD Ripper 1.3.25

Обсудить статью на форуме

Хорошая подборка видеоуроков, инструментов крэкера, книг и статей - здесь.

Автор: Gen0cide // REVENGE <gen0cide@nm.ru>

Программа: #1 DVD Ripper 1.3.25
Язык: Microsoft Visual C++ 6.0
Защита: Имя/Код

Инструменты: Win32Dasm, Hiew

Вступление

Я решил написать статью для новичков, которые еще не разобрались с SoftIce'ом, но хотят что-нибудь взломать. Опытных попрошу не читать данную статью, а то еще помрете со смеху. Хотя мы все были когда-то начинающими... И еще, это моя первая статья, не судите строго.

Описание

Обычный DVD ripper, cтоимостью 34.95 американских рубля, которых как говна в сети.

Исследование

Засунем exe'шник в Win32Dasm и поищем какой-нибудь бред про регистрацию. Мне бросилась в глаза строка “License To: %s”
 * Possible StringData Ref from Data Obj ->"License To: %s"
 |
 :0040BEAB 6820FB4C00 push 004CFB20
 :0040BEB0 55 push ebp
 
 * Reference To: MFC42.Ordinal:0B02, Ord:0B02h
 |
 :0040BEB1 E8E4C00800 Call 00497F9A
 :0040BEB6 83C40C add esp, 0000000C
 
 Посмотрим выше...
 
 * Reference To: MFC42.Ordinal:035C, Ord:035Ch
 |
 :0040BE55 E868C00800 Call 00497EC2
 :0040BE5A 8D4C240C lea ecx, dword ptr [esp+0C]
 :0040BE5E 51 push ecx
 :0040BE5F E8FC68FFFF call 00402760
 :0040BE64 8D542414 lea edx, dword ptr [esp+14]
 :0040BE68 C644244408 mov [esp+44], 08
 :0040BE6D 52 push edx
 :0040BE6E E8AD69FFFF call 00402820
 :0040BE73 8B442418 mov eax, dword ptr [esp+18]
 :0040BE77 8B4C2414 mov ecx, dword ptr [esp+14]
 :0040BE7B 50 push eax
 :0040BE7C 51 push ecx
 :0040BE7D C644245009 mov [esp+50], 09
 :0040BE82 E8596BFFFF call 004029E0 <<Процедура проверки>>
 :0040BE87 83C410 add esp, 00000010
 :0040BE8A 85C0 test eax, eax
 :0040BE8C 742B je 0040BEB9 <<Если в регистре eax 0, то прыгаем>>
 :0040BE8E 8D542434 lea edx, dword ptr [esp+34]
 :0040BE92 8BCF mov ecx, edi
 :0040BE94 52 push edx
 
 * Reference To: MFC42.Ordinal:035A, Ord:035Ah
 |
 :0040BE95 E87EC10800 Call 00498018
 
 * Possible StringData Ref from Data Obj ->"(Full Version)"
 |
 :0040BE9A 6830FB4C00 push 004CFB30
 :0040BE9F 8BCF mov ecx, edi
 

Взлом

Для регистрации программы нам достаточно зайти в процедуру проверки и изменить значение регистра eax, чтобы он всегда был равен 1.
 * Referenced by a CALL at Addresses:
 |:00406A4F , :00408D2C , :004096CD , :0040BE82 , :0040DA10
 |
 :004029E0 6AFF push FFFFFFFF
 :004029E2 68C99B4900 push 00499BC9
 :004029E7 64A100000000 mov eax, dword ptr fs:[00000000]
 :004029ED 50 push eax
 :004029EE 64892500000000 mov dword ptr fs:[00000000], esp
 :004029F5 81EC94000000 sub esp, 00000094
 :004029FB 8B8424A4000000 mov eax, dword ptr [esp+000000A4]
 :00402A02 53 push ebx
 :00402A03 56 push esi
 :00402A04 50 push eax
 :00402A05 8D4C2410 lea ecx, dword ptr [esp+10]
 :00402A09 C74424607FB1FD84 mov [esp+60], 84FDB17F
 :00402A11 C744246454BBC162 mov [esp+64], 62C1BB54
 :00402A19 C7442468FA319074 mov [esp+68], 749031FA
 :00402A21 C744246CAD4972C7 mov [esp+6C], C77249AD
 :00402A29 C744247033BF9972 mov [esp+70], 7299BF33
 :00402A31 C7442474BD05D7D7 mov [esp+74], D7D705BD
 :00402A39 C7442478A4821B13 mov [esp+78], 131B82A4
 :00402A41 C744247CDD7EE760 mov [esp+7C], 60E77EDD
 
Для этого открываем exe'шник в Hiew и вводим 33C040C3, поясняю:

xor eax, eax - 33C0 <<обнуление eax>>
inc eax - 40 <>
ret - С3 <<выход из процедуры>>

Должно получиться вот так:
 * Referenced by a CALL at Addresses:
 |:00406A4F , :00408D2C , :004096CD , :0040BE82 , :0040DA10
 |
 :004029E0 33C0 push FFFFFFFF
 :004029E2 40C39B4900 push 00499BC9
 :004029E7 64A100000000 mov eax, dword ptr fs:[00000000]
 :004029ED 50 push eax
 :004029EE 64892500000000 mov dword ptr fs:[00000000], esp
 :004029F5 81EC94000000 sub esp, 00000094
 :004029FB 8B8424A4000000 mov eax, dword ptr [esp+000000A4]
 :00402A02 53 push ebx
 :00402A03 56 push esi
 :00402A04 50 push eax
 :00402A05 8D4C2410 lea ecx, dword ptr [esp+10]
 :00402A09 C74424607FB1FD84 mov [esp+60], 84FDB17F
 :00402A11 C744246454BBC162 mov [esp+64], 62C1BB54
 :00402A19 C7442468FA319074 mov [esp+68], 749031FA
 :00402A21 C744246CAD4972C7 mov [esp+6C], C77249AD
 :00402A29 C744247033BF9972 mov [esp+70], 7299BF33
 :00402A31 C7442474BD05D7D7 mov [esp+74], D7D705BD
 :00402A39 C7442478A4821B13 mov [esp+78], 131B82A4
 :00402A41 C744247CDD7EE760 mov [esp+7C], 60E77EDD
 
Прога зарегистрированна! Можете ввести в регистрационном диалоге свое имя, чтобы оно отображалось в About'е.

P.S. Взлом аналогичен взлому, описанному в статье "Исследуем защиту PDF2HTML 1.5" от TITBIT'а. Мне было лень печатать и половину я перекопировал оттуда, TITBIT не обижайся. ;)

Обсуждение статьи: Исследование DVD Ripper 1.3.25 >>>


Комментарии к статье: Исследование DVD Ripper 1.3.25

Zer0 15.04.2004 20:13:22
:)))
---

Материалы находятся на сайте https://exelab.ru



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS