Il post seguente è stato tradotto per gentile concessione di Schneier on Security
Uno spaventoso sviluppo dei rootkit:
I rootkit, tipicamente, modificano alcune zone della memoria del sistema operativo (SO) in esecuzione per effettuare l’hijack dell’execution control. Ciò costringe l’SO a presentare risultati non corretti ai software di rilevamento (antivirus, antirootkit).
Ad esempio i rootkit possono nascondere file, registri, processi, ecc, ai software di rilevamento. Quindi i rootkit, generalmente, modificano la memoria. E gli strumenti antirootkit esaminano le zone di memoria per identificare tali modifiche sospette e avvisare gli utenti.
Questo particolare rootkit modifica inoltre una locazione di memoria (installa un hook), per impedire l’accesso corretto al disco da parte del software di rilevamento. Diciamo che la locazione sia X, che sia nota per essere modificata da altre famiglie di rootkit e che non riguardi solo questo particolare rootkit.
Ora, poiché il contenuto della locazione X è noto per essere modificato generalmente dai rootkit, la maggior parte degli strumenti antirootkit verificherà il contenuto della locazione di memoria X per vedere se è stato modificato.
[…]
Nel caso di questo rootkit particolare, il contenuto originale (cosa ci si aspetta) della locazione X è stato spostato dal rootkit in una posizione diversa, Y. Quando uno strumento antirootkit tenta di leggere il contenuto della locazione X, leggerà il contenuto della locazione Y. Quindi, il tool antirootkit penserà che tutto è come dovrebbe essere senza avvisare l’utente della presenza di attività sospette.
Fonte: Forged Memory
A scary development in rootkits:
Rootkits typically modify certain areas in the memory of the running operating system (OS) to hijack execution control from the OS. Doing so forces the OS to present inaccurate results to detection software (anti-virus, anti-rootkit).
For example rootkits may hide files, registries, processes, etc., from detection software. So rootkits typically modify memory. And anti-rootkit tools inspect memory areas to identify such suspicious modifications and alarm users.
This particular rootkit also modifies a memory location (installs a hook) to prevent proper disk access by detection software. Let us say that location is X. It is noteworthy that this location X is well known for being modified by other rootkit families, and is not unique to this particular rootkit.
Now since the content at location X is known to be altered by rootkits in general, most anti-rootkit tools will inspect the content at memory location X to see if it has been modified.
[…]
In the case of this particular rootkit, the original (what’s expected) content at location X is moved by the rootkit to a different location, Y. When an anti-rootkit tool tries to read the contents at location X, it is served contents from location Y. So, the anti-rootkit tool thinking everything is as it should be, does not warn the user of suspicious activity.
Source: Forged Memory