Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2025-1094-PoC-Postgre-SQLi — Emulazione e analisi proof-of-concept di CVE-2025-1094, una vulnerabilità critica di SQL injection in PostgreSQL. Include configurazione di laboratorio basata su Docker, script di exploit, analisi della causa principale e dimostrazione passo-passo per test di sicurezza e formazione. | Kitploit
Strumenti/GitHubGitHub/ishwardeepp/cve-2025-1094-poc-postgre-sqli
Analisi delle VulnerabilitàAnalisi del CodiceExploitSfruttamento di Applicazioni WebPenetration TestingApprendimento e FormazioneSicurezza dei DatabaseLab e Pratica
GitHub
ishwardeepp/cve-2025-1094-poc-postgre-sqli

CVE-2025-1094-PoC-Postgre-SQLi

Vedi Repository
62201 anno faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →

Informazioni

Emulazione e analisi proof-of-concept di CVE-2025-1094, una vulnerabilità critica di SQL injection in PostgreSQL. Include configurazione di laboratorio basata su Docker, script di exploit, analisi della causa principale e dimostrazione passo-passo per test di sicurezza e formazione.

Condividi

Analisi di CVE-2025-1094 e Configurazione dell'Emulazione

Questa analisi dettagliata, condotta il 14 marzo 2025, esplora CVE-2025-1094, una vulnerabilità ipotetica di SQL injection ad alta gravità in PostgreSQL, basata sulla configurazione di emulazione fornita e sull'esecuzione del proof-of-concept (PoC). L'analisi copre l'introduzione della vulnerabilità, la causa radice, i contributi dei file, le fasi del PoC e le mitigazioni, incorporando tutti i dettagli intricati del processo di emulazione.

Introduzione alla Vulnerabilità

CVE-2025-1094 è descritta come una vulnerabilità critica di SQL injection in PostgreSQL, che interessa le versioni precedenti alla 17.3, 16.7, 15.11, 14.16 e 13.19, con un punteggio base CVSS 3.1 di 8.1, indicando impatti significativi su riservatezza, integrità e disponibilità. Consente agli attaccanti di accedere a dati sensibili o eseguire codice remoto (RCE), ed è stata sfruttata in violazioni reali, come l'incidente BeyondTrust che ha colpito 17 clienti aziendali, riportato su BleepingComputer, e la violazione del Dipartimento del Tesoro degli Stati Uniti, dettagliata su The Register. L'emulazione, condotta il 14 marzo 2025, ha utilizzato una configurazione Docker con server_encoding=EUC_TW e client_encoding=BIG5, cruciale per attivare l'exploit. Il PoC ha comportato l'iniezione di un blocco DO per creare un large object, leggere /etc/passwd tramite pg_read_file, scriverlo nel large object con lo_put ed esportarlo in /tmp/payload utilizzando lo_export, confermando il ruolo della discrepanza di codifica nell'abilitare l'accesso non autorizzato ai file.

Analisi della Causa Radice

La causa radice è classificata sotto CWE-149: Improper Neutralization of Quoting Syntax, che comporta una gestione impropria nelle funzioni libpq di PostgreSQL—PQescapeLiteral(), PQescapeIdentifier(), PQescapeString() e PQescapeStringConn()—che non neutralizzano la sintassi di quotatura quando i risultati vengono utilizzati per costruire input per lo strumento a riga di comando psql. Ciò è aggravato quando client_encoding è impostato su BIG5 e server_encoding su EUC_TW, come visto nella nostra configurazione, consentendo SQL injection. L'emulazione ha richiesto EUC_TW e zh_TW.EUC_TW per creare la discrepanza, con problemi come la mancanza di supporto EUC_TW in psycopg2 risolti connettendosi con UTF8 e poi passando a BIG5. Il successo dell'exploit dipendeva dall'esecuzione di SQL grezzo tramite subprocess.run(["psql", ...]), bypassando la gestione sicura delle query, come dettagliato nei log.

Spiegazioni dei File e Contributi

Ogni file nella configurazione svolge un ruolo critico nell'emulazione di CVE-2025-1094. Di seguito una ripartizione dettagliata in forma tabellare:

Tabella: Riepilogo dei Contributi dei File

FileCosa FaContributo al PoCPerché è Necessario
exploit.pyInvia una richiesta POST con un blocco DO per creare ed esportare un large object, leggendo /etc/passwd.Attiva l'SQL injection, sfrutta la discrepanza di codifica per eseguire comandi SQL arbitrari.Abilita l'esecuzione dell'exploit, critico per l'impatto del PoC.
app.pyApp Flask che espone /vuln-endpoint, esegue SQL grezzo tramite psql.Fornisce l'endpoint vulnerabile per l'exploit.Punto di ingresso per l'exploit, necessario per la dimostrazione della vulnerabilità.
init.sqlCrea una tabella di test con id VARCHAR(255) per input di stringhe.Imposta lo schema per l'iniezione, garantisce l'esecuzione del payload senza errori di tipo.Configurazione del database per l'exploit, essenziale per l'SQL injection.
DockerfileCrea il container dell'app Flask con le dipendenze necessarie.Crea un servizio app isolato per la distribuzione dell'endpoint.Distribuisce l'app vulnerabile, critico per la riproducibilità del PoC.
docker-compose.ymlDefinisce e collega i servizi db e app con configurazioni specifiche.Orchestra la configurazione, garantisce la discrepanza di codifica e le dipendenze tra servizi.Collega i servizi, essenziale per la configurazione dell'ambiente e l'isolamento.
Dockerfile.dbCrea il container PostgreSQL con codifica EUC_TW.Crea il database vulnerabile con la codifica richiesta.Configura il database con la codifica richiesta, critico per l'attivazione della vulnerabilità.

Fasi del Proof-of-Concept

Il PoC, eseguito il 14 marzo 2025, dimostra l'impatto dell'exploit attraverso le seguenti fasi, ciascuna con una spiegazione dettagliata:

  1. sudo docker compose up --build

    • Cosa Fa: Crea e avvia i servizi Docker Compose (db e app), creando container con immagini aggiornate se necessario, e li collega nella rete postgre_default. Garantisce che l'ambiente vulnerabile sia configurato, con db che utilizza la codifica EUC_TW e app che espone /vuln-endpoint sulla porta 5000, cruciale per la discrepanza di codifica dell'exploit e l'accesso all'endpoint.
    • Perché è Necessario: Configura l'ambiente necessario affinché l'exploit funzioni, garantendo che tutti i servizi siano in esecuzione e configurati correttamente.
  2. curl -X POST http://localhost:5000/vuln-endpoint -d "input=test"

    • Cosa Fa: Invia una richiesta POST all'endpoint dell'app Flask con input=test, verificando la connettività e la funzionalità di base, aspettandosi "Executed". Conferma che l'app è in esecuzione e può connettersi al database, assicurando che la configurazione sia pronta per l'exploit.
    • Perché è Necessario: Garantisce che l'endpoint sia accessibile e funzionante prima di procedere con l'exploit, allineandosi con le fasi di verifica del PoC.
    • Verifica della Configurazione
  3. python3 cve-2025-1094-exploit.py

    • Cosa Fa: Esegue lo script di exploit, inviando una richiesta POST con un blocco DO per creare un large object, scrivere /etc/passwd al suo interno ed esportarlo in /tmp/payload, stampando lo stato di esecuzione. Attiva l'SQL injection, sfruttando la vulnerabilità per leggere /etc/passwd, critico per dimostrare l'impatto di CVE-2025-1094, come visto nei log con l'esportazione riuscita del file.
    • Perché è Necessario: Esegue l'exploit principale, mostrando come gli attaccanti possono accedere a dati sensibili, allineandosi con l'obiettivo del PoC di emulare attacchi reali.
    • Esecuzione dell'Exploit
Scarica lo strumento