Το Chrome διορθώνει 24 τρύπες ασφαλείας, ενεργοποιεί το σύστημα ασφαλείας "Sanitizer" PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Το Chrome επιδιορθώνει 24 τρύπες ασφαλείας, ενεργοποιεί το σύστημα ασφαλείας "Sanitizer".

Το πιο πρόσφατο πρόγραμμα περιήγησης Chrome της Google, έκδοση 105, είναι έξω, αν και ο αριθμός πλήρους έκδοσης είναι ενοχλητικά διαφορετικός ανάλογα με το αν χρησιμοποιείτε Windows, Mac ή Linux.

Σε συστήματα παρόμοια με το Unix (Mac και Linux), θέλετε 105.0.5195.52, αλλά στα Windows, ψάχνετε 105.0.5195.54.

Σύμφωνα με την Google, αυτή η νέα έκδοση περιλαμβάνει 24 επιδιορθώσεις ασφαλείας, αν και καμία από αυτές δεν αναφέρεται ως "in-the-wild", πράγμα που σημαίνει ότι δεν υπήρξαν επιδιορθώσεις zero-days αυτή τη φορά.

Ωστόσο, υπάρχει μια ευπάθεια μεταγλωττισμένη Κρίσιμος, και άλλα οκτώ βαθμολογήθηκαν Ψηλά.

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

Επεξηγούνται οι τύποι σφαλμάτων μνήμης

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

Φανταστείτε, για παράδειγμα, ότι το τμήμα του προγράμματος που πιστεύει ότι έχει πλέον αποκλειστική πρόσβαση στο παραβατικό μπλοκ μνήμης λαμβάνει κάποια μη αξιόπιστη είσοδο και επαληθεύει προσεκτικά ότι τα νέα δεδομένα είναι ασφαλή για χρήση…

…αλλά στη συνέχεια, αμέσως προτού αρχίσει να χρησιμοποιεί αυτήν την επικυρωμένη είσοδο, ο κώδικας «χρήσης-μετά-ελεύθερη» με λάθη παρεμβαίνει και εισάγει μπαγιάτικα, μη ασφαλή δεδομένα στο ίδιο μέρος της μνήμης.

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

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

Και ένα υπερχείλιση buffer σωρού αναφέρεται σε ένα σφάλμα όπου γράφετε περισσότερα δεδομένα στη μνήμη από όσα χωρούν στον χώρο που σας είχε αρχικά εκχωρηθεί. (Σωρός είναι ο όρος της ορολογίας για τη συλλογή μπλοκ μνήμης που διαχειρίζεται αυτήν τη στιγμή το σύστημα.)

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

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

Το σύστημα «Sanitizer».

Ευτυχώς, εκτός από τη διόρθωση σφαλμάτων που δεν έπρεπε να υπάρχουν καθόλου, η Google ανακοίνωσε την άφιξη μιας νέας δυνατότητας που προσθέτει προστασία ενάντια σε μια κατηγορία ελαττωμάτων του προγράμματος περιήγησης γνωστά ως δημιουργία σεναρίων μεταξύ ιστοτόπων (XSS).

Τα σφάλματα XSS προκαλούνται από το πρόγραμμα περιήγησης που εισάγει μη αξιόπιστα δεδομένα, ας πούμε από μια φόρμα ιστού που υποβάλλεται από απομακρυσμένο χρήστη, απευθείας στην τρέχουσα ιστοσελίδα, χωρίς πρώτα να ελέγχει (και να αφαιρεί) επικίνδυνο περιεχόμενο.

Φανταστείτε, για παράδειγμα, ότι έχετε μια ιστοσελίδα που προσφέρει να μου δείξει πώς φαίνεται μια συμβολοσειρά κειμένου της επιλογής μου στη νέα funky γραμματοσειρά σας.

Αν πληκτρολογήσω το δείγμα κειμένου Cwm fjord bank glyphs vext quiz (ένας επινοημένος αλλά αόριστα ουσιαστικός συνδυασμός αγγλικών και ουαλικών που περιέχει και τα 26 γράμματα του αλφαβήτου σε μόλις 26 γράμματα, σε περίπτωση που αναρωτιέστε), τότε είναι ασφαλές για εσάς να τοποθετήσετε αυτό ακριβώς το κείμενο στην ιστοσελίδα που δημιουργείτε.

Στο JavaScript, για παράδειγμα, θα μπορούσατε να ξαναγράψετε το σώμα της ιστοσελίδας ως εξής, εισάγοντας το κείμενο που παρείχα χωρίς καμία τροποποίηση:

document.body.innerHTML = " Κουίζ Cwm fjord bank glyphs vext"

Αλλά αν απάτησα και σας ζήτησα να "εμφανίσετε" τη συμβολοσειρά κειμένου Cwm fjord<script>alert(42)</script> Αντίθετα, τότε θα ήταν απερίσκεπτο να το κάνετε αυτό…

document.body.innerHTML = " Φιόρδ Cwm alert(42) "

…επειδή θα μου επιτρέπατε να εισάγω μη αξιόπιστο κώδικα JavaScript my επιλέγοντας απευθείας σε σας ιστοσελίδα, όπου ο κωδικός μου θα μπορούσε να διαβάσει τα cookie σας και να έχει πρόσβαση σε δεδομένα που διαφορετικά θα ήταν εκτός ορίων.

Έτσι, για να κάνουμε αυτό που είναι γνωστό ως απολύμανση των εισροών σας ευκολότερα, το Chrome έχει πλέον επίσημα ενεργοποιήσει την υποστήριξη για μια νέα λειτουργία προγράμματος περιήγησης που ονομάζεται setHTML().

Αυτό μπορεί να χρησιμοποιηθεί για την προώθηση νέου περιεχομένου HTML μέσω μιας δυνατότητας που ονομάζεται Sanitizer πρώτα, έτσι ώστε αν χρησιμοποιήσετε αυτόν τον κωδικό…

document.body.setHTML(" Φιόρδ Cwm alert(42) ")

…μετά το Chrome θα σαρώσει πρώτα την προτεινόμενη νέα συμβολοσειρά HTML για προβλήματα ασφαλείας και θα αφαιρέσει αυτόματα κάθε κείμενο που θα μπορούσε να αποτελέσει κίνδυνο.

Μπορείτε να το δείτε σε δράση μέσω του Εργαλεία προγραμματιστή εκτελώντας τα παραπάνω setHTML() κωδικός στο πρόξενος προτροπή και, στη συνέχεια, ανάκτηση του πραγματικού HTML που εισήχθη στο document.body μεταβλητή, όπως κάναμε εδώ:

Σημειώστε πώς η επισημασμένη ετικέτα δέσμης ενεργειών έχει «απολυμανθεί» από το HTML που έχει εισαχθεί τελικά στη σελίδα.

Αν και ρητά βάζουμε α <script> ετικέτα στην είσοδο που δώσαμε στο setHTML() λειτουργία, ο κώδικας σεναρίου διαγράφηκε αυτόματα από την έξοδο που δημιουργήθηκε.

Εάν χρειάζεται πραγματικά να προσθέσετε δυνητικά επικίνδυνο κείμενο σε ένα στοιχείο HTML, μπορείτε να προσθέσετε ένα δεύτερο όρισμα στο setHTML() λειτουργία που καθορίζει διάφορους τύπους επικίνδυνου περιεχομένου για αποκλεισμό ή αποδοχή.

Από προεπιλογή, εάν αυτό το δεύτερο όρισμα παραλειφθεί όπως παραπάνω, τότε το Sanitizer λειτουργεί στο μέγιστο επίπεδο ασφαλείας και εκκαθαρίζει αυτόματα όλο το επικίνδυνο περιεχόμενο που γνωρίζει.

Τι να κάνω;

  • Εάν είστε χρήστης του Chrome. Ελέγξτε ότι είστε ενημερωμένοι κάνοντας κλικ Τρεις κουκκίδες > Βοήθεια > Σχετικά με το Google Chrome, ή με περιήγηση στην ειδική διεύθυνση URL chrome://settings/help.
  • Εάν είστε προγραμματιστής Ιστού. Μάθετε για το νέο Sanitizer και setHTML() λειτουργικότητα με ανάγνωση συμβουλές από την Google και την Έγγραφα Web MDN.

Παρεμπιπτόντως, αν χρησιμοποιείτε Firefox, Sanitizer είναι διαθέσιμο, αλλά δεν είναι ακόμα ενεργοποιημένο από προεπιλογή. Μπορείτε να το ενεργοποιήσετε για να μάθετε περισσότερα για αυτό μεταβαίνοντας στο about:config και εναλλαγή του dom.security.sanitizer.enabled επιλογή για να true.


Σφραγίδα ώρας:

Περισσότερα από Γυμνή ασφάλεια