Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 22775|Απάντηση: 0

[Εύκολη γλώσσα] Εύκολη προστασία VMP γλώσσας, διάφορα προστατευτικά κελύφη Κώδικας SDK σε γλώσσα Easy

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 29/11/2014 3:59:19 μ.μ. | | |
ZProtect
Code_Confusion είναι μια κρυπτογραφική ετικέτα κώδικα εκτός σειράς που σας επιτρέπει να επιλέξετε ένα τμήμα του κώδικα που είναι εκτός σειράς
Εισαγάγετε τον κωδικό ({ 235, 8, 83, 84, 95, 83, 84, 65, 82, 84 }) ' Code_Confusion σημάδι έναρξης
Να προστεθεί ο κωδικός ({ 235, 8, 83, 84, 95, 83, 84, 69, 78, 68 }) Code_Confusion τέλος του σήματος
Code_Elimination είναι ένας δείκτης εκκαθάρισης κώδικα που σας επιτρέπει να επιλέξετε ένα τμήμα του κώδικα που θα αφαιρεθεί από τη μνήμη μετά την εκτέλεση. Ο σκοπός της χρήσης αυτής της σήμανσης είναι να αποτρέψει τους κροτίδες από το να απορρίψουν τον πλήρη κώδικα του προγράμματος από τη μνήμη.
Εισαγωγή κωδικού ({ 235, 8, 79, 67, 95, 83, 84, 65, 82, 84 }) ' Code_Elimination tag begins
Εισαγάγετε τον κωδικό ({ 235, 8, 79, 67, 95, 79, 67, 69, 78, 68 }) ' Code_Elimination σημάδι στο τέλος
Decode_onExec είναι μια δυναμική σήμανση αποκωδικοποίησης που σας επιτρέπει να επιλέξετε ένα τμήμα κώδικα που αποκρυπτογραφείται μόνο όταν εκτελείται. Αυτό το τμήμα του κώδικα αποκωδικοποιείται μόνο όταν χρειάζεται να εκτελεστεί και κρυπτογραφείται πριν και μετά την εκτέλεση
Εισαγωγή κωδικού ({ 235, 8, 68, 89, 95, 83, 84, 65, 82, 84 }) // Decode_onExec tag starts
Εισαγάγετε τον κωδικό ({ 235, 8, 68, 89, 95, 68, 89, 69, 78, 68 }) // Decode_onExec σημειώστε το τέλος
Decode_onReg είναι μια ετικέτα αποκωδικοποίησης εγγραφής που σας επιτρέπει να επιλέξετε ένα τμήμα του κώδικα που αποκρυπτογραφείται με έγκυρο κλειδί. Εάν το κλειδί εγγραφής είναι λανθασμένο, τότε αυτό το τμήμα του κώδικα θα είναι πάντα κρυπτογραφημένο. Με απλούς όρους, αυτό το μέρος του κώδικα εκτελείται μόνο στην εγγεγραμμένη έκδοση
Οποιοσδήποτε αριθμός ετικετών Decode_onReg μπορεί να χρησιμοποιηθεί στον πηγαίο κώδικα, αλλά αυτά τα αποσπάσματα κώδικα αποκρυπτογραφούνται ταυτόχρονα με την εκτέλεσή τους. Η ετικέτα αποκωδικοποίησης εγγραφής χρησιμοποιείται κυρίως για την ενεργοποίηση περιορισμένων λειτουργιών στη μη καταχωρημένη έκδοση για την καταχώρισή της ως πλήρους έκδοσης.
Εισαγωγή κωδικού ({ 235, 8, 82, 68, 95, 83, 84, 65, 82, 84 }) // Decode_onReg tag begins
Εισαγάγετε τον κωδικό ({ 235, 8, 82, 68, 95, 82, 68, 69, 78, 68 }) // Decode_onReg σημειώστε το τέλος
Zprotect_VM είναι μια ετικέτα κρυπτογράφησης εικονικής μηχανής που σας επιτρέπει να επιλέξετε ένα τμήμα κώδικα που θα τοποθετήσετε στην εικονική μηχανή για εκτέλεση. Το σύστημα εντολών της εικονικής μηχανής είναι εντελώς διαφορετικό από τις υπάρχουσες εντολές x86, οι οποίες μπορούν να αποτρέψουν αποτελεσματικά την αποκατάσταση και ανάλυση κώδικα
Εισαγάγετε τον κωδικό ({ 235, 8, 86, 77, 95, 83, 84, 65, 82, 84 }) // Zprotect_VM σημάδι στην αρχή
Εισαγάγετε τον κωδικό ({ 235, 8, 86, 77, 95, 86, 77, 69, 78, 68 }) // Zprotect_VM σημάδι τέλος
----------- για την έκδοση ZProtect V1.4.9.0---------
VMProtect
Εισαγάγετε τον κωδικό ({ 235, 16, 86, 77, 80, 114, 111, 116, 101, 99, 116, 32, 98, 101, 103, 105, 110, 0 }) ' Σημαία έναρξης προστασίας VMP
«Κωδικός κλειδιού
Εισαγάγετε τον κωδικό ({ 235, 14, 86, 77, 80, 114, 111, 116, 101, 99, 116, 32, 101, 110, 100, 0 }) ' Τελική σημαία προστασίας VMP
Το SDK της γλώσσας κρυπτογράφησης Enigma
Σημειώνεται ο κωδικός ({ 235, 10, 69, 67, 82, 79, 78, 69, 88, 69, 69, 69, 67, 66 })' στην αρχή
«Κωδικός κλειδιού
Να προστεθεί ο κωδικός ({ 235, 10, 69, 67, 82, 79, 78, 69, 88, 69, 88, 69, 67, 69 })' στο τέλος της χαραγής

NoobyProtect SDK για τη γλώσσα κρυπτογράφησης
Σημειώνεται ο κωδικός ({ 235, 6, 78, 80, 66, 69, 71, 78 })' στην αρχή
«Κωδικός κλειδιού
Να προστεθεί ο κωδικός ({ 235, 6, 78, 80, 69, 78, 68, 80 })' στο τέλος

Ο Pangolin καλεί το DEMO της λειτουργικής γλώσσας κρυπτογράφησης SDK
Σημειώστε τον κωδικό ({ 235, 3, 214, 215, 1 })' στην αρχή
«Κωδικός κλειδιού
Κωδικός θέσης ({ 235, 3, 214, 215, 0 })» στο τέλος της σήμανσης
SDK γλώσσας κρυπτογράφησης ASP
Σημειώνεται ο κωδικός ({ 235, 4, 235, 5, 25, 1, 233, 37, 0 })' στην αρχή
«Κωδικός κλειδιού
Να προστεθεί ο κωδικός ({ 235, 4, 235, 5, 41, 1, 233, 133, 0, })» στο τέλος του σήματος

Σιλντέν 2.0.1.0
Να προστεθεί ο κωδικός ({ 235, 7, 83, 69, 66, 69, 71, 78, 0 }) ' SE_PROTECT_START
' Κωδικός Κλειδιού
Να προστεθεί ο κωδικός ({ 235, 7, 83, 69, 69, 78, 68, 80, 0 }) ' SE_PROTECT_END

Να προστεθεί ο κωδικός ({ 235, 7, 83, 69, 66, 69, 71, 78, 77 }) ' SE_PROTECT_START_MUTATION
Κωδικός κλειδιού
Να προστεθεί ο κωδικός ({ 235, 7, 83, 69, 69, 78, 68, 80, 0 }) ' SE_PROTECT_END
Εισαγάγετε τον κωδικό ({ 235, 7, 83, 69, 66, 69, 71, 78, 85 }) ' SE_PROTECT_START_ULTRA
Κωδικός κλειδιού
Να προστεθεί ο κωδικός ({ 235, 7, 83, 69, 69, 78, 68, 80, 0 }) ' SE_PROTECT_END
Να προστεθεί ο κωδικός ({ 235, 7, 83, 69, 66, 69, 71, 78, 86 }) '
' Κωδικός Κλειδιού
Να προστεθεί ο κωδικός ({ 235, 7, 83, 69, 69, 78, 68, 80, 0 }) ' SE_PROTECT_END

Εύκολη μέθοδος μετατροπής SDK γλώσσας ↓
Με την υποστήριξη της στατικής μεταγλώττισης E5.0 για τυπικές μορφές PE, έχει γίνει πραγματικότητα η εισαγωγή SDK κελύφους κρυπτογράφησης σε προγράμματα E για τη βελτίωση της ποιότητας της προστασίας λογισμικού.
Τα SDK κελύφους κρυπτογράφησης μπορούν να χωριστούν χονδρικά σε δύο κατηγορίες, η μία είναι λειτουργικό SDK και η άλλη είναι προστατευτικό SDK.
1. Λειτουργικό SDK.
Για τον χειρισμό του χρησιμοποιείται λειτουργικό SDKΣειριακός αριθμόςΕπικύρωση, επαλήθευση χρόνου εξουσιοδότησης και άλλες λειτουργικές λειτουργίες. Αυτός ο τύπος SDK έχει διάφορες λειτουργίες που εφαρμόζονται απευθείας στο κέλυφος, όπως το WL. Υπάρχουν επίσης εξωτερικά DLL που πρέπει να εισαχθούν, όπως οι παγκολίνοι.
Για DLL χωρίς πίνακες εξόδου, χρησιμοποιώντας το εξωτερικό SDK εισαγωγής, πρέπει να φορτώσουμε το DLL, να αντιμετωπίσουμε τη συνάρτηση στο SDK και να καλέσουμε την εντολή υποπρογράμματος () στο E για να ολοκληρώσουμε εύκολα τη λειτουργία διαβίβασης παραμέτρων για να λάβουμε την τιμή επιστροφής της συνάρτησης SDK.
Για DLL με πίνακες εξόδου, είναι εντάξει να τα καλέσετε με την εντολή DLL του E.
Για όσους γνωρίζουν ήδη πώς να καλούν DLL, η λειτουργία των λειτουργικών SDK μπορεί να ειπωθεί ότι είναι εύκολο να ελεγχθεί, απλώς ρίξτε μια ματιά στο συγκεκριμένο εγχειρίδιο API του κελύφους.
2. Κρυπτογραφημένο SDK
Αφού το κέλυφος κρυπτογράφησης ανακαλύψει μια συγκεκριμένη ετικέτα SDK στο λογισμικό, θα χρησιμοποιήσει μια στοχευμένη μέθοδο για την επεξεργασία αυτού του τμήματος κώδικα για να βελτιώσει την ασφάλεια του συγκεκριμένου τμήματος κώδικα. Αυτό το είδος σήμανσης είναι φυσικά ένας κωδικός συναρμολόγησης που ορίζεται από ζεύγη!
Στο εύκολο, μπορούμε εύκολα να καλέσουμε τον κωδικό συναρμολόγησης χρησιμοποιώντας την εντολή insert code (). Ειδικά για το κέλυφος κρυπτογράφησης που χρησιμοποιεί αυτό το κομμάτι, ακολουθούμε την ακόλουθη μέθοδο.
Ανοίξτε το SDK που συνοδεύει το κέλυφος κρυπτογράφησης και βρείτε ένα αρχείο κεφαλίδας SDK γλώσσας που μπορείτε να διαβάσετε. Για παράδειγμα, το αρχείο κεφαλίδας του LCC παρακάτω.
Ακολουθεί ο κωδικός του προγράμματος:
1 #elif ορίζεται(__LCC__)
2 /* Παρέχεται από Rubem Pechansky, 26Feb2003 */
3 #define SECUREBEGIN _asm(".byte 0xEB,0x03,0xD6,0xD6,0x00");
4 #define SECUREEND _asm(".byte 0xEB,0x03,0xD6,0xD6,0xFF");
5 #define SECUREBEGIN_A _asm(".byte 0xEB,0x03,0xD6,0xD6,0x01");
6 #define SECUREEND_A _asm(".byte 0xEB,0x03,0xD6,0xD6,0xFF");
7 #define SECUREBEGIN_B _asm(".byte 0xEB,0x03,0xD6,0xD6,0x02");
8 #define SECUREEND_B _asm(".byte 0xEB,0x03,0xD6,0xD6,0xFF");
9 #define SECUREBEGIN_C _asm(".byte 0xEB,0x03,0xD6,0xD6,0x03");
10 #define SECUREEND_C _asm(".byte 0xEB,0x03,0xD6,0xD6,0xFF");
11 #define SECUREBEGIN_D _asm(".byte 0xEB,0x03,0xD6,0xD6,0x04");
12 #define SECUREEND_D _asm(".byte 0xEB,0x03,0xD6,0xD6,0xFF");
13 #define SECUREBEGIN_E _asm(".byte 0xEB,0x03,0xD6,0xD6,0x05");
14 #define SECUREEND_E _asm(".byte 0xEB,0x03,0xD6,0xD6,0xFF");
15 #define SECUREBEGIN_F _asm(".byte 0xEB,0x03,0xD6,0xD6,0x06");
16 #define SECUREEND_F _asm(".byte 0xEB,0x03,0xD6,0xD6,0xFF");
17 #define SECUREBEGIN_G _asm(".byte 0xEB,0x03,0xD6,0xD6,0x07");
18 #define SECUREEND_G _asm(".byte 0xEB,0x03,0xD6,0xD6,0xFF");
19 #define SECUREBEGIN_H _asm(".byte 0xEB,0x03,0xD6,0xD6,0x08");
20 #define SECUREEND_H _asm(".byte 0xEB,0x03,0xD6,0xD6,0xFF");
21 #define SECUREBEGIN_I _asm(".byte 0xEB,0x03,0xD6,0xD6,0x09");
22 #define SECUREEND_I _asm(".byte 0xEB,0x03,0xD6,0xD6,0xFF");
23 #define SECUREBEGIN_J _asm(".byte 0xEB,0x03,0xD6,0xD6,0x0A");
24 #define SECUREEND_J _asm(".byte 0xEB,0x03,0xD6,0xD6,0xFF");
25 #define SECUREBEGIN_K _asm(".byte 0xEB,0x03,0xD6,0xD6,0x0B");
26 #define SECUREEND_K _asm(".byte 0xEB,0x03,0xD6,0xD6,0xFF");
27 #define NANOBEGIN _asm(".byte 0xEB,0x03,0xD6,0xD7,0x01");
28 #define NANOEND _asm(".byte 0xEB,0x03,0xD6,0xD7,0x00");
Για να εξηγήσουμε στις δύο τελευταίες προτάσεις, το NANOBEGIN και το NANOEND είναι σημάνσεις αποσπασμάτων κώδικα CC στη γλώσσα C και τα αποσπάσματα κώδικα που τυλίγονται από αυτές τις δύο σημάνσεις θα προστατεύονται CC από το κέλυφος κρυπτογράφησης. Το NANOBEGIN αντιπροσωπεύεται από τον κώδικα συναρμολόγησης ως 0xEB, 0x03, 0xD6, 0xD7, 0x01, η πρότασή του είναι η δεκαεξαδική αναπαράσταση του C και η δήλωση συναρμολόγησης αναπαρίσταται σε δεκαδικό δεκαδικό στο E. Δηλαδή, πρέπει να μεταφράσουμε αυτόν τον κώδικα.
0xEB = 235
0x03 = 3
0xD6 = 214
0xD7 = 215
0x01 = 1
Στη συνέχεια, το NANOBEGIN εκφράζεται σε E ως κωδικός εισαγωγής ({235, 3, 214, 215, 1}).




Προηγούμενος:Το WP8.1 GDR2/Win10 (WP10) θα είναι πιο εξατομικευμένο
Επόμενος:Πρώτη έκδοση, Houpu Σύστημα Εκπαίδευσης Μηχανικών Πληροφορικής - Σύστημα Εικονικής Εξέτασης (Απόλυτα συμβατό με Win7)
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com