RIPS Technologies a descoperit o problemă în WordPress și în pluginul de comerț electronic WooCommerce, creat de Automattic. Potrivit statisticilor oficiale, această soluție a fost descărcată de peste patru milioane de ori și are aproximativ același număr de instalări active.
Cercetătorii explică faptul că există două probleme aici. Prima problemă este că, atunci când pluginul este instalat pentru WordPress, care folosește roluri diferite pentru utilizatori, acesta nu creează propriul sistem de autentificare, ci folosește sistemul de privilegii existent al CMS-ului. Pentru aceasta, pluginul creează un rol nou cu noile funcționalități WordPress, apoi își limitează interacțiunea cu setările CMS-ului și cu ceilalți utilizatori prin propriile funcții.
Astfel, la instalarea WooCommerce, se creează un rol nou, Shop Manager („manager de magazin”), care dispune de drepturile edit_users. Această permisiune îi permite utilizatorului să modifice publicații, precum și profilurile oricărui alt utilizator WordPress, inclusiv ale administratorului.
Se pare că dezvoltatorii WooCommerce au prevăzut o funcție care împiedică utilizatorii cu acest rol să intervină asupra profilurilor administratorilor. Însă, din cauza unui defect în funcționarea sistemului de gestionare a privilegiilor pluginurilor, atunci când WooCommerce este dezactivat, funcția de restricționare a „managerilor de magazin” încetează să funcționeze, iar utilizatorii cu acest rol pot modifica liber conturile altor utilizatori.
Prin urmare, singura modalitate fiabilă de a dezactiva plugin-ul este să îl dezactivați din contul de administrator și să ștergeți toate fișierele sale. Iar aici apare a doua problemă.
Le fait est que les analystes de RIPS Technologies ont découvert un bug lié à la suppression des fichiers WooCommerce de la version 3.4.5 et inférieure. Il s’est avéré que les utilisateurs disposant des droits de Shop Manager peuvent supprimer n’importe quel fichier du plug-in, y compris ceux qui sont essentiels à son travail. Par la suite, le plug-in cessera de fonctionner de manière prévisible, WordPress le désactivera automatiquement et la situation reviendra à ce qui précède lorsqu’un utilisateur ayant le rôle de gestionnaire de boutique peut modifier les profils de n’importe quel utilisateur.
Cercetătorii explică faptul că, într-o astfel de situație, atacatorul nu va avea nicio dificultate în a prelua contul de administrator și, implicit, a controla întregul site. Videoclipul de mai jos ilustrează o combinație a celor două probleme din acest caz.
Experții subliniază că, pentru a putea folosi cu succes această metodă, un atacator trebuie să aibă acces la un cont cu rol de manager al magazinului. Totuși, potrivit cercetătorilor, acest lucru este posibil prin vulnerabilități XSS sau prin atacuri de tip phishing.
Dezvoltatorii WooCommerce au remediat deja problema publicând o nouă versiune a plugin-ului ( 3.4.6 ). Deoarece actualizarea automată a plugin-urilor nu este deloc activată, experții recomandă utilizatorilor să caute actualizări și să se asigure că folosesc cele mai recente versiuni ale WooCommerce.