Κυκλοφορία του Snuffleupagus 0.5.1, μιας ενότητας για τον αποκλεισμό τρωτών σημείων σε εφαρμογές PHP

Μετά από ένα χρόνο ανάπτυξης δημοσιεύθηκε έκδοση έργου Snuffleupagus 0.5.1, το οποίο παρέχει μια ενότητα για τον διερμηνέα PHP7 για τη βελτίωση της ασφάλειας του περιβάλλοντος και τον αποκλεισμό κοινών σφαλμάτων που οδηγούν σε τρωτά σημεία στην εκτέλεση εφαρμογών PHP. Η ενότητα σας επιτρέπει επίσης να δημιουργήσετε εικονικές ενημερώσεις κώδικα για την εξάλειψη συγκεκριμένων προβλημάτων χωρίς αλλαγή του πηγαίου κώδικα της ευάλωτης εφαρμογής, η οποία είναι βολική για χρήση σε συστήματα μαζικής φιλοξενίας όπου είναι αδύνατο να διατηρηθούν ενημερωμένες όλες οι εφαρμογές των χρηστών. Τα γενικά έξοδα της ενότητας εκτιμάται ότι είναι ελάχιστα. Η ενότητα είναι γραμμένη σε C, συνδέεται με τη μορφή μιας κοινόχρηστης βιβλιοθήκης (“extension=snuffleupagus.so” στο php.ini) και διανέμονται από άδεια σύμφωνα με το LGPL 3.0.

Το Snuffleupagus παρέχει ένα σύστημα κανόνων που σας επιτρέπει να χρησιμοποιείτε τυπικά πρότυπα για να βελτιώσετε την ασφάλεια ή να δημιουργήσετε τους δικούς σας κανόνες για τον έλεγχο των δεδομένων εισόδου και των παραμέτρων λειτουργίας. Για παράδειγμα, ο κανόνας "sp.disable_function.function("system").param("command").value_r("[$|;&`\\n]").drop();" σας επιτρέπει να περιορίσετε τη χρήση ειδικών χαρακτήρων σε ορίσματα συνάρτησης system() χωρίς να αλλάξετε την εφαρμογή. Παρέχονται ενσωματωμένες μέθοδοι για τον αποκλεισμό κατηγοριών τρωτών σημείων, όπως ζητήματα, σχετίζεται με με σειριοποίηση δεδομένων, επισφαλής χρήση της συνάρτησης PHP mail(), διαρροή περιεχομένου cookie κατά τη διάρκεια επιθέσεων XSS, προβλήματα λόγω φόρτωσης αρχείων με εκτελέσιμο κώδικα (για παράδειγμα, στη μορφή φαρ), κακής ποιότητας παραγωγή τυχαίων αριθμών και υποκατάσταση λανθασμένες κατασκευές XML.

Λειτουργίες βελτίωσης ασφάλειας PHP που παρέχονται από το Snuffleupagus:

  • Αυτόματη ενεργοποίηση των σημαιών "secure" και "samesite" (CSRF προστασία) για Cookies, κρυπτογράφηση Κουλουράκι;
  • Ενσωματωμένο σύνολο κανόνων για τον εντοπισμό ιχνών επιθέσεων και παραβίασης εφαρμογών.
  • Αναγκαστική παγκόσμια ενεργοποίηση του "αυστηρός" (για παράδειγμα, αποκλείει μια προσπάθεια καθορισμού μιας συμβολοσειράς όταν αναμένεται μια ακέραια τιμή ως όρισμα) και προστασία έναντι χειραγώγηση τύπου;
  • Προεπιλεγμένος αποκλεισμός περιτυλίγματα πρωτοκόλλου (για παράδειγμα, η απαγόρευση του "phar://") με τη ρητή επιτρεπόμενη λίστα τους.
  • Απαγόρευση εκτέλεσης αρχείων που είναι εγγράψιμα.
  • Ασπρόμαυρες λίστες για eval?
  • Απαιτείται για την ενεργοποίηση του ελέγχου πιστοποιητικού TLS κατά τη χρήση
    μπούκλα;
  • Προσθήκη HMAC σε σειριακά αντικείμενα για να διασφαλιστεί ότι η αποσειριοποίηση ανακτά τα δεδομένα που είναι αποθηκευμένα από την αρχική εφαρμογή.
  • Αίτημα λειτουργίας καταγραφής.
  • Αποκλεισμός φόρτωσης εξωτερικών αρχείων στο libxml μέσω συνδέσμων σε έγγραφα XML.
  • Δυνατότητα σύνδεσης εξωτερικών χειριστών (upload_validation) για έλεγχο και σάρωση των μεταφορτωμένων αρχείων.

Μεταξύ αλλαγές στη νέα έκδοση: Βελτιωμένη υποστήριξη για την PHP 7.4 και υλοποιημένη συμβατότητα με τον κλάδο PHP 8 που βρίσκεται σε εξέλιξη αυτή τη στιγμή. Προστέθηκε η δυνατότητα καταγραφής συμβάντων μέσω syslog (προτείνεται για συμπερίληψη η οδηγία sp.log_media, η οποία μπορεί να λάβει τιμές php ή syslog). Το προεπιλεγμένο σύνολο κανόνων έχει ενημερωθεί για να περιλαμβάνει νέους κανόνες για τρωτά σημεία που εντοπίστηκαν πρόσφατα και τεχνικές επίθεσης σε εφαρμογές Ιστού. Βελτιωμένη υποστήριξη για macOS και διευρυμένη χρήση της πλατφόρμας συνεχούς ενοποίησης που βασίζεται στο GitLab.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο