File Nascosti: Hidden Files and Directories (T1564.001)

La tecnica T1564.001 descrive l'abuso dei meccanismi nativi di occultamento file offerti dai sistemi operativi per sottrarre payload, configurazioni e dati raccolti allo sguardo di utenti e analisti. Rientra nella tattica TA0005 (Defense Evasion) e si colloca trasversalmente lungo la kill chain: viene impiegata subito dopo l'esecuzione iniziale per nascondere loader e persistenze, durante la collection per accumulare dati esfiltrandi in cartelle invisibili, e nella fase di command & control per mimetizzare log e file di configurazione.

Ogni piattaforma offre primitive diverse. Su Windows l'attributo hidden si applica tramite attrib.exe o direttamente via API SetFileAttributes, con l'ulteriore possibilità di combinare l'attributo system per rendere il file invisibile anche quando Explorer mostra i file nascosti. Su Linux e macOS basta anteporre un punto al nome del file, mentre macOS aggiunge il flag UF_HIDDEN impostabile con chflags hidden o SetFile -a V, che nasconde alla sola Finder lasciando visibile il file dal terminale.

I dati MITRE ATT&CK documentano 12 gruppi APT, 45 famiglie di malware e 1 campagna che sfruttano questa tecnica, con un impatto particolarmente marcato in scenari cross-platform e su supporti rimovibili USB. L'assenza di mitigazioni tecniche dirette rende la detection comportamentale l'unica linea di difesa efficace.

In un esercizio red team la tecnica è banale da implementare ma estremamente efficace se combinata con directory di sistema legittime. Su Windows il comando canonico resta attrib +h +s C:\ProgramData\, replicando esattamente ciò che FIN7 ha usato per nascondere una cartella SSH (attrib +h "C:\ProgramData\ssh") e DarkGate per occultare C:/rjtu/. Combinare +s rende la cartella invisibile anche con "Mostra file nascosti" attivo in Explorer, poiché richiede la disattivazione separata di "Nascondi file protetti di sistema".

Un pattern realistico osservato in Tropic Trooper consiste nel creare directory sotto path plausibili come C:\ProgramData\Apple\Updates\ o C:\Users\Public\Documents\Flash\. Per USB drop, Mustang Panda replica la naming convention RECYCLE.BIN nella root del volume, sfruttando il fatto che Windows tratta quel nome come cestino di sistema.

Su Linux la sintassi è più leggera: mkdir /tmp/.cache-systemd && cp implant /tmp/.cache-systemd/.helper. In scenari di privilege escalation è interessante il tool libprocesshider (open source, disponibile su GitHub), usato da Rocke: si tratta di una libreria caricata via /etc/ld.so.preload che intercetta readdir nascondendo processi e file con un prefisso configurabile. Per una simulazione più sofisticata, REPTILE (open source) implementa un LKM rootkit con capacità di occultamento a livello kernel, adatto a lab isolati per validare la copertura EDR.

Su macOS i comandi rilevanti sono chflags hidden /path/file e SetFile -a V /path/file (quest'ultimo richiede Xcode Command Line Tools installato). Per il naming con punto: mv payload .payload replica il pattern di FruitFly, iKitten e Dacls. ThiefQuest aggiunge nove caratteri random dopo il punto per rendere il nome non predicibile.

Per il tooling di supporto in lab: Sysinternals Streams (gratuito) enumera Alternate Data Streams su NTFS, utile per validare se il blue team rileva payload nascosti in ADS come file.txt:hidden.exe. SharPersist (open source) include moduli di persistenza che sfruttano file hidden. Un red teamer maturo evita di lasciare timestamp di creazione anomali: dopo aver piazzato il file, allinea ctime/mtime a quelli della directory padre con touch -r parent_dir /path/.payload per ridurre le anomalie di timeline.

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.