Consulente di sicurezza: vulnerabilità di bypass dell'autenticazione ADSelfService Plus

Codice CVE: CVE-2021-40539

Gravità: Critica

Versioni influenzate: Build di ADSelfService Plus fino alla 6113

Risoluzione: Build 6114 di ADSelfService Plus (7 settembre 2021)

Questa pagina contiene i dettagli della vulnerabilità e del piano di risposta agli incidenti in caso di sistema con vulnerabilità. Per maggiori informazioni sugli aggiornamenti più recenti e sulla sequenza temporale della vulnerabilità, vai a questa pagina. Hai domande su questa vulnerabilità? Dai un'occhiata alla nostra pagina con le domande frequenti. Puoi anche effettuare la registrazione per un controllo gratuito delle vulnerabilità su questa pagina. Il nostro team di assistenza di emergenza ti aiuterà con una sessione di dialogo diretto ed eseguirà lo strumento manualmente, andrà alla ricerca di indicatori di compromissione e risponderà a tutte le tue domande.

Abbiamo iniziato una collaborazione con Veracode, un'azienda indipendente che si occupa di sicurezza delle applicazioni, per effettuare test di penetrazione su ADSelfService Plus in modo da ottenere una prospettiva esterna sul livello di sicurezza della soluzione.

Introduzione

Siamo stati informati di una vulnerabilità di bypass dell'autenticazione in ADSelfService Plus che influenza gli URL delle API REST e che potrebbe causare l'esecuzione di codice da remoto.

Dettagli

Gli URL delle API REST vengono autenticati da uno specifico filtro di sicurezza in ADSelfService Plus.

Gli autori dell'attacco utilizzano gli URL delle API REST in grado di aggirare questo filtro di sicurezza a causa di un errore nella normalizzazione degli URL prima della convalida. Gli autori dell'attacco ottengono così accesso agli endpoint delle API REST e possono sfruttarli per effettuare attacchi successivi come l'esecuzione di comandi arbitrari. Il seguente diagramma di flusso con l'analisi dell'exploit mostra il modo in cui gli autori dell'attacco hanno sfruttato la vulnerabilità.

Block User Tab Diagramma di flusso con l'analisi dell'exploit CVE-2021-40539

Come posso controllare se sono presenti vulnerabilità nella mia installazione?

Esistono tre modi per controllare se sono presenti vulnerabilità nelle installazioni:

1. Esegui il nostro strumento di rilevamento degli exploit

Abbiamo sviluppato uno strumento di rilevamento degli exploit per aiutarti a identificare se sono presenti vulnerabilità nella tua installazione. Puoi scaricare lo strumento qui.

Nota: è stata rilevata una discrepanza durante l'esecuzione di una versione precedente di questo strumento come amministratore. Questo è stato segnalato da Cyberoo CERT ed è stato corretto a partire dal 2 giugno 2023.

Dopo aver scaricato il file, segui questa procedura:

  1. Estrai lo strumento nella cartella \ManageEngine\ADSelfService Plus\bin.
  2. Fai clic destro sul file RCEScan.bat e seleziona Esegui come amministratore.
  3. Si apre la finestra del prompt dei comandi e lo strumento effettua una scansione. Se sono presenti vulnerabilità nella tua installazione, appare il seguente messaggio:
    "Risultato: Nella tua installazione ADSelfService Plus sono presenti vulnerabilità di bypass di autenticazione."

Se vuoi controllare manualmente i registri, puoi seguire questa procedura.

2. Cerca specifiche voci di registro

  1. Registri di accesso

    Nella cartella \ManageEngine\ADSelfService Plus\logs, cerca i file dei registri di accesso con "access_log_<date>.txt" e cerca le seguenti stringhe:

    1. /../RestAPI
    2. /./RestAPI

    L'immagine più in basso mostra un esempio di voce del registro di accesso con questa stringa:

    Block User Tab

  2. Registri serverOut

    Nella cartella \ManageEngine\ADSelfService Plus\logs, cerca i file dei registri di accesso con "serverOut_<date>.txt" e cerca un'eccezione come mostrato in questa immagine:

    Block User Tab

  3. 3. Registri ADS

    Nella cartella \ManageEngine\ADSelfService Plus\logs, cerca i file dei registri di accesso con "adslog_<date>.txt" e cerca gli errori di traceback Java con riferimento a NullPointerException in addSmartCardConfig o getSmartCardConfig come mostrato in questa immagine:

    Block User Tab

3. Cerca specifici file nel sistema

Se utilizzi la versione 6113 o precedente di ADSelfService Plus e se sono presenti vulnerabilità nel tuo sistema, nella cartella di installazione di ADSelfService Plus saranno presenti i seguenti file:

  1. service.cer nella cartella \ManageEngine\ADSelfService Plus\bin.
  2. ReportGenerate.jsp nelle cartelle \ManageEngine\ADSelfService Plus\help\admin-guide\Reports e \ManageEngine\ADSelfService Plus\webapps\adssp\help\admin-guide\reports.
  3. adap.jsp nella cartella \ManageEngine\ADSelfService Plus\webapps\adssp\help\html\promotion.
  4. custom.bat e custom.txt nella cartella C:\Users\Public\folder

Inoltre, i seguenti IoC sono stati pubblicati da CrowdStrike il 22 giugno 2023, in relazione alla loro osservazione di un'attività di minaccia sospettata di sfruttare CVE-2021-40539.

  1. selfsdp.jspx nella cartella \ManageEngine\ADSelfService Plus\webapps\adssp\html\promotion\.
  2. error.jsp nella cartella \ManageEngine\ADSelfService Plus\webapps\adssp\html\.
  3. tomcat-ant.jar nella cartella \ManageEngine\ADSelfService Plus\lib\.
  4. Qualsiasi cartella diversa da selfservice nella cartella \ManageEngine\ADSelfService Plus\work\Catalina\localhost\ROOT\org\apache\jsp\.

Piano di risposta agli incidenti

Controlla se il sistema è stato compromesso:

- Esegui il nostro strumento di rilevamento degli exploit
- Controlla i registri di accesso
- Cerca specifici file nel sistema

Il tuo sistema è compromesso?
Sì ↓ No ↓
1. Scollega il sistema compromesso dalla tua rete. 1. Aggiorna ADSelfService Plus alla build 6114 utilizzando il service pack.
2. Effettua il backup del database ADSelfService Plus seguendo questa procedura. 2. Se hai bisogno di maggiori informazioni, hai domande o riscontri difficoltà nell'aggiornamento di ADSelfService Plus, contattaci scrivendo a adselfserviceplus-security@manageengine.com o chiamando il +1.408.916.9890 (chiamata gratuita).
3. Formatta la macchina compromessa.

Nota: Prima di formattare la macchina, verifica di aver effettuato il backup di tutti i dati aziendali critici.

 
4. Scaricae installa ADSelfService Plus.

A. La versione della nuova installazione deve essere la stessa del backup.

B. Si consiglia caldamente di utilizzare una macchina diversa per la nuova installazione.

 
5. Ripristina il backup e avvia il server.  
6. Una volta che il server è operativo, aggiorna ADSelfService Plus alla build più recente, 6114, utilizzando il service pack.  
7. Controlla se sono stati effettuati accessi o utilizzi dell'account non autorizzati. Controlla inoltre se c'è evidenza di movimento laterale dalla macchina compromessa ad altre macchine. Se trovi indicazioni di account Active Directory compromessi, avvia la reimpostazione della password per quegli account.  
8. Se hai bisogno di maggiori informazioni, hai domande o riscontri difficoltà nell'aggiornamento di ADSelfService Plus, contatta il nostro servizio di assistenza di emergenza: adselfserviceplus-security@manageengine.com o +1.408.916.9890 (chiamata gratuita)