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-2026-48908-joomla-sp-page-builder-detection — Valide CVE-2026-48908 dans Joomla SP Page Builder avec un téléchargement d'icône non autorisé conduisant à l'exécution de code PHP. Inclut des preuves auditd/PCAP, une chronologie des événements et des recommandations de détection SOC pour la recherche défensive. | Kitploit
Outils/GitHubGitHub/g0thamrabb1t/cve-2026-48908-joomla-sp-page-builder-detection
Analyse des VulnérabilitésExploitationExploitation d'Applications WebAnalyse ForensiqueSécurité WebTests d'IntrusionArticles et RechercheApprentissage et ÉducationRéponse aux Incidents
GitHubg0thamrabb1t/cve-2026-48908-joomla-sp-page-builder-detection

CVE-2026-48908-joomla-sp-page-builder-detection

Valide CVE-2026-48908 dans Joomla SP Page Builder avec un téléchargement d'icône non autorisé conduisant à l'exécution de code PHP. Inclut des preuves auditd/PCAP, une chronologie des événements et des recommandations de détection SOC pour la recherche défensive.

Voir le dépôt
1il 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 — Validation et détection de Joomla SP Page Builder

Validation en laboratoire de CVE-2026-48908 dans le composant Joomla SP Page Builder, axée sur les preuves techniques, la reconstruction des événements et les opportunités de détection défensive.

Ce référentiel documente un test contrôlé dans lequel le point de terminaison asset.uploadCustomIcon de SP Page Builder a accepté des archives d'icônes téléchargées qui ont abouti à l'écriture d'artefacts PHP sous le répertoire multimédia de Joomla. L'invocation du fichier PHP téléchargé via HTTP a conduit à l'exécution de commandes en tant qu'utilisateur du processus du serveur web. L'activité HTTP, fichier, processus, authentification et réseau résultante a été capturée à l'aide des logs du conteneur Apache, de Linux auditd, de tcpdump, de la télémétrie Docker, de l'interrogation des modifications de fichiers et de captures d'écran de l'hôte Windows.

[!IMPORTANT] Ce référentiel contient uniquement des rapports et des captures d'écran. Le code d'exploit offensif, le code source des charges utiles, les fichiers PCAP bruts et les ensembles de preuves brutes de l'hôte ne sont volontairement pas inclus. Le matériel est destiné à la validation de vulnérabilités, à l'ingénierie SOC, au développement de détections, à la préparation aux incidents et à la recherche autorisée.

Rapports

  • Rapport de validation en anglais
  • Rapport de validation en polonais
  • Les deux rapports contiennent la méthodologie de test complète, des extraits de preuves, une chronologie des événements, des preuves de modifications de fichiers, des indicateurs réseau, des conseils d'atténuation, des recommandations d'audit et un exemple de logique SIEM.

    Structure du référentiel

    root@kitploit:~
    .
    ├── README.md
    ├── SHA256SUMS.txt
    ├── reports/
    │   ├── CVE-2026-48908_SP_Page_Builder_detection_EN.pdf
    │   └── CVE-2026-48908_SP_Page_Builder_detection_PL.pdf
    └── screenshots/
        ├── 01_poc_upload_and_code_execution.png
        ├── 02_http_whoami_www_data.png
        ├── 03_tcp_callback_ncat.png
        ├── 04_reverse_shell_session.png
        └── 05_root_access_and_su_failure_redacted.png
    

    Aucun code source d'exploit, source de charge utile, PCAP brut, paquet de preuves Docker brut ou fichier source DOCX n'est inclus.

    Environnement de test

    RôleSystème
    Hôte victimeUbuntu 24.04.4 LTS, noyau 6.17.0-35-generic, Docker Engine 29.5.3
    Application cibleJoomla 5.4.7, PHP 8.3.32, Apache HTTP Server, image joomla:5-php8.3-apache
    ComposantJoomShaper SP Page Builder
    Conteneurjoomla5-builders
    Poste de travail attaquantMicrosoft Windows 11 Home 10.0.26200
    Service Joomlahttp://172.20.10.3:8080
    Adresse de test Windows172.20.10.2
    Adresse du conteneur172.21.0.3
    Date du test9 juillet 2026

    La racine web de Joomla /var/www/html était soutenue par le volume Docker joomla5-builders_joomla_data. Ceci est important pour la détection : docker diff n'a pas fourni de visibilité détaillée sur les modifications de fichiers à l'intérieur du volume, donc la surveillance des fichiers a dû s'appuyer sur des listes de fichiers tenant compte des volumes et des conseils de surveillance côté hôte.

    Ce qui a été validé

    Le test a été réalisé dans un environnement de laboratoire isolé et autorisé. La validation a couvert la séquence suivante :

    1. Joomla 5 a été déployé dans Docker avec SP Page Builder installé.
    2. Un projet public listé dans les références a été utilisé comme référence de validation initiale.
    3. Le point de terminaison asset.uploadCustomIcon de SP Page Builder a accepté les archives d'icônes téléchargées dans l'environnement de laboratoire.
    4. De nouveaux répertoires et fichiers ont été créés sous /media/com_sppagebuilder/assets/iconfont/.
    5. Le contenu téléchargé comprenait des extensions PHP à casse mixte et un fichier .htaccess qui modifiait la gestion PHP pour l'extension .PHP.
    6. L'artefact PHP téléchargé a été invoqué via HTTP et a exécuté des commandes contrôlées.
    7. Un rappel TCP unique vers l'hôte Windows a confirmé la connectivité sortante.
    8. Un test de shell inverse contrôlé a confirmé l'exécution interactive de commandes en tant qu'utilisateur du serveur web.
    9. Les tentatives d'accès à /root et de changement d'utilisateur avec su - ont échoué.
    10. Les preuves de la télémétrie côté victime et des captures d'écran Windows ont été corrélées en une seule chronologie UTC.

    Les rapports documentent intentionnellement les preuves et la logique de détection sans distribuer d'exploit ou d'implémentation de charge utile réutilisable.

    Résultat confirmé

    Le test en laboratoire a confirmé :

    • le téléchargement non autorisé via le point de terminaison asset.uploadCustomIcon de SP Page Builder ;
    • la création d'artefacts PHP et .htaccess sous le répertoire multimédia de Joomla ;
    • l'exécution côté serveur de l'artefact PHP téléchargé après une requête HTTP ;
    • l'exécution dans le contexte de l'utilisateur du processus Apache/PHP ;
    • la connectivité TCP sortante du conteneur Joomla vers l'hôte Windows ;
    • une session de shell inverse interactive en tant que www-data ;
    • aucune élévation de privilèges confirmée vers root.

    À l'intérieur du conteneur, l'identité effective était :

    root@kitploit:~
    uid=33(www-data) gid=33(www-data) groups=33(www-data)
    

    La tentative d'élévation de privilèges échouée était visible comme :

    root@kitploit:~
    cd root
    bash: cd: root: Permission denied
    su -
    Password:
    su: Authentication failure
    

    Preuves clés

    Validation du PoC public et comportement de téléchargement

    Le PoC public a testé plusieurs variantes d'extension et a confirmé qu'une combinaison impliquant une extension PHP à casse mixte et un .htaccess pouvait conduire à une exécution dans la configuration du laboratoire.

    Téléchargement du PoC et exécution de code

    Exécution de code en tant qu'utilisateur du serveur web

    Une requête HTTP contrôlée a exécuté whoami, et le navigateur a affiché l'utilisateur effectif du processus.

    Résultat HTTP whoami

    Rappel TCP unique

    Avant le test interactif, un rappel à message unique plus sûr a été utilisé pour confirmer la connectivité sortante depuis l'environnement cible vers l'hôte Windows sur le port TCP 4444.

    Rappel TCP unique

    Session de shell inverse

    La session interactive a confirmé l'exécution en tant que www-data, Linux comme système d'exploitation et un répertoire de travail sous le chemin multimédia de Joomla SP Page Builder.

    Session de shell inverse

    Tentative d'accès root échouée

    Les tentatives d'accès à /root et d'authentification avec su - ont échoué. La capture d'écran est masquée pour éviter de publier le mot de passe de test.

    Accès root et tentative su échoués

    Chronologie reconstituée

    La chronologie complète est disponible dans les deux rapports PDF. Les événements les plus importants étaient :

    UTCÉvénement
    19:33:56Démarrage de l'audit Linux, tcpdump, événements Docker et interrogation des modifications de fichiers
    19:34:23Série de requêtes POST vers /index.php?option=com_sppagebuilder&task=asset.uploadCustomIcon
    19:34:23.291GET vers un fichier .PHP téléchargé avec une commande arithmétique contrôlée
    19:34:23.329GET vers un fichier .pHp téléchargé avec une commande arithmétique contrôlée
    19:34:23.361GET vers un fichier .Php téléchargé avec une commande arithmétique contrôlée
    19:34:23.398GET vers l'artefact .PHP final avec une commande arithmétique contrôlée
    19:34:23.411Le PoC public a exécuté id via l'artefact PHP téléchargé et a reçu un HTTP 200
    19:35:05Requête manuelle whoami a renvoyé www-data
    19:35:27Rappel TCP unique vers 172.20.10.2:4444 réussi
    19:35:59Requête HTTP a initié une connexion TCP inverse vers 172.20.10.2:4444
    19:36:22-19:36:31whoami, uname, id et pwd ont confirmé le contexte d'exécution
    19:37:13cd root a renvoyé Permission denied
    19:37:21-19:37:28Tentative su - a échoué avec Authentication failure
    19:39:25La collecte d'audit a été arrêtée et les artefacts ont été emballés

    Méthodologie de collecte des preuves

    Linux et Docker

    L'hôte victime a collecté :

    • les événements auditd pour execve ;
    • la capture de paquets avec tcpdump ;
    • les métadonnées, logs, événements, listes de processus et différences de système de fichiers du conteneur Docker ;
    • l'interrogation périodique des modifications de fichiers depuis l'intérieur du conteneur ;
    • les listes de fichiers pour la racine web de Joomla, les répertoires temporaires et les chemins multimédia pertinents ;
    • l'état sélectionné du conteneur avant et après le test.

    Le test a également identifié une limitation de surveillance : parce que /var/www/html était soutenu par un volume Docker, docker diff n'a pas montré la création détaillée de fichiers sous /var/www/html/media/com_sppagebuilder/assets/iconfont/. La surveillance de l'intégrité des fichiers devrait donc couvrir le chemin réel de l'hôte qui soutient le volume.

    Windows

    Les preuves de l'hôte Windows ont été intentionnellement limitées aux captures d'écran pertinentes pour le rapport :

    • sortie du PoC public ;
    • sortie du navigateur pour whoami ;
    • sortie Ncat pour le rappel unique ;
    • sortie Ncat pour la session de shell inverse ;
    • tentative échouée /root et su - avec le mot de passe masqué.

    Opportunités de détection les plus importantes

    1. Téléchargement via SP Page Builder

    Surveillez la télémétrie HTTP, proxy inverse, WAF ou réseau pour la combinaison suivante :

    root@kitploit:~
    POST /index.php?option=com_sppagebuilder&task=asset.uploadCustomIcon
    User-Agent contient : sppb-rce-poc
    Statut : 200, 201 ou 204
    

    En production, ne vous fiez pas uniquement au User-Agent du PoC public. Le point de terminaison et le modèle de téléchargement inattendu sont des indicateurs plus stables que la valeur du User-Agent.

    2. Fichier exécutable ou .htaccess sous le chemin des icônes SP Page Builder

    Surveillez la télémétrie des fichiers pour les nouveaux fichiers ou fichiers modifiés correspondant à :

    root@kitploit:~
    /media/com_sppagebuilder/assets/iconfont/*/fonts/*.php
    /media/com_sppagebuilder/assets/iconfont/*/fonts/*.PHP
    /media/com_sppagebuilder/assets/iconfont/*/fonts/*.pHp
    /media/com_sppagebuilder/assets/iconfont/*/fonts/*.Php
    /media/com_sppagebuilder/assets/iconfont/*/fonts/.htaccess
    

    La présence d'un .htaccess contenant AddType application/x-httpd-php .PHP dans un répertoire de téléchargement multimédia est un indicateur de haute valeur.

    3. Requête GET vers un fichier PHP téléchargé avec des paramètres de commande

    Corrélez l'activité de téléchargement avec les requêtes HTTP ultérieures vers des chemins comme :

    root@kitploit:~
    /media/com_sppagebuilder/assets/iconfont/*/fonts/*
    

    Une confiance plus élevée est atteinte lorsque la requête cible une extension de type PHP et inclut des paramètres tels que t= et c=.

    4. Activité de shell ou d'interpréteur depuis le compte de service web

    Les indicateurs de processus de haute valeur incluent :

    root@kitploit:~
    utilisateur : www-data, apache ou nginx
    processus : bash, sh, dash ou php
    ligne de commande contient : /dev/tcp, bash -i, opérateurs de redirection ou exécution d'interpréteur inhabituelle
    

    5. Connexion sortante depuis le conteneur web

    Créez une alerte lorsqu'un shell ou interpréteur lancé par le processus du serveur web initie une connexion sortante vers un poste de travail ou un port de destination inhabituel. L'événement de laboratoire a utilisé le port TCP 4444, mais la détection en production ne devrait pas dépendre d'un seul port.

    6. Tentatives d'élévation de privilèges échouées après exécution web

    Le test a produit une tentative échouée de su -. Surveillez les helpers d'authentification tels que unix_chkpwd, les écritures dans /var/log/btmp, et les commandes interactives suite à une compromission du compte de service web.

    Conseils de triage SOC

    Lorsque l'indicateur de téléchargement HTTP est détecté, le SOC doit immédiatement le corréler avec :

    • l'IP source, le user agent et le statut HTTP ;
    • si l'instance Joomla cible a SP Page Builder installé et si la version est vulnérable ;
    • les nouveaux répertoires sous /media/com_sppagebuilder/assets/iconfont/ ;
    • les nouveaux fichiers de type PHP ou fichiers .htaccess sous les répertoires multimédia de Joomla ;
    • les requêtes HTTP GET vers les fichiers nouvellement créés peu après le téléchargement ;
    • les paramètres de requête de type commande comme t= et c= ;
    • la création de processus par l'utilisateur du serveur web, en particulier les processus shell ou interpréteur ;
    • les connexions sortantes depuis le conteneur web ou le compte de service web ;
    • les commandes de découverte telles que whoami, id, uname, hostname, pwd, ip, ifconfig, netstat ou ss ;
    • les échecs d'authentification, les tentatives d'accès aux identifiants, la persistance ou le mouvement latéral après l'exécution initiale.

    Un seul événement de téléchargement n'est pas toujours suffisant en soi. L'alerte la plus forte combine télémétrie de téléchargement, de création de fichier, d'accès au fichier, d'exécution de processus et de réseau sortant dans la même fenêtre temporelle courte.

    Atténuations recommandées

    1. Mettez à jour SP Page Builder vers la version 6.6.2 ou plus récente.
    2. Vérifiez /media/com_sppagebuilder/assets/iconfont/ et le répertoire multimédia plus large de Joomla pour les fichiers de type PHP et les artefacts .htaccess.
    3. Supprimez tout fichier PHP, .htaccess, .phtml, .phar, archive ou artefact exécutable inattendu des répertoires de téléchargement.
    4. Désactivez l'exécution PHP dans les répertoires de téléchargement et multimédia au niveau Apache, Nginx et PHP-FPM.
    5. Limitez ou alertez sur l'accès au point de terminaison asset.uploadCustomIcon depuis des réseaux non fiables.
    6. Surveillez les processus enfants du service web et les connexions sortantes depuis les conteneurs web.
    7. Déployez une couverture FIM, eBPF, auditd ou EDR pour les volumes Docker qui contiennent la racine web de l'application.
    8. Ne comptez pas uniquement sur docker diff pour la surveillance de la racine web lorsque les données de l'application sont stockées dans des volumes Docker ou des montages de liaison.

    Portée et limites

    • La validation a été effectuée sur une seule instance Docker Joomla 5 avec SP Page Builder installé.
    • L'impact observé était l'exécution de code en tant qu'utilisateur du processus du serveur web www-data ; l'élévation de privilèges vers root n'a pas été confirmée.
    • Le résultat confirme le chemin testé et la configuration. Il ne prouve pas que chaque déploiement, proxy inverse, serveur web, gestionnaire PHP ou système d'exploitation se comporte de manière identique.
    • Le code d'exploit offensif, le code source des charges utiles, les fichiers PCAP bruts, les ensembles de preuves Docker brutes et les fichiers source DOCX ne sont pas distribués dans ce référentiel.
    • Les rapports contiennent des extraits de preuves sélectionnés plutôt que des logs bruts complets, afin de garder le matériel lisible et axé sur la détection.

    Références

    • NVD - CVE-2026-48908
    • CVE.org - CVE-2026-48908
    • Catalogue des vulnérabilités exploitées connues de CISA
    • Projet public utilisé comme référence de validation initiale
    • JoomShaper SP Page Builder

    Avis d'utilisation responsable

    Ce matériel est fourni pour la recherche en sécurité défensive, la gestion des vulnérabilités, l'ingénierie de détection, la préparation aux incidents et les tests autorisés. Ne l'utilisez pas contre des systèmes sans autorisation explicite.

    Télécharger l’outil