3 votes

Méthodes alternatives de détection de Linux pour détecter un hôte compromis

Il s'agit d'une réécriture de mon message précédent, car ce que j'essayais de faire n'était pas tout à fait clair. J'espère que cela aura plus de sens :)

En bref, ce que je recherche, ce sont des méthodes alternatives pour détecter si mon système est compromis au-delà de l'utilisation d'outils tels que tripwire/OSSEC/samhain/rkhunter et de la simple vérification générale de l'intégrité des fichiers et de la surveillance des journaux. J'essaie délibérément de ne pas être trop précis dans ma question car je cherche des idées en général pour pouvoir les mettre en œuvre sur ma propre machine. Ce sera probablement, mais pas limité à un script qui est exécuté à intervalles fixes (cronjob) et notifie l'administrateur si quelque chose a changé et invite un administrateur à enquêter davantage via (syslog / e-mail ?). Notez que je ne suis pas nécessairement après le code lui-même juste un aperçu de haut niveau de ce qu'il fait. N'hésitez pas à être aussi verbeux que vous le souhaitez.

Je peux vous donner une idée générale des idées que je recherche en énumérant les choses que je fais actuellement.

1) Générer un md5sum de la sortie de mon iptables en cours d'exécution et le comparer à un bon hash connu. Si cela change, on peut supposer que quelqu'un a ajouté/supprimé une entrée iptables.

2) J'ai certains points de montage qui sont en lecture seule (/usr, /boot etc.) parce qu'ils ne devraient pas changer très souvent. Si une partition passe de lecture seule à écriture, je veux en être informé.

3) Surveillez la sortie de netstat pour les services d'écoute uniquement. Effectuez une comparaison de fichiers (diff) par rapport à un fichier contenant de bonnes valeurs connues. Si quelque chose a été ajouté, il est possible que quelqu'un ait ajouté un nouveau service au système. Une porte dérobée possible ?

Notez que ce qui précède va générer des faux positifs si je fais de la maintenance système. Cependant, si ces données changent alors que je ne suis pas en train de le faire, je les considèrerais comme suspectes et j'enquêterais davantage. Notez qu'il ne s'agit que d'exemples et qu'il y a des défauts comme partout, mais plus il y a d'obstacles, plus les chances que quelqu'un trébuche sont élevées.

Merci d'avance.

2voto

Andrew Tappert Points 29

Je vous recommande d'utiliser des outils d'analyse de la mémoire, comme ceux qui sont répertoriés sur le site Web de la Commission européenne. ForensicsWiki . Par exemple, vous pouvez effectuer une vérification de l'intégrité du noyau et des processus avec la fonction Second regard Produit d'analyse de la mémoire de Linux. Les vérificateurs d'intégrité de fichiers sont parfaits pour valider l'état non volatile du système ; l'analyse de la mémoire vous permet de valider l'état volatile pour vous assurer que tout le code exécuté sur le système à un moment donné est légitime et non modifié.

1voto

Luka Marinko Points 1184

Peut-être ai-je mal compris votre question. Il semble que vous ayez juste besoin d'informations sur les IDS/IPS des hôtes unix tels que samhain , snort ou OSSEC . Il y a wiki sur elle aussi. Ou bien cherchiez-vous autre chose ?

1voto

neoice Points 864

J'utilise une combinaison d'integrit (vérification de l'intégrité binaire), de Tiger (IDS/auditeur système), de logcheck et de règles IPtables très strictes (DENY tout ce que je peux, y compris OUTPUT.) Tous les paramètres par défaut de Debian fonctionnent assez bien, effectuant des tâches à intervalles réguliers et envoyant les résultats à root.

Je recommande également le Manuel de sécurisation de Debian pour un bon aperçu de ce que vous pouvez et devez faire.

0voto

Joel Purra Points 729

J'exécute nmap quotidiennement et je sauvegarde la sortie au format xml.
Quelque chose comme : nmap 192.168.0.0/24 -oX /tmp/nmap.output

Passer en revue toutes les options de nmap est trop long pour être fait ici,
mais http://www.nmap.org contient des tas d'informations.

Vous pouvez ensuite utiliser ndiff, à partir des paquets nmap, pour différencier les résultats.
d'un autre jour et obtenir une liste des ordinateurs qui ont été
ajouté, supprimé ou dont de nouveaux ports ont été ouverts.

Je mets tout ça en place dans cron et une liste est envoyée après son exécution.

0voto

sucuri Points 2807

OSSEC peut le faire pour vous grâce à ses capacités d'audit du système. L'avez-vous essayé ? Regardez aussi la surveillance sans agent des commandes de sortie...

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X