Come Craccare un Software Modificando i File DLL

Scarica PDFScarica PDF

Hai mai avuto la voglia di capire quali sono le protezioni che vengono applicate a un programma per prevenirne la copia e la distribuzione illegale? Con gli strumenti giusti è possibile esaminare il funzionamento interno di un programma e usare la tecnica denominata "reverse-engineering" per apportare le modifiche desiderate. Occorre possedere delle ampie conoscenze sulla programmazione in assembly e in codice esadecimale prima di continuare e dovrai procurarti un "disassembler" (un programma che converte il codice macchina in assembly). Quando avrai raggiunto la confidenza necessaria con il codice, potrai modificare le DLL a tuo piacimento in modo che il programma corrispondente possa funzionare correttamente senza essere acquistato, registrato o attivato.

Passaggi

Scarica PDF
  1. How.com.vn Italiano: Step 1 Impara a programmare in assembly e a manipolare il codice esadecimale.
    Se hai la voglia di imparare come si "cracca" un software o un programma (cioè come si modifica il codice originale con lo scopo di aggirare le restrizioni o le protezioni anti-copia e anti-pirateria), dovrai avere una buona comprensione del codice assembly. Quest'ultimo è un linguaggio di programmazione a basso livello.[1] L'assembly deriva direttamente dal codice macchina ed esiste una versione di assembly specifica per il tipo di architettura hardware di un computer. La maggior parte dei linguaggi assembly utilizzano il sistema binario o esadecimale per visualizzare il codice.
  2. How.com.vn Italiano: Step 2 Installa un disassembler.
    Per poter analizzare e modificare il contenuto di una DLL, occorre usare diversi strumenti software, incluso un disassembler. IDA Pro rappresenta un'ottima opzione, dato che integra al suo interno un disassembler e un debugger. Esiste anche una versione gratuita del programma che puoi scaricare da questo URL https://www.hex-rays.com/products/ida/support/download_freeware. Tuttavia, è bene precisare che le funzioni della versione gratuita sono limitate rispetto a quelle della versione completa. In alternativa, puoi provare a usare dotPeek. Si tratta di un decompilatore di DLL in grado di decompilare il codice assembly prodotto per il framwork .NET e visualizzarlo in codice C#.[2] Un'altra opzione a disposizione è OllyDBG, un programma gratuito che permette di visualizzare il contenuto di un file DLL.
  3. How.com.vn Italiano: Step 3 Avvia l'app che vuoi craccare usando il disassembler che hai scelto.
    La procedura da seguire varia leggermente in base al disassembler che hai scelto di utilizzare. In questo modo avrai modo di visualizzare l'elenco dei file DLL che verranno richiamati dall'applicazione. Usa un debugger per esaminare le funzioni presenti nel file DLL e richiamate dal programma.[3]
  4. How.com.vn Italiano: Step 4 Individua la funzione che tiene conto del periodo di prova gratuito.
    Molti programmi usano un semplice timer come protezione anti-copia. Quando il timer arriva a zero, l'utente non sarà più in grado di accedere al programma. Per questo motivo l'obiettivo consiste nell'individuare la funzione che gestisce questo timer e inibirne il funzionamento.
    • Se il programma che desideri craccare utilizza un sistema di protezione diverso, dovrai cercare la routine che gestisce tale sistema.
  5. How.com.vn Italiano: Step 5 Imposta un punto di interruzione del debugger sulla funzione che gestisce il timer.
    Quando hai individuato la routine che gestisce il timer del programma, imposta il disassembler in modo che interrompa l'esecuzione del programma proprio quando viene richiamata tale funzione. In questo modo potrai focalizzare l'attenzione solo sul codice relativo alla funzione in esame.
  6. How.com.vn Italiano: Step 6 Modifica il codice della funzione che gestisce il timer.
    Adesso che hai individuato il codice sorgente da modificare potrai modificarlo in modo che il programma continui a funzionare correttamente. Per esempio, puoi impedire che il timer raggiunga il limite oltre il quale scatta il blocco dell'esecuzione dell'app oppure puoi evitare che la funzione in oggetto venga richiamata all'interno del programma a ogni avvio.
  7. How.com.vn Italiano: Step 7 Ricompila le DLL del nuovo programma.
    Dopo aver apportato le modifiche necessarie al codice sorgente, dovrai ricompilarlo per creare la versione modificata del programma che utilizzerà le tue DLL e non quelle originali.[4]
    Pubblicità

Avvertenze

  • La pirateria software è illegale, quindi scegli di far parte di questo mondo a tuo rischio e pericolo.
  • Modificare la versione originale di un software commerciale è un'azione illegale.
Pubblicità

Informazioni su questo How.com.vn

How.com.vn Italiano: Lo Staff di How.com.vn
Co-redatto da:
Staff di Redazione
Questo articolo è stato scritto in collaborazione con il nostro team di editor e ricercatori esperti che ne hanno approvato accuratezza ed esaustività.

Il Content Management Team di How.com.vn controlla con cura il lavoro dello staff di redattori per assicurarsi che ogni articolo incontri i nostri standard di qualità. Questo articolo è stato visualizzato 44 623 volte
Categorie: Programmazione
Questa pagina è stata letta 44 623 volte.

Hai trovato utile questo articolo?

⚠️ Disclaimer:

Content from Wiki How Italiano language website. Text is available under the Creative Commons Attribution-Share Alike License; additional terms may apply.
Wiki How does not encourage the violation of any laws, and cannot be responsible for any violations of such laws, should you link to this domain, or use, reproduce, or republish the information contained herein.

Notices:
  • - A few of these subjects are frequently censored by educational, governmental, corporate, parental and other filtering schemes.
  • - Some articles may contain names, images, artworks or descriptions of events that some cultures restrict access to
  • - Please note: Wiki How does not give you opinion about the law, or advice about medical. If you need specific advice (for example, medical, legal, financial or risk management), please seek a professional who is licensed or knowledgeable in that area.
  • - Readers should not judge the importance of topics based on their coverage on Wiki How, nor think a topic is important just because it is the subject of a Wiki article.

Pubblicità