🛡️ Executive Summary
- Rapid7 scopre Ted dentro HAProxy 2.8.12 trojanizzati di due organizzazioni sudcoreane dei settori automotive e media, con attribuzione DPRK a media confidenza.
- La backdoor intercetta traffico HTTP, sottrae cookie di sessione, inietta script selettivamente e termina le comunicazioni C2 direttamente sul load balancer.
- Il toolkit comprende curlRAT, sshd keylogger e versioni alterate di crond, agetty, atd e polkitd, con cancellazione selettiva delle tracce Linux.
Un load balancer HAProxy può continuare a distribuire normalmente il traffico mentre, nello stesso processo, intercetta sessioni, modifica pagine e riceve comandi dagli aggressori senza lasciare le richieste C2 nei log del backend. È quanto Rapid7 Labs ha scoperto analizzando Ted, una backdoor Linux compilata direttamente dentro la versione HAProxy 2.8.12 utilizzata da due organizzazioni sudcoreane dei settori automotive e media. L’impianto appartiene a un toolkit più ampio che comprende curlRAT, un keylogger SSH e versioni trojanizzate di diversi daemon Linux. Rapid7 collega l’operazione con media confidenza ad attori DPRK, ma non identifica definitivamente il gruppo responsabile né il vettore iniziale utilizzato per entrare nei sistemi.
Cosa leggere
Ted non sfrutta una vulnerabilità HAProxy: sostituisce il binario legittimo
Il punto più importante della ricerca tecnica pubblicata da Rapid7 Labs è ciò che Ted non è. Non si tratta di una vulnerabilità di HAProxy 2.8.12 e non esiste un exploit remoto del load balancer descritto nella campagna. Gli aggressori devono avere già ottenuto esecuzione di codice e privilegi sufficienti sul server per sostituire il binario in uso con una versione ricompilata contenente la backdoor. Ted viene integrato direttamente nel codice di HAProxy e utilizza le sue API native, i memory pool interni, l’event scheduler e il sistema di gestione dei processi. Il traffico legittimo continua quindi a essere gestito normalmente mentre il codice malevolo opera all’interno dello stesso processo. Entrambe le vittime analizzate utilizzavano HAProxy 2.8.12, e Rapid7 osserva che l’impianto accede a strutture interne attraverso offset specifici di quella build; non è stato dimostrato che esistano varianti compatibili con altre release. La tecnica porta su un componente infrastrutturale lo stesso principio di occultamento già osservato nelle backdoor Linux che cercano di confondersi con processi e servizi legittimi dopo la compromissione.

Leggi anche: Kimsuky usa JSONPing e spoofing WebEx contro obiettivi sudcoreani
Il comando C2 muore sul load balancer e non raggiunge mai il backend
La capacità più interessante riguarda il command and control nascosto nel normale traffico HTTP. Quando Ted identifica una richiesta verso un percorso immagine configurato appositamente, la tratta come comunicazione dell’operatore anziché inoltrarla al server applicativo. La backdoor riduce persino i contatori delle connessioni di HAProxy, scrive il corpo della richiesta in una named pipe sotto /tmp e azzera il canale prima che qualcosa raggiunga il backend. Il risultato del comando viene restituito direttamente sul socket attraverso una normale risposta HTTP/1.0 200 OK. Per gli strumenti che osservano esclusivamente web server e applicazioni dietro il proxy, quella comunicazione può quindi non esistere. Attraverso il canale Ted permette esecuzione di comandi, upload e download di file, beaconing e aggiornamento della propria configurazione. È un salto qualitativo rispetto a un normale webshell: il dispositivo che dovrebbe rappresentare il punto di controllo e distribuzione delle connessioni diventa esso stesso il punto nel quale il traffico malevolo viene terminato e nascosto.
Cookie e pagine possono essere intercettati soltanto per visitatori selezionati
Ted registra inoltre un filtro personalizzato nel parser HTTP di HAProxy e può analizzare il traffico alla ricerca di cookie di sessione e richieste considerate di interesse. La manipolazione delle risposte non viene eseguita indiscriminatamente. L’impianto controlla User-Agent, pattern URL e Referer e applica ulteriori criteri sull’indirizzo IP del client, verificato sia esattamente sia a livello di subnet /24. Una chiave inserita nell’header Accept-Language può bypassare la selezione basata sull’IP e permettere all’operatore di forzare l’iniezione. Quando la vittima soddisfa i criteri, Ted modifica il contenuto della risposta, aggiorna Content-Type e Content-Length, forza uno status 200 ed elimina Accept-Ranges per impedire che richieste parziali rendano evidente la differenza nella dimensione della pagina. Rapid7 ritiene che questa architettura possa essere utilizzata per watering hole altamente selettivi, nei quali solo determinati utenti ricevono lo script malevolo mentre tutti gli altri vedono il sito autentico. La selettività richiama il modus operandi già osservato nelle campagne nordcoreane contro organizzazioni sudcoreane, dove Kimsuky verifica il contesto della vittima prima di consegnare i payload successivi.
curlRAT trasforma crond in un RAT con shell root e watchdog HAProxy
Ted rappresenta soltanto una parte del framework. Rapid7 ha identificato uno stager che verifica i privilegi root, raccoglie hostname, distribuzione, versione del kernel e architettura della CPU e procede solo se trova HAProxy oppure cron in esecuzione. Il componente può sostituire il crond legittimo con una variante contenente curlRAT, applicando poi timestomping affinché il file acquisisca la stessa data di creazione di /usr/bin/ssh. curlRAT supporta sei modalità operative: esecuzione comandi, aggiornamento della configurazione, download di payload, reverse shell, beacon e shell PTY interattiva. Il polling standard avviene ogni 43.200 secondi, cioè dodici ore, ma l’operatore può attivare una modalità rapida che riduce l’intervallo a 30 secondi. Un secondo thread funziona come watchdog e monitora continuamente lo stato di HAProxy, distinguendo avvio, arresto, restart e reload. Prima di procedere verifica inoltre la presenza di /usr/lib/libvirtlog.so.0, utilizzata come marker di ambiente virtualizzato. La scelta di trasformare daemon esistenti in contenitori della RAT ricorda altre operazioni di cyber spionaggio che combinano backdoor Linux, persistenza profonda e strumenti destinati a sopravvivere alla normale amministrazione del server.
sshd diventa un keylogger e il toolkit cancella selettivamente i log
La compromissione arriva anche all’autenticazione SSH. Rapid7 ha trovato una versione modificata di sshd che intercetta le password in chiaro digitate dagli utenti, le cifra attraverso un algoritmo di sostituzione personalizzato e le salva sotto /var/lib/sshd/. Lo stesso schema crittografico compare in versioni alterate di polkitd, crond, agetty e atd, suggerendo un framework sviluppato per sostituire più componenti del sistema mantenendo un comportamento apparentemente normale. Lo stager interviene inoltre sui log cancellando riferimenti a parole come tmp, wget, cron e crond da /root/.bash_history e da file quali messages, audit/audit.log, cmd.log, secure, syslog e auth.log. Non elimina quindi necessariamente l’intero log, azione che potrebbe attirare l’attenzione, ma rimuove in modo selettivo le stringhe collegate alla propria installazione. Il modello è coerente con operazioni orientate alla sorveglianza di lungo periodo, dove il valore dell’accesso dipende dalla capacità di restare invisibili più che dalla velocità con cui vengono eseguite attività distruttive.
Rapid7 collega il toolkit alla DPRK ma l’attribuzione resta prudente
Rapid7 attribuisce la campagna con media confidenza a operatori nordcoreani, combinando vittimologia sudcoreana, caratteristiche del codice e infrastrutture C2 già associate ad APT37 in fonti di threat intelligence. Il quadro è però meno lineare di un’attribuzione diretta a un singolo gruppo. Alcuni elementi infrastrutturali rimandano ad APT37, la possibile tecnica di initial access viene confrontata con attività Kimsuky, mentre il modello di compromissione viene accostato anche a operazioni attribuite all’ecosistema Lazarus. Rapid7 stessa specifica che sono necessarie ulteriori evidenze per una conclusione definitiva. Questa prudenza è essenziale perché i gruppi nordcoreani mostrano da tempo sovrapposizioni di infrastrutture, tooling e obiettivi. Nel 2026 Kimsuky ha ampliato le proprie capacità fino a integrare stack AI locali nei workflow di spionaggio, mentre Lazarus ha continuato a colpire comparti tecnologici e dual-use attraverso campagne di accesso altamente mirate. Ted si colloca bene in questo ecosistema, ma non consente ancora di assegnare con certezza l’operazione a una sua singola componente.
Continua con:
- Corea del Nord porta l’AI dentro spionaggio e infiltrazioni IT
- Lazarus sfrutta uno zero-day Windows nelle false offerte di lavoro
Aggiornare HAProxy non rimuove Ted: serve verificare l’integrità del server
Il dato operativo più importante è che aggiornare HAProxy non costituisce una remediation sufficiente per un host già compromesso. Ted non dipende da una falla nella versione 2.8.12: l’attaccante sostituisce direttamente il binario, dopo avere già acquisito controllo sul sistema. Rapid7 raccomanda quindi controlli di integrità dei binari, analisi comportamentale della memoria e correlazione di rete indipendente dai log del load balancer e dei backend. La versione trojanizzata continua inoltre a dichiarare la stessa release del software legittimo, rendendo insufficiente un semplice controllo della stringa di versione. Tra gli artefatti individuati compaiono ~/cache/haproxy-1000.cache, /var/lib/snapd/g580, /tmp/jasper-log e il file cifrato utilizzato dal falso sshd. Gli indicatori di rete storici possono aiutare nel threat hunting, ma alcuni domini C2 osservati non risultano più risolvibili e non devono essere trattati come unica forma di detection. Ted mostra il problema centrale dell’operazione: quando proxy, daemon e servizi di autenticazione vengono trasformati direttamente in malware, affidarsi ai loro stessi log per dimostrare che il sistema è pulito significa chiedere all’impianto compromesso di certificare la propria integrità.
Iscriviti alla Newsletter
Non perdere le analisi settimanali: Entra nella Matrice Digitale.
Matrice Digitale partecipa al Programma Affiliazione Amazon EU. In qualità di Affiliato Amazon, ricevo un guadagno dagli acquisti idonei. Questo non influenza i prezzi per te.









