Installazione e utilizzo di chkrootkit

Come eseguire la scansione del server alla ricerca di rootkit e configurare controlli di sicurezza automatizzati.

Chkrootkit (check rootkit) è uno strumento gratuito e open source per rilevare rootkit e altri software dannosi sui sistemi Linux. È in grado di identificare praticamente tutti i rootkit moderni conosciuti ed è disponibile nella maggior parte delle principali distribuzioni.

Lo strumento funziona sia su VPS che su server dedicati.

Installazione

Opzione 1 — tramite il gestore di pacchetti (consigliato):

apt-get install chkrootkit

Opzione 2 — compilazione dai sorgenti (per ottenere l'ultima versione):

wget --passive-ftp ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz
tar xvfz chkrootkit.tar.gz
cd chkrootkit-*/
make sense

Dopo la compilazione, sposta la directory in una posizione appropriata:

cd ..
mv chkrootkit-/ /usr/local/chkrootkit

Crea un symlink per poterlo richiamare da qualsiasi directory:

ln -s /usr/local/chkrootkit/chkrootkit /usr/local/bin/chkrootkit

Opzioni da riga di comando

Opzione Descrizione
-h Mostra la guida
-V Mostra la versione
-l Elenca tutti i test disponibili
-d Attiva la modalità debug
-q Modalità silenziosa — mostra solo i file infetti
-x Modalità estesa — output dettagliato per ogni file controllato
-r dir Usa la directory specificata come root
-n Salta i controlli sui mount NFS
-p dir1:dir2 Specifica i percorsi per i programmi esterni usati da chkrootkit

Eseguire una scansione

Per eseguire un controllo completo del sistema:

chkrootkit

Esempio di output:

ROOTDIR is /' Checking amd'...                                           not found
Checking basename'...                                      not infected Checking cron'...                                          not infected
Checking find'...                                          not infected Checking ls'...                                            not infected
Checking ps'...                                            not infected Checking sshd'...                                          not infected
...
Checking `bindshell'...                                     INFECTED (PORTS: 465)
...

Interpretare i risultati

Stato Significato
not infected Nessuna firma di rootkit conosciuta rilevata
INFECTED Il programma corrisponde a una firma di rootkit o malware conosciuta
not found Il programma non è stato trovato sul sistema e non è stato controllato
not tested Test saltato — non applicabile a questo sistema operativo, dipendenza mancante o disabilitato da un flag
Vulnerable but disabled Il programma è infetto ma al momento non è in esecuzione

Falso positivo noto: se vedi Checking 'bindshell'... INFECTED (PORTS: 465) su un server di posta, niente panico. La porta 465 è SMTPS (Secure SMTP) — si tratta di un falso allarme ben documentato che chkrootkit ha sempre generato sui server di posta.

Importante

chkrootkit segnala i problemi — non li risolve. Ogni avviso va analizzato manualmente per stabilire se si tratta di una minaccia reale o di un falso positivo, prima di intraprendere qualsiasi azione.

Automatizzare le scansioni con cron

Puoi pianificare scansioni regolari e ricevere i risultati via email in modo automatico.

Prima di tutto, trova il percorso completo di chkrootkit:

which chkrootkit

Output:

/usr/sbin/chkrootkit

Apri il tuo crontab:

crontab -e

Aggiungi un'attività — ad esempio, per eseguire una scansione completa ogni notte alle 3:00:

0 3 * * * /usr/sbin/chkrootkit 2>&1 | mail -s "chkrootkit Report" tua@email.com

Sostituisci il percorso con quello restituito da which chkrootkit e aggiorna l'indirizzo email con il tuo.

Aiuto

Hai domande o ti serve una mano? Scrivici tramite il sistema di ticket — siamo sempre qui per aiutarti!

Hai bisogno di aiuto?I nostri ingegneri ti aiuteranno gratuitamente con qualsiasi domanda in pochi minutiContattaci