Actuellement, les seuls scanners de rootkits que je connaisse doivent être installés sur la machine avant le rootkit afin qu'ils puissent comparer les modifications de fichiers, etc. (par exemple: chkrootkit
et rkhunter
), mais ce que je dois vraiment faire est de pouvoir scanner ma machine et d'autres machines à partir d'un LiveUSB parce que si le rootkit est assez bon, il aura également repris les programmes de détection de rootkit.
Existe-t-il donc un scanner de rootkit basé sur les signatures pour Ubuntu / Linux que je pourrais simplement installer sur un LiveUSB et utiliser pour analyser de manière fiable les machines auxquelles je le branche sans qu'il ait à surveiller le comportement ou comparer des fichiers de dates précédentes?
rkhunter
ça ne fera probablement pas grand-chose. En fait, si un rootkit est installé, je m'attendraisrkhunter
à ne plus donner de résultats précis, donc c'est un peu idiot qu'il ne soit qu'un outil installé sur la machine réelle qui serait compromis.Réponses:
AIDE ( A dvanced I ntruder D etection E nvionment) est un remplacement
tripwire
mentionné dans une autre réponse ici. De wikipedia :Fonctionnalité
AIDE prend un "instantané" de l'état du système, enregistre les hachages, les heures de modification et d'autres données concernant les fichiers définis par l'administrateur. Cet «instantané» est utilisé pour créer une base de données qui est enregistrée et peut être stockée sur un périphérique externe pour être conservée.
Lorsque l'administrateur souhaite exécuter un test d'intégrité, l'administrateur place la base de données précédemment créée dans un endroit accessible et ordonne à AIDE de comparer la base de données avec l'état réel du système. Si un changement s'est produit sur l'ordinateur entre la création de l'instantané et le test, AIDE le détecte et le signale à l'administrateur. Alternativement, AIDE peut être configuré pour s'exécuter selon une planification et signaler quotidiennement les changements en utilisant des technologies de planification telles que cron, qui est le comportement par défaut du paquet Debian AIDE. 2
Ceci est principalement utile à des fins de sécurité, étant donné que tout changement malveillant qui aurait pu se produire à l'intérieur du système serait signalé par AIDE.
Depuis que l'article de wikipedia a été écrit, le responsable de l'époque Richard van den Berg (2003-2010) a été remplacé par un nouveau responsable Hannes von Haugwitz de 2010 à aujourd'hui.
La page d'accueil AIDE indique que Debian est prise en charge, ce qui signifie que l'application peut être installée dans ubuntu avec le prédictable:
En ce qui concerne la portabilité et la prise en charge de la clé USB, la page d'accueil poursuit:
Cela signifie pour moi que vous pourriez avoir la base de données de signatures sur votre clé USB ainsi que l'application sur le stockage persistant USB en direct. Je ne suis pas sûr qu'AIDE réponde à vos besoins, mais comme il remplace
tripwire
votre favori actuel, il mérite d'être étudié .la source
cron
dans la plupart des installations. Je pourrais le considérer moi-même non seulement pour la protection des rootkits, mais plus encore pour la protection contre ma propre mauvaise programmation: p Il pourrait être instructif de voir ce qui change après unapt get install
aussi.Me rappelle tripwire qui crée des sommes de contrôle cryptographiques des fichiers que vous spécifiez. Installez une copie du système que vous vérifiez à partir d'une bonne source connue (DVD par exemple), installez les mêmes mises à jour du système cible), demandez à tripwire de créer le fichier de somme de contrôle. Copiez le fichier de somme de contrôle de tripwire sur le système cible, demandez à tripwire de comparer le fichier de somme de contrôle avec les fichiers du système cible.
Les mises à jour / mises à niveau / installations / les fichiers de configuration spécifiques au système non synchronisés seront bien sûr marqués / marqués comme modifiés.
Mise à jour 2018-05-06:
Je dois également ajouter que le système cible doit être vérifié hors ligne. Si la cible a été compromise, le matériel, le microprogramme de démarrage, le noyau du système d'exploitation, les pilotes du noyau, les bibliothèques système, les binaires peuvent avoir déjà été compromis et interférer ou renvoyer des faux positifs. Même l'exécution sur un réseau dans le système cible peut ne pas être sûre car le système cible (compromis) traiterait localement les paquets réseau, le système de fichiers, le périphérique de bloc, etc.
Le plus petit scénario comparable qui me vient à l'esprit sont les cartes à puce (EMV utilisées dans les cartes de crédit, PIV utilisées par le gouvernement fédéral, etc.). Sans tenir compte des interfaces sans fil et de toutes les protections hw / électriques / rf, l'interface de contact est essentiellement un port série, trois fils ou deux fils. L'API est normalisée et encadrée de blanc, donc tout le monde convient qu'elle est imperméable. Ont-ils protégé les données en transit, dans la mémoire d'exécution, au repos dans la mémoire flash?
Mais la mise en œuvre est de source fermée. Une porte dérobée peut exister dans le matériel pour copier l'intégralité du runtime et de la mémoire flash. D'autres peuvent manipuler les données en transit entre le matériel et les mémoires internes, le système d'exploitation de la carte à puce ou les E / S de / vers la carte. Même si les compilateurs hw / fw / sw / sont open source, vous devrez tout auditer à chaque étape et vous pourriez toujours manquer quelque chose auquel vous / tout le monde ne pensiez pas. La paranoïa peut vous envoyer dans une pièce en caoutchouc blanc.
Désolé de s'être enfui sur une tangente de paranoïa. Sérieusement, sortez les lecteurs cibles pour les tester. Vous n'avez alors qu'à vous soucier du disque cible hw / fw. Mieux encore, sortez simplement les plateaux HDD / puces flash SSD pour tester (en supposant que votre système de test est d'or). ;)
la source