
POC pour log4shll Vulnérabilité (CVE-2021-44228)
Preuve de Concept pour l'exécution de code à distance via la vulnérabilité d'injection JNDI dans Apache Log4j 2.14.1. Cours de Web Hacking - Devoir de la Semaine 11.
| Rôle | Logiciel | Version |
|---|---|---|
| Serveur victime | Spring Boot + Log4j | 2.6.1 + 2.14.1 |
| JDK victime | OpenJDK | 1.8.0_181 |
| Serveur LDAP | marshalsec | 0.0.3 |
| OS de l'attaquant | Kali Linux | - |
log4shell-poc/
├── vulnerable-server/ # Serveur Spring Boot vulnérable
│ ├── pom.xml
│ └── src/main/java/com/example/vulnerable/
│ ├── App.java
│ └── MainController.java
├── exploit/
│ └── Exploit.java # Source de la classe malveillante
└── attacker/
└── commands.md # Référence des commandes d'attaque
cd vulnerable-server
mvn clean package -DskipTests
/opt/jdk1.8.0_181/bin/java -jar target/log4shell-vuln-0.0.1-SNAPSHOT.jar
Voir attacker/commands.md pour les commandes d'attaque étape par étape.
logger.info() transmet directement l'entrée utilisateur à Log4j sans assainissement${...} dans les messages de journaltrustURLCodebase=true par défaut)Ce POC est à des fins éducatives uniquement. Ne PAS utiliser contre des systèmes sans autorisation explicite.