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

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


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

Исследование Alcohol 120% 1.4.7

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

Очень удобно, когда все крэкерские инструменты, книги и статьи в одном месте. Используйте сборник от EXELAB - вот тут.

Автор: TITBIT <saniok@xxx.lt>

Подопотный кролик : Alcohol 120% v1.4.7(Build 1005)
Язык проги : Borland C++ 1999
Цель : взлом
Инструменты :
WinDasm32 v8.xx-9.xx,
PEid v0.8-0.9
SoftIce v3.xx-4.xx,
Hexplorer v2.12b
EmEditor v3.37 (для написания этой статьи)
и холодное пиво, без него никак

ВСТУПЛЕНИЕ

Недавно я купил журнал к которому прилагался компакт с разными прогами. Одной из которых и была Alcohol 120% v1.4.7. Alcohol очень удобный эмулятор CD/DVD дисков, который может работать почти со всеми форматами CD/DVD образов. Прога выделяется интуитивным XP стилем и возможностью копировать компакты, обходя некоторые методы защиты. Кстати, удивили меня разработчики этой проги, в Help'e так красочно показана процедура регистрации, т.е. ввод серийного номера и т.д. Они предлагают нажать на кнопку ==REIGISTER== и ввести серийный номер. Но я бля, почему-то не нашел этой кнопки у меню вместо нее кнопка ==BUY!!!== Програмеры прикалываются или им было влом писать другой HELP?!!! Ну да ладно, обойдемся и без нахождения генерации серийного номера....
Alcohol работает 30 дней а затем, ну вы знаете что следует далее... Наши действия: сделаем прогу вечной, т.е. возможность юзать ее не 30 дней а вечно, и затем избавимся от NAG скрина с тупой задержкой в 5 секунд. Начнем-с...

ИССЛЕДОВАНИЕ

Проверим PEID'ом пакована ли наша прога. Он показал что это UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo. Этот UPX распаковывается самим же UPX'ом. Запустите его с ключом upx -d alcohol.exe. Ну вот теперь можно и поиздеваться над прогой :)) После окончания триал периода нас уведомляют окном "The trial period has expired!" Поищем эту строчку в WinDasm'е (надеюсь вы уже диссамблировали прогу WinDasm'ом, если нет, то вперед...)Вот код:


 
 
 * Possible Reference to String Resource ID=00001: "Some aplication(s) has locked the device"
 
 :0042340B  B80100000      mov eax, 00000001
 :00423419  E8E78E1Е00     call 0060C2FC        <<процедура проверки>>
 :00423415  DD9D3CFFFFFF   fstp qword ptr [ebp+FFFFFF68], 0008
 :0042341B  66C78568FFFFFF0800  mov word ptr [ebp+FFFFFF44]
 :00423424  DD8544FFFFFF    fld qword ptr [ebp+FFFFFF44]
 :0042342A  DC9D3CFFFFFF     fcomp qword ptr [ebp+FFFFFF3C]
 :00423430  33DB                 xor edx, ebx
 :00423432  DFE0                 fstsw ax
 :00423434	9E                sahf
 :00423435	0F97C2         seta dl
 :00423438	83E201         and edx, 00000001
 :0042343B	84D2            test dl, dl
 :0042343D	0F8497010000    je 004235DA  <<проверка на вшивость если dl =0,
  падаем на "забавное" окно, если =1,
  то прыгаем на NAG скрин с задержкой 5 сек...>>
 :00423443	6A40            push 00000040
 :00423445   33C9            xor ecx, ecx
 
   _ _ _ _ _ _ _ _ _ _ урезано_ _ _ _ _ _ _ _ _ _ _ _ _
 
  * Reference by a (U)nconditional or (C)onditional Jump at Address:
 |:0042346D(C)
 |
 :00423479     51			  push ecx
 :0042347A     33C0		  xor eax, eax
 :0042347C     8945A8	  mov dword ptr [ebp-58], eax
 :0042347F     8D55A8       lea edx, dword ptr [ebp-58]
 :00423482   FF8574FFFFFF   inc dword ptr [ebp+FFFFFF74]
 
 * Possible Reference to String Resource ID=21633: "The Trial Period has expired! Please purchase a registration"
   << "забавное"окно>>
 
 :00423488      B881540000    mov eax, 00005481
 :0042348D      E8C23C0200   call 00447154
 :00423492      8B55A8          mov edx, dword ptr [ebp-58]
 :00423495      85D2             test edx, edx
 :00423497      7405             je 0042349E
 
   _ _ _ _ _ _ _ _ _ _ урезано_ _ _ _ _ _ _ _ _ _ _ _ _
 
 * Reference by a (U)nconditional or (C)onditional Jump at Address:
 |:0042343D(C)
 |
 :004235DA      A1D43E6C00    mov eax, dword ptr [006C3ED4] << ......прыгаем сюда>>
 :004235DF      8B08              mov ecx, dword ptr [eax]
 :004235E1      B201              mov dl, 01
 
 * Possible StringData Ref from Data obj ->""Б\"
 
 :004235E3     A1DC426800      mov eax, dword ptr [006842DC]
 :004235E8     E813DFFFFF      call 00421500
 :004235ED     8BF8                mov edi, eax
 :004235EF     66C78568FFFFFF0800  mov word ptr [ebp+FFFFFF68] , 0008
 :004235F8     33D2                xor edx, edx
 :004235FA     8B8720030000   mov eax, dword ptr [edi+00000320]
 :00423600     8B08                mov ecx, dword ptr [eax]
 :00423602     FF5164             call [ecx+64]
 :00423605     B201                mov dl, 01
 :00423607     8B8730030000   mov eax, dword ptr [edi+00000330]
 :0042360D     8B08                mov ecx, dword ptr [eax]
 :0042360F     FF515C             call [ecx+5C]
 :00423612     66C78568FFFFFF9800  mov word ptr [ebp+FFFFFF68], 0098
 :0042361B     33C0                 xor eax, eax
 :0042361D     8D5598             lea edx, dword ptr [ebp-68]
 :00423620     894598             mov dword ptr [ebp-68], eax
 
 * Possible Reference to String Resource ID=21622: "Trial Version. Please wait.."
 <<Знакомая строчка из NAG скрина, с задержкой в 5 секунд>>
 
 :00423623      B876540000       mov eax, 0005476
 :00423628      FF8574FFFFFF   inc dword ptr [ebp+FFFFFF74]
 
  _ _ _ _ _ _ _ _ _ _ урезано_ _ _ _ _ _ _ _ _ _ _ _ _
 
 :00423677      E880D61900       call 005C0CFC
 :0042367C       84DB                test bl, bl
 :0042367E       0F848F000000    je 00423713
 <<Если прыгаем то нарываемся на NAG скрин с 5сек, а если нет то топаем дальше
 и попадаем просто на NAG скрин>>
 :00423684       66C78568FFFFFFA400  mov word ptr [ebp+FFFFFF68], 00A4
 :0042368D       BA60376800       mov edx, dword ptr [eax]
 :00423692       8D4594              lea eax, dword ptr [ebp-6C]
 :00423695       E83AFC2100       call 006432D4
 :0042369A       FF8574FFFFFF    inc dword ptr [ebp+FFFFFF74]
 :004236A0       8B10                mov edx, dword ptr [eax]
 :004236A2       8B872C030000   mov eax ptr [edi+0000032C]
 :004236A8       E85FD71900      call 005C0E0C
 :004236AD       FF8D74FFFFF    dec dword ptr [ebp+FFFFFF74]
 :004236B3       8D4594            lea eax, dword ptr [ebp-6C]
 
 * Possible Reference to String Resource ID=21621: "Trial Version"
 <<А здесь начинаеться процедура того же NAG скрина только уже без задержки 5с>>
 
 :004236D1 B875540000            mov eax, 00005475

ВЗЛОМ

Теперь смотрим, можно заменить переход по адресу 0042343D (je -> jne), но это не всегда помогает (читайте статьи FESS'a), намного вернее сделать так чтобы dl всегда был равен 1 поэтому в начале процедуры, адрес 0060C2FC вставим

xor eax,eax - 31C0
inc eax 40

Ну вот теперь dl будет всегда равен 1, что нам и нужно. Далее заменим по адресу 0042367E переход(je на jne) Окно о завершении триал периода исчезло, так же как и задержка в 5 секунд. Юзать ее можно не только 30 дней. Осталось только все тот же NAG скрин, в принципе можно всегда нажимать на ==OK== и пользоваться программой, но почему бы нам не избавиться от этого окна?! Итак приступим....
Сначала нужно найти место откуда вызывается процедура NAG окна. Для этого в SOFTIC'е ставим брэкпоинт по адресу 0042367Е, для тех кто не знает как это сделать в Айсе читайте мою предыдущею статью (BAD_GUY поставь здесь ссылку на эту статью буду благодарен). Когда мы прервавшись окажемся в Айсе трассируем прогу с F10. После n'ного нажатия (в моем случаи 36) мы вываливаемся из Айса и попадаем на NAG скрин, после нажатия на OK снова оказываемся в Айсе


 :00423760   FF92E8000000     call dword ptr [edx+000000E8]        <<Процедура NAG скрина>>
 :00423766   84DB                 test bl, bl             <<после нажатия на OK попадаем сюда>>
Теперь сделаем элементарную вещь - занопим процедуру Окна, т.е. заменим в любимом HEX редакторе (Я использовал Hexplorer) байты FF92E8000000 на 909090909090 Заменив байты запускаем Alcohol и "О, Великая Жопа" NAg скрин исчез. Все прога повержена!!!
Кому влом смотреть на Заголовок проги, в том числе и мне ===Alcohol 120% - Trial version=== заменити в HEX редакторе на любой другой, например "Cracked By TITBIT"

P.S. Можно конечно было найти место проверки регистрации, но зачем это делать если проще, да и быстрей, пропатчить... Функциональность проги этим не снижается. Но это только мое личное мнения, и я его не кому не навязываю. А насчет разработчиков скажу просто - лохи, если хотят денег, то пусть стараются!!!.

Если кто че не понял пишите на: saniok@xxx.lt

2003 ™ TITBIT

Написано: 21.11.03



Обсуждение статьи: Исследование Alcohol 120% 1.4.7 >>>


Комментарии к статье: Исследование Alcohol 120% 1.4.7

ShaDow 12.08.2005 23:25:43
А новые версии сломаются?
Да ладно... ...Сам проверю!
---
Zyzomys 14.09.2005 00:11:18
Мда... В Alcohol 120% Bepcия 1.9.5 ( Build 3105 )(Trial Version) мало что изменилось.
---

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



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


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