I Tunnel Cloudflare sono una funzionalità che consente di stabilire una connessione sicura e privata tra il server di un utente e la rete Cloudflare. Si tratta di una tecnologia utile per proteggere i server e le risorse all’interno di una rete privata da attacchi informatici e per rendere il traffico più sicuro e veloce. In un altro articolo abbiamo visto come superare il firewall con i Tunnel Cloudflare consentendo anche l’esposizione di qualunque servizio, anche non basato su HTTP/HTTPS.
Aggressori in tutto il mondo stanno utilizzando sempre più spesso i Tunnel Cloudflare per creare connessioni HTTPS dai dispositivi compromessi, aggirare i firewall e conservare la loro presenza sugli stessi device a lungo termine.
Si tratta di una tecnica che non è del tutto nuova: già a gennaio 2023, gli aggressori avevano iniziato a utilizzare pacchetti PyPI dannosi che si servivano di tunnel Cloudflare per rubare furtivamente dati o accedere a distanza ai dispositivi altrui. Lo stesso espediente risulta adesso utilizzato da un numero sempre più ampio di malintenzionati.
Come gli aggressori abusano dei tunnel Cloudflare
I Tunnel Cloudflare sono utilizzati principalmente per proteggere e accelerare il traffico tra i sistemi degli utenti e la rete Cloudflare, migliorando la sicurezza e l’efficienza delle comunicazioni su Internet.
Per utilizzare i Tunnel Cloudflare, è necessario installare un client sul server o sul dispositivo che si desidera connettere alla rete Cloudflare. Il client stabilisce una connessione sicura con i server di Cloudflare servendosi di un tunnel crittografato per inviare e ricevere i dati.
Il traffico è instradato attraverso i PoP (Point-of-Presence) di Cloudflare in tutto il mondo: essendo posizionati fisicamente vicino ai server degli utenti, è così possibile massimizzare le prestazioni e ridurre la latenza.
Nel rapporto elaborato da GuidePoint Security si spiega che un numero crescente di aggressori informatici sta abusando dei tunnel Cloudflare per acquisire un accesso furtivo e persistente alla rete della vittima, eludere il rilevamento da parte delle soluzioni di sicurezza sottraendo poi dati personali e informazioni riservate dai dispositivi compromessi.
Un singolo comando eseguito sul sistema della vittima, che non espone nient’altro che il token univoco del tunnel Cloudflare stabilito dall’aggressore, è sufficiente per impostare il canale di comunicazione. L’autore dell’attacco può inoltre modificare in qualunque momento la configurazione di un tunnel, disabilitarlo e abilitarlo secondo le necessità.
Il cloud utilizzato per scopi nefasti
Come sottolineano i ricercatori di GuidePoint, il tunnel si aggiorna non appena l’aggressore applica una modifica sulla configurazione nella dashboard Web di Cloudflare. In questo modo, un malintenzionato può ad esempio attivare il Desktop remoto (protocollo RDP), raccogliere informazioni dalla macchina della vittima, quindi disabilitare RDP fino a una data successiva. Così facendo, l’aggressore può di fatto ridurre le possibilità di rilevamento e fare in modo che la vittima non si accorga di ciò che sta avvenendo.
Poiché la connessione HTTPS e lo scambio di dati avviene tramite protocollo QUIC sulla porta 7844, è improbabile che i firewall o altre soluzioni di protezione della rete indichino l’attività in corso come potenzialmente dannosa.
L’attaccante può addirittura sfruttare la possibilità “Try Cloudflare” che consente agli utenti di creare tunnel una tantum senza nemmeno disporre di un account.
La funzione “Reti private” di Cloudflare consente a un utente malintenzionato che ha stabilito un tunnel verso un singolo dispositivo client della vittima l’accesso a distanza a un’intera gamma di indirizzi IP interni.
Per rilevare l’uso non autorizzato dei tunnel Cloudflare, GuidePoint consiglia alle organizzazioni di monitorare query DNS specifiche (condivise nel report di GuidePoint) e gli eventuali utilizzi di porte non standard come 7844. Inoltre, è possibile rilevare l’installazione dei client “cloudflared” sui sistemi aziendali usando meccanismi di hashing oppure soluzioni di protezione che lavorano a livello centrale.
Gli hash dei client Cloudflare che consentono di stabilire connessioni remote sono noti e continuamente aggiornati al rilascio di nuove versioni. Come abbiamo visto nell’articolo citato in apertura, inoltre, utilizzando connessioni WebSocket e proxy SOCKS5 si può esporre in rete qualunque genere di servizio.