O rkhunter é um sistema de deteção de rootkits que avisa por email o administrador do sistema se detetar alterações no sistema que indiciem a presença de um rootkit.
root@server:~# apt install rkhunter
A configuração por omissão do rkhunter deve ser alterada de modo a definir que a actualização da base de dados é feita semanalmente, a verificação da existência de rootkits é feita diariamente, e os resultados são enviados por email para o administrador de sistema (root).
A alteração da configuração é feita no ficheiro /etc/default/rkhunter:
# Defaults for rkhunter automatic tasks # sourced by /etc/cron.*/rkhunter and /etc/apt/apt.conf.d/90rkhunter # # This is a POSIX shell fragment # # Set this to yes to enable rkhunter daily runs # (default: true) CRON_DAILY_RUN="true" # Set this to yes to enable rkhunter weekly database updates # (default: true) CRON_DB_UPDATE="true" # [...] # Set this to yes to enable automatic database updates # (default: false) APT_AUTOGEN="true" # [...]
A configuração deve ser verificada, para garantir que não há erros no ficheiro de configuração:
root@server:~# rkhunter --config-check root@server:~#
Em seguida, devemos verificar que temos as últimas definições ou assinaturas de rootkit:
root@server:~# rkhunter --update root@server:~#
Deverá também ser feita a primeira atualização da base de dados de propriedades de ficheiros do rkhunter:
root@server:~# rkhunter --propupd [ Rootkit Hunter version 1.4.2 ] File updated: searched for 175 files, found 138
Diariamente o administrador receberá um relatório com os resultados da análise efetuada pelo rkhunter:
Subject: [rkhunter] server.home.lan - Daily report To: root@home.lan Date: Tue, 28 Apr 2015 06:25:36 +0100 (WEST) From: root@home.lan (root) Warning: The file '/bin/fuser' exists on the system, but it is not present in the 'rkhunter.dat' file. Warning: The file properties have changed: File: /usr/bin/awk Current hash: 597161f1f35f1c2877331ea14c5e250b18822c36 Stored hash : 1a7c7a4e289c7eaefe87046a3a80f28b3264059f Current symbolic link target: '/usr/bin/awk' -> '/usr/bin/gawk' Stored symbolic link target : '/usr/bin/awk' -> '/usr/bin/mawk' Warning: The file '/usr/bin/killall' exists on the system, but it is not present in the 'rkhunter.dat' file. Warning: The file '/usr/bin/mail' exists on the system, but it is not present in the 'rkhunter.dat' file. Warning: The file '/usr/bin/pstree' exists on the system, but it is not present in the 'rkhunter.dat' file. Warning: The file '/usr/bin/gawk' exists on the system, but it is not present in the 'rkhunter.dat' file. Warning: The file '/usr/bin/bsd-mailx' exists on the system, but it is not present in the 'rkhunter.dat' file. #[...]
Este relatório alerta para alteração de alguns ficheiros, provavelmente devido a uma atualização do sistema.
O rkhunter também pode ser executado na linha de comandos:
root@server:~# rkhunter --check [ Rootkit Hunter version 1.4.2 ] Checking system commands... Performing 'strings' command checks Checking 'strings' command [ OK ] Performing 'shared libraries' checks Checking for preloading variables [ None found ] Checking for preloaded libraries [ None found ] Checking LD_LIBRARY_PATH variable [ Not found ] Performing file properties checks Checking for prerequisites [ OK ] /usr/sbin/adduser [ OK ] /usr/sbin/chroot [ OK ] /usr/sbin/cron [ OK ] /usr/sbin/groupadd [ OK ] /usr/sbin/groupdel [ OK ] /usr/sbin/groupmod [ OK ] /usr/sbin/grpck [ OK ] /usr/sbin/nologin [ OK ] # [...] System checks summary ===================== File properties checks... Files checked: 138 Suspect files: 0 Rootkit checks... Rootkits checked : 374 Possible rootkits: 0 Applications checks... All checks skipped The system checks took: 38 seconds All results have been written to the log file: /var/log/rkhunter.log One or more warnings have been found while checking the system. Please check the log file (/var/log/rkhunter.log)
A base de dados do rkhunter é atualizada semanalmente e de forma automática. No entanto, é possível proceder à sua atualização sempre que se quiser:
root@server:~# rkhunter --update [ Rootkit Hunter version 1.4.2 ] Checking rkhunter data files... Checking file mirrors.dat [ No update ] Checking file programs_bad.dat [ No update ] Checking file backdoorports.dat [ No update ] Checking file suspscan.dat [ No update ] Checking file i18n/cn [ No update ] Checking file i18n/de [ No update ] Checking file i18n/en [ No update ] Checking file i18n/tr [ No update ] Checking file i18n/tr.utf8 [ No update ] Checking file i18n/zh [ No update ] Checking file i18n/zh.utf8 [ No update ]