Botnet e C2 - Mappa Globale#
Definizione#
Una botnet e' una rete di dispositivi infetti (chiamati bot o zombie) coordinata da un attaccante (botmaster) tramite un'infrastruttura di Command and Control (C2). Ogni bot esegue i comandi ricevuti dal C2 senza che il proprietario del dispositivo lo sappia. Il termine "zombie" enfatizza che il dispositivo e' vivo ma controllato da qualcun altro.

Architettura C2 - Centralizzata vs P2P#
L'architettura del C2 determina la resilienza della botnet e la difficolta' di abbatterla.
flowchart TD
subgraph CENTRAL["Architettura Centralizzata"]
BM1["Botmaster"]
C2["C2 Server\n(single point)"]
B1["Bot 1"]
B2["Bot 2"]
B3["Bot 3"]
B4["Bot 4"]
end
subgraph P2P_NET["Architettura P2P"]
BM2["Botmaster"]
P1["Bot/C2 A"]
P2["Bot/C2 B"]
P3["Bot/C2 C"]
P4["Bot/C2 D"]
end
BM1 --> C2
C2 --> B1
C2 --> B2
C2 --> B3
C2 --> B4
BM2 -.-> P1
P1 --- P2
P1 --- P3
P2 --- P4
P3 --- P4
Lettura diagramma: A sinistra, l'architettura centralizzata ha un singolo C2 server come collo di bottiglia. Blocca il C2 e tutti i bot sono isolati. A destra, nell'architettura P2P ogni bot e' anche C2: il botmaster inietta comandi in qualsiasi nodo e si propagano via gossip. Eliminare un singolo nodo non ferma la rete.
Fast Flux e DGA - Evasion C2#
Le botnet moderne usano tecniche per rendere difficile l'identificazione e il blocco del C2.
Fast Flux vs CDN: la tecnica e' identica a quella usata dai CDN legittimi (Cloudflare, Akamai) per distribuire il traffico. La differenza e' l'intenzione: il CDN usa TTL basso per routing ottimale, il fast flux lo usa per nascondere l'infrastruttura C2.
DGA example: il malware usa come seed la data del giorno (2026-07-20) per generare aexzqpmnr.com, bkjrtyvwq.net, cvmxopqrs.org... L'attaccante sa in anticipo quali domini verranno generati e ne registra uno. Il defender non puo' bloccarli tutti prima che siano usati.
Comunicazione C2 - Tecniche di Beaconing#
I bot devono comunicare periodicamente con il C2 per ricevere comandi (beaconing). Le tecniche si evolvono per evitare detection.
Beaconing C2 - indicatore chiave: connessione periodica (ogni X secondi/minuti) verso stesso IP/dominio esterno, anche senza attivita' utente. L'EDR rileva il pattern temporale. Il jitter lo rende meno ovvio ma non elimina l'anomalia.
Usi della Botnet#
Una botnet e' infrastruttura criminale generale-purpose: lo stesso insieme di bot puo' essere usato per attacchi diversi.
Caso Reale - Mirai 2016#
Mirai e' la botnet IoT piu' famosa: ha dimostrato che i dispositivi embedded non sicuri possono diventare un'arma DDoS di scala senza precedenti.

Detection e Difesa#
Sinkholing: tecnica difensiva in cui le autorita' o i ricercatori prendono il controllo del dominio C2 (tramite accordo con il registrar o seizure legale) e lo reindirizzano verso un server controllato. I bot continuano a fare beaconing ma ora comunicano con gli investigatori. Permette di mappare la botnet e bloccarla.
Emotet: botnet P2P che tra il 2014 e il 2021 e' stato smantellato con un'operazione coordinata di 8 paesi (Europol, FBI, etc.) nel gennaio 2021. La struttura P2P ha richiesto anni e coordinamento internazionale. I bot sono stati rimossi inviando un aggiornamento dal server infiltrato che li disinstallava.
[Dev parallel] Una botnet centralizzata funziona esattamente come un sistema di job queue distribuito: il C2 server e' il message broker (RabbitMQ, Redis), i bot sono i worker. Il botmaster pubblica un job (comando) e tutti i worker lo consumano. La differenza da una botnet P2P: un sistema Kafka con replication e' tollerante ai guasti come una botnet P2P. Per un developer PHP/Node, riconoscere il pattern di beaconing e' analogo a debuggare un worker che fa polling ogni 60 secondi verso un endpoint: se il traffico e' regolare e verso un IP sconosciuto, e' un indicatore C2. Fast flux e' esattamente la stessa tecnica che usi per il failover DNS in produzione: TTL basso per cambio IP rapido. La differenza e' l'intenzione.


