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

ВИДЕОКУРС ВЗЛОМ
выпущен 8 мая!


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

АРХИВ ФОРУМА eXeL@B
https://exelab.ru/f/

   

TankMan Может кто-нибудь написать туториал взлома WarCraft3 FT? Пробовал я...


TankMan Может кто-нибудь написать туториал взлома WarCraft3 FT? Пробовал я взломать WarCraft3 FT 1.14 - как ни старался - не получилось ничего :( - как просил диск так и просит... я но-сд то нашел, но просто интересно, каким именно образом он защищен, и как можно обойти? Может кто уже ломал и поможет мне написанием мАААаленького туториалчика?
dmitrys :: Отучаем WarCraft 3 (1.01b) от SecuROM

Инструменты : SoftICE, ProcDump, бумага, Win32DAsm
+!!!оригинальный!!! CD с игрой.

SecuROM считывает нечитабельные(другими прогами) сектора
сд-диска. Сравнивает эту инфу со своей и если все сходится
то далее exe’шник дешифруется и идет прыжок на OEP.
И так начнем...
Ставим в СофтАЙСЕ бряк на GetDriveTypeA (bpx GetDriveTypeA).
КОгда выскочит САЙС жмем F12 и записываем EIP. Потом просто
выходим из САЙСА. Затем загружаем в Win32DAsm war3.exe и
идем на тот адрес который вы записали :00465A31 и поднимаемся
пока не увидим такое место :

-------cut here-------

:00463549 CC int 03
:0046354A CC int 03
:0046354B CC int 03
:0046354C CC int 03
:0046354D CC int 03
:0046354E CC int 03
:0046354F CC int 03
:00463550 55 push ebp
:00463551 8BEC mov ebp, esp
:00463553 56 push esi
:00463554 6A01 push 00000001
:00463556 6A00 push 00000000
:00463558 6A00 push 00000000
:0046355A A190B44900 mov eax, dword ptr [0049B490]
:0046355F 50 push eax
:00463560 FF1554D84900 call dword ptr [0049D854]

-------cut here-------

Снова запускаем игру, только из SILoader’a. Ставим брак на
:00463550 - это начало всей прцедуры чтения секторов CD.
Когда стопнется САЙС смотрим что у нас в ESP (d esp). А в
ESP должен быть адрес места гуда нужно вернуться после
этой процедуры (т.е. если вместо push ebp написать ret
то мы должны вернуться именно на этот адрес). А адрес у
нас оказался :00461692. Если посмотреть на это место в
ВинДАсм’е, то мы увидим всякую фигню, значит SecuROM
дешифрует это место во время выполнения. Нам нужно сдампить
exe’шник тогда когда этот кусок памяти будет дешифрован.
Опять ставим бряк на GetDriveTypeA. Когда стопнемся жмем
F12 и оказываемся в exe’шнике. Меняем cmp eax,05 на
jmp EIP (команды : a, jmp EIP). Выходим из САЙСА и запускаем
ProcDump. Сдампим весь exe’шник и убъем процесс. Загружаем
в ВинДасм сдампеный exe’шник. Идем на :00461692 и если там
нормальный код, то вы все сделали правильно...
Предыдущий call - это как раз вызов той процедуры. Если вы
туда зайдете то не пугайтесь, что там совсем другой код.
Просто SecuROM использует одно и тоже место в памяти для
разных процедур. Смотрим далеко вниз и видим такое :

-------cut here-------

:00461876 FF1590A94900 call dword ptr [0049A990]
:0046187C C70558A4490000000000 mov dword ptr [0049A458], 00000000

* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
¦:00461864(C), :0046186D(C)
¦
:00461886 B816124000 mov eax, 00401216
:0046188B 90 nop
:0046188C 90 nop
:0046188D 50 push eax
:0046188E EB03 jmp 00461893

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
¦:00461A35(U)
¦
:00461890 58 pop eax
:00461891 FFE0 jmp eax

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
¦:0046188E(U)
¦
:00461893 A340C64900 mov dword ptr [0049C640], eax
:00461898 E8F3C0FFFF call 0045D990
:0046189D C7055CAA490000000000 mov dword ptr [0049AA5C], 00000000

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
¦:004619B5(U)
¦
:004618A7 8B155CAA4900 mov edx, dword ptr [0049AA5C]
:004618AD 6BD20A imul edx, 0000000A

-------cut here-------

По адресу :00461886 видим что в EAX кладется какое-то число
(странно!!!). Ставим в САЙСЕ бряк на :00461886. Когда стопнемся
проходим все до :00461A35. Дело в том что далее идут циклы
дешифровки... Дойдя до :00461A35 видим прыжок на :00461890.
Смело прыгаем и оказывается мы вернулись почти туда же где
стопнулись. Тут восстанавливается EAX (pop eax) и прыгаем на
адрес который в EAX. А в EAX оказывается то число, которое до
этого мы видели (mov eax, 00401216). Значит?... это и есть OEP.
OK..самое трудное мы сделали. Теперь запишем свеженайденый OEP
на бумажку. Теперь осталось сделать нормальный дамп. Ставим
в САЙСЕ бряк на :00461891 и когда стопнемся меняем jmp eax
на jmp EIP. Выходим из САЙСА и дампим exe’шник ПрокДамп’ом.
Не забудте убить процесс. Меняем EP на OEP всеми доступными
средствами. Иногда еще придется восстановить Импорт(Import
table) это можно сделать Import ReConstructor’ом, когда игра
будет запущена, только в поле EP нужно ввести OEP.
Вот и все не такая уж и крутая защита...
Также ломается и WorldEditor.(пусть это будет вышим домашним
заданием)

Ну и как всегда, этот тутор только для образовательных целей.
Здесь ничего не ломается, а описывается защита. Даже не думайте
что-то ломать ;-). За все последствия Автор(т.е. Я) ответственности
НЕ НЕСЕТ!

Все вопросы в мыло...

writer : EGOiST[TSRh]
cracker : EGOiST[TSRh]
web : http://www.ego1st.cjb.net/
: http://kickme.to/tsrh
e-mail : egoist_tsrh@rbcmail.ru
: tsrh@mail.ru

Взято с сайта http://cd-check.tk/

Cigan :: Полный Бред!!! Он ламал пиратку!!! А на лицензии Securom!!! И много гемороя!!!

TankMan :: И что и только 1.01? Не учто ни кто сдесь не ломал Warcraft3 FT 1.14? Может защита слишком сложная, и поэтому ни кто не хочет тратить времени на бедного смертного, чтобы объяснить в чем загвоздка? или как?

-= ALEX =- :: просто прошел уже тот период когда все в нее рубились и искали пути решения траблы с диском...

GL#0M :: TankMan

Во-первых не у всех она есть... мало кто играет на этом форуме... ИМХО
Во-вторых ничего там сложного нет, защиту можно снять по любому из туторов в сети...

Cigan
Никакая это не пиратка, а оригинал. Сам снимал с оригинала, всё также. По Securom дохера инфы, вам просто в гугле лень поискать!!!

Mario555 :: GL#0M пишет:
цитата:
По Securom дохера инфы, вам просто в гугле лень поискать!!!


Ыгы... Всё на буржуйском и старое...

odIsZaPc :: Mario555
Ну дык буржуйский учи!

Cigan :: GL#0M
Ты не прав!!! Dr.Golova мне еще на wasm ответил так что извени!!! :))) А если ты говоришь что все очень просто то снеми 1.14 по туториалу!!! И потом ссылку подкинь на етот туториал, если не влама будет !!! Или сам напишы тутор !!!! :)))

RideX :: Cigan пишет:
цитата:
Dr.Golova мне еще на wasm ответил так что извени!!! :)))


SecuROM снять не ХХХХХ распаковать и одним ImpRec’ом (Mangled import и т.д.) тут ничего не сделаешь, надо DLL свою писать, импорт раскручивать, и т.д. и т.п. в том же духе. Ведь так ответил, а ты тут прикалываешься :)))

TankMan :: Все ясно, значит, не судьба? Но ведь кто-то же снял этот SecuROM, не учто.... ай ну ладно, раз времени нет, то нет...






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


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