
PoC funzionante di CVE-2026-6664 scritto da Sonnet 4.6
Questo repository contiene una proof of concept locale per un crash di PgBouncer causato da un integer overflow nelle versioni vulnerabili di PgBouncer. Il setup Docker incluso compila PgBouncer 1.25.1, avvia un backend PostgreSQL, abilita l'autenticazione SCRAM-SHA-256 ed esegue poc.py contro PgBouncer.
Questo è pensato esclusivamente per test di laboratorio controllati. Non eseguirlo su sistemi che non possiedi o per cui non hai un'esplicita autorizzazione al test.
poc.py - Client Python proof-of-concept.docker-compose.yml - Servizi locali PostgreSQL, PgBouncer e runner del PoC.postgres/init.sql - Crea l'utente del database di test.pgbouncer/Dockerfile - Compila la versione vulnerabile di PgBouncer 1.25.1.pgbouncer/pgbouncer.ini - Configurazione di PgBouncer con autenticazione SCRAM.pgbouncer/gen_userlist.py - Genera un verificatore SCRAM deterministico.poc.py manualmente dall'hostCompila e avvia il laboratorio:
docker compose up --build
Il file compose avvia:
6432 dell'host.Per avviare solo i servizi ed eseguire il PoC manualmente:
docker compose up --build postgres pgbouncer
python3 poc.py 127.0.0.1 6432
Quando il processo PgBouncer vulnerabile riceve la risposta iniziale SASL malformata, il client dovrebbe segnalare un reset della connessione oppure che PgBouncer è diventato non raggiungibile. Il PoC verifica questa condizione e stampa se il crash è stato confermato.
Ferma e rimuovi i container del laboratorio:
docker compose down
I valori predefiniti del PoC sono:
127.0.0.16432testusertestdbTarget personalizzato:
python3 poc.py <host> <port>