Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2025-61183 — Divulgation détaillée d'une vulnérabilité XSS stockée dans VaahCMS via une gestion non sécurisée du téléchargement de fichiers SVG, incluant le flux d'exploitation, les points de terminaison affectés et les stratégies d'atténuation pour les chercheurs en sécurité. | Kitploit
Outils/GitHubGitHub/thawphone/cve-2025-61183
Analyse des VulnérabilitésExploitationExploitation d'Applications WebSécurité WebTests d'IntrusionApprentissage et Éducation
GitHubthawphone/cve-2025-61183

CVE-2025-61183

Divulgation détaillée d'une vulnérabilité XSS stockée dans VaahCMS via une gestion non sécurisée du téléchargement de fichiers SVG, incluant le flux d'exploitation, les points de terminaison affectés et les stratégies d'atténuation pour les chercheurs en sécurité.

Voir le dépôt
il y a 6 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

[CVE-2025-61183] XSS stocké lors du téléchargement d'avatar utilisateur via une gestion non sécurisée des SVG

Aperçu

Une vulnérabilité de Cross-Site Scripting (XSS) stocké a été identifiée dans vaahcms, spécifiquement dans l'interaction entre la logique de téléchargement de fichiers dans MediaController.php et la méthode storeAvatar() dans UserBase.php, permettant à un utilisateur enregistré de bas niveau de télécharger un fichier SVG malveillant contenant du JavaScript embarqué. La vulnérabilité provient du stockage du fichier effectué avant la validation du contenu ou du type MIME, laissant les fichiers malveillants sur un chemin prévisible et accessible publiquement sur le serveur. La vulnérabilité provient de la méthode upload() dans MediaController.php

$path = $request->file($input_file_name) ->storeAs($request->folder_path, $upload_file_name); permettant à un attaquant de spécifier le chemin du répertoire, lui permettant ainsi de placer des fichiers malveillants (comme un SVG chargé de XSS) directement dans le répertoire public/, rendant la charge utile immédiatement accessible via un navigateur web.

Impact

Une exploitation réussie permet à un attaquant de contrôler le contenu et le nom de fichier d'un fichier écrit dans un chemin de stockage public (/storage/media/YYYY/MM/<controlled-filename>.svg). Si ce SVG accessible publiquement est ensuite rendu par le navigateur d'un utilisateur via une balise ``, <object> ou un lien modifié, le script embarqué s'exécutera, entraînant un XSS persistant.

Produit et versions concernés

  • Produit : VaahCMS
  • Versions vulnérables : 2.3.1

Point d'accès vulnérable

POST /backend/vaah/manage/media/upload

Failles critiques

  1. Problème de condition de course/timing : Le fichier est physiquement sauvegardé sur le disque avant toute validation du contenu ou vérification du type MIME.
  2. Chemin prévisible : Les fichiers malveillants sont sauvegardés sous un chemin public prévisible : /storage/media/YYYY/MM/<controlled-filename>.svg.
  3. Aucun nettoyage : Les fichiers persistent même si le backend renvoie une erreur (par exemple, {"success": false, "errors": ["Unable to decode input"]}).

Flux d'exploitation (Preuve de concept)

  1. Un attaquant crée un fichier SVG spécialement conçu (voir POC.svg).
  2. L'attaquant envoie une requête au point d'accès vulnérable, en contrôlant le nom de fichier (par exemple, xss.svg).
  3. Malgré une réponse de backend échouée, le fichier est sauvegardé sur le disque, par exemple, à /storage/media/2025/08/xss.svg.
  4. L'attaquant transmet un lien ou intègre le chemin (par exemple, dans un message de forum ou un e-mail) à une victime, déclenchant la charge utile. POC

Atténuation/Réponse du fournisseur

  • Fournisseur : VaahCMS
  • Statut : Reconnu, correctif en attente
  • Atténuation temporaire :
    • Désactiver complètement les téléchargements de fichiers SVG dans l'application
    • Implémenter une validation du type de fichier côté serveur en utilisant la vérification du type MIME avant de stocker les fichiers
    • Utiliser une bibliothèque dédiée de nettoyage SVG (par exemple, enshrined/svg-sanitize pour PHP)
    • Stocker les fichiers téléchargés en dehors de la racine web et les servir via un proxy sécurisé
    • Implémenter un nettoyage automatique des fichiers qui échouent à la validation

🔗 Références

  • https://github.com/webreinvent/vaahcms/issues/301

Chercheur : Thaw Phone Nyo

Date de divulgation : 2025/10/8

Télécharger l’outil