Occultamento via Bind Mount: Bind Mounts (T1564.013)

La tecnica T1564.013 — Bind Mounts rappresenta una forma sofisticata di occultamento su sistemi Linux, catalogata da MITRE ATT&CK sotto la tattica TA0005 (Defense Evasion). Il meccanismo sfrutta una funzionalità legittima del kernel: il bind mount, che permette di rimappare una directory o un file da una posizione del filesystem a un'altra, in modo analogo a un collegamento simbolico ma operante a livello di VFS.

Gli avversari abusano di questa primitiva per sovrapporre alla directory /proc/<pid-malevolo> il contenuto di un /proc/<pid-benigno>, o addirittura di una directory vuota. Il risultato è che utility native come ps, top, htop o qualsiasi tool che legga /proc per enumerare i processi mostrano metadati falsificati o non mostrano affatto il processo malevolo, pur restando quest'ultimo pienamente attivo nel kernel scheduler.

L'operazione richiede privilegi root (o capability CAP_SYS_ADMIN) e si esegue con un semplice mount -o bind oppure mount -B. La tecnica si colloca nelle fasi post-exploitation della kill chain, tipicamente dopo aver ottenuto persistenza, e mira a rendere invisibili impianti, miner o backdoor a operatori umani e a tool di monitoraggio superficiali.

L'impatto è documentato nella campagna C0035 (KV Botnet Activity) attribuita a Volt Typhoon, attiva da ottobre 2022 a gennaio 2024, che ha colpito infrastrutture critiche statunitensi prima dell'operazione di disruption condotta dalle autorità federali all'inizio del 2024.

In un contesto di red teaming o purple team, la simulazione di Bind Mounts richiede un ambiente Linux controllato (una VM Ubuntu, Debian o RHEL) con privilegi root. La catena operativa base è breve ma didatticamente ricca.

Dopo aver ottenuto un impianto residente — per esempio un semplice binario che apre una reverse shell — si identifica il suo PID e si sceglie un processo benigno di sistema come veicolo di occultamento, tipicamente qualcosa di longevo come systemd (PID 1) o kthreadd (PID 2). Il comando operativo è:

mount --bind /proc/1 /proc/$(pidof impianto)

In alternativa, per un occultamento più aggressivo che nasconde qualsiasi metadato:

mkdir /tmp/empty && mount -o bind /tmp/empty /proc/$(pidof impianto)

Dopo il mount, ps aux | grep impianto non restituirà più il processo, e ls /proc/ mostrerà il contenuto della directory sostitutiva. Il processo continua a girare, visibile solo tramite chiamate dirette al kernel (es. iterando su task_struct via eBPF) o consultando /proc/<pid>/status di processi figli.

Per un esercizio più realistico, si può concatenare la tecnica con la cancellazione dei file su disco dopo l'esecuzione — pattern esatto osservato in C0035 — usando unlink sul binario da /tmp/ mentre il processo resta in memoria. Il file descriptor rimane accessibile via /proc/<pid>/exe, ma se anche quella entry è nascosta dal bind mount, il recovery diventa estremamente arduo.

Gli strumenti utili al laboratorio includono Atomic Red Team (open source), che fornisce test atomici mappati a T1564 utili come baseline, Sysmon for Linux (open source, repository SysinternalsEBPF) per generare telemetria da correlare, e auditd (open source, incluso in tutte le distro maggiori) configurato con regole -a always,exit -F arch=b64 -S mount.

Per la verifica dell'efficacia si consiglia di eseguire in parallelo tool di enumerazione alternativi come osquery (open source) con query sulla tabella processes e process_open_files, e confrontare i risultati con quelli di ps. Divergenze significative indicano che la tecnica ha funzionato. Chiudere sempre l'esercizio con umount /proc/ per ripristinare la visibilità e documentare i log audit generati.

Vuoi diventare un Ethical Hacker ma non sai da dove iniziare?

Accedi alle lezioni gratuite e segui il percorso corretto fin dal primo passo

TEST GRATUITO
2 minuti · 7 domande Che professionista cyber sei? Scopri il profilo più vicino al tuo modo di pensare e inizia dal percorso giusto.
We use cookies

Utilizziamo i cookie sul nostro sito Web. Alcuni di essi sono essenziali per il funzionamento del sito, mentre altri ci aiutano a migliorare questo sito e l'esperienza dell'utente (cookie di tracciamento). Puoi decidere tu stesso se consentire o meno i cookie. Ti preghiamo di notare che se li rifiuti, potresti non essere in grado di utilizzare tutte le funzionalità del sito.