Timestomping: Timestomp (T1070.006)

Il Timestomping è una tecnica di anti-forensics con cui un attaccante altera gli attributi temporali di un file — creazione, modifica, accesso e change time — per mimetizzare artefatti malevoli tra quelli legittimi presenti nella stessa directory. Su file system NTFS l'operazione coinvolge due strutture distinte del Master File Table: l'attributo $STANDARD_INFORMATION ($SI), quello mostrato all'utente e modificabile via API user-mode, e $FILE_NAME ($FN), gestito dal kernel e alterabile solo tramite operazioni più invasive come rename o interazione diretta con strutture del filesystem. Gli attori più sofisticati praticano il cosiddetto double timestomping, sincronizzando entrambi gli attributi per aggirare i controlli forensi basati sulla discrepanza $SI/$FN.

La tecnica è classificata sotto TA0005 (Defense Evasion) e si colloca nelle fasi post-exploitation della kill chain, tipicamente dopo l'installazione di web shell, backdoor o driver persistenti. Su Linux ed ESXi il timestomping si realizza tramite touch -a -m -t per impostare timestamp arbitrari o touch -r per clonare quelli di un file di riferimento; a livello di codice, chiamate come utime() e utimes() producono lo stesso effetto.

I numeri MITRE parlano di un'adozione estremamente ampia: 11 gruppi APT, 42 famiglie di malware e 3 campagne documentate, tra cui il SolarWinds Compromise e Cutting Edge. La quasi totale assenza di mitigazioni preventive rende detection e analisi forense i pilastri della difesa.

In un red team engagement il timestomping è un tassello fondamentale della fase di stealth persistence: dopo il drop di un impianto — che sia un web shell, una DLL side-loaded o uno scheduled task — l'operatore allinea i timestamp dell'artefatto ai file legittimi vicini per non spiccare nelle triage timeline.

Su Windows, la via più rapida sfrutta funzionalità già presenti in framework offensivi. In Cobalt Strike (a pagamento) il comando timestomp del Beacon replica gli attributi di un file target sull'artefatto droppato, agendo esclusivamente su $SI tramite SetFileTime. In Empire (open source) esiste un modulo equivalente in PowerShell che invoca la stessa API. Per operazioni manuali, PowerShell nativo consente:

(Get-Item C:\Windows\System32\calc.exe).CreationTime per leggere il riferimento, poi assegnare CreationTime, LastWriteTime e LastAccessTime sull'artefatto malevolo.

Chi vuole spingersi al double timestomping deve toccare anche $FN, cosa che non si ottiene con API user-mode: la strada tipica è un rename tramite SetInformationFile con FileRenameInformation, oppure l'uso di tool come SetMace (open source, storicamente citato in ricerca offensiva) che scrive direttamente strutture MFT — richiede privilegi elevati e comporta rischi di corruzione del volume in lab non isolati.

Su Linux e ESXi la simulazione è più diretta. Il comando canonico è touch -a -m -t 202301151030.00 /path/to/implant, mentre touch -r /bin/ls /path/to/implant clona i timestamp di un binario di sistema. Su ESXi, dove gli attori come UNC3886 operano con script busybox, la stessa sintassi funziona nella shell del hypervisor. Va ricordato che touch modifica solo atime e mtime: il ctime (change time inode) non è alterabile senza manipolare l'orologio di sistema o operare tramite debugfs (open source) su ext4, con rischi elevati.

Su macOS, oltre a touch, il comando SetFile -d e -m del pacchetto Xcode Command Line Tools (gratuito) permette di alterare creation e modification date visibili in Finder. Per operazioni più realistiche, gli impianti tipo MacMa e OSX_OCEANLOTUS.D invocano utimes() direttamente.

Raccomandazioni di scenario: allineare i timestamp a un file di sistema della stessa directory (non a un file remoto) per superare euristiche di anomaly detection; evitare backdating superiore ai 90 giorni; documentare le modifiche per il replay in fase di reporting.

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.