Sono state scoperte quattro gravi vulnerabilità in IBM Data Risk Manager (IDRM) che possono portare all’esecuzione non autenticata di codice remoto (RCE) come root, secondo l’analisi – e un exploit di PoC è disponibile per la versione 2.0.3. Tuttavia, IBM non ha ancora risolto il problema.
IDRM è una piattaforma software che aggrega i dati sulle minacce provenienti da diversi sistemi di sicurezza, al fine di eseguire analisi del rischio di sicurezza aziendale. Secondo il ricercatore di sicurezza Pedro Ribeiro di Agile Information Security, le versioni da 2.0.1 a 2.0.3 dell’appliance virtuale IDRM Linux contengono bug relativi al bypass di autenticazione, iniezione di comando, password predefinita non sicura, e download di file arbitrario. I primi tre possono essere concatenati insieme per raggiungere l’RCE.
“IDRM è un prodotto di sicurezza aziendale che gestisce informazioni molto sensibili”, ha scritto Ribeiro in un’analisi di pochi giorni fa. “L’hacking di un’appliance IDRM potrebbe portare a un compromesso su vasta scala dell’azienda, poiché memorizza le credenziali per accedere ad altri strumenti di sicurezza, per non parlare del fatto che contiene informazioni sulle vulnerabilità critiche che colpiscono l’azienda.”
I primi tre bug possono essere combinati, quindi, per consentire a un utente malintenzionato remoto di ottenere un compromesso completo del sistema:
- Il primo è un problema di bypass dell’autenticazione che esiste nell’endpoint API dell’appliance, / albatross / user / login. Questo è autenticato da un metodo che accetta le credenziali username e sessionID della persona che sta tentando di accedere e controlla se il nome utente esiste nel database e se sessionId è associato a quel nome utente. Se tutto è andato a buon fine, l’applicazione restituisce una password casuale appena generata per quel nome utente. Tuttavia, Ribeiro ha dimostrato che un attaccante remoto può inviare una richiesta appositamente predisposta che sovverte questo processo e consente a un attaccante di recuperare un token amministrativo portatore valido. Che può quindi essere utilizzato per accedere a varie API.
“È anche possibile accedere come un normale utente Web sull’endpoint / albatross / login, che produrrà un cookie autenticato anziché un token, consentendo l’accesso alla console di amministrazione Web”, ha spiegato il ricercatore. “In ogni caso … l’autenticazione è ora completamente esclusa e abbiamo pieno accesso amministrativo a IDRM.”
- Il bug di comando-iniezione nel frattempo esiste perché l’IDRM espone un’API in / albatross / restAPI / v2 / nmap / run / scan che consente a un utente autenticato di eseguire scansioni nmap.
“Avere accesso a nmap consente di eseguire comandi arbitrari, se siamo in grado di caricare un file di script e quindi passarlo come argomento a nmap con –script = <FILE>”, ha spiegato il ricercatore. “Tuttavia, per ottenere l’esecuzione del codice in questo modo, dobbiamo ancora caricare un file. Fortunatamente, esiste un metodo che elabora i file di patch e accetta dati di file arbitrari, salvandoli in / home / a3user / agile3 / patches / <FILE>. ”
Tale metodo dovrebbe accettare un file patch, elaborarlo e applicarlo. Tuttavia, Ribeiro ha spiegato che “ci sono diversi bug nella versione 2.0.2 che causano l’interruzione anticipata del metodo e l’elaborazione del file non riesce. Tuttavia, il file viene caricato e tenuto su disco anche dopo l’interruzione del metodo.” Per sfruttare questo bug, un utente malintenzionato dovrebbe disporre di una sessione autenticata come amministratore, che può essere raggiunta con la prima vulnerabilità.
- Il terzo bug deriva dall’uso di credenziali codificate: l’utente amministrativo nell’appliance virtuale IDRM è “a3user” per impostazione predefinita.
“Questo utente è autorizzato ad accedere tramite SSH ed eseguire i comandi sudo ed è impostato con una password predefinita di IDRM”, ha affermato Ribeiro.
E, se combinato con i primi due bug, ciò consente a un utente non autenticato di ottenere RCE come root sull’appliance virtuale IDRM, portando a un completo compromesso del sistema, ha affermato il ricercatore.
È stato rilasciato un modulo di exploit proof-of-concept di Metasploit che implementa l’intera catena RCE.
Il quarto bug è un bug path trasversal che proviene da una limitazione impropria di un percorso a una directory limitata.
“IDRM espone un’API su / albatross / eurekaservice / fetchLogFiles che consente a un utente autenticato di scaricare i file di registro dal sistema”, ha spiegato Ribeiro. “Tuttavia, il parametro logFileNameList contiene un difetto di attraversamento della directory di base che consente a un utente malintenzionato di scaricare qualsiasi file dal sistema.” Ha aggiunto che lo sfruttamento è “molto semplice”.
Anche questo difetto può essere concatenato. Se combinato con il primo bug di autenticazione-bypass, un utente malintenzionato non autenticato può scaricare qualsiasi file leggibile da “a3user” dal sistema, ha affermato Ribeiro. A tal proposito, è stato rilasciato un secondo modulo Metasploit .
Inizialmente IBM non ha accettato il rapporto di vulnerabilità in fase di revisione. Tuttavia, dopo che Ribeiro ha reso pubbliche le sue scoperte, la “Big Blue” ha dichiarato che avrebbe risolto i bug in una prossima patch.
“Un errore di processo ha provocato una risposta impropria al ricercatore che ha segnalato questa situazione a IBM”, ha detto un portavoce a Threatpost.“Abbiamo lavorato sulle misure di mitigazione e saranno discusse in un avviso di sicurezza che sarà pubblicato.”
https://threatpost.com/rce-exploit-ibm-data-risk-manager-no-patch/154986/