Vi serve il cloud computing? Iniziate subito

Come contrastare la web shell WSO-NG

Akamai Wave Blue

scritto da

Dennis German e Maxim Zavodchik

November 22, 2023

dennis-german

scritto da

Dennis German

Dennis German is a Security Researcher in the Apps & APIs Threat Research Group at Akamai.

Maxim Zavodchik

scritto da

Maxim Zavodchik

Maxim Zavodchik Experienced security research leader with a proven track record in establishing, growing, and defining strategic vision for Threat Research and Data Science teams in Web Application Security and API Protection. When he’s not protecting life online, you can find him being a super dad and/or watching Studio Ghibli movies.

Il nostro accurato esame delle origini e delle avanzate funzioni della WSO-NG ne sottolinea il suo potenziale come minaccia nell'era odierna, nel momento in cui aumenta la sensibilizzazione nei confronti della cybersicurezza.

Gli amministratori web e gli esperti di sicurezza stanno diventando sempre più consapevoli delle web shell, poiché questi script dannosi consentono ai criminali di controllare da remoto i server web violati.

In questo blog, verrà descritta la web shell denominata WSO-NG. Questo post è il primo della serie che si propone di far luce maggiormente sul mondo delle web shell.

Che cos'è una web shell?

Prima di entrare nei dettagli della WSO-NG, analizziamo rapidamente cosa si intende per web shell in generale. Una web shell è uno script, comunemente scritto in un linguaggio web come PHP, ASP o JSP, che consente il controllo remoto su un server compromesso. Una volta caricata la web shell, i criminali possono eseguire una serie di attività dannose, tra cui il furto di dati, il monitoraggio del server e lo spostamento laterale all'interno della rete.

Secondo MITRE ATT&CK, l'implementazione di una web shell è una tattica usata dai criminali per mettere saldamente piede nel sistema della vittima.

Una breve storia della WSO

La WSO, acronimo di "Web Shell by oRb," è una famosa web shell in circolazione da almeno 14 anni. Il suo esordio si può far risalire all'introduzione da parte di un utente denominato "oRb" in un forum russo sull'hacking (Figura 1).

 Il suo esordio si può far risalire all'introduzione da parte di un utente denominato "oRb" in un forum russo sull'hacking (Figura 1). Figura 1. Il post di oRb in un forum sull'hacking del 2010

La WSO offre una vasta gamma di funzionalità della web shell, consentendo in modo semplice agli hacker di raccogliere informazioni da un server preso di mira, gestire i file in modo efficiente, ottenere l'accesso non autorizzato ai database ed eseguire i comandi shell.

Nel corso del tempo, lo sviluppatore iniziale della WSO, insieme ai suoi collaboratori, ha fornito costantemente miglioramenti alle sue funzioni con bug mirati (Figura 2).

Nel corso del tempo, lo sviluppatore iniziale della WSO, insieme ai suoi collaboratori, ha fornito costantemente miglioramenti alle sue funzioni con bug mirati (Figura 2). Figura 2. Una delle prime versioni della WSO (fonte: https://github.com/mIcHyAmRaNe/wso-webshell)

Nel 2021, un utente di GitHub con il nome di "0xbadad" ha rivelato un'iterazione aggiornata della shell WSO. Inizialmente denominata "step.php," questa shell ha cambiato successivamente il suo nome in "wso-ng.php," per indicare, secondo il suo creatore, che si tratta della "nuova generazione della famosa web shell WSO."

WSO-NG: la nuova generazione della web shell

Un potenziale nemico che sceglie una web shell per controllare un server ha svariate opzioni a disposizione, tra cui China Chopper, B374K, R57, ecc. Una delle scelte più significative è la WSO e la sua innovativa iterazione, la WSO-NG (Figura 3). La WSO-NG fornisce ai criminali informatici moderni strumenti che sono essenziali per navigare nell'odierno ambiente digitale sensibile alla sicurezza.

Una delle scelte più significative è la WSO e la sua innovativa iterazione, la WSO-NG (Figura 3). Figura 3. La WSO-NG, la nuova generazione della WSO (fonte: https://github.com/aels/wso-ng)

Come nascondere la pagina di accesso

Per potenziare le funzionalità di occultamento della WSO-NG e limitare il suo accesso, la web shell visualizza una pagina di errore 404 quando si tenta di accedere alla sua interfaccia di accesso.

Tuttavia, nell'illusione che si tratti di una pagina di "errore", la web shell anticipa in maniera subdola la password immessa tramite la tastiera. Il modulo di accesso nascosto utilizza una tecnica CSS subdola per nasconderlo all'utente spostandolo 1.000 pixel a sinistra. Questa manipolazione colloca in modo efficace il modulo oltre l'area dello schermo visibile (Figura 4).

Questa manipolazione colloca in modo efficace il modulo oltre l'area dello schermo visibile (Figura 4). Figura 4. La pagina di accesso alla WSO-NG vuota presenta una funzionalità di visualizzazione nascosta

Raccolta dell'intelligence sulle minacce tramite terze parti

Dopo aver ottenuto l'accesso tramite il modulo nascosto, il passaggio successivo del criminale riguarda probabilmente il riconoscimento dell'ambiente compromesso. Tramite la WSO-NG, il criminale può raccogliere l'intelligence sulle minacce che colpiscono il sistema, impiegando tattiche e strumenti simili a quelli usati dalle organizzazioni per difendersi dalle minacce informatiche.

La WSO-NG si integra perfettamente con un servizio di intelligence sulle minacce denominato VirusTotal, che analizza la reputazione dell'indirizzo IP del server compromesso per stabilire se è stato segnalato per la presenza di attività dannose. Se il criminale prevede di utilizzare questo server per sfruttare ulteriori vulnerabilità online, questa integrazione diventa cruciale nella valutazione della probabilità che la vulnerabilità venga bloccata dai potenziali obiettivi, specialmente se l'IP è già elencato tra gli indirizzi da bloccare (Figura 5).

Un altro aspetto essenziale consiste nel fatto che questa funzione riesce a rilevare se il server è stato in precedenza compromesso da altri criminali, avvisando, pertanto, l'autore dell'attacco di procedere con cautela.

Inoltre, l'integrazione della WSO-NG con il servizio SecurityTrails aiuta i criminali ad identificare altri domini ospitati tramite il server compromesso, aiutando ad eseguire un'ulteriore profilazione dell'obiettivo preso di mira.

 Se il criminale prevede di utilizzare questo server per sfruttare ulteriori vulnerabilità online, questa integrazione diventa cruciale nella valutazione della probabilità che la vulnerabilità venga bloccata dai potenziali obiettivi, specialmente se l'IP è già elencato tra gli indirizzi da bloccare (Figura 5). Figura 5. Esempio di intelligence sulle minacce sull'IP del server (fonte: https://github.com/aels/wso-ng)

Adattamento agli ambienti moderni

Poiché gli ambienti cloud e le tecnologie moderne vengono adottati sempre più ampiamente, sono emersi nuovi metodi per l'archiviazione e l'accesso ai segreti operativi e alle informazioni tecniche di importanza cruciale.

Un'importante funzione di riconoscimento della web shell riguarda il recupero dei metadati AWS. Questa funzione è il metodo prevalente per tentare di acquisire le credenziali AWS associate all'istanza cloud attiva, che può facilitare il successivo movimento laterale nell'account sul cloud.

Un'altra funzione di riconoscimento offerta dalla web shell è la capacità di cercare potenziali connessioni del database Redis, con l'obiettivo di ottenere un accesso più vasto ai dati delle applicazioni. Redis, un database chiave-valore integrato nella memoria, viene ampiamente usato nelle moderne applicazioni, specialmente nelle impostazioni del cloud.

Capacità offensive migliorate

La WSO-NG è una web shell di alto livello, pertanto è dotata per sua natura intrinseca di vaste capacità offensive immediatamente disponibili.

Nell'ambiente di hosting web condiviso tipicamente offerto da molti provider del settore, vengono implementate alcune precauzioni per impedire ai proprietari di siti web di accedere ad altri siti sullo stesso server e di usufruire dell'escalation dei privilegi. I provider di servizi di hosting utilizzano vari meccanismi, come la restrizione dell'uso di funzioni PHP rischiose, ad es., l'esecuzione del comando shell diretto tramite la funzionalità PHP add-filter.

La WSO-NG include una vulnerabilità integrata, che è stata specificatamente progettata per aggirare queste misure di sicurezza. Inoltre, capitalizza su una vulnerabilità preesistente per l'esecuzione di codice arbitrario negli ambienti FastCGI, una configurazione prevalente nell'hosting web. In tal modo, è possibile usufruire dell'escalation dei privilegi e prendere piede a livello "radice".

Miglioramenti delle user experience

Infine, la WSO-NG si lascia sfuggire i miglioramenti delle user experience, consentendo al criminale di perseguire i suoi obiettivi in modo efficiente.

La web shell introduce diversi miglioramenti dell'interfaccia utente, tra cui un nuovo riquadro di navigazione breadcrumb, le scelte rapida da tastiera, l'evidenziazione della sintassi, la precisa modifica del codice PHP (Figura 6), la rapida copia negli appunti con un semplice clic e altro ancora.

La web shell introduce diversi miglioramenti dell'interfaccia utente, tra cui un nuovo riquadro di navigazione breadcrumb, le scelte rapida da tastiera, l'evidenziazione della sintassi, la precisa modifica del codice PHP (Figura 6), la rapida copia negli appunti con un semplice clic e altro ancora. Figura 6. Precisa modifica del codice PHP

Come contrastare la WSO-NG

Per implementare una web shell sul server di una vittima, è necessario adottare un metodo di accesso iniziale, che, solitamente, consiste nello sfruttamento di una vulnerabilità web. Per impedire questo accesso iniziale al server, si consiglia ai professionisti della sicurezza di tenersi al passo con le patch più recenti. Tuttavia, mentre le aziende si impegnano nell'intento di tenersi aggiornate con misure di sicurezza e patch, le web shell possono anche essere contrastate mediante avanzatesoluzioni WAFWeb Application Firewall), come Akamai App & API Protector.

Tramite il suo Adaptive Security Engine, la soluzione WAF di Akamai può identificare gli iniziali tentativi di sfruttamento della vulnerabilità web che potrebbero potenzialmente aprire la strada all'implementazione di una web shell per un accesso più vasto. Inoltre, la soluzione riesce a rilevare il tentativo di caricare una web shell da parte di un criminale sul server preso di mira tramite un gruppo di attacchi CMDi (Command injection) (Figura 7).

Nello specifico, la WSO-NG potrebbe essere rilevata mediante la seguente regola di Adaptive Security Engine:

  • 3000171 - Tentativo di caricamento di file backdoor/webshell

 È possibile rilevare il tentativo di caricare una web shell da parte di un criminale sul server preso di mira tramite un gruppo di attacchi CMDi (Command injection) (Figura 7). Figura 7. Rilevamento del tentativo di caricamento della WSO-NG da parte di Adaptive Security Engine

Conclusione

Nel dinamico mondo delle innovazioni digitali, le web shell come la WSO-NG emergono come strumenti potenti se utilizzati dai criminali. Considerando l'ampia gamma di funzionalità fornite da questi script dannosi ai criminali, le web shell sono diventate fonte di notevole preoccupazione per esperti di sicurezza e amministratori web. Il nostro accurato esame delle origini e delle avanzate funzioni della WSO-NG ne sottolinea il suo potenziale come minaccia nell'era odierna, nel momento in cui aumenta la sensibilizzazione nei confronti della cybersicurezza .

La buona notizia è che le minacce crescono, ma anche i nostri sistemi di difesa. La soluzione WAF di Akamai, App & API Protector, si erge come un potente baluardo contro questi script insidiosi, salvaguardando i regni digitali a cui ci affidiamo.

Per contrastare le minacce poste dalle avanzate web shell, è necessario aggiornare costantemente le patch, utilizzare innovativi strumenti di sicurezza come App & API Protector e mantenere un approccio alla sicurezza proattivo al fine di garantire un ambiente web più sicuro per tutti gli utenti.



Akamai Wave Blue

scritto da

Dennis German e Maxim Zavodchik

November 22, 2023

dennis-german

scritto da

Dennis German

Dennis German is a Security Researcher in the Apps & APIs Threat Research Group at Akamai.

Maxim Zavodchik

scritto da

Maxim Zavodchik

Maxim Zavodchik Experienced security research leader with a proven track record in establishing, growing, and defining strategic vision for Threat Research and Data Science teams in Web Application Security and API Protection. When he’s not protecting life online, you can find him being a super dad and/or watching Studio Ghibli movies.