Η RIPS Technologies ανακάλυψε ένα πρόβλημα στο WordPress και στο πρόσθετο ηλεκτρονικού εμπορίου WooCommerce, το οποίο δημιουργήθηκε από την Automattic. Σύμφωνα με τα επίσημα στατιστικά στοιχεία, η λύση αυτή έχει γίνει λήψη πάνω από τέσσερα εκατομμύρια φορές και έχει περίπου τον ίδιο αριθμό ενεργών εγκαταστάσεων.
Οι ερευνητές εξηγούν ότι εδώ υπάρχουν δύο προβλήματα. Το πρώτο πρόβλημα είναι ότι, όταν το πρόσθετο εγκαθίσταται στο WordPress, το οποίο χρησιμοποιεί διαφορετικούς ρόλους για τους χρήστες, δεν δημιουργεί το δικό του σύστημα ταυτοποίησης, αλλά χρησιμοποιεί το υπάρχον σύστημα δικαιωμάτων του CMS. Για να το πετύχει, το πρόσθετο δημιουργεί έναν νέο ρόλο με τις νέες δυνατότητες του WordPress και στη συνέχεια περιορίζει την αλληλεπίδρασή του με τις ρυθμίσεις του CMS και με τους άλλους χρήστες μέσω των δικών του συναρτήσεων.
Έτσι, κατά την εγκατάσταση του WooCommerce δημιουργείται ένας νέος ρόλος για τον Shop Manager («διαχειριστής καταστήματος»), ο οποίος διαθέτει τα δικαιώματα edit_users. Αυτή η άδεια επιτρέπει στον χρήστη να επεξεργάζεται δημοσιεύσεις καθώς και τα προφίλ οποιουδήποτε άλλου χρήστη του WordPress, συμπεριλαμβανομένου του διαχειριστή.
Φαίνεται ότι οι προγραμματιστές του WooCommerce έχουν προβλέψει μια λειτουργία που εμποδίζει τους χρήστες με αυτόν τον ρόλο να παρεμβαίνουν στα προφίλ των διαχειριστών. Ωστόσο, εξαιτίας ενός ελαττώματος στη λειτουργία του συστήματος διαχείρισης δικαιωμάτων των πρόσθετων, όταν το WooCommerce απενεργοποιείται, η λειτουργία περιορισμού των «διαχειριστών καταστήματος» παύει να λειτουργεί και οι χρήστες με αυτόν τον ρόλο μπορούν να τροποποιούν ελεύθερα τους λογαριασμούς άλλων χρηστών.
Κατά συνέπεια, ο μόνος αξιόπιστος τρόπος για να απενεργοποιηθεί το πρόσθετο είναι να το απενεργοποιήσει ο διαχειριστής και να διαγράψει όλα τα αρχεία του. Και εδώ προκύπτει το δεύτερο πρόβλημα.
Το γεγονός είναι ότι οι αναλυτές της RIPS Technologies ανακάλυψαν ένα σφάλμα που σχετίζεται με τη διαγραφή των αρχείων του WooCommerce στην έκδοση 3.4.5 και σε προγενέστερες. Αποδείχθηκε ότι οι χρήστες με δικαιώματα Shop Manager μπορούν να διαγράψουν οποιοδήποτε αρχείο του πρόσθετου, συμπεριλαμβανομένων εκείνων που είναι ζωτικής σημασίας για τη λειτουργία του. Στη συνέχεια, το πρόσθετο θα πάψει να λειτουργεί με προβλέψιμο τρόπο, το WordPress θα το απενεργοποιήσει αυτόματα και η κατάσταση θα επιστρέψει σε όσα περιγράφηκαν παραπάνω, όταν ένας χρήστης με ρόλο διαχειριστή καταστήματος μπορεί να τροποποιήσει τα προφίλ οποιουδήποτε χρήστη.
Οι ερευνητές εξηγούν ότι σε μια τέτοια περίπτωση ο εισβολέας δεν θα δυσκολευτεί να αποκτήσει τον λογαριασμό του διαχειριστή και, επομένως, να ελέγξει ολόκληρο τον ιστότοπο. Το βίντεο παρακάτω απεικονίζει τον συνδυασμό των δύο προβλημάτων της υπόθεσης.
Οι ειδικοί επισημαίνουν ότι, για να εκμεταλλευτεί με επιτυχία αυτό το σύστημα, ένας εισβολέας πρέπει να έχει πρόσβαση σε λογαριασμό με ρόλο διαχειριστή καταστήματος. Ωστόσο, σύμφωνα με τους ερευνητές, αυτό είναι εφικτό μέσω ευπαθειών XSS ή επιθέσεων phishing.
Οι προγραμματιστές του WooCommerce έχουν ήδη επιλύσει το πρόβλημα κυκλοφορώντας μια νέα έκδοση του πρόσθετου (3.4.6). Εφόσον η αυτόματη ενημέρωση των πρόσθετων δεν είναι καθόλου ενεργοποιημένη, οι ειδικοί συνιστούν στους χρήστες να ελέγχουν για ενημερώσεις και να βεβαιώνονται ότι χρησιμοποιούν τις τελευταίες εκδόσεις του WooCommerce.