Nous ajoutons une vérification de hachage de chasseur de rootkit dans le script quotidien

À cause de toute cette udalenka, il s'est avéré que l'ordinateur portable d'entraînement, à moitié vide auparavant, est devenu la principale machine de travail et cela vaut la peine de le protéger de manière plus réfléchie. Ce qui, en général, est clairement suggéré par les autorités. Sur l'ordinateur portable est maintenant Ubuntu 20.04 beta.

Tout a commencé avec des paramètres BIOS clairs et un chiffrement complet du disque, sur lesquels je ne devrais probablement pas écrire. Mais j'ai alors décidé de comprendre ce que l'utilitaire rkhunter («rootkit, backdoor, sniffer et exploit scanner») peut faire au niveau du fichier .

Je n'attendais pas grand-chose du logiciel qui n'avait pas été mis à jour depuis quelques années. Je dois dire tout de suite que je doute beaucoup de l'utilisation des signatures de février 2018 pour rechercher des rootkits, mais l'un des autres modes de fonctionnement - vérifier les hachages de fichiers, m'a intéressé. Qui est intéressé par une telle expérience et ce qui s'est passé jusqu'à présent - bienvenue chez cat.

L'idée est simple - mais ajoutons une vérification dans le script des choses utiles du matin pour voir si les hachages MD5 des fichiers pour lesquels ils ne devraient pas changer n'ont pas changé. Au moins jusqu'à ce que les mises à jour de paquets devraient. Une telle liste très légère, mais pas inutile, à mon avis. La version actuelle capable de calculer et de vérifier les hachages de l'utilitaire est définie simplement par le gestionnaire de paquets:

apt search rkhunter
rkhunter/focal,focal,now 1.4.6-8 all [installed]
  rootkit, backdoor, sniffer and exploit scanner

La configuration principale du chasseur se trouve dans /etc/rkhunter.conf et d'abord, pour résoudre mon problème, voici les paramètres que j'ai définis:

ENABLE_TESTS=hashes

Car, à part les hashs, rien ne m'intéresse encore. La liste des autres tests possibles peut être obtenue par la commande

sudo rkhunter --list test

Je considère toujours que la collision MD5-ok est liée aux mathématiques, mais pas à la pratique. Je n'insiste pas sur cette opinion, mais presque tous les jours je regarde de bons logiciels malveillants et jusqu'à présent je n'ai pas rencontré de tels conflits dans la nature. Donc pour l'instant dans la config ça me suffit.

HASH_CMD=MD5

Puis il a indiqué son gestionnaire de paquets et, surtout, les répertoires, les hachages de fichiers qui m'intéressent. Le chemin sera, par exemple, / bin et / usr / bin. Concernant les fichiers apparus dans les répertoires, mais qui n'étaient pas là au moment du calcul, le chasseur donnera également des avertissements.

PKGMGR=DPKG
USER_FILEPROP_FILES_DIRS=/bin/*
USER_FILEPROP_FILES_DIRS=/usr/bin/*

Voici un point important: avec mes paramètres, l'analyse n'est pas basée sur des packages, mais sur des répertoires. C'est probablement plus correct, car les packages contiennent beaucoup de fichiers non exécutables et ils doivent d'abord être filtrés, par exemple, via le fichier. Jusqu'à présent, j'ai choisi la voie pour augmenter la liste des répertoires et des exceptions.

Nous avons maintenant terminé la configuration du scanner, il est maintenant temps de mettre à jour la base des hachages corrects dans /var/lib/rkhunter/db/rkhunter.dat avec les nouveaux paramètres. Pour ce faire, vous avez besoin d'une commande (elle prend également les noms des packages à ajouter à la base de données, si vous allez dans l'autre sens).

sudo rkhunter --propupd

Après cela, tous les fichiers qui vous intéressent et leurs hachages devraient apparaître dans rkhunter.dat. Dans mon cas, ce sont 2847 fichiers et l'indexeur a pris 9m 2117. C’est un peu beaucoup, par exemple, pour trois mille MD5, considérant md5sum pour / bin / ls pour 0,003s, mais il y en a vraiment.

Voilà, nous sommes prêts à effectuer un contrôle. Pas encore en combat, il est peu probable que certains malwares aient déjà réussi à changer les hachages.

sudo rkhunter -c

Il existe une clé très utile ici - rwo (signaler uniquement les avertissements), qui ignorera toutes les comparaisons réussies et ne donnera que des avertissements. Vous devez rechercher le résultat du travail dans /var/log/rkhunter.log. Quant à la vitesse de la vérification, pour mes presque trois mille binaires c'était 10m 27,489s, comparable au temps d'indexation.

Nous avons trié la vérification, mais la question reste de réindexer lors de la mise à jour des packages. Ceux. nous avons mis à jour apt et ne considérons plus tous les fichiers mis à jour comme des logiciels malveillants. Le scanner a une autre configuration / etc / default / rkhunter pour automatiser les tâches. Nous y définirons le paramètre.

APT_AUTOGEN="yes"

Et dans /etc/apt/apt.conf.d/90rkhunter se trouve un script qui est responsable de la post-réindexation:


 // Makes sure that rkhunter file properties database is updated after each remove or install only APT_AUTOGEN is enabled
 DPkg::Post-Invoke { "if [ -x /usr/bin/rkhunter ] && grep -qiE '^APT_AUTOGEN=.?(true|yes)' /etc/default/rkhunter; then /usr/share/rkhunter/scripts/rkhupd.sh; fi"; };

En fait, tout le monde, tous les ajouts sont heureux d'accepter. J'espère que cela a été utile.

All Articles