Copy Link
Add to Bookmark
Report

Come Crackare WinZip 7.0

DrWatson's profile picture
Published in 
guide hacker
 · 6 years ago

Come Crackare WinZip 7.0

Thursday 4th of March 1999

Scritto da


 
--==--==--==--
-=[CerberuS]=-
==--==--==--==


Ciao e benvenuto al mio quarto tutorial. Questo è relativo al crackare Winzip 7.0. Ci sono due modi per farlo: Rimuovere la finestra di controllo del numero seriale, o (meglio) trovare il guisto numero seriale. Inizierò con l’elencare i programmi richiesti e dove trovarli.


Richiesto:
· Soft-Ice per Windows 3.23
· HView 6.00

Puoi trovarli entrami nella homepage del Crackstore (http://www.crackstore.com/).

· Trovare il giusto numero di serie:

Ogni programma con un controllo di numero di serie ha un punto debole. Il crackatore si deve concentrare su questo punto. Un semplice confronto, tra il seriale inserito e quello giusto. Puoi trovare il confronto (in inglese: compare) con Numega Soft-Ice. Il miglior debugger disponibile attualmente.

Prima di tutto controlla che WinICE sia caricato. Nell’Autoexec.Bat dovresti trovare la seguente linea:

[Path]\WinICE.EXE

Questo è un programma DOS, che è residente(TSR) e appare quando richiesto.

Carica WinZip con “Symbol Loader”, che puoi trovare nella cartella di Soft-Ice. WinZip appare, perché il programma viene caricato in memoria con “Symbol Loader”. Esci da Soft-Ice. Questo può essere fatto premendo [F5]. Winzip comincia a girare e vedrai la schermata come in fig.1.

 
+----------------------------------------------------+
| THANK YOU FOR TRYING WINZIP! |
| |
| This is a fully functional...this notice. |
| |
| You can order...www.winzip.com |
| |
| [View Evaluation License] [Enter Registration Code] |
| |
| I understand...registration fee |
| |
| [I Agree] [Quit] [Ordering Info] |
| |
+----------------------------------------------------+

Come ti potrai immaginare, devi premere il pulsante[Enter Registration Code]. La seguente schermata appare:

 
+----------------------------------------------+
| If you paid the WinZip registration fee: |
| ... |
| ... |
| ... |
| ... |
| |
| Name : [ ] |
| Registration #: [ ] |
| |
+----------------------------------------------+

Inserisci un nome e un codice di registrazione. Io ho scelto “Cerberus” e “123321”. E’ bene usare testi di differente lunghezza, percè questo ci resterà utile quando identificheremo la stringa. Come tutti sanno Windows lavora con le DLL(Dinamic Linked Library – Librerie Collegate Dinamicamente). In queste DLL puoi trovare alcune funzioni comuni, come le MessageBox:

Fig 3: Una MessageBox di Esempio
Pin it
Fig 3: Una MessageBox di Esempio

Puoi identificare una MessageBox dall’icona alla sinistra del testo(questo non è sempre vero NDLLS):

Fig 4: Icone standard delle MessageBox <br>
Pin it
Fig 4: Icone standard delle MessageBox

Ma anche alcune funzioni invisibili, come il controllo dello spazio libero su un drive, o il recupero del testo scritto in una casella di testo(textbox). Ti elenco le più importanti funzioni e il loro utilizzo:

Funzione Risultato
GetDiskFreeSpaceA Ritorna lo spazio libero di un drive
GetDiskFreeSpaceExA Ritorna lo spazio libero di un drive
GetDiskFreeSpaceExW Ritorna lo spazio libero di un drive
GetDiskFreeSpaceW Ritorna lo spazio libero di un drive
GetDriveTypeA Ritorna il tipo di drive (Hard Disk, Floppy, CD-Rom)
GetDriveTypeW Ritorna il tipo di drive (Hard Disk, Floppy, CD-Rom)
GetVolumeInformationA Ritorna il nome del volume
GetVolumeInformationW Ritorna il nome del volume
lstrcmp Confronta una stringa
lstrcmpA Confronta una stringa
lstrcmpW Confronta una stringa
DialogBoxParamA Crea una finestra di Dialogo
MessageBoxA Crea una MessabeBox
MessageBoxW Crea una MessabeBox
GetDlgItemTextA Legge il testo di una casella di testo
GetWindowTextA Legge il testo di una casella di testo

Table 1: Alcune tra le funzioni più importanti


Quando lavori con un programma a 16 bit, la “A” deve essere esclusa dalla funzione. Quindi “MessageBoxA” diventa “MessageBox”. Ma come fare a riconoscere la differenza? Ci sono molti modi per farlo, ma ne descriverò due in particolare. Un primo modo è di selezionare il file, click di destro, lanciare il programma QuickView(un utility Microsoft freeware, mi sembra NDLLS). La prima linea di testo di dice che tipo di programma è. Il secondo modo è disassemblare il file. Questo può essere fatto con W32DASM. Se gli offset sono di quattrocaratteri(da 0-9 e da “A” a “F”) allora è un programma a 16 bit o un programma DOS, se ci sono otto caratteri è a 32 bit. Quando carichi Soft-Ice lo puoi riconoscere nello stesso modo. Puoi dire a Soft-Ice quando deve apparire per bloccare l’esecuzione di una funzione(breakpointing). Questo può essere fatto con “BreakPoint on eXecution”:BPX function.

Per es:
BPX GetDlgItemTextA.

Prima di tutto cerchiamo di vedere se il programma è a 16 o 32 bit. Carica il programma in Soft-Ice e controlla il numero di caratteri dopo i due punti(“:”). OK, sono 8.

Vai in Soft-Ice e digli che deve apparire quando il programma vuole leggere il testo dalla textbox:
BPX GetDlgItemTextA
BPX GetWindowTextA

Esci da Soft-Ice premendo [F5].
Premi [OK].
Soft-Ice appare subito.

Soft-Ice si ferma alla prima istruzione della funzione. Visto che questa istruzione non è specifica del programma, non troverai la protezione qui. Torna al programma originale premendo [F12] finchè non vedi nella finestra del codice il programma su cui stai lavorando. ‘EAX’ contiene la lunghezza della stringa che hai inserito. Ed è uguale allo username. Quindi esci da Soft-Ice e Torna subito in Soft-ICE. Premi [F12] di nuovo diverse volte.’EAX’ ora è uguale alla lunghezza del numero di serie inserito. Non abbiamo più bisogno dei primi breakpoint quindi possiamo disabilitarli con “BD *”. Il testo che hai inserito è posizionato in memoria e l’unica cosa da fare è cercarlo. Puoi cercarlo con l’istruzione “S”. Scrivi:


 
S CS:0 L FFFFFFFF «123321»
^ ^ ^ ^ ^ ^-> il numero seriale che hai inserito
| | | | -> L’ultimo offset da cercare
| | | -> Parte standard ell’istruzione
| | -> Il primo offset da cercare
| -> Il segmento dove cercare
-> Istruzione



Troverai qualcosa dl genere(vista la strana natura della memoria i tuoi numeri saranno probabilmente differenti!):

Pattern found at 015F:0047D958 (testo trovato alla posizione…)

Ecco dove vogliamo lavorare. Diciamo a Soft-Ice che deve apparire quando il programma accede a questa locazione. Questo può essere fatto con l’istruxione “BPM”. Devi sapere la differenza tra “BPM” e “BPX”. “BPM” è per le locazioni di memoria, usato normalmente per i breakpoint sulle variabili, “BPX” è per le locazioni fisiche, per trovare le chiamate nel programma su disco.Scrivi:

 
BPM 015F:0047D958
^-> Inserisci qui l’offset trovato!

Ora, quando un programma vorrà fare qualcosa con questa locazione, Soft-Ice apparirà.Usciamo da Soft-ICE e vediamo quando apparirà

Prima la locazione di memoria in [ECX] viene mossa in EAX. Nessun confronto…
Esci da Soft-Ice di nuovo.

Poi la locazione di memoria in [ESI] è confrontata il byte finale della stringa(00h). Nemmeno questo è buono…
Esci da Soft-Ice di nuovo.

Poi [EDX] con lo spazio byte(20h). Ancora non è buono…
Esci da Soft-Ice di nuovo.

Poi [ESI] con la byte finale della stringa 00h. Non è buono…
Esci da Soft-Ice di nuovo.


[ESI] è spostato in AL,[EDI] è spostato in AH e poi queste locazioni sono confrontate. Uno di questi è il nostr, quindi l'’ltro deve essere il codice corretto! Vai alla locazione "MOV AL, [ESI]"

con [F10]. Controlla l’offset con “D ESI”. Questo è il tuo seriale. Poi controlla alla locazione di memoria di [EDI] con “D EDI”. Nella scheramata dati(DATA screen) puoi vedere un numero che sembra un seriale. Il mio era “8D9F0c20”. Se non puoi trovare lo schermo, scrivi “wd”. Se nessuna schermata è stata aggiunta ma un’altra è stata tolta, ripeti l’istruzione e controll attentamente le schermate. Disabilita tutti i breakpoint o Soft-Ice continuerà ad apparire e non non lo vogliamo “bd *”.

Esci da Soft-Ice e scrivi il giusto numero di serie nella casella di testo. Premi OK, e sei registrato! Molto semplicemente.

Exit Soft-Ice and type the found correct serial in the serial-number box. Press [OK] and it’s registered! You see very simple!

· Rimuovere la schermata di controllo del numero di serie.

Ad essere onesti non ne parlerò qui, perché un mio amico, Acid FReDDY, mi ha chiesto di rimuoverla per lui, ma ho avuto il risultato sgradito di non poter più aprire i file zip. Non mi chiedete perché, soltanto non funziona. Se volete sapere come fare, comunque, contattatemi.

E comunque, per altre domande e commenti, mandate una e-mail(in inglese):

Cerberus_x@hotmail.com

Ecco qui. Spero tu abbia imparato(molto) da questo testo e in caso contrario, non esitare a contattarmi!


Saluti,
Cerberus

Liberamente tradotto e commentato da littlelostsoul@hotmail.com

← previous
next →
loading
sending ...
New to Neperos ? Sign Up for free
download Neperos App from Google Play
install Neperos as PWA

Let's discover also

Recent Articles

Recent Comments

Neperos cookies
This website uses cookies to store your preferences and improve the service. Cookies authorization will allow me and / or my partners to process personal data such as browsing behaviour.

By pressing OK you agree to the Terms of Service and acknowledge the Privacy Policy

By pressing REJECT you will be able to continue to use Neperos (like read articles or write comments) but some important cookies will not be set. This may affect certain features and functions of the platform.
OK
REJECT