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
Outils/GitHubGitHub/papageo75/cve-2026-48908-poc
Génération de PayloadsAnalyse des VulnérabilitésAnalyse de CodeExploitationExploitation d'Applications WebSécurité WebTests d'IntrusionApprentissage et Éducation
GitHub
papageo75/cve-2026-48908-poc

CVE-2026-48908-PoC

Preuve de concept (PoC) d'exécution de code à distance non authentifiée pour CVE-2026-48908 — SP Page Builder pour Joomla (≤ 6.6.1) : téléchargement arbitraire de fichiers via asset.uploadCustomIcon. Auto-nettoyant, protégé par jeton. Tests autorisés uniquement.

Voir le dépôt
1525il y a 2 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-2026-48908 — SP Page Builder (Joomla) RCE non authentifiée

Preuve de concept pour CVE-2026-48908, une vulnérabilité critique (CVSS 4.0 = 10,0) d'exécution de code à distance non authentifiée dans le composant SP Page Builder (com_sppagebuilder) pour Joomla, par JoomShaper.

CVECVE-2026-48908
FaiblesseCWE-284 Contrôle d'accès inapproprié → Téléversement de fichier arbitraire non authentifié → RCE
ComposantSP Page Builder (com_sppagebuilder) pour Joomla
Versions affectées1.0.0 – 6.6.1
Corrigé dans6.6.2
Privilèges requisAucun (pré-authentification)
Interaction utilisateurAucune

Description

SP Page Builder expose la tâche du contrôleur asset.uploadCustomIcon pour gérer le téléversement d'un package d'icônes personnalisées :

root@kitploit:~
index.php?option=com_sppagebuilder&task=asset.uploadCustomIcon

Dans les versions concernées, cette tâche est accessible sans authentification et sans jeton anti-CSRF valide. Elle accepte une archive ZIP (champ multipart custom_icon) et extrait son contenu dans un répertoire accessible publiquement via le web sous la racine du document :

root@kitploit:~
/media/com_sppagebuilder/assets/iconfont/<nom>/   (incluant le sous-dossier fonts/)

Étant donné que le téléversement est accessible sans authentification et que les fichiers extraits se retrouvent dans la racine web, un attaquant peut écrire des fichiers contrôlés dans un emplacement accessible et les atteindre via HTTP.

Obtenir l'exécution de code malgré le filtre d'extension

Certaines versions ajoutent un filtre côté serveur sur les noms de fichiers des entrées de l'archive. Cette preuve de concept contourne une implémentation courante de ce filtre avec une chaîne en trois étapes :

  1. Liste noire sensible à la casse. Le filtre rejette les minuscules .php, .phtml, .phar, .php3–.php8, .pht, .inc, … mais il ne normalise pas la casse, donc .PHP (et autres variantes de casse mixte) ainsi que .htaccess passent à travers.
  2. Gestionnaire de serveur web sensible à la casse. Un gestionnaire PHP Apache par défaut (<FilesMatch "\.php$">) n'exécute que les .php en minuscules, donc un .PHP téléversé est initialement servi sous forme de texte source, non exécuté.
  3. Contournement via .htaccess. Un fichier .htaccess (que la liste noire ne détecte pas non plus) contenant AddType application/x-httpd-php .PHP est déposé à côté de la charge utile. Là où AllowOverride le permet, cela enregistre .PHP comme PHP et le shell téléversé s'exécute.

La preuve de concept inclut toujours une structure d'icônes valide (selection.json, style.css, fonts/<nom>.ttf) pour que le téléversement soit accepté, puis ajoute le shell.

Adaptatif — elle parcourt une liste d'extensions exécutables PHP (moins d'empreinte d'abord), puis une solution de repli avec .htaccess, et s'arrête à la première qui exécute effectivement du code :

  1. Téléversements directs de fichiers uniques — fonts/<shell>.<ext> pour chacune de php, php3, php4, php5, php7, pht, phtml, phar, PHP, pHp, Php. Sans .htaccess. Les différents filtres de SP Page Builder bloquent différents ensembles, et différentes configurations Apache exécutent différentes extensions — cela trouve donc la combinaison que la cible autorise et exécute.
  2. fonts/.htaccess + fonts/<shell>.PHP (repli) — seulement si chaque tentative directe échoue. Le .htaccess déposé (AddType … .PHP) force l'exécution d'un .PHP en majuscule là où AllowOverride le permet (c'est ce dont les hôtes de type 5.4.6 ont besoin).

Elle s'arrête à la première méthode qui s'exécute et affiche celle qui a fonctionné. Chaque téléversement accepté est suivi, donc --cleanup supprime tous (les tentatives multiples peuvent laisser des répertoires en écriture seule).

Selon la version et le durcissement du serveur, le résultat varie, et la preuve de concept l'indique explicitement (voir Résultats ci-dessous) : RCE complète, écriture de fichier uniquement (PHP désactivé / AllowOverride None), corrigé (admin uniquement), ou non vulnérable.

Prérequis

root@kitploit:~
pip install -r requirements.txt   # requests

Utilisation

root@kitploit:~
# confirmer la vulnérabilité et prouver l'exécution de code (exécute `id`)
python3 sppb_rce.py https://cible.example

# exécuter une commande spécifique
python3 sppb_rce.py --url cible.example -c "uname -a"

# shell interactif pseudo
python3 sppb_rce.py https://cible.example --shell

# seulement vérifier ; n'exécuter aucune commande
python3 sppb_rce.py https://cible.example --check

# supprimer le répertoire de charge utile téléversée ensuite
python3 sppb_rce.py https://cible.example --cleanup

La cible peut être donnée comme argument positionnel ou via --url, avec ou sans schéma.

Exemple (anonymisé)

root@kitploit:~
[*] cible   : https://cible.example
[*] endpoint : index.php?option=com_sppagebuilder&task=asset.uploadCustomIcon
[*] essai .php            -> rejeté par le filtre
[*] essai .php3           -> rejeté par le filtre
...
[*] essai .PHP            -> téléversé, non exécuté
[*] essai .htaccess+.PHP  -> EXÉCUTÉ
[+] EXÉCUTION DE CODE CONFIRMÉE via '.htaccess+.PHP' (echo 7*6 -> 42)
[*] exécution : id
------------------------------------------------------------
uid=33(www-data) gid=33(www-data) groups=33(www-data)
------------------------------------------------------------
[*] nettoyage : effectué (4 répertoires)

Résultats (et codes de sortie)

La preuve de concept vous indique toujours le verdict pour la cible :

SortieSignificationSortie
EXÉCUTION DE CODE CONFIRMÉE via '<méthode>'Vulnérable — RCE complète sans authentification0
[~] PARTIELLEMENT VULNÉRABLE — écriture de fichier sans authentification fonctionne, mais PHP ne s'est PAS exécutéÉcriture de fichier uniquement (AllowOverride None / PHP désactivé dans /media)3
[-] CIBLE NON VULNÉRABLE — SP Page Builder est corrigé (6.6.2+)Corrigé — le téléversement nécessite désormais une authentification admin1
[-] CIBLE NON VULNÉRABLE — chaque téléversement a été rejeté, ou SP Page Builder est absent/corrigéNon exploitable / composant absent2

Fonctionnalités de sécurité

  • Le shell web déposé est protégé par un jeton aléatoire par exécution et renvoie 404 à quiconque ne possède pas ce jeton — ce n'est pas une porte dérobée ouverte à tous.
  • --cleanup supprime le répertoire de charge utile qu'il a créé.
  • Les actions par défaut sont bénignes (id, un marqueur arithmétique).

Correction

  1. Mettre à jour SP Page Builder vers la version 6.6.2 ou ultérieure (ajoute l'authentification, l'autorisation et les vérifications CSRF à la tâche de téléversement). C'est la correction principale.
  2. Défense en profondeur sur le serveur web :
    • Désactiver l'exécution PHP dans les répertoires de téléversement (/media/, /images/, /tmp) via le pool FPM ou php_admin_flag engine off.
    • Définir AllowOverride None sur ces répertoires afin qu'un .htaccess déposé ne puisse pas réactiver les gestionnaires.
    • Utiliser une liste blanche insensible à la casse pour les extensions de téléversement, jamais une liste noire.
  3. Revue post-compromission : rechercher des .php/.PHP inattendus sous media/.../iconfont/, de nouveaux comptes Super Utilisateur, et des gestionnaires de fichiers installés.

Références

  • NVD — CVE-2026-48908
  • Enregistrement CVE.org — CVE-2026-48908
  • Article technique — SP Page Builder uploadCustomIcon RCE (mySites.guru)
  • Éditeur — JoomShaper SP Page Builder (correctif de sécurité dans la version 6.6.2)
  • SP Page Builder — Annuaire des extensions Joomla

Mots-clés

Exploit Joomla SP Page Builder · RCE non authentifiée com_sppagebuilder · Preuve de concept CVE-2026-48908 · Téléversement arbitraire de fichier asset.uploadCustomIcon · Exécution de code à distance Joomla · Script d'exploit pour test d'intrusion.

AVIS DE NON-RESPONSABILITÉ

Ce logiciel est publié à des fins éducatives et pour des tests de sécurité autorisés uniquement — par exemple, des tests d'intrusion pour lesquels vous avez une autorisation écrite, des programmes de bug bounty incluant la cible dans le périmètre, des compétitions CTF, et vos propres systèmes de laboratoire.

Accéder, modifier ou perturber des systèmes informatiques sans autorisation est illégal dans la plupart des juridictions. Vous êtes seul et entièrement responsable de vos actions. En utilisant, téléchargeant ou distribuant ce code, vous acceptez que :

  • vous l'utiliserez uniquement contre des systèmes que vous possédez ou pour lesquels vous avez une autorisation explicite et documentée de tester ;
  • le(s) auteur(s) et contributeurs déclinent toute responsabilité pour tout dommage, perte de données, interruption de service ou conséquences légales découlant de l'utilisation ou de la mauvaise utilisation de ce code ;
  • ce matériel est fourni "EN L'ÉTAT", sans garantie d'aucune sorte, expresse ou implicite.

Si vous n'êtes pas d'accord avec ces conditions, n'utilisez pas ce logiciel. Comme pour tout exploit/PoC accessible publiquement, il est partagé de bonne foi pour aider les défenseurs à détecter, comprendre et corriger la vulnérabilité ; ce que vous en faites vous regarde.

Licence

MIT — voir LICENSE.

Télécharger l’outil