μορφοποίηση χορδές σε C και C + + αποτελούν μέρος των λειτουργιών εισόδου και εξόδου . Το string format περιέχει δεδομένα σε δεδομένα εξόδου στην οθόνη . Χορδές μορφή έχει δύο κύριες συνιστώσες . Η πρώτη είναι η βασική σειρά για να εκτυπώσετε , το οποίο περιέχει τους χαρακτήρες και τα σημεία στίξης . Η δεύτερη συνιστώσα περιλαμβάνει ειδικό χαρακτήρα σημειώνονται με ποσοστό σημάδια που χρησιμεύουν ως σύμβολα κράτησης θέσης για μεταβλητών δεδομένων . Αυτά τα σύμβολα υπάρχουν στο string, και αντικαθίστανται κατά τη διάρκεια της εξόδου από τις αξίες που πραγματοποιήθηκε στις μεταβλητές . Το ακόλουθο παράδειγμα απεικονίζει μια βασική δήλωση printf με ένα string format :
char x = " c" ? Int y = 10 ?
Printf ( " Χαρακτήρες εκτύπωσης % c και Decimals % d " ? , x , y) ?
εικόνων Format Επιθέσεις String
Η
Η ανασφάλεια των χορδών μορφή έγκειται στον τρόπο με τα σύμβολα που ενσωματώνονται στις παραπομπή σειρά άλλα μέρη του προγράμματος . Για παράδειγμα , ένας εισβολέας εισαγωγή δεδομένων σε μια μεταβλητή που χρησιμοποιείται σε ένα string format μπορεί να εισφέρει τα σύμβολα που επιτρέπουν την πρόσβαση σε άλλα πλαίσια της εκτέλεσης του προγράμματος . Με τον τρόπο αυτό , ο εισβολέας μπορεί να τροποποιήσει τις τιμές σε μεταβλητές εκτός του πεδίου εφαρμογής της λειτουργίας εκτύπωσης . Επιπλέον , ο εισβολέας θα μπορούσε ενδεχομένως να έχει πρόσβαση στη μνήμη τιμές που αντιπροσωπεύουν τη θέση των λειτουργιών. Ο εισβολέας θα μπορούσε στη συνέχεια να αλλάξετε αυτήν την τιμή να επισημάνω μια διαφορετική λειτουργία , αλλάζοντας τη ροή της εκτέλεσης και ουσιαστικά αεροπειρατεία του προγράμματος .
Η είσοδος Buffers
Η
εισόδου προσκρουστήρες είναι οι χώροι αποθήκευσης των δεδομένων που δημιουργούνται από τον προγραμματιστή να συγκρατήσει δεδομένα που εισάγει ο χρήστης . Τις περισσότερες φορές , ρυθμιστικά εισόδου χειρίζονται την είσοδο του χρήστη του ημερολογίου στα ονόματα και τους κωδικούς πρόσβασης . Ειδικά για την γλώσσα προγραμματισμού C , η οποία δεν περιλαμβάνουν τη μητρική χειρισμό χορδών , υπάρχουν ρυθμιστικά εισόδου, όπως συστοιχίες των χαρακτήρων με ένα καθορισμένο μέγεθος . Στην περίπτωση αυτή , εναπόκειται στον προγραμματιστή να διαθέσει τα δεδομένα για την είσοδο του χρήστη .
Εικόνων Buffer Overflow
Η
Ένας εισβολέας θα μπορούσε να επωφεληθεί από τους περιορισμούς αυτών των ρυθμιστικών από πλημμύρες με δεδομένα . Στο απλούστερο παράδειγμα , μια σειρά από χαρακτήρες που σήμαινε να κρατήσει ένα ημερολόγιο στο όνομα θα μπορούσε να έχει 20 χώρο που διατίθεται , αλλά ένας εισβολέας δίνει πάνω από είκοσι χαρακτήρες για την επεξεργασία . Στην περίπτωση αυτή, οι επιπλέον χαρακτήρες αντικαταστήσετε θέσεις μνήμης αμέσως μετά τη συστοιχία . Αυτές οι θέσεις μνήμης ενδεχομένως να κρατήσει στοιχεία σχετικά με την εκτέλεση του προγράμματος, όπως η υπό όρους μεταβλητές για τις δηλώσεις ελέγχου ροής ή αναφορές στις λειτουργίες στη στοίβα . Όπως η μορφή επίθεσης χορδών, αυτό επιτρέπει ουσιαστικά ο εισβολέας να επισκιάσουν το πρόγραμμα .
Η
εικόνων
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα