
CVE-2021-44228 Log4Shell riprodotto end-to-end: dallo sfruttamento alla remediation
Ho riprodotto la vulnerabilità Log4Shell end-to-end in un ambiente di laboratorio isolato, dallo sfruttamento iniziale fino a un report di remediation completo. Realizzato come lavoro accademico di MSc in coppia con Aditya Chaudhari, scritto insieme come report congiunto.
JAVA_OPTS) e ho confermato che lo sfruttamento non funzionava piùVolevo comprendere l'intera catena di sfruttamento di persona piuttosto che limitarmi a leggerne. Log4Shell è una buona vulnerabilità da cui imparare perché tocca contemporaneamente il class loading di Java, LDAP e JNDI, e la storia delle patch successive ti insegna come appare realmente la remediation oltre la semplice applicazione di un aggiornamento.
Struttura del progetto per l'app vulnerabile, il codice di sfruttamento e lo script PoC.
L'applicazione Tomcat vulnerabile che si avvia all'interno del suo container Docker.
Invio del payload JNDI tramite un campo di login, quindi conferma dell'accesso root con whoami sul listener netcat.
Il Dockerfile indurito che disabilita i lookup JNDI e blocca lo sfruttamento.
Lo script PoC Python che avvia i server LDAP e HTTP, e netcat in ascolto per la callback.
Docker, Java, Python, netcat, Kali Linux
Tutto il lavoro è stato condotto in un ambiente di laboratorio isolato per scopi educativi.