Ο κώδικας που ακολουθεί απεικονίζει μια απλή υπέρβαση του buffer :
//Δημιουργήστε μια σειρά από integersint δέκα [ 10 ] arrayOfTenIntegers ?
//Απόπειρα να γράψει δεδομένα στην 100η διεύθυνση του arrayarrayOfTen [ 100 ] = 1 ?
Μια υπέρβαση του buffer συμβαίνει και όλα τα δεδομένα αποθηκεύονται σε στην τοποθεσία δίπλα στο arrayOfTenIntegers στη μνήμη αντικατασταθούν .
Η Επιπτώσεις Ενημέρωση ασφαλείας
Αυτό το σφάλμα μπορεί να αξιοποιηθεί από έναν ιό για να ξεγελάσουν έναν υπολογιστή σε εκτέλεση του κώδικα θα ήταν διαφορετικά ποτέ δεν τρέχει , με έγχυση του κώδικα σε ένα άλλο τμήμα των προγραμμάτων της μνήμης .
εικόνων Εκτέλεση Προστασίας Area
Η
στην πράξη , τα περισσότερα σύγχρονα λειτουργικά συστήματα προσπαθούν να διαχωρίσουν τις περιοχές της μνήμης που χρησιμοποιείται για την εκτέλεση του προγράμματος και εκείνων που χρησιμοποιούνται για την αποθήκευση δεδομένων , ένα χαρακτηριστικό που ονομάζεται εκτέλεση Προστασίας Χώρο.
εικόνων Sanity Έλεγχος
Η
Buffer υπερβάσεις καταδεικνύουν την ανάγκη για την καλή λογική έλεγχο στα εισερχόμενα δεδομένα όταν γραπτώς λογισμικό .
εικόνων Κίνδυνοι από C
Η
Η C /C + + γλώσσα παρέχει ελάχιστα ενσωματωμένη προστασία έναντι υπέρβασης buffer , σε σύγκριση με τις γλώσσες , όπως η Java .
εικόνων
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα