Directory Printer 3.0: serial fishing

 

05/04/2000

by  "[Paradox Evil]"

 

 

UIC's Home Page

Published by Quequero

Ma che bello! Il mio primo tute...W O W!


Il programma target è un semplice, ma efficiente "Stampatore di directories" (scusate il mio italiano.... :--| ), utile per avere sottomano la lista delle proprie dirs, con alcune funzioni interessanti

Qualche MIO commento sul tutorial significa che sta parte sarebbe riservata a me :).....Cmq non c'è nessunissimo problema, bravo paradox, hai fatto un ottimo tute, soprattuto molto completo, continua ad impegnarti :)

Sperando che non sia anche l'ultimo :-|

 
E-mail: [email protected] ....Sicuro? NdQue
ICQ# 58925902, Paradox_E sul canale IRC  #crack-it
UIC

Difficoltà

(X)NewBies ( )Intermedio ( )Avanzato ( )Master

 

Andremo a "visitare" il target in questione per carpire il suo bel seriale ed essere così registrati a tutti gli effetti!!!


Directory Printer 3.0: serial fishing
Written by [Paradox Evil]


Introduzione

"Ma che beeeello, un programma che mi stampa le directories !!!WOW lo voglio lo voglioooooo !!!"

Tools usati

Soft-ICE (versione 4.0)
W32Dasm (versione 8.93)

Una cosa informe che sta dentro ad un'altra cosa che si chiama scatola cranica.....

URL o FTP del programma

http://ourworld.compuserve.com/homepages/galcott

Notizie sul programma

Il target necessita di un serial per la registrazione..Ebbene, vi farò vedere come prendere quel bel numerino ed inserirlo nell'apposito box di registrazione.

Essay

We, salve a tutti!! Sono nuovo della "ciurma", ma ho comunque deciso che fare un tutorial fosse un modo per farmi conoscere (e magari, perché no, apprezzare) da tutti gli appassionati di cracking. Non mi voglio dilungare troppo con messaggi pallosi e schifezze varie (semmai lo faccio dopo :-D) e perciò, andiamo subito ad esaminare sto cacchio di target. Ce l'avete i programmi richiesti? Si? Bene! Disponente di un cervello (possibilmente funzionante)? Si?!? Molto bene!Allora facciamo partire il nostro buon Directory Printer and LET'S GO!!

Una volta che il nostro target è sul nostro schermo, facciamo poppare sice (Ctrl-D) e settiamo un BPX GetWindowTextA e un BPX GetDlgItemTextA (non si sa mai......), quindi chiudiamo sice (x + invio oppure F5); premiamo quindi su 'Help' e quindi su 'Enter Registration' Code  nel nostro bel programmino e ci troveremo davanti alla form di registrazione con un bel Edit pronto ad accogliere il serial.Allora noi che facciamo? Il seriale giusto non lo conosciamo, ma non ce ne può fregà de meno; mettiamo un qualsiasi seriale dentro l'Edit (io ho messo 12345678) e quindi premiamo OK....E sorpresa delle sorprese....sice non poppa!!! Ma come? E quei due BPX che ho messo? Non servono a nulla?!? Evidentemente no!! Ma noi non ci demoralizziamo. BC * per cancellare i BPX precedentemente impostati e un bel BPX HMEMCPY, quindi F5 (tanto lo so che digitare x e premere invio e uno sforzo immane, per cui d'ora in poi per chiudere sice userò la Function Key F5).Torniamo nuovamente sulla form di registrazione e premiamo di nuovo il tasto OK.E con grande gioia notiamo che stavolta sice si apre!Evvaiiii!!! Premiamo F11 per uscire dalla chiamata all'API e F12 fino ad arrivare all'IP: 0042992A. Uhm...c'è qualcosa che non và, ed è esattamente quel RET poco dopo il nostro punto di arrivo; ok, premiamo nuovamente F12 e..siamo nuovamente daccapo.....altro RET. Continuate allora a premere F12 fintanto che non arriverete all'IP 0047BE77. Come è facile notare non segue nessun RET e ci troviamo di fronte al codice che genererà il nostro seriale,WOW!

Siamo esattamente qui:

:0047BE77    mov eax, dword ptr [ebp-08] ----> in questo momento EAX contiene il valore esadecimale del seriale inserito
:0047BE7A    lea edx, dword ptr [ebp-04] ----> muove il valore all'indirizzo EBP-04 in edx;EAX in questo momento contiene il seriale inserito
:0047BE7D    call 00408C20
:0047BE82    mov eax, dword ptr [ebp-04] ----> Dopo la call precedente [EBP-04] contiene il seriale inserito che viene nuovamente messo in EAX (modificato in precedenza dalla call)
:0047BE85    push eax                    ----> Salva il nostro seriale nell stack
:0047BE86    lea edx, dword ptr [ebp-0C]
:0047BE89    mov eax, 0027F4CC           ----> copia il giusto seriale in eax
:0047BE8E    call 00408DD4               ----> in questa call il seriale giusto viene caricato in ECX
:0047BE93    mov edx, dword ptr [ebp-0C] ----> adesso [EBP-0C] contiene il seriale giusto che viene caricato in EDX
:0047BE96    pop eax                     ----> prende dallo stack il seriale inserito
:0047BE97    call 00403FBC               ----> qui avviene la comparazione fra seriale giusto e sbagliato con le relative conseguenze; entriamo nella call con F8
:0047BE9C    jnz 0047BF92

CALL at Addresses:
|:00088FBC   , :00089131   , :0008BE97   , :0008D0B0   , :0008DF7A       (.....)

:00403FBC    push ebx
:00403FBD    push esi
:00403FBE    push edi
:00403FBF    mov esi, eax                  ----> copia il nostro seriale in ESI
:00403FC1    mov edi, edx                        ----> copia il seriale giusto in EDI
:00403FC3    cmp eax, edx                             ----> confronta il seriale giusto con il nostro
:00403FC5    jz 0040405A                                 ----> salta a 0040405A se i serial sono uguali, altrimenti procede oltre

Nel nostro caso, non essendo uguale il programma non salterà e procedendo con lo stepping si tornerà al JNZ 0047BF92 all'indirizzo 0047BE9C che ci porterà dritti al messaggio d'errore.Ma se inseriamo il serial giuato che abbiamo all'indirizzo 0047BE8E (e cioè 2618572), tornando nuovamente in sice verremo proiettati invece verso la messagebox "You have been succesfully registered".Good work!
 
 

Note finali 

Oh che bello, eccoci ai ringraziamenti:

Allora, il primo spetta di diritto a DudeZ[NRG], il mio cracking starter: TNXXXXXX A LOTS!!!
Poi non posso non citare: YADO, ALoR e MALATTIA che sono stati i "secondi" che ho contattato per avere i primi aiuti
Infine un TNX tutti quelli che in #crack-it mi danno una mano (o anche due) e un "CIAUZ" al canale in generale.
Un saluto particolare infine ad AL_BIECO, alla CDT nella sua totalità, ad ANDREAGEDDON, DED e a JHONES.
Alla prossima, gente
ByeZ

[Paradox Evil]

Disclaimer

Quanto è stato detto in questo tutorial è puramente a scopo informativo e senza nessuna intenzione a fini di lucro.Se siete interessati all' appplicazione o gioco trattato in questa pagina siete pregati di comprarlo o pagare i relativi costi all'autore o a chi per esso.Tutto quanto detto non ha valore se usato per scopi illegali o comunque che ledano privatamente e/o pubblicamente l'autore o gli autori dell'applicativo descritto nel presente tutorial.Noi reversiamo solo a scopo didattico e non con fini illegali.

 
UIC's page of reverse engineering, scegli dove andare:

Home   Anonimato   Assembly    CrackMe   ContactMe   Forum   Iscrizione      
       Lezioni    Links   Linux   NewBies   News   Playstation        
  Tools   Tutorial   Search   UIC Faq

UIC