Se il tuo sistema è stato compromesso, non dovresti fidarti di nulla .
Penso che in genere le utilità standard funzionino principalmente correttamente, ma tralasciano le informazioni relative ai processi dell'attaccante. I rootkit sono progettati in questo modo, quindi è meno probabile notare che la macchina è compromessa. Quindi penso che puoi generalmente fidarti di loro per osservare i tuoi processi, ma non per assicurarti che un rootkit sia sparito.
Se l'attaccante può caricare i moduli del kernel, o altrimenti modificare il kernel, anche le chiamate di sistema e l'API /proc
possono mentire. Pertanto, anche una copia pulita delle utilità dello spazio utente come ps
o grep foo /proc/*/cmdline
non ti dirà se è in esecuzione un processo dannoso. Qualsiasi rootkit degno di questo nome nasconderà i suoi processi.
Ogni file dell'intero sistema è come uno spreco radioattivo , che può potenzialmente contaminare altre cose se non si presta attenzione. per esempio. un utente malintenzionato potrebbe aver aggiunto qualcosa a /home/*/.bashrc
per reinfettare il sistema in caso di reinstallazione del sistema operativo ma non controllare /home
.
Allo stesso modo, ci possono essere cose sgradevoli nella tua configurazione del server web, o nei tuoi script CGI, ecc. Confrontati con i backup e non presumere che nulla sia sicuro se l'autore dell'attacco potrebbe averlo toccato.
Effettuate sicuramente qualsiasi controllo di dati non attendibili su una macchina pulita conosciuta. Finché non si esegue nulla dal sistema compromesso, si dovrebbe essere ok. (cioè supponendo che cmp
e diff
non abbiano alcuna vulnerabilità., nota che strings
non è sicuro su file non attendibili, a seconda della versione di libbfd
. Utilizza strings -a
.