Skip to main content

Τι είναι ένας κακοποιός;

Ένα obfuscator είναι μια διαδικασία ή μια συσκευή που προορίζεται να κάνει ένα πρόγραμμα πιο δύσκολο να κατανοηθεί.Γενικά, η προσέγγιση του obfuscator είναι να πάρει ένα πρόγραμμα που είναι σχετικά απλό και να καταστήσει τον υποκείμενο κώδικα πιο περίπλοκο.Ενώ ο τελικός χρήστης δεν είναι πιθανό να παρατηρήσει μια διαφορά στον τρόπο με τον οποίο εκτελείται ο κώδικας, η λειτουργία του obfuscator καθιστά πιο δύσκολο να χαράξει τον κώδικα και να καταργήσει το πρόγραμμα.Από αυτή την άποψη, η χρήση αυτού του τύπου εργαλείου μπορεί να θεωρηθεί ως μέτρο ασφαλείας.

Το όνομα για τη συσκευή ή τη διαδικασία δανείζεται από τη λέξη "obfuscate", η οποία αναφέρεται στην περιπλοκή μιας προφορικής παρουσίασης σε μια προσπάθεια να συγχέεται ή να μπερδεύει.Με τον ίδιο τρόπο, ο obfuscator επιδιώκει να κάνει τη διαδικασία κατανόησης του κώδικα κάπως αμηχανία.Αυτό ουσιαστικά καθιστά δυσκολότερο τον κώδικα να υπονομεύεται, αφού το πραγματικό κρέας του κώδικα είναι τόσο βαθιά θαμμένο ή θορυβώδες ότι είναι δύσκολο να εξαγάγει τα βασικά τμήματα εργασίας του κώδικα.

Υπάρχουν αρκετές γλώσσες προγράμματος που τείνουν να ανταποκρίνονται πολύ καλά στη διαδικασία της παρακολούθησης.Το C ++ είναι από τις πιο δημοφιλείς γλώσσες και καθιστά δυνατή τη χρήση ενός ucfuscator με σχετική ευκολία χωρίς να καταστρέφει τη λειτουργία του βασικού κώδικα.Με τον ίδιο τρόπο, το C και το Perl τείνουν επίσης να λειτουργούν καλά με τη χρήση της abfuscation, καθιστώντας το σχετικά εύκολο να προσθέσετε ένα στοιχείο προστασίας σε οποιονδήποτε προγραμματισμό γραμμένο σε αυτές τις τρεις γλώσσες.

Ενώ ο σκοπός ενός obfuscator είναι να καταστήσει σκόπιμα τον κώδικα πιο δύσκολο να ξεδιπλώσει, υπάρχει επίσης η ανάγκη να διασφαλιστεί ότι οι άνθρωποι που έχουν εξουσιοδοτηθεί να συνεργαστούν με τον προγραμματισμό μπορούν να το κάνουν χωρίς να παρεμποδιστούν από τη διαδικασία της παρακράτησης.Για το σκοπό αυτό, είναι δυνατόν να χρησιμοποιηθούν διάφορες τεχνικές για να εργαστείτε μέσω των πρόσθετων επιπλοκών και να φτάσετε στον βασικό κώδικα.Αυτή η διαδικασία είναι γνωστή ως αντίστροφη μηχανική, δεδομένου ότι περιλαμβάνει ουσιαστικά την ανατροπή των επιπλοκών προκειμένου να δούμε την αληθινή εικόνα.Το Slicing Program είναι ένα παράδειγμα τεχνικών αντίστροφης μηχανικής που χρησιμοποιούνται για την αποσύνδεση ενός συνόλου κώδικα.

Ενώ ο obfuscator παρέχει κάποιο βαθμό προστασίας, είναι σημαντικό να συνειδητοποιήσουμε ότι αυτή η διαδικασία δεν θα πρέπει να είναι το μόνο μέσο ασφαλείας που χρησιμοποιείται για την προστασία του προγραμματισμού.Θα πρέπει επίσης να χρησιμοποιηθούν και άλλες στρατηγικές ασφαλείας για να διασφαλιστεί ότι οι κακόβουλες εισαγωγές δεν λαμβάνονται από το δίκτυο και επιτρέπεται να εργαστούν σε υπάρχοντες κώδικες.