
Questo repository contiene un programma C per testare la CVE-2024-2961, una vulnerabilità di buffer overflow nella funzione iconv() di glibc.
Questo repository contiene un programma C per testare CVE-2024-2961, che riguarda una vulnerabilità di buffer overflow nella funzione iconv() della GNU C Library (glibc). A causa della struttura dell'heap di PHP, questo overflow può essere sfruttato per modificare parte di un puntatore della lista dei blocchi liberi, fornendo infine una primitiva di scrittura arbitraria nella memoria del programma. Di conseguenza, un attaccante con una vulnerabilità di lettura file e un prefisso controllato su un'applicazione PHP può ottenere RCE. Allo stesso modo, forzare PHP a chiamare iconv() con parametri controllati concede all'attaccante la stessa capacità.
iconv installata.Assicurati che il tuo sistema abbia glibc versione 2.39 o precedente:
ldd --version
Clona questo repository sulla tua macchina locale:
git clone https://github.com/exfil0/test_iconv.git
cd test_iconv
Usa GCC per compilare il programma C:
gcc -o test_iconv test_iconv.c -liconv
Esegui il programma compilato:
./test_iconv
gdb per analizzare il crash e confermare se è correlato alla vulnerabilità.Se incontri un crash, puoi usare gdb per ottenere più dettagli:
gdb ./test_iconv
All'interno di GDB, esegui il programma:
run
Se il programma crasha, puoi ispezionare lo stato del programma:
bt
Questo ti darà un backtrace del crash, che può aiutare a diagnosticare se l'overflow è dovuto al CVE.
Compila il programma con AddressSanitizer per rilevare l'overflow:
gcc -fsanitize=address -o test_iconv test_iconv.c -liconv
./test_iconv
AddressSanitizer fornirà informazioni dettagliate se c'è un buffer overflow.
Se la vulnerabilità è confermata, considera l'aggiornamento di glibc a una versione in cui questo problema è stato risolto. Puoi scaricare e installare l'ultima versione dal sito web del progetto GNU o dal gestore di pacchetti della tua distribuzione.
Per maggiori dettagli su questa vulnerabilità, puoi leggere il seguente articolo di ricerca: Difetto di GLIBC CVE-2024-2961 apre la porta a RCE, pubblicato exploit PoC
Questo codice è solo per scopi educativi e di test. Non usarlo su sistemi senza la dovuta autorizzazione.