Hai mai desiderato sapere come un programma si protegge dall'essere copiato? Con gli strumenti giusti, puoi esaminare il funzionamento interno di un programma e sperimentare il reverse engineering. Avrai bisogno di avere una solida conoscenza della programmazione degli assembly e del codice esadecimale per iniziare e un'app di disassemblaggio. Una volta acquisita familiarità con il codice, è possibile modificare le DLL in modo che i programmi corrispondenti non debbano mai essere registrati o acquistati.
Passi
Passaggio 1. Imparare la programmazione dell'assieme e la manipolazione del codice esadecimale
Se vuoi decifrare la maggior parte del software, dovrai avere una buona conoscenza dell'assembly, che è un linguaggio di programmazione di basso livello. L'assembly è derivato dal linguaggio macchina e ogni linguaggio assembly è specifico per il tipo di computer che stai utilizzando. La maggior parte dei linguaggi assembly è espressa tramite binario ed esadecimale.
Passaggio 2. Installare un disassemblatore
Per esaminare e modificare le DLL, avrai bisogno di diversi strumenti, incluso un disassemblatore. IDA Pro è un'ottima opzione, poiché è un disassemblatore e un debugger. Fortunatamente è disponibile una versione gratuita da https://www.hex-rays.com/products/ida/support/download_freeware, sebbene sia molto più limitata nelle funzionalità rispetto alla versione Pro. Puoi anche provare dotPeek, che è un decompilatore che supporta DLL che decompila il codice assembly. NET in C#. Un'altra opzione è OllyDBG, che ti consente di aprire file DLL gratuitamente.
Passaggio 3. Aprire l'applicazione che si desidera craccare nel disassemblatore
Il processo è leggermente diverso a seconda del disassemblatore che stai utilizzando. Questo ti mostrerà quali file DLL vengono caricati dal programma. Utilizzare il debugger per esaminare quali funzioni vengono chiamate dalla DLL.
Passaggio 4. Trova la funzione contatore
Molti programmi utilizzano un timer per la protezione dalla copia e, allo scadere del tempo, l'utente non è più in grado di accedere al programma. L'obiettivo è trovare questo codice contatore e quindi ignorarlo.
Se il programma che stai craccando utilizza una forma di protezione diversa, dovrai cercarla
Passaggio 5. Impostare un punto di interruzione sul contatore
Una volta isolata la funzione contatore, imposta il disassemblatore in modo che si rompa quando viene incontrato. Ciò ti consentirà di esaminare il codice esatto che si verifica quando viene chiamata la funzione contatore.
Passaggio 6. Modificare il codice contatore
Ora che hai trovato il codice per la funzione contatore, puoi modificare il codice in modo che il contatore non raggiunga mai il punto in cui ti esclude dal programma. Ad esempio, potresti fare in modo che il contatore non possa contare fino al limite di interruzione o puoi aggirare il contatore saltandoci sopra.'
Passaggio 7. Ricompila il software appena craccato
Dopo aver disassemblato e modificato, dovrai compilare la nuova versione del programma in modo che le tue modifiche si propaghino ai file DLL e ad altre dipendenze.
Avvertenze
- La pirateria del software è illegale, quindi fallo a tuo rischio.
- È illegale craccare la maggior parte dei software.