Διόρθωση ευπάθειας στην PHP 5

By | 10/01/2011

Όπως είχε ανακοινωθεί, οι εκδόσεις 5.3.5 και 5.2.17 της PHP είναι διαθέσιμες προς επιδιόρθωση του κενού ασφαλείας floating-point. Λίγες μέρες πριν το τέλος του 2010 ανακαλύφθηκε ότι σφάλματα στον τρόπο που η PHP μετατρέπει μερικούς αριθμούς μπορούν να προκαλέσουν προβλήματα υπερφόρτωσης στον server.

Στα 32-bit συστήματα, η μετατροπή του «2.2250738585072011e-308» σε ένα αριθμό κινητής υποδιαστολής με την function zend_strtod θα αποβεί σε μια επ’ άπειρον επανάληψη και κατ’ επέκταση σε πλήρη χρήση της CPU του διακομιστή.

Αυτή η αδυναμία θα μπορούσε να εκμεταλλευτεί για μια επίθεση DoS. Τα 64-bit συστήματα δεν επηρρεάζονται γιατί χρησιμοποιούν άλλο τρόπο για αυτή τη λειτουργία, στην οποία το σφάλμα δε συμβαίνει.

Ένα command line PHP script είναι διαθέσιμο για τον καθορισμό της ευπάθειας ή όχι του συστήματός σας ενώ για τις παλιότερες εκδόσεις της PHP, οι οποίες έχουν την ίδια ευπάθεια, υπάρχει μια επιδιόρθωση για το zend_strtod.

[via]

Αφήστε μια απάντηση

Η ηλ. διεύθυνσή σας δεν δημοσιεύεται. Τα υποχρεωτικά πεδία σημειώνονται με *