FritzFrog: la botnet P2P

Le botnet sono uno dei più pericolosi metodi di attacco informatico in circolazione: centinaia, se non migliaia, di computer compromessi orchestrati da un unico controllore per coordinare gli attacchi verso un unico obbiettivo. Questo ha poche armi per difendersi, tanto da soccombere semplicemente per i numeri: troppe richieste a cui rispondere, che diventa nessuna risposta, nemmeno alle richieste legittime. E il sito o servizio attaccato risulta semplicemente down, morto.

Come riportato da Arstechnica, da gennaio Guardicore Labs ha identificato una nuova rete botnet che ha caratteristiche particolari che la rendono particolarmente insidiosa e pericolosa. Il post in cui spiegano il tutto è ben dettagliato: se siete interessati ne consigliamo la lettura. Il nome di questa nuova botnet è FritzFrog.
I ricercatori di Guardicore sono riusciti ad avere le informazioni riportate infiltrandosi nella rete, mimetizzandosi come uno dei nodi. Ma anche così non sono stati in grado di trovare un modo per fermare la diffusione.

Tanto per iniziare, di solito una botnet dipende da un host in particolare, che fa da direttore: la sua funzione principale è quella di dare i comandi ai computer compromessi, e al più ricevere i dati trafugati negli obbiettivi. FritzFrog no, è decentralizzato, con l’uso di una rete peer to peer (P2P). In FritzFrog ogni computer compromesso è in grado di svolgere gli stessi compiti, compreso inviare comandi a tutti gli altri, o recuperare i dati trafugati. Niente server e client, ma tutti pari (peer).

La rete P2P a sua volta non è niente di già visto: pur svolgendo compiti similari ad altre già in circolazione, come Torrent per i file, è un’implementazione proprietaria. E anche questo è particolare.

La botnet è creata da un malware molto sofisticato, che attacca i server SSH: anche questa è una particolarità notevole.
Il vettore principale è ottenere l’accesso provando le password più comuni, prese da un elenco; i ricercatori hanno scoperto che questo è uno degli elenchi più complessi e completi che ci siano in circolazione.

Il malware è progettato per non usare il disco degli host attaccati, ma girare solo in memoria: questo rende la vita particolarmente complicata agli antivirus, che spesso analizzano i file ma i processi già in corso di solito sono considerati sicuri.
L’unico file modificato su disco può essere rintracciato nell’authorized_host: una volta ottenuto l’accesso ad una macchina, il malware autorizza una certa chiave SSH per l’accesso, creandosi de facto una backdoor: se l’attaccato cambia anche la password usata, la chiave è ancora valida, garantendo l’accesso all’attaccante.

Inoltre il malware stesso è molto sofisticato, diviso in vari processi multithread con vari compiti specifici, come trovare un nuovo bersaglio, attaccarlo per avere accesso e “copiarsi”, collegarsi alla rete degli altri bot, aggiornarsi… Insomma, per ogni compito un thread specifico, che può lavorare contemporaneamente agli altri.
Il processo stesso poi nasconde il proprio nome, facendosi passare per ifconfig o nginx, ovvero programmi molto diffusi.

Ci sono altre particolarità, come:

  • almeno venti versioni diverse (da quando è stato identificato);
  • capacità di distribuire i bersagli tra tutti i nodi disponibili (per evitare di attaccare in due lo stesso bersaglio);
  • comunicazioni criptate P2P;
  • uso della connessione SSH stessa per la comunicazione.
  • scritto in golang;
  • attacca sia macchine Linux che Windows.

Spaventati? Bene, perché il malware è in circolazione e, per le caratteristiche sopra esposte, non si sa bene come poterlo fermare – se non controllando minuziosamente e frequentemente di non essere stati colpiti.
Di buono c’è che finora ha prediletto l’attacco ad obbiettivi specifici: uffici governativi, università, centri medici, banche e compagnie telefoniche. Se non siete in una di queste categorie è poco probabile che diveniate degli obbiettivi. O almeno si spera…

Ho coltivato la mia passione per l'informatica fin da bambino, coi primi programmi BASIC. In età adulta mi sono avvicinato a Linux ed alla programmazione C, per poi interessarmi di reti. Infine, il mio hobby è diventato anche il mio lavoro.
Per me il modo migliore di imparare è fare, e per questo devo utilizzare le tecnologie che ritengo interessanti; a questo scopo, il mondo opensource offre gli strumenti perfetti.

Tags: , ,