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-49049 — Scanner Python et proof-of-concept pour CVE-2026-49049, une écriture de fichier arbitraire dans Joomla Helix3 qui permet le téléversement d'un web shell PHP et l'exécution de code à distance. | Kitploit
Outils/GitHubGitHub/matakucing-ofc/cve-2026-49049
Scanners de VulnérabilitésAnalyse des VulnérabilitésExploitationExploitation d'Applications WebSécurité WebTests d'IntrusionOutil d'Accès à Distance
GitHubmatakucing-ofc/cve-2026-49049

CVE-2026-49049

Scanner Python et proof-of-concept pour CVE-2026-49049, une écriture de fichier arbitraire dans Joomla Helix3 qui permet le téléversement d'un web shell PHP et l'exécution de code à distance.

Voir le dépôt
il y a 13h 32mPas 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-49049

Ce dépôt contient un scanner en Python et une preuve de concept pour une vulnérabilité dans le composant Joomla Helix3. Le bug est un problème d'écriture arbitraire de fichier qui peut mener à une exécution de code à distance (RCE) lorsqu'un attaquant est capable d'écrire une charge utile PHP dans un emplacement accessible par le web.

En quoi consiste le bug

Le comportement vulnérable se produit lorsqu'un paramètre de requête est utilisé pour contrôler un chemin de fichier ou le contenu d'un fichier sans validation appropriée. Dans le cas de l'interface AJAX de Helix3, le point de terminaison accepte des données qui peuvent être utilisées pour écrire des fichiers sur le système de fichiers du serveur. Si l'application ne restreint pas le chemin de destination et ne vérifie pas le contenu, un attaquant peut créer un script PHP malveillant dans un emplacement que le serveur web exécute.

En d'autres termes, la vulnérabilité n'est pas simplement « un fichier peut être écrit » — c'est une chaîne dangereuse :

  1. l'attaquant soumet un chemin de fichier forgé
  2. le backend écrit le contenu contrôlé par l'attaquant sur le disque
  3. le fichier est placé dans un répertoire accessible par le web
  4. l'interpréteur PHP exécute le fichier
  5. l'attaquant obtient une exécution de code à distance sur le serveur

C'est un scénario classique d'écriture arbitraire de fichier menant à un web shell.

Pourquoi c'est dangereux

Une fois qu'un attaquant peut écrire un fichier PHP à la racine du site ou dans un autre répertoire exécutable, il peut :

  • téléverser un web shell
  • lire des fichiers sensibles sur le serveur
  • exécuter des commandes système via PHP
  • manipuler des fichiers d'application ou des fichiers de configuration
  • pivoter vers le réseau interne plus large
  • L'impact est grave car il permet à un attaquant de transformer une simple faille d'écriture de fichier en compromission totale du serveur.

    Modèle vulnérable

    Le problème de fond est généralement similaire à cette logique :

    root@kitploit:~
    $file = $_POST['layoutName'];
    $content = $_POST['content'];
    file_put_contents($file, $content);
    

    Si la valeur de $file est contrôlée par l'attaquant et que le chemin n'est pas restreint, l'application peut écrire du code PHP dans un chemin exécutable. Le script malveillant est alors accessible au navigateur et peut être exécuté par le serveur web.

    Comment fonctionne ce scanner

    Ce projet inclut un outil Python multi-thread qui tente de :

    • charger une liste d'hôtes Joomla cibles
    • interroger le point de terminaison AJAX de Helix3
    • essayer d'écrire un fichier PHP temporaire avec un nom aléatoire
    • vérifier si la réponse indique que la charge utile a été enregistrée et exécutée avec succès

    Il enregistre les cibles vulnérables dans results.txt et stocke la sortie PHP brute dans raw_result.txt.

    Comment corriger le bug

    La correction doit éliminer les écritures de fichiers non fiables et imposer une validation stricte. Les étapes de remédiation recommandées sont ci-dessous.

    1. Mettre à jour le logiciel vulnérable

    Mettez à niveau Joomla et le composant/plugin Helix3 vers la dernière version stable. Les mises à jour de sécurité suppriment ou restreignent souvent le point de terminaison vulnérable qui permet des opérations d'écriture arbitraires.

    2. Désactiver la fonctionnalité vulnérable si elle n'est pas requise

    Si la fonctionnalité AJAX de Helix3 n'est pas nécessaire, désactivez-la entièrement. Supprimer l'accès au point de terminaison non sécurisé réduit considérablement la surface d'attaque.

    3. Restreindre les emplacements d'écriture

    N'autorisez pas de chemins de système de fichiers arbitraires. L'application ne devrait autoriser les écritures qu'à l'intérieur d'un répertoire fixe et restreint qui n'est pas accessible publiquement et qui n'est pas exécuté en tant que PHP.

    La validation doit rejeter :

    • les séquences de traversée de chemin telles que ../
    • les fichiers en dehors du répertoire de base approuvé
    • les écritures dans des répertoires accessibles par le web, sauf si explicitement requis et gérés de manière sécurisée

    4. Normaliser et valider les chemins

    Avant d'écrire tout fichier :

    • résoudre le chemin canonique
    • s'assurer qu'il reste sous le répertoire de base prévu
    • rejeter les liens symboliques ou les chemins imbriqués à l'extérieur
    • valider les noms de fichiers et extensions attendus

    5. Imposer l'autorisation

    Seuls les administrateurs de confiance devraient être autorisés à utiliser les points de terminaison qui écrivent des fichiers. Exigez une authentification et des vérifications de permissions appropriées avant d'accepter toute demande d'écriture.

    6. Assainir le contenu et réduire l'exposition

    N'écrivez jamais de contenu brut contrôlé par l'attaquant dans des fichiers exécutables sans validation stricte. En outre, le durcissement du serveur devrait inclure :

    • désactiver l'exécution de PHP dans les répertoires inscriptibles lorsque c'est possible
    • utiliser des permissions de moindre privilège
    • surveiller la création inattendue de fichiers
    • examiner les journaux pour détecter les requêtes suspectes

    Prérequis

    • Python 3.9+
    • package requests

    Utilisation

    Créez un fichier contenant les URL cibles, par exemple targets.txt :

    root@kitploit:~
    http://example.com
    https://joomla-site.local
    http://127.0.0.1
    

    Puis exécutez :

    root@kitploit:~
    python3 cve-2026-49049.py targets.txt
    

    Le script créera :

    • results.txt — URL vulnérables détectées
    • raw_result.txt — charges utiles PHP brutes observées pendant les tests

    Avis juridique et éthique

    Ce projet est destiné à des fins éducatives, à la recherche légitime en sécurité et à l'évaluation autorisée de vulnérabilités. Il ne doit pas être utilisé contre des systèmes sans autorisation explicite. Toute utilisation abusive est strictement interdite.

    Avertissement

    Le contenu de ce dépôt est fourni pour aider les chercheurs et les administrateurs à comprendre, identifier et corriger un problème de sécurité réel. Utilisez-le de manière responsable et uniquement dans des environnements contrôlés où vous disposez de l'autorisation appropriée.

    Télécharger l’outil