Jump to content
BulForum.com

cracks !!!


sokoban

Recommended Posts

Айде да си направам една тема за кракването да си обменим опит и който може и иска да каже някои "рецепти" за това аз ще започна първи като дам един туториал

как успях да си извлека валиден сериен номер за WinZip v9.02

след около 30мин.. ще е качен ;)

аха няма да е скоро ще изчакаме докато се освободи малко местенце ;)

Link to comment
Share on other sites

Просто усещам как тази тема ще бъде хвалене на всевъзможни "хакери" и "wannabies", които искат да натиснат едно копче - и програмата едва ли не да се кракне сама. А отделно не виждам какво общо има между крак и "извличане" на сериен номер.

 

Може ли да ми се обясни? И туториала да се качи в определеното от правилата място.

Link to comment
Share on other sites

ако може аз да обясня какво е общото - и двете операции са следствие от анализ на кода и намиране на мястото където се изчислява верния сериен номер и се сравнява с грешния, само че в единия случай променяш exe-то така че проверката винаги да дава че номера е верен, а в другия случай си записваш на листче номера който отговаря на твоето име и си горд собственик на "легално" копие на програмата

Link to comment
Share on other sites

За регистрацията е ясно. Другото не е толкова точно - някой ако му се даде програмка и успее ще се нарича - лол, кракер. В TechBG имахме подобни теми - бая смях падаше в тях.

 

Иначе ако е толкова лесно да се "извклекат" серийни номера то те биха се намерили в нета много по-бързо отколкото би трябвало на човек да се занимае с дадена програмка (приемаме, че тя действа).

Link to comment
Share on other sites

ако може аз да обясня какво е общото - и двете операции са следствие от анализ на кода и намиране на мястото където се изчислява верния сериен номер и се сравнява с грешния, само че в единия случай променяш exe-то така че проверката винаги да дава че номера е верен, а в другия случай си записваш на листче номера който отговаря на твоето име и си горд собственик на "легално" копие на програмата

 

много точно го каза и според мен да се извлече сериен номер си е чисто кракване :)

Link to comment
Share on other sites

Тогава keygens защо ги наричат key generators, а не cracks? Cracks са когато се променя кода и се премахва защитата. Дори memory loader-ите не се наричат кракове, въпреки, че действат - заради такива нюкват игри - "Not cracked" :) Като пример мога да визирам двата релиза на HOODLUM от края на миналата година с loaderите за SafeDisc 4.

Link to comment
Share on other sites

За регистрацията е ясно. Другото не е толкова точно - някой ако му се даде програмка и успее ще се нарича - лол, кракер. В TechBG имахме подобни теми - бая смях падаше в тях.

 

Иначе ако е толкова лесно да се "извклекат" серийни номера то те биха се намерили в нета много по-бързо отколкото би трябвало на човек да се занимае с дадена програмка (приемаме, че тя действа).

 

не е много лесно :) а до това кои как ще се хвали това вече наистина може да стане смешно и забравих да кажа най-важното аз се занимавам с това от много скоро и не казвам че съм го направил професионално напротив даже ламерско :P

а и каде е това правилно място за тутката :wacko:

Link to comment
Share on other sites

В правилата пише, че главната директория на мувис е само за видеоклипове на музикални изпълнители тъй, че ако държи да е там ще трябва да е в @Misc.

 

Иначе: в http://www.warez.ru:8080/FTP/Docs/!UPLOAD/ се качват тези неща обикновено - там можеш да си избереш подходящата поддиректория и в нея да качиш нужното.

Link to comment
Share on other sites

Тогава keygens защо ги наричат key generators, а не cracks?

 

защото keygens са нещо по-висше от обикновенния мързелив patch

 

а пък crack е странно понятие - всеки го ползва за каквото си иска, някои го ползват в контекста на hack vs crack (лошите момчета които рушат), други го използват общо като "разбиване на загадка" (за справка Reality cracking), също се ползва и като синоним на patch.

Link to comment
Share on other sites

В правилата пише, че главната директория на мувис е само за видеоклипове на музикални изпълнители тъй, че ако държи да е там ще трябва да е в @Misc.

 

Иначе: в http://www.warez.ru:8080/FTP/Docs/!UPLOAD/ се качват тези неща обикновено - там можеш да си избереш подходящата поддиректория и в нея да качиш нужното.

 

ок мерси друг път ще знам ;)

Link to comment
Share on other sites

офтопик: Ама ще е хубаво и ако някой каже нещо по темата. Та нали за тва е направена, а не за общи лафове.

 

онтопик: Съжалявам, че нямам такъв, но просто нищо не разбирам от кракване, а искам да прочета нещо интересно по темата :unsure:

Link to comment
Share on other sites

офтопик: Ама ще е хубаво и ако някой каже нещо по темата. Та нали за тва е направена, а не за общи лафове.

 

онтопик: Съжалявам, че нямам такъв, но просто нищо не разбирам от кракване, а искам да прочета нещо интересно по темата  :unsure:

 

ами значи целта е да си намерим валиден сериен номер

какво ни е нужно естествено самата прог.. WinZip :)

OllyDBG

и малко познания по асемблер :wacko:

Link to comment
Share on other sites

OllyDbg е нещо като "избора на новото поколение" за работа под XP, защото не спира целия windows като влезнеш в него и така можеш да си правиш справка в някой help или в IDA, освен това за него има разни скриптове за unpack и за anti-antidebug и сравнително по-трудно се детектва от SI (не за друго, ами заради по-малката му популярност)

Link to comment
Share on other sites

Ама нищо не разбирам от кракове,но намерих полезна информация

 

ч а с т I

Т е м а : К р а к в а н е н а в х о д н а

п а р о л а н а

W i n d o w s п р о г р а м а

 

 

--------------------------------------------------------------------------------

1ntr0

Скоро получих упрек от наш посетител, че в сайта ни не е намерил никаква

информация на тема crack на програми. И наистина...уж се водим Hack/Crack

организация, а в сайта ни няма нищо от горепосочената тема.

Това наистина ми направи голямо впечатление и за това реших, че време

да си поразмърдам пръстите и да напиша нещо за programs cracking. Тъй като

всеки бъдещ хакер в Internet има различно ниво на познание, ще започна

с нещо просто - crack на входна парола на програма (в случая програмата

съм е написал аз, понеже не ми се търси подходяща в Internet).

В статията съм се опитал да засягам асемблера възможно най-малко понеже

както казах почваме от по-ниски нива.

N33d3d T00lZ

Ако не си личи горе пише "необходими инструменти" :). Та да видим какво

ще ни трябва за постигане на горната цел:

 

 

W32DASM (деасамблатор за 32 (16) битови Windows приложения) - astalavista.box.sk

 

 

Hack Man (шестнадесетичен редактор) - http://members.tripod.com/techmasters/

 

Ако не намерите програмите на тези адреси опитайте в други търсачки като

www.google.com например

TH3 B3G1NN1NG

За начало разбира се трябва да си свалите необходимата програма. Това

може да се направи от адрес:

http://yourbug.tripod.com/project1.exe

Програмата е чиста без никакви вируси или други гадости!

 

L3T'5 G0

Е така вече сте свалили програмата. Стартирайте е и ще видите прозорец

с текстова кутия и бутон. В кутията пише "Password goes here" и тук приемаме,

че трябва да въведем входната парола за достъп. Напишете нещо произволно

и натиснете Check. Получавате съобщението "Password rejected!". Сега напишете

като текст в кутията "test" и...хоп "Password Accepted!". Така...обаче

ако не ви бях казал паролата, никога нямаше да сетите може би :). Сега

целта на нашата задача с повишена трудност ще е да успеем да преодолеем

съобщението "Password rejected" и на негово място да получим "Password

Accepted". Разбира се тези две съобщения са съвсем принципни. Вместо "Password

Accepted" някоя програма може да ви даде достъп до свръх секретни файлове

от NASA (ама и аз си ги говоря едни понякога... :) ). Та хайде да се залавяме

за работа. Само информативно ви казвам програмката, която се състои от

един ред :)

If Edit1.Text = 'test' then ShowMessage('Password Accepted!') else

ShowMessage('Password rejected!');

Та както виждате без условен преход (if) е невъзможно една програма

да провери за съответствие между два елемента (в случая единия елемент

е стринга 'test' , а другия е текста, който сме въвели). В assembler сравняването

на два елемента (или казано операнда по-хакерски :) ) става с инструкцията

"cmp" от английското compare , което означава "сравнявам". Форматът и е:

cmp op1 op2

Тя изважда от пърия операнд втория, но не записва никъде резултата,

а просто установява състоянието на флаговете (дали op1=op2 , op1>op2 или

op1<op2)

До тук май няма нищо неясно (поне за мен :) ). Та след като процесора

сравни двата операнда op1 и op2, стойността на операцията може да бъде

получена със следните инструкции:

JA address - прескача на адрес address ако op1 > op2 иначе съответно

продължава изпълненето

JAE address - прескача на адрес address ако op1 >= op2

JB address - прескача на адрес address ако op1 < op2

JBE address - прескача на адрес address ако op1 =< op2

JE address - прескача на адрес address ако op1 = op2

JNE address - прескача на адрес address ако op1 <> op2 (различно)

Е добре. Явно някъде в програмата се прави такъв условен преход, но

къде? Всъщност това е един основен проблем при кракването на програми.

Нека видим как ще разберем. Пуснете W32DASM и заредете файла project1.exe.

Сега знаем, че след като натиснем бутона Check, ако не сме въвели правилния

текст получаваме съобщение "Password rejected". Следователно за начало

ще е добре да видим къде в кода е вмъкнат указател към този стринг. Натиснете

бутонът String Data References и ще видите всички стрингове ползувани в

програмата. Натиснете два пъти върху "Password rejected!" и както виждате

автоматично сте прехвърлен на адреса в програмата от където се извиква

съобщението. Сега да идем в по-ранните моменти на изпълнението на програмата

и да видим от къде сме дошли на този ред. Отидете два реда по-нагоре в

програмата където пише:

Referenced by a (U)nconditional or ©onditional Jump at Address:

|:ADDRESS ©

Този адрес е адреса от където е достигнато до тази част на кода, а ©-то

в края означава, че програмата е прехвърлена тук с условен преход. Точно

какъвто търсим!!!

Сега отидете на адреса ADDRESS в програмата. Там виждаме следната инструкция:

jne ADDRESS_2

Ето това е реда който ни трябва. Очевадно е, че някъде в кода са сравнени

стойностите на текстовата кутия и 'test'. Инструкцията JNE казва

"Ако са различни мини на ADDRESS_2". Така и става. Сега нашата цел е да

сменим инструкцията JNE с JE, която ще размени двете ситуации - вярна и

грешна парола. Така че тогава всяко нещо, което напишем (без 'test') ще

бъде третирано като вярна парола. Но как да сменим тази инструкция?

Това е най-лесната част в кракването съдейки по моя опит. Нека маркираме

линията "jne ADDRESS_2" и видим какво се изписва в статусния ред на програмата:

..... Code Data .... Offset OTMESTWANE .....

Именно това отместване ще ни свърши работа. То показва на колко байта

след началото на файла се намира посочената инструкция. В момента при мен

е 00040C01, така че ще работя с него (при вас ще е различно, запомнете

го). Сега затваряме W32DASM и пускаме шестнадесетичния редактор HackMan.

Изберете Edit->Goto и вътре напишете отместването, което сте получили от

W32DASM и ... вече сме на байта, който трябва да променим. Както виждате

той е с ASCII код 75 (шестнадесетично).

Сега остава само въпроса. На какво да го променим?

За целта пуснете MS-DOS prompt и стартирайте "debug"

За начало нека проверим дали 75 отговаря на инструкцията JNS

C:\WINDOWS>debug

-a 100 <enter>

237C:0100 JNE 100 <enter>

237C:0102 <enter>

-u 100 <enter>

237C:0100 75FE

JNZ 0100 <- инструкцията JNZ има

същия ефект като JNE

^

И ето сега видяхме, че на инструкцията JNZ отговаря на машинен код 75.

Сега казахме, че искаме от JNE инструкцията да стане JE. Използуваме

отново "debug"

-a 100

237C:0100 JE 100

237C:0102

-u 100

237C:0100 74FE

JZ 0100 <- инструкцията JZ

има същия ефект като JE

^

Този път като инструкция пишем JE и виждаме, че на нея отговаря код

74. Следователно единственото нещо, което остана е да променим онова 75

на 74. Ами нека го напрваим. Отидете пак на отместването получено от W32DASM

и 75 го променете на 74. Сега запишете файла и го стартирайте...ЕВРИКА.

Сега след като въведем някакъв текст получаваме "Password Accepted!"...точно

това, което целяхме.

Предполагам, че това малко документче ви е било от полза. Разбира се

това е само първия документ от една голяма поредица и предполагам всички

вие ще бъдете редовни читатели на тази колекция.

CopyRights:

|Razor|

razor@bulhack.org

 

 

 

Cracking Tricks част II

 

 

 

 

 

 

Прелог

 

Сега да помисля с какво да се запознаем днес...В част I видяхме как лесно можем да прескочим не добре построена парола. Днес нека видим как можем да накараме една програма да прескочи например създаването на определен прозорец. Много програмки с trial period показват такива досадни прозорци (GetRight, WinZip и още хиляди) когато им изтече срока. За съжаление по график в част I I I трябва да напиша как да се кракне подобно съобщение от апликация (ние у наше село още им викаме програма). Тук ще ви запозная с нещо подобно, отново във връзка с WinZip. Чудих се какво да измисля и след еднодневно мислене отдавайки всичките си ресурси на тази тема реших!. Ще премахнем съобщението, което се показва когато стартирате повече от едно копия на WinZip. Казано по-точно, направете следния опит:

1) Стартирайте WinZip и оставете отворен прозореца за регистрация (не натискайте "I Aceept")

2) Стартирайте още веднъж WinZip и получавате съобщението:

"Existing WinZip window is busy or has an active dialog box. Do you want to start another WinZip session?"

Ако потребителя отговори с "No", не се стартира втори път WinZip, а ако отговори с Yes се отваря още едно копие

 

Цел

 

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

 

Инструменти (или какво ще ви трябва)

 

W32Dasm - най-доброто след SoftIce

HackMan или друг шестнадесетичен редактор

Нерегистрирана версия на WinZip (за примера ползувам 6.2 така, че няма да е лошо и вашата да е такава)

Debug - това си го има в Windows

 

Препоръчително е и някакво API viewer-че и

Turbo Pascal 7.0 за писане на crack

 

Основа

 

Предполагам направихте опита от въведението и разбрахте за какво става въпрос. Пуснете си вашия любим деасамблатор W32Dasm и отворете файла winzip32.exe (ако не знаете къде се намира проверете от ShortCut-а му). Винаги най-трудно в едно кракване е да намерим от къде да го започнем. Нека помислим реда на показване на една стандартна диалогова кутия(каквато е нашата).

1) Зарежда се съобщението, което ще се покаже вътре

2) Показва се самата кутия

3) Програмата изчаква потребителя не натисне Yes или No

4) Проверява се какво е натиснал и в зависимост от това прескача на определена позиция в кода

 

Следвайки този принцип можем да намерим търсеното място по следния начин:

1) Натиснете бутона "String Data References"

2) Сега намерете в списъка стринга:

"Existing WinZip window is busy or has an active dialog box. Do you want to start another WinZip session?"

(май ще трябва да почакам :) )

3) Натиснете два пъти върху показания стринг и хоп вече сме прехвърлени на мястото в кода от където се прави препратка към него. При мен OffSet-а в статусния ред е 0000DCADh и това показва колко байта след началото на файла е този код (шестнадесетично разбира се)

 

Следва да намерим от къде се показва и самата кутия. Както казах след като се покаже кутията програмата не извършва никакви действия до като потребителя не отговори на запитването, така че е логично проверката за натиснат бутон да е веднага след кода за показване.

 

Диалогова кутия се създава чрез стандартна API функция MessageBoxA(от user32.dll). Натиснете върху бутона "Imported Modules and Functions" и от списъка изберете "USER32.MessageBoxA". W32Dasm веднага ви препраща няколко реда по-надолу:

:0040E8BD FF1580FA4D00 Call dword ptr [004DFA80]

:0040E8C3 83F806 cmp eax, 00000006

:0040E8C6 0F8507000000 jne 0040E8D3

 

Нека разгледаме тези три реда

Над първия ред пише "Reference to: USER32.MessageBoxA"

Следователно реда Call dword ptr [004DFA80] показва диалоговата кутия на екрана

Следващия ред сравнява регистъра EAX с 6, но защо?

При натискане на бутон от такава стандартна кутия, стойността на натиснатия бутон се съхранява в регистъра EAX. А защо точно 6? Отговора е прост. В Windows всеки бутон в стандартна диалогова кутия си има идентификатор. Ето ви и списък с идентификаторите на бутоните:

 

IDOK = 1

IDCANCEL = 2

IDABORT = 3

IDRETRY = 4

IDIGNORE = 5

IDYES = 6

IDNO = 7

 

Вижда се, че на Yes отговаря 6. Значи WinZip проверява дали е натиснато Yes. Ако това НЕ е така (jne = неравно) отива на адред 0040E8D3, на който се прекратява програмата. А съответно ако е натиснато Yes програмата продължава изпълнението си надолу. Сега от познанията от част I на този tutorial можете лесно да размените значенията на Yes и No, като jne го преобразувате в je. Но това не е цел на днешната тема и е както споменах е добре описано преди.

До тук добре. Разбрахме къде е кода, който показва кутията и прескача на определено място в зависмост от получения отговор. За да не се покаже кутията просто трябва да премахнем тези редове и всичко ще е тип топ. Обаче не може просто да изтрием тези символи от файла понеже ще объркаме структурата на EXE-то и ще получим грешка. Вместо това ще преобразуваме съществуващия код в код, който няма да изпълнява никакви действия. Най-простия вариант е да го запълним с инструкции NOP (с машинен код 90h), но този начин е в много случаи неприложим понеже много програми спират изпълнението си ако намерят в кода си повече от три NOP инструкции. Разбира се има и много други неща, с които можем да заменим кода. В нашия пример ще запълним премахнатия код с:

inc AX

dec AX

inc BX

dec BX

inc CX

dec CX

inc DX

dec DX

.... и пак отначало

 

Сега да видим къде трябва да променим кода. Натискаме два пъти върху линията:

:0040E8BD FF1580FA4D00 Call dword ptr [004DFA80]

и виждаме отместване (OffSet) 0000DCBDh. На това отместване се показва кутията. Сега отиваме три реда надолу където е

xor eax,eax

Виждаме неговото отместване 0000DCCCh. Следователно отместването на предишния елемент е 000DCCBh.

В крайна сметка сега трябва да запълмин с горните инструкции всички байтове с отместване от 0000DCBDh до 0000DCCBh или това с проста аритметика изчисляваме че са 15 байта.

Остава да видим какви са машинните кодовете на описаните инструкции. Пускаме си Debug и:

-a 100

2464:0100 inc AX

2464:0101 dec AX

2464:0102 inc BX

2464:0103 dec BX

2464:0104 inc CX

2464:0105 dec CX

2464:0106 inc DX

2464:0107 dec DX

2464:0108

-u 100

2464:0100 40 INC AX

2464:0101 48 DEC AX

2464:0102 43 INC BX

2464:0103 4B DEC BX

2464:0104 41 INC CX

2464:0105 49 DEC CX

2464:0106 42 INC DX

2464:0107 4A DEC DX

 

Ето виждаме кодовете им съответно шестнадесетично:

40 48 43 4B 41 49 42 4A

 

Сега стартирайте Hackman и отворете WinZip32.exe. Отидете на отместване 0000:DCBD и ще видите цифрите от W32Dasm:

FF 15 80 FA 4D 00 83 F8 06 0F 85 07 00 00 00 <- HackMan

 

:0040E8BD FF1580FA4D00 Call dword ptr [004DFA80]

:0040E8C3 83F806 cmp eax, 00000006 <- W32Dasm

:0040E8C6 0F8507000000 jne 0040E8D3

 

Значи не сте объркали нищо :)

Започнете да сменяте от FF до 00 съществуващите числа с получените наши. Тъй като имаме 15 цифри, а ние използуваме по две инструкции едновременно (например с inc AX увеличаваме стойността в AX с 1 и непосредствено след това с dec AX е смъкваме с 1), ако като 15-та цифра напишем "42", това би могло да обърка сериозно програмата. За това когато имаме нечетен брой цифри запълваме до последната двойка с горните инструкции и накрая слагаме например NOP (с машинен код 90). Следвайки тези правила ето какво би станало:

 

FF 15 80 FA 4D 00 83 F8 06 0F 85 07 00 00 00 <- старо

 

40 48 43 4B 41 49 42 4A 40 48 43 4B 41 49 90 <- ново

 

Ето сега запомнете файла (първо затворете W32Dasm), пуснете го два пъти и ....ГОТОВО!

Сега могат да се пускат безкрайно много копия на WinZip (до изчерпване на системните ресурси :) ) без никакви досадни съобщения. Остава само още едно малко нещо...написване на Crack, за да може всеки безпроблемно да си направи същия фокус.

 

Писане на Crack

 

За целта ще ползуваме Turbo Pascal 7.0 . Идеята на програмата е проста. Правим буфер със зададените нови стойности, знаем отместването (OffSet) и единствената ни работа е да отидем на дадения Offset и да запишем новия буфер. Ето сега и примерна програма:

 

Program WinZipCrack;

 

Const AuthorInfo = '--------------'#13#10'/ |) /\ / |/'#13#10'\ |\ |--| \ |\'#13#10+

'--------------'#13#10'WinZip 6.2 Crack by |Razor|';

{Informacia za awtora}

OffSet=$DCBD; {Poluchenoto otmestwane}

Buffer:Array[0..$E] Of Byte = ($40,$48,$43,$4B,$41,$49,$42,$4A,$40,$48,$43,$4B,$41,$49,$90);

{Nowite stojnosti}

Var CrackedFile:String; {Imeto na fajla, kojto shte se crackwa}

F:File;

 

Procedure Copyrights; {Prosto pokazwa awtora }

Begin

WriteLn(AuthorInfo);

End;

 

Function OpenFile(FileName:String):Boolean; {Otwaria file-a ili wryshta FALSE ako nqma takyw file}

Begin

OpenFile:=True;

Assign(F,FileName);

{$I-}

Reset(F,1);

{$I+}

If IOResult<>0 Then OpenFile:=False;

End;

 

Procedure CloseFile; {Zatwarq file-a}

Begin

Close(F);

End;

 

Begin

Copyrights;

CrackedFile:='WinZip32.Exe'; {Po podrazbirane file-a e winzip32.exe}

If ParamCount=1 Then CrackedFile:=ParamStr(1);

If OpenFile(CrackedFile)=True Then

Begin

Seek(F,OffSet); {Otiwame na otmestwaneto wyw file-a}

BlockWrite(F,Buffer,SizeOf(Buffer)); {Zapiswame bufera}

CloseFile;

End;

Else

Begin

Writeln('EXE File Not Found!');

Halt;

End;

Writeln;

Writeln('Crack Applied Successful!'); {Za radost na user-a :) }

End.

 

 

Е добре. Мисля че стана хубав tutorial. Но пак ви казвам, че тези неща са писани с WinZip 6.2. Евентуални несъответствия ще се дължат на друга версия на програмата

 

CopyRights

|Razor|

2001

 

/ |

Link to comment
Share on other sites

OllyDbg е нещо като "избора на новото поколение" за работа под XP, защото не спира целия windows като влезнеш в него и така можеш да си правиш справка в някой help или в IDA, освен това за него има разни скриптове за unpack и за anti-antidebug и сравнително по-трудно се детектва от SI (не за друго, ами заради по-малката му популярност)

 

А и има нов plugin които го прави невидим за защитите на програмите ;)

Link to comment
Share on other sites

@mafiot този туториал за Winzip e добър но ако използваш Ollydbg

не ти трябва нито W32dasm нито HIEW a само знания каде да сетнеш брйкпоинт и после просто да си въвведеш валидния сериал ;)

понеже скоро няма да се освободи място да направим така

1 стартираме OllyDBG

2 отваряме главното exe на WinZip през дебъгера а то е WinZip32.exe

3 от менюто горе даваме run или просто F9

koгато се зареди exe-то натискаме enter registration code

и вивеждаме следното Warez.ru

111111111

4 врущаме се във дебъгера и натискаме комбинацията Alt+F1

във отворилото се прозорче пишем

BP 004A9D11 натискаме Enter

после отваряме прозореца за регистрация и натискаме ОК

Olly брейква и долу а както виждате той е разделен на четири прозорчета

и долу в дясното прозорче като скролнем с мишката на долу ще видим нашият валиден сериал а именно 04A30B21

сега не искам да обяснявам защо точно на този адрес се слага брейкпойнт-а

и това е цялата процедура можете да пробвате за да се уверите колко е лесно и бързо

Link to comment
Share on other sites

BP 004A9D11 натискаме Enter

 

Пробвах това, което каза и си кракнах WinZip-a, но сега се чудя защо пишем точно BP 004A9D11, за други програми предполагам ще е различно. Ако може да разясниш как да разберем какво да напишем.

Link to comment
Share on other sites

Пробвах това, което каза и си кракнах WinZip-a, но сега се чудя защо пишем точно BP 004A9D11, за други програми предполагам ще е различно. Ако може да разясниш как да разберем какво да напишем.

 

Ами сега за да ти обясня защо точно пишем това трябва да ти обясня за асемблер

а това e много дълго за обяснение :wacko:

а това BP 004A9D11 е адреса на които слагаме брейкпойнт и когато програмата проверява сериала който сме въвели тя го сравнява с истинския

точно там OllyDBG го хваща и ни го поднася като на тепсия

и да за другите програми работата става по друг начин ;)

ако има интерес към темата мога да дам още тутки ;)

Link to comment
Share on other sites

ако има интерес  към темата мога да дам още тутки  ;)

 

Аз лично имам голям интерес. Ако може да обясниш как точно разбираме каде да сложим breakpoint. Аз лично нищо не разбирам от асемблер, но имам опит при C++, ако това по някакъв начин може да помогне, ако не ще те помоля да обясниш малко за асемблера.

Link to comment
Share on other sites

Аз лично имам голям интерес. Ако може да обясниш как точно разбираме каде да сложим breakpoint. Аз лично нищо не разбирам от асемблер, но имам опит при C++, ако това по някакъв начин може да помогне, ако не ще те помоля да обясниш малко за асемблера.

Сега точно нямам време да обяснявам за асемблер а и аз ако не си прочел всички постове казах че се занимавам със това от много скоро и знам много малко за асемблера по добре си намери някаде тутки за асемблер ако искаш можеш да погледнеш Тук

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...