Recherche de site Web

Comment analyser un serveur Debian à la recherche de rootkits avec Rkhunter


Rkhunter signifie « Rootkit Hunter » et est un scanner de vulnérabilités gratuit et open source pour les systèmes d'exploitation Linux. Il recherche les rootkits et d'autres vulnérabilités possibles, notamment les fichiers cachés, les autorisations incorrectes définies sur les binaires, les chaînes suspectes dans le noyau, etc. Il compare les hachages SHA-1 de tous les fichiers de votre système local avec les bons hachages connus dans une base de données en ligne. Il vérifie également les commandes du système local, les fichiers de démarrage et les interfaces réseau pour les services et applications d'écoute.

Dans ce tutoriel, nous expliquerons comment installer et utiliser Rkhunter sur le serveur Debian 10.

Conditions préalables

  • Un serveur exécutant Debian 10.
  • Un mot de passe root est configuré sur le serveur.

Installer et configurer Rkhunter

Par défaut, le package Rkhunter est disponible dans le référentiel par défaut de Debian 10. Vous pouvez l'installer en exécutant simplement la commande suivante :

apt-get install rkhunter -y

Une fois l'installation terminée, vous devrez configurer Rkhunter avant d'analyser votre système. Vous pouvez le configurer en éditant le fichier /etc/rkhunter.conf.

nano /etc/rkhunter.conf

Modifiez les lignes suivantes :

#Enable the mirror checks.
UPDATE_MIRRORS=1

#Tells rkhunter to use any mirror.
MIRRORS_MODE=0

#Specify a command which rkhunter will use when downloading files from the Internet
WEB_CMD=""

Enregistrez et fermez le fichier lorsque vous avez terminé. Ensuite, vérifiez Rkhunter pour toute erreur de syntaxe de configuration avec la commande suivante :

rkhunter -C

Mettez à jour Rkhunter et définissez la ligne de base de sécurité

Ensuite, vous devrez mettre à jour le fichier de données à partir du miroir Internet. Vous pouvez le mettre à jour avec la commande suivante :

rkhunter --update

Vous devriez obtenir le résultat suivant :

[ Rootkit Hunter version 1.4.6 ]

Checking rkhunter data files...
  Checking file mirrors.dat                                  [ Updated ]
  Checking file programs_bad.dat                             [ No update ]
  Checking file backdoorports.dat                            [ No update ]
  Checking file suspscan.dat                                 [ No update ]
  Checking file i18n/cn                                      [ Skipped ]
  Checking file i18n/de                                      [ Skipped ]
  Checking file i18n/en                                      [ No update ]
  Checking file i18n/tr                                      [ Skipped ]
  Checking file i18n/tr.utf8                                 [ Skipped ]
  Checking file i18n/zh                                      [ Skipped ]
  Checking file i18n/zh.utf8                                 [ Skipped ]
  Checking file i18n/ja                                      [ Skipped ]

Ensuite, vérifiez les informations de version de Rkhunter avec la commande suivante :

rkhunter --versioncheck

Vous devriez obtenir le résultat suivant :

[ Rootkit Hunter version 1.4.6 ]

Checking rkhunter version...
  This version  : 1.4.6
  Latest version: 1.4.6

Ensuite, définissez la ligne de base de sécurité avec la commande suivante :

rkhunter --propupd

Vous devriez obtenir le résultat suivant :

[ Rootkit Hunter version 1.4.6 ]
File updated: searched for 180 files, found 140

Effectuer un test

À ce stade, Rkhunter est installé et configuré. Il est maintenant temps d’effectuer l’analyse de sécurité de votre système. Pour ce faire, exécutez la commande suivante :

rkhunter --check

Vous devrez appuyer sur Entrée pour chaque contrôle de sécurité, comme indiqué ci-dessous :

System checks summary
=====================

File properties checks...
    Files checked: 140
    Suspect files: 3

Rootkit checks...
    Rootkits checked : 497
    Possible rootkits: 0

Applications checks...
    All checks skipped

The system checks took: 2 minutes and 10 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)

Vous pouvez utiliser l'option --sk pour éviter d'appuyer sur Entrée et l'option --rwo pour afficher uniquement l'avertissement comme indiqué ci-dessous :

rkhunter --check --rwo --sk

Vous devriez obtenir le résultat suivant :

Warning: The command '/usr/bin/egrep' has been replaced by a script: /usr/bin/egrep: POSIX shell script, ASCII text executable
Warning: The command '/usr/bin/fgrep' has been replaced by a script: /usr/bin/fgrep: POSIX shell script, ASCII text executable
Warning: The command '/usr/bin/which' has been replaced by a script: /usr/bin/which: POSIX shell script, ASCII text executable
Warning: The SSH and rkhunter configuration options should be the same:
         SSH configuration option 'PermitRootLogin': yes
         Rkhunter configuration option 'ALLOW_SSH_ROOT_USER': no

Vous pouvez également consulter les journaux de Rkhunter à l'aide de la commande suivante :

tail -f /var/log/rkhunter.log

Planifier une analyse régulière avec Cron

Il est recommandé de configurer Rkhunter pour analyser votre système régulièrement. Vous pouvez le configurer en éditant le fichier /etc/default/rkhunter :

nano /etc/default/rkhunter

Modifiez les lignes suivantes :

#Perform security check daily
CRON_DAILY_RUN="true"

#Enable weekly database updates.
CRON_DB_UPDATE="true"

#Enable automatic database updates
APT_AUTOGEN="true"

Enregistrez et fermez le fichier lorsque vous avez terminé.

Conclusion

Toutes nos félicitations! vous avez installé et configuré avec succès Rkhunter sur le serveur Debian 10. Vous pouvez désormais utiliser régulièrement Rkhunter pour protéger votre serveur contre les logiciels malveillants.

Articles connexes: