Eurobar Anti-Sleep
(simple cracking)


22/09/2000

by "The Hellfish"

 

 

UIC's Home Page

Published by Quequero


Se provi a crackare un programma puoi vincere o perdere...

Il target non risulta affatto difficile ma ho deciso di pubblicarlo lo stesso dal momento che il crack per eurobar può interessare :) cmq bravo...E poi sei l'unico che ha scritto nel form aggiornato :)

...ma se non tenti di sicuro non vinci.
UIC's form
Home page se presente... Me l'hanno tirata via :( 
[email protected]
johnes su #crack-it 
UIC's form

Difficoltà

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

 

In questo tut spiegherò come fottere una furbata dei programmatori della Eurobar di Payland


Eurobar Anti-Sleep
(simple cracking)
Written by The Hellfish

Introduzione

Tutto iniziò quando decisi di lasciare andare la mia eurobar mentre andavo a cenare ma quando sono tornai mi sono trovato davanti la barra andata in sleeping (in pratica non accumulava + un kez...). Allora vado sul sito di payland e scopro ke la barra va in sleeping se non si muove il mouse per più di 2 minuti. Azz allora vado alla ricerca (su consiglio di BlackDruid) di un emulatore di movimento per mouse. Lo trovai ma mentre lo stavo scaricando decisi di apportare una piccola modifica alla barra: Perkè non fare in modo ke non vada mai in sleeping?

Tools usati

Win32Dasm 8.93
Hacker's View 6.02

URL o FTP del programma

http://www.payland.it/

Notizie sul programma 

'Sta barra non ha nessuna protezione tipo crc check etc. Al limite, se si può kiamare protezione, devo farvi notare ke se cambiate il nome al programma (client.exe) esso non partirà. 

Essay

Allora innanzi tutto disassemblate il prog (client.exe) e in 10 secondi dovrebbe avere finito. Dopodikè andate in String Data Reference e scorrete un po'. Indovinate cosa sceglieremo? Già, avete ragione, quella con scritto "Sleeping..."

CALL at Addresses:

|:004051FC , :0040774A

:00407760 sub esp, 00000008

:00407763 push esi

:00407764 mov esi, ecx

StringData Ref from Data Obj ->"Sleeping..."

:00407766 push 0040D9AC

:0040776B lea ecx, dword ptr [esi+00000160]

Eccola qui la nostra STR, da qui in poi in prog effettua la routine ke manda la barra a dormire. Noi non vogliamo ke lo faccia giusto? Allora vediamo ke c'è scritto sopra: ci sono 2 call ke kiamano questa routine, non c rimane ke risalire il codice, perciò intanto andiamo a 4051FC

Jump at Addresses:

|:00405141, :0040514F(C)

:004051C1 cmp dword ptr [0040E364], edi

:004051C7 jne 0040520B --> Jump importante 

Qui ho eliminato un pezzettino di codice...

:004051F4 Call dword ptr [0040B3BC]

:004051FA mov ecx, esi

:004051FC call 00407760  --> La famosa kiamata

:00405201 mov dword ptr [0040E364], 00000001

Jump at Addresses:

|:00405169, :004051BF, :004051C7, :004051DD

:0040520B mov ecx, dword ptr [esp+34]

:0040520F mov edx, dword ptr [esp+38]

:00405213 sub esp, 00000010

:00405216 mov eax, esp

Qui ne ho eliminato un altro pezzetto...

Come potete vedere se non avviene il jump a 4051C7 il programa continuerebbe la sua esecuzione ed arriverebbe ad eseguire la CALL maligna, e noi non vogliamo ke questo avvenga. Perciò modifikiamo il jne in jump, skiacciando F2 nell'hiew. Cambiamo jne in jmp e l'hiew ve lo metterà a posto da solo nel codice, skiacciamo F9 e la nostra prima modifica è fatta. Quello ke avviene dopo il jump non ci interessa perkè tanto il nostro programma non eseguirà quei comandi... Bene adesso andremo a vedere quell'altra call a 40774A

Jump at Address:

|:004076CA

 Piccolo pezzo di codice tagliato (non vi pigliate male tanto se lo disassemblate lo vedrete tutto dal vivo)

:00407743 Call 00409D9A

:00407748 mov ecx, esi

:0040774A call 00407760 --> Call balorda

:0040774F pop esi

:00407750 ret

Ed eccoci alla call. Vediamo molto kiaramente ke in questa routine la call malefica è condizionata (ve lo dico io e comunque nel codice lo vedrete) da un jump nella locazione 4076CA. Non ci rimane ke andarci

:004076C0 mov eax, dword ptr [0040E368]

:004076C5 push esi

:004076C6 test eax, eax

:004076C8 mov esi, ecx

:004076CA je 00407718 --> Jump importante

Ennesimo pezzetto di codice strippato

:00407717 C3 ret

Bè eccoci qui, scorrete. A 4076CA c'è il jump ke controlla la call nefasta (non so più ke invntarmi per definire ste call). Questo jump guarda se si può proseguire a caricare crediti o se è ora ke la barra vada a fare un riposino. Se vede ke è il momento il jump salta cosa ke noi non vogliamo fargli fare. Niente di più semplice quindi ke modificare quel je in 2 nop (il je sono 2 bytes e per 2 bytes ci vogliono 2 nop). Per fare questo andiamo nel hiew, skiacciamo F5, insieriamo l'offset, skiacciamo F3 e digitiamo 2 volte il 90. Dopodikè premiamo F9 e quindi ESC. La nostra barra d'ora in poi rinuncerà a dormire per permetterci di guadagnare anke quando ce ne stiamo sbattendo della pubblicità.

                                                                                                                 The Hellfish
Note finali

Anke questa è fatta. Se non sono stato abbastanza kiaro avete la mia e-mail la sopra. Ora vorrei fare una precisazione: i furbi di Payland aggiornano la barra ogni tot di giorni perciò non so quanto ancora potrà funzionare questo crack, quindi quando vedrete ke non funzikerà più sarà arrivato il momento di ricrackare il programma. Non penso sia difficile, in fondo il metodo l'avete capito (spero). Se trovate il modo per fare un crack universale fatemelo sapere... Comunque ora passo ai saluti. Saluto: Paradox Evil ke non so dove sia andato a finire, Il Bieco ke con le sue traduzioni d'inglese mi sta tirando scemo, Quequero perkè il Que è il Que, Andreageddon, Ded, Ritz, Tin_Man, BlackDruid ke senza lui non mi sarebbe mai venuta in testa sta idea, tutti i membri di #crack-it e della ML. Ciauz...

Disclaimer

Vorrei ricordare che il software va comprato e  non rubato, dovete registrare il vostro prodotto dopo il periodo di valutazione. Non mi ritengo responsabile per eventuali danni causati al vostro computer determinati dall'uso improprio di questo tutorial. Questo documento è stato scritto per invogliare il consumatore a registrare legalmente i propri programmi, e non a fargli fare uso dei tantissimi file crack presenti in rete, infatti tale documento aiuta a comprendere lo sforzo immane che ogni singolo programmatore ha dovuto portare avanti per fornire ai rispettivi consumatori i migliori prodotti possibili.
Noi reversiamo al solo scopo informativo e di miglioramento del linguaggio Assembly.