Sabotaggio dei Log di Comando: Impair Command History Logging (T1562.003)

Quando un attaccante compromette un sistema, ogni comando digitato può lasciare tracce indelebili. La tecnica di sabotaggio della cronologia comandi rappresenta uno dei metodi più sottili per operare nell'ombra, manipolando le variabili d'ambiente che controllano la registrazione dei comandi nei terminali.

Questa tecnica si manifesta durante la fase di Defense Evasion (TA0005), quando l'avversario ha già stabilito un punto d'appoggio e necessita di muoversi senza lasciare impronte digitali. I sistemi operativi moderni registrano automaticamente ogni comando eseguito, ma attraverso la manipolazione di variabili come HISTFILE, HISTCONTROL e HISTFILESIZE su Linux/macOS, o PSReadLine su Windows, è possibile disabilitare completamente questa funzionalità.

L'impatto è significativo: 4 gruppi APT documentati hanno utilizzato questa tecnica in operazioni reali, tra cui APT38 che ha sfruttato il trucco dello spazio iniziale nei comandi per evitare la registrazione. La tecnica è stata osservata in 2 campagne maggiori contro infrastrutture critiche, dimostrando la sua efficacia nel mondo reale.

La manipolazione della cronologia comandi richiede solo privilegi utente standard, rendendola accessibile anche senza elevazione. Su Linux, il comando più immediato è unset HISTFILE, che disabilita completamente la registrazione per la sessione corrente.

Per un approccio più sofisticato, puoi sfruttare HISTCONTROL impostandolo su "ignorespace". Questo permette di nascondere selettivamente i comandi semplicemente anteponendo uno spazio:

export HISTCONTROL=ignorespace

Da questo momento, qualsiasi comando preceduto da spazio non verrà registrato. APT38 ha utilizzato esattamente questa tecnica, digitando " ls" invece di "ls" per operare invisibilmente.

Su Windows, PowerShell offre opzioni altrettanto potenti. Il modulo PSReadLine può essere configurato per cessare completamente la registrazione:

Set-PSReadlineOption -HistorySaveStyle SaveNothing

Alternativamente, puoi reindirizzare i log verso un percorso controllato:

Set-PSReadLineOption -HistorySavePath C:\temp\fake_history.txt

Per sistemi ESXi, la variabile HISTFILE funziona similarmente a Linux. VIRTUALPITA, malware documentato in campagne recenti, combina due tecniche: export HISTFILE=0 per azzerare la cronologia e service vmsyslogd stop per disabilitare il logging di sistema.

Su macOS, dove HISTCONTROL non esiste di default, puoi comunque impostarla manualmente. La shell rispetterà le stesse regole di Linux, permettendo l'uso del trucco dello spazio iniziale.

Per testare l'efficacia, verifica con echo $HISTFILE che la variabile sia effettivamente non impostata. Esegui alcuni comandi sensibili, poi controlla che ~/.bash_history non contenga le tue attività recenti.

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

Scarica la guida gratuita e segui il percorso corretto fin dal primo passo

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.