CVE-2019-11231
Un problème a été découvert dans GetSimple CMS jusqu'à la version 3.3.15. Une désinfection insuffisante des entrées dans le fichier theme-edit.php permet le...
- Publié
- 22 mai 2019
- Mise à jour
- 4 août 2024
- Attribution de CNA
- mitre
- Preuve observée
- 20 mai 2019
CVSS primaire
nvd · CVSS 3.0
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HÉlevé · 30 prochains jours
- Percentile
- 99,4 %
- Date du modèle
- 18 oct. 2026
EPSS est une estimation statistique, et non une certitude ou une mesure d'impact. Combinez-le avec CVSS, le statut KEV, l'exposition et votre environnement.
Résumé
Un problème a été découvert dans GetSimple CMS jusqu'à la version 3.3.15. Une désinfection insuffisante des entrées dans le fichier theme-edit.php permet le téléversement de fichiers avec un contenu arbitraire (du code PHP, par exemple). Cette vulnérabilité est déclenchée par un utilisateur authentifié ; cependant, l'authentification peut être contournée. Selon la documentation officielle de l'étape 10 de l'installation, un administrateur doit téléverser tous les fichiers, y compris les fichiers .htaccess, et exécuter un contrôle de santé. Toutefois, ce qui est négligé, c'est que le serveur HTTP Apache n'active plus par défaut la directive AllowOverride, ce qui conduit à l'exposition du mot de passe de data/users/admin.xml. Les mots de passe sont hachés, mais cela peut être contourné en partant de la clé API data/other/authorization.xml. Cela permet de cibler l'état de session, puisqu'ils ont décidé de créer leur propre implémentation. Le cookie_name est une information façonnée qui peut être divulguée depuis le frontend (nom du site et version). Si quelqu'un divulgue la clé API et le nom d'utilisateur administrateur, il peut contourner l'authentification. Pour ce faire, il doit fournir un cookie basé sur un calcul SHA-1 de ces informations connues. La vulnérabilité existe dans le fichier admin/theme-edit.php. Ce fichier vérifie les soumissions de formulaires via des requêtes POST, ainsi que le nonce csrf. Si le nonce envoyé est correct, le fichier fourni par l'utilisateur est téléversé. Il existe une traversée de chemin permettant un accès en écriture en dehors de la racine du répertoire des thèmes confinés. Exploiter la traversée n'est pas nécessaire car le fichier .htaccess est ignoré. Un facteur contributif est qu'il n'y a pas d'autre vérification de l'extension avant d'enregistrer le fichier, en supposant que le contenu du paramètre est sûr. Cela permet la création de fichiers exécutables et accessibles via le web avec un contenu arbitraire.
Sources
modules/exploits/multi/http/getsimplecms_unauth_code_exec.rb
Metasploit Framework modulesConditions déclarées
- platform: PHP($.exploit_multi/http/getsimplecms_unauth_code_exec.platform)
- verification: check_declared($.exploit_multi/http/getsimplecms_unauth_code_exec.check)
Utilisation responsable
Utilisez les informations de vulnérabilité uniquement sur les systèmes que vous possédez ou que vous êtes autorisé à tester. Kitploit renvoie aux métadonnées de la recherche publique et ne stocke pas de code d'exploitation ni de charges utiles malveillantes.