Cracking Turorial #1

Това е птрвия урок по кракване от ^Shade^.Всичко е обяснено много просто и елементарно.Необходимо е само да прочетете страницата до край.Но не си мислете че сте вече Кракери като сте прочели само тази страница.За да кракнете дадена програма или игра трябва задължително да знаете Assembler.Това е език за програмиране от най-ниско ниви или познат още като машинен език.Прочетете това за да добиете представа за основните команди на Assembler.

В този урок ще кракнем едно написано от мене CrackMe което трябва да изтеглите от тук.

Принадлежности:

Win32dasm Можете да го изтеглите от http://freak-inc.hit.bg/Download.htm
HexWorkshop Можете да го изтеглите от http://freak-inc.hit.bg/Download.htm

Когато се занимавате с кракване трябва задължително да си правите резервни копия.Аз си правя файлове .bak .
Първо включете Crackme.exe и го разгледайте.Какво забелиязвате ?Когато щракнете върху бутона 'Check' се появява съобщение "The Password is Wrong".Излезте от програмата.
Включвате Win32dasm и щракнете върху бутона посочен от стрелката.
После изберете CrackMe.exe и изчакайте докато се деасемблира.След това щракнете върху посочения от стрелката бутон.
и ще видите следното :
В прозореца виждаме "The Password is Wrong"(Това което ни се появяваше докато щракахте върху бутона 'Check'. малко след него виждаме и "The Passowrd is Valid".
Хм.. това е много интересно.Сега щракнете два пъти с първия бутон на мишката върху "The Password is Wrong" и после пак върху "The Passowrd is Valid".На екрана би трябвало да се е появило:

 

 

 

 

 

 

 

 

 

 

 

 

Както виждаме съобщението "The Password is Wrong" се появява от адрес 0045385D а съобщението "The Passowrd is Valid" се появява от адреса  45386D.Малко по нагоре от  45386D (реда за "The Passowrd is Valid") виждаме нещо много интересно:

Това ознава ча ако дадено условие е налице прескача на адрес 00453855 и после се появява съобщението "The Password is Wrong".А ако условието не е на лице изпълнението на програмата продължава без да прескача на  00453855 и  отива на  "The Passowrd is Valid"(Това което ни трябва).Значи ако успеем да премахнем този условен скок ще сме кракнали програмата.Това може да стане по много начини.Например чрез въвеждане на празен код като например пoвишаване на ЕАX с 1 и намаляването на ЕАX с 1,което в HEX e '4048'
Когато щракнете върху реда ще видите долу следното:
=> Този адрес се намира на Offset 52C55
Следващата стъпка е да променим  кода на егзето от '7511' (JNE 00453855) на '4048'(INC EAX|DEC EAX).Toва ще стане като отворим CrackMe.exe с HexWorkshop.
Натискаме F5 и пишем 52C55.След това само заместваме 7511 с 4048 и даваме (save) и поздравления .Току що кракнахте вашата първа програма.