Θέλατε ποτέ να μάθετε πώς ένα πρόγραμμα προστατεύεται από το να αντιγραφεί; Με τα κατάλληλα εργαλεία, μπορείτε να εξετάσετε την εσωτερική λειτουργία ενός προγράμματος και να πειραματιστείτε με την αντίστροφη μηχανική. Θα χρειαστεί να έχετε μια σταθερή γνώση του προγραμματισμού συναρμολόγησης και του hex κώδικα για να ξεκινήσετε και μια εφαρμογή αποσυναρμολόγησης. Μόλις εξοικειωθείτε με τον κώδικα, μπορείτε να τροποποιήσετε τα DLL, ώστε τα αντίστοιχα προγράμματά τους να μην χρειάζεται ποτέ να καταχωρηθούν ή να αγοραστούν.
Βήματα
Βήμα 1. Μάθετε προγραμματισμό συναρμολόγησης και χειρισμό εξαγωνικού κώδικα
Εάν θέλετε να σπάσετε το μεγαλύτερο μέρος του λογισμικού, θα πρέπει να έχετε καλή γνώση της συναρμολόγησης, η οποία είναι μια γλώσσα προγραμματισμού χαμηλού επιπέδου. Η συναρμολόγηση προέρχεται από τη γλώσσα μηχανής και κάθε γλώσσα συναρμολόγησης είναι συγκεκριμένη για τον τύπο του υπολογιστή που χρησιμοποιείτε. Οι περισσότερες γλώσσες συναρμολόγησης εκφράζονται μέσω δυαδικών και δεκαεξαδικών.
Βήμα 2. Εγκαταστήστε έναν αποσυναρμολογητή
Για να εξετάσετε και να τροποποιήσετε τα DLL, θα χρειαστείτε πολλά διαφορετικά εργαλεία, συμπεριλαμβανομένου ενός αποσυναρμολογητή. Το IDA Pro είναι μια εξαιρετική επιλογή, καθώς είναι ένα σύστημα αποσυναρμολόγησης και εντοπισμού σφαλμάτων. Ευτυχώς υπάρχει μια δωρεάν έκδοση διαθέσιμη από τη διεύθυνση https://www.hex-rays.com/products/ida/support/download_freeware, αν και είναι πολύ πιο περιορισμένη σε λειτουργικότητα από την έκδοση Pro. Μπορείτε επίσης να δοκιμάσετε το dotPeek, το οποίο είναι ένας αποσυμπιεστής που υποστηρίζει DLL και αποσυμπιέζει τον κώδικα συναρμολόγησης. NET σε C#. Μια άλλη επιλογή είναι το OllyDBG, το οποίο σας επιτρέπει να ανοίγετε αρχεία DLL δωρεάν.
Βήμα 3. Ανοίξτε την εφαρμογή που θέλετε να σπάσετε στο σύστημα αποσυναρμολόγησης
Η διαδικασία είναι λίγο διαφορετική ανάλογα με τον αποσυναρμολογητή που χρησιμοποιείτε. Αυτό θα σας δείξει ποια αρχεία DLL φορτώνονται από το πρόγραμμα. Χρησιμοποιήστε το πρόγραμμα εντοπισμού σφαλμάτων για να εξετάσετε ποιες λειτουργίες καλούνται από το DLL.
Βήμα 4. Βρείτε τη συνάρτηση μετρητή
Πολλά προγράμματα χρησιμοποιούν χρονοδιακόπτη για προστασία αντιγραφής και όταν τελειώσει ο χρονοδιακόπτης, ο χρήστης δεν είναι πλέον σε θέση να έχει πρόσβαση στο πρόγραμμα. Ο στόχος είναι να βρείτε αυτόν τον κωδικό μετρητή και, στη συνέχεια, να τον παρακάμψετε.
Εάν το πρόγραμμα που σπάτε χρησιμοποιεί διαφορετική μορφή προστασίας, θα πρέπει να το αναζητήσετε
Βήμα 5. Ορίστε ένα σημείο διακοπής στον πάγκο
Μόλις απομονώσετε τη λειτουργία του μετρητή, ρυθμίστε τον αποσυναρμολογητή σας να σπάσει όταν τον συναντήσετε. Αυτό θα σας επιτρέψει να δείτε τον ακριβή κώδικα που εμφανίζεται όταν καλείται η λειτουργία μετρητή.
Βήμα 6. Αλλάξτε τον κωδικό του μετρητή
Τώρα που βρήκατε τον κωδικό για τη λειτουργία μετρητή, μπορείτε να αλλάξετε τον κώδικα έτσι ώστε ο μετρητής να μην φτάσει ποτέ στο σημείο που να σας αποκλείει από το πρόγραμμα. Για παράδειγμα, θα μπορούσατε να το κάνετε έτσι ώστε ο μετρητής να μην μπορεί να μετρήσει μέχρι το όριο διακοπής ή μπορείτε να παρακάμψετε τον μετρητή πηδώντας πάνω από αυτόν. '
Βήμα 7. Επανασυγκολλήστε το λογισμικό που μόλις σπάσατε
Μετά την αποσυναρμολόγηση και την επεξεργασία, θα χρειαστεί να μεταγλωττίσετε τη νέα έκδοση του προγράμματος, ώστε οι αλλαγές σας να διαδοθούν στα αρχεία DLL και σε άλλες εξαρτήσεις.
Προειδοποιήσεις
- Η πειρατεία λογισμικού είναι παράνομη, οπότε κάντε το με δική σας ευθύνη.
- Είναι παράνομο το σπάσιμο του περισσότερου λογισμικού.