„`html
Zusammenfassung
Die WordPress-Erweiterung „Custom User Registration Fields for WooCommerce“ (Versionen bis 2.2.3) weist eine kritische Privilege-Escalation-Anfälligkeit auf. Unauthentisierte Angreifer können durch Manipulation von Registrierungsparametern Administrative Rechte erlangen, sofern die „User Role Selection“-Funktion aktiviert ist.
Betroffene Systeme
- Custom User Registration Fields for WooCommerce Plugin
- Versionen: bis einschlieĂźlich 2.2.3
- WordPress-Installationen mit aktivierter „User Role Selection“-Einstellung
- WooCommerce Store API /wc/store/v1/checkout
Technische Details
Die Anfälligkeit resultiert aus fehlender Eingabevalidierung in zwei kritischen Funktionen:
af_reg_checkout_data_to_order_meta_data_block(): Diese Funktion akzeptiert den Parameter afreg_select_user_role direkt aus unauthentisierten Store-API-Anfragen und speichert den Wert ohne Validierung in den Order-Metadaten.
af_reg_custom_order_processing_function(): Die Funktion verarbeitet diese Metadaten beim WooCommerce-Checkout-Abschluss und ĂĽbergibt den Rollenwert direkt an WP_User::add_role(), ohne gegen die Admin-konfigurierten erlaubten Rollen zu prĂĽfen.
Angriffsablauf: Ein Angreifer modifiziert den JSON-Body einer Checkout-Anfrage und setzt afreg_select_user_role auf „administrator“. Beim Kontoerstellungsprozess wird diese Rolle ohne Validierung zugewiesen.
Empfohlene Massnahmen
- Sofortige Deaktivierung der „User Role Selection“-Funktion, falls nicht essentiell
- Plugin auf eine gepatchte Version aktualisieren (sobald verfĂĽgbar)
- Bestehende Benutzerkonten auf unauthentisierte Administrator-Accounts prĂĽfen
- Web Application Firewall (WAF) zur Filterung verdächtiger Checkout-Anfragen implementieren
- Regelmäßige Audit-Logs der Benutzerrolenänderungen durchführen
Bewertung
CVSS-Score: 9.8 (Critical)
Die extreme Schweregrad-Einstufung ist gerechtfertigt durch: Netzwerkbasierter Angriffsvektor, keine Authentifizierung erforderlich, uneingeschränkte Privilege-Escalation zu Admin-Rechten. Die Anfälligkeit ermöglicht vollständige Kompromittierung betroffener WordPress-Installationen.
„`