____________________________________________________________________________________
_________\ | __________
/ \ __-+- __ | /\
/___________/ /'( |_ )`\ |________/ \
| \ / / . \/^\/ . \ / /
\ \ / _)_`-'_(_ \ / /
\ \ /.-~ ).( ~-.\ / /
\ \ /' /\_/\ `\ / /
\ / __ ___ " __" __ _ _ \/ /
\/ / _)( ,) ( ) / _)( ) ) \__/_
( (_ ) \ /()\( (_ ) \
\__)(_)\_)(_)(_)\__)(_)\_)
___ __
( ,\o l a n d ( )
) _/ cRACKING )(__
(_) gROUP (____)
____ /\
/ \ / \
/\ \ / /
\ \ / /
\___\___/
_______________________________________________________________________________________
CrackPl prezentuje
_______________________________________________________________________________________
Crack EditPlus 1.1 by janaz
Poniewaz na liscie pojawilo sie wiele wypowiedzi zeby
zamiast crackow/seriali umieszczac informacje w jaki sposob
do tego dojsc. Wobec tego zaprezentuje w jaki
sposob zlamalem EditPlus 1.1. Mam nadzieje ze komus te
informacje sie przydadza. Uzywalem do tego SoftIce i Hiew
Zaczynamy od uruchomienia programu i rejestracji. Dane podajemy w 2
polach tekstowych. Oczywiscie pojawia sie okienko informujace o blednym
numerze. Zastawiamy w SoftIce breakpointa na uruchomienie funkcji
odczytujacej informacje z pol tekstowych. wykonujemy to poleceniem:
bpx getwindowtexta
Wracamy do programu, podajemy swoje dane i jakis numer, najlepiej taki
ktory zapamietamy a nie ciag losowych znakow. Po potwierdzeniu OK znajdziemy
sie z powrotem w SoftIce. Program zatrzymal sie w momencie zczytania pierwszego
pola (username) naciskamy ctrl+d aby program zatrzymal sie w miejscu zczytania
serial numberu a nastepnie f11 aby przeszedl do miejsca wyjscia z tej funkcji.
po kilku wcisnieciach f10 (wykonanie pojedynczej instrukcji)
zobaczymy nastepujacy kod:
0043D671 MOV EDX,[ESP+0C]
0043D675 LEA ECX,[ESP+10]
0043D679 PUSH EDX
0043D67A PUSH ECX
0043D67B CALL 00465E80
dwie pierwsze instrukcje laduja do ecx adres serial-numberu poprawnego
wygenerowanego przez program a do edx adres seriala wpisanego przez nas
Mozna sie o tym przekonac wpisujac:
d ecx
d edx
Sprawdzmy co dzieje sie dalej. Dwie nastepne instrukcje odkladaja na stos te
adresy. Po co to sie dzieje? Te wiadomosci bedace na stosie sa informacja dla
procedury porownujacej oba seriale wywolywanej instrukcja CALL. Procedura widzi jedynie
adresy obu serial numberow. Jezeli zamiast PUSH EDX wpiszemy PUSH ECX wtedy na stos
odlozy sie adres do poprawnego seriala oraz adres do... poprawnego seriala!!
Procedura porowna je i oczywiscie beda takie same!!
Crackujac program w tym momencie wyszedlem z SoftIce i ukazal sie komunikat
informujacy o poprawnej rejestracji. Dumny z siebie wyszedlem z programu i uruchomilem
go ponownie i w tym momencie porazka - program zada rejestracji. A to spryciarz
pewnie to co wpisalem zapamietal w pliku albo w rejestrze. Ponownie uruchomilem SoftIce.
Oczywiscie zmienilem tak jak poprzednio PUSH EDX na PUSH ECX i zobaczylem co bedzie dalej.
Po kliku wcisnieciach F10znalazlem ciag instrukcji:
0043D687 MOV EAX,[ESP+0C]
0043D68B MOV ECX,[ESP+08]
0043D68F PUSH EAX
0043D690 PUSH ECX
po sprawdzeniu co znajduje sie pod adresem eax i ecx wiedzialem ze sa to informacje ktore beda zapisane
w rejestrze. Otoz pod eax jest serial ktory wpisalem (niepoprawny) a pod ecx moj username. Wynika z tego ze
program zapisuje te dane i zawsze po uruchomieniu sprawdza czy serial zgadza sie z username.
Nalezy to jakos ominac. Ale skad tu wziac poprawny serial. Otoz okazuje sie ze przed
wykonaniem tych instrukcji pod adresem ecx znajduje sie jeszcze prawidlowy serial. (Nalezy jeszcze zauwazyc
kolejnosc wpisywania na stos. Pierwszy w kolejnosci jest adres seriala (eax) a drugi username (ecx))
Tak wiec na stos nalezy wpisac ecx zanim do ecx zostanie wpisany adres username. Powyzszy ciag
instrukcji zastepujemy zatem nastepujacym:
MOV EAX,[ESP+0C] //adres naszego seriala
PUSH ECX //ale na stos odkladamy adres poprawnego seriala, ktory jest jeszcze w ecx
MOV ECX,[ESP+0C] //adres username (poprzednio bylo +08 ale po odlozeniu ecx na stos esp zmalalo o 04)
PUSH ECX //i adres username na stos
Po tych zmianach EditPlus dziala bez zarzutu. Moze nie jest to zbyt elegancki sposob lamania programu
gdyz ingeruje bezposrednio w kod ale jest bardzo prosty i skuteczny nie ma niepewnosci ze serial zostanie
zle wygenerowany gdyz jest generowany przez sam program. Poza tym przedstawiony trik sprawdza sie
w wielu programach.
Jezeli czytasz jeszcze to co napisalem to dzieki za uwage :). Mam nadzieje ze ktos sie nauczyl czegos nowego
Sory jezeli cos jest pogmatwane i nie mozna tego zrozumiec, ale od tego sa pytania
Wyszukiwarka
Podobne podstrony:
cracokwanie kurs musk1[1]cracokwanie kurs u crack3cracokwanie kurs GetRight331cracokwanie kurs katcdcracokwanie kurs VCLCRKcracokwanie kurs ftpcontrcracokwanie kurs winpoppluscracokwanie kurs winzip70cracokwanie kurs tutorial2cracokwanie kurs Tigercracokwanie kurs janio1cracokwanie kurs u crack2cracokwanie kurs How to XARA 3Dcracokwanie kurs WINFAXcracokwanie kurs locus32cracokwanie kurs ?lphi5więcej podobnych podstron