Comment découvrir les processus Linux cachés avec Unhide

Le texte aborde la sécurité de GNU/Linux et l'importance d'utiliser l'outil unhide pour détecter les processus cachés, décrivant diverses méthodes de vérification.

Bien que GNU/Linux soit un système d'exploitation extrêmement sécurisé, de nombreuses personnes sont attirées par un faux sentiment de sécurité. Elles ont l'idée erronée que rien ne peut jamais arriver parce qu'elles travaillent dans un environnement sécurisé. Il est vrai que très peu de malwares existent pour l'environnement Linux, mais il est tout de même très possible qu'une installation Linux soit finalement compromise. Ne serait-ce que pour considérer la possibilité de rootkits et d'autres attaques similaires, cela fait partie intégrante de l'administration système. Un rootkit fait référence à un ensemble d'outils qu'un tiers utilise après avoir accédé à un système informatique auquel il n'a pas réellement accès. Ce kit peut ensuite être utilisé pour modifier des fichiers sans que les utilisateurs légitimes en aient connaissance. Le paquet unhide fournit la technologie nécessaire pour trouver rapidement de tels logiciels compromis.

Unhide se trouve dans les dépôts de la plupart des grandes distributions Linux. L'utilisation d'une commande de gestion de paquets telle que sudo apt-get install unhide suffit pour l'installer sur les versions de Debian et Ubuntu. Les serveurs avec un accès graphique pourraient utiliser le Gestionnaire de paquets Synaptic. Les distributions Fedora et Arch ont des versions précompilées d'unhide pour leurs propres systèmes de gestion de paquets. Une fois unhide installé, les administrateurs système devraient être en mesure de l'utiliser de plusieurs manières différentes.

Méthode 1 : Bruteforcing les ID de processus

La technique la plus basique consiste à bruteforcer chaque ID de processus pour s'assurer qu'aucun d'entre eux n'a été caché de l'utilisateur. À moins que vous n'ayez accès root, tapez sudo unhide brute -d à l'invite CLI. L'option -d double le test pour réduire le nombre de faux positifs signalés.

La sortie est extrêmement basique. Après un message de copyright, unhide expliquera les vérifications qu'il effectue. Il y aura une ligne indiquant :

[*]Démarrage du scan utilisant la force brute contre les PIDS avec fork()

et une autre indiquant :

[*]Démarrage du scan utilisant la force brute contre les PIDS avec des fonctions pthread

S'il n'y a pas d'autre sortie, il n'y a pas lieu de s'inquiéter. Si la sous-routine de bruteforce du programme trouve quelque chose, alors cela rapportera quelque chose de semblable à :

PID CACHÉ trouvé : 0000

Les quatre zéros seraient remplacés par un numéro valide. S'il indique simplement qu'il s'agit d'un processus transitoire, alors cela pourrait être un faux positif. N'hésitez pas à effectuer le test plusieurs fois jusqu'à obtenir un résultat propre. Si des informations supplémentaires existent, cela pourrait justifier un contrôle de suivi. Si vous avez besoin d'un journal, vous pouvez utiliser l'option -f pour créer un fichier journal dans le répertoire actuel. Les versions plus récentes du programme appellent ce fichier unhide-linux.log, et il présente une sortie en texte clair.

Méthode 2 : Comparaison de /proc et /bin/ps

Vous pouvez plutôt diriger unhide pour comparer les listes de processus /bin/ps et /proc afin de vous assurer que ces deux listes séparées dans l'arborescence des fichiers Unix correspondent. S'il y a quelque chose qui cloche, le programme signalera le PID inhabituel. Les règles Unix stipulent que les processus en cours d'exécution doivent présenter des numéros d'identification dans ces deux listes. Tapez sudo unhide proc -v pour commencer le test. Ajouter -v mettra le programme en mode verbeux.

Cette méthode renverra une invite indiquant :

[*]Recherche de processus cachés par le biais de l'analyse de statistiques /proc

Si quelque chose d'inhabituel se produit, cela apparaîtra après cette ligne de texte.

Méthode 3 : Combinaison des techniques Proc et Procfs

Si besoin, vous pouvez comparer les listes d'arborescence de fichiers Unix /bin/ps et /proc tout en comparant également toutes les informations de la liste /bin/ps avec les entrées virtuelles procfs. Cela vérifie les règles de l'arborescence des fichiers Unix ainsi que les données procfs. Tapez sudo unhide procall -v pour effectuer ce test, qui pourrait prendre un certain temps car il doit analyser toutes les statistiques /proc ainsi que réaliser plusieurs autres tests. C'est un excellent moyen de s'assurer que tout sur un serveur est en bon état.

Méthode 4 : Comparaison des résultats procfs avec /bin/ps

Les tests précédents sont trop complexes pour la plupart des applications, mais vous pouvez exécuter les vérifications du système de fichiers proc de manière indépendante pour plus de rapidité. Tapez sudo unhide procfs -m, ce qui effectuera ces vérifications ainsi que plusieurs autres vérifications en ajoutant -m.

C'est encore un test plutôt détaillé et cela peut prendre un moment. Il renvoie trois lignes de sortie distinctes :

Gardez à l'esprit que vous pouvez créer un journal complet avec l'un de ces tests en ajoutant -f à la commande.

Méthode 5 : Exécution rapide

Scan

Si vous avez simplement besoin d'effectuer un rapide scan sans vous préoccuper des vérifications approfondies, tapez simplement sudo unhide quick, ce qui devrait s'exécuter aussi rapidement que son nom le suggère. Cette technique scanne les listes proc ainsi que le système de fichiers proc. Elle effectue également une vérification qui implique de comparer les informations collectées à partir de /bin/ps avec les informations fournies par des appels aux ressources système. Cela fournit une seule ligne de sortie, mais augmente malheureusement le risque de faux positifs. Il est utile de vérifier à nouveau après avoir déjà examiné des résultats précédents.

La sortie est la suivante :

[*]Recherche de processus cachés par comparaison des résultats des appels système, proc, dir et ps

Vous pouvez voir plusieurs processus transitoires apparaître après avoir exécuté ce scan.

Méthode 6 : Exécution d'un Scan Inversé

Une excellente technique pour détecter les rootkits implique la vérification de tous les threads ps. Si vous exécutez la commande ps à l'invite de commande CLI, vous pouvez voir une liste des commandes exécutées à partir d'un terminal. Le scan inversé vérifie que chacun des threads de processeur que les images ps exhibent des appels système valides et peut être consulté dans la liste procfs. C'est un excellent moyen de s'assurer qu'un rootkit n'a pas éliminé quelque chose. Tapez simplement sudo unhide reverse pour exécuter cette vérification. Cela devrait s'exécuter extrêmement rapidement. Lorsqu'il fonctionne, le programme devrait vous informer qu'il recherche des processus faux.

Méthode 7 : Comparaison de /bin/ps avec les Appels Système

Enfin, la vérification la plus complète implique de comparer toutes les informations de la liste /bin/ps avec des informations provenant d'appels système valides. Tapez sudo unhide sys pour commencer ce test. Cela prendra probablement plus de temps à s'exécuter que les autres. Puisqu'il fournit de nombreuses lignes de sortie différentes, vous souhaiterez peut-être utiliser la commande -f log-to-file pour faciliter la consultation de tout ce qu'il a trouvé.

Questions et réponses que vous devez connaître

Comment voir la liste des processus Linux ?

Pour afficher la liste des processus sous Linux, vous pouvez utiliser l'une des commandes suivantes :

    • -

ps

    : donne un aperçu statique de tous les processus en cours d'exécution.

  • top : affiche les processus en temps réel, triés par utilisation du processeur.
  • htop : version améliorée de top avec une interface utilisateur plus conviviale, permettant également d'interagir avec les processus.
  • atop : outil de surveillance des performances qui fournit des informations détaillées sur les processus ainsi que sur l'utilisation des ressources système. Chacune de ces commandes convient à des besoins différents, que ce soit pour un aperçu rapide ou une analyse détaillée.

Comment voir quels processus sont en cours d’exécution sous Linux  ?

Pour voir les processus en cours d'exécution sous Linux, plusieurs commandes peuvent être utilisées :

    • -

ps aux

    : Cette commande affiche tous les processus en cours d'exécution, ainsi que des informations détaillées comme l'utilisation du CPU et de la mémoire pour chaque processus. Elle répertorie les processus de tous les utilisateurs.

  • top : Cette commande lance un affichage dynamique en temps réel des processus en cours. Elle permet de visualiser rapidement l'activité des processus, le tout en actualisant les données à intervalles réguliers.
  • htop : Similaire à top, mais avec une interface plus conviviale et colorée. Htop permet également de gérer les processus (comme les arrêter ou les renvoyer) de manière interactive. Ces outils vous aideront à surveiller et à gérer les processus sur votre système Linux efficacement.

Quelle est la commande pour voir les processus et leur statut en cours d'exécution par utilisateur connecté ?

Pour voir les processus et leur statut en cours d'exécution par utilisateur connecté, vous pouvez utiliser la commande suivante dans un terminal : bash ps -u username Remplacez 'username' par le nom de l'utilisateur dont vous souhaitez afficher les processus. Voici quelques options supplémentaires utiles :

    • -

ps aux

    : Affiche tous les processus de tous les utilisateurs, avec des détails supplémentaires.

  • ps -ef : Affiche une liste complète des processus, avec des informations sur le parent et l'identifiant du processus.
  • top ou htop : Fournit une vue dynamique et interactive des processus en cours d'exécution, mis à jour en temps réel. Ces commandes vous aident à identifier les processus actifs et à surveiller leurs états en cours d'exécution.

Comment relancer un processus Linux ?

Pour relancer un processus Linux, suivez ces étapes :

 

  • Vérification des permissions : Assurez-vous d'être l'utilisateur qui a démarré le processus ou d'avoir des droits d'utilisateur root.
  • Identifier le processus :
      - Ouvrez un terminal.
  • Exécutez la commande ps pour lister les processus en cours.
  • Trouvez le processus que vous souhaitez relancer et notez son numéro de PID (Process ID).
  • Relancer le processus :
  • Utilisez la commande kill pour arrêter le processus : bash kill
  • Remplacez <PID> par le numéro de PID que vous avez noté.
  • Pour relancer le processus, exécutez la commande qui a été utilisée pour le démarrer initialement (par exemple, ./mon_script.sh).
  • Vérification :
  • Réexécutez ps pour confirmer que le processus est en cours d'exécution de nouveau. Ces étapes vous permettront de relancer efficacement un processus sur votre système Linux.

 

Maintenant que tu as fini de lire Comment découvrir les processus Linux cachés avec Unhide, nous t'invitons à explorer davantage la catégorie Linux. Tu y trouveras d'autres articles intéressants qui élargiront tes connaissances et te tiendront informé. Ne cesse pas de lire et de découvrir plus!

Index
  1. Méthode 1 : Bruteforcing les ID de processus
  2. Méthode 2 : Comparaison de /proc et /bin/ps
  3. Méthode 3 : Combinaison des techniques Proc et Procfs
  4. Méthode 4 : Comparaison des résultats procfs avec /bin/ps
  5. Méthode 5 : Exécution rapide
  6. Scan
  7. Méthode 6 : Exécution d'un Scan Inversé
  8. Méthode 7 : Comparaison de /bin/ps avec les Appels Système
  • Questions et réponses que vous devez connaître
    1. Comment voir la liste des processus Linux ?
    2. Comment voir quels processus sont en cours d’exécution sous Linux  ?
    3. Quelle est la commande pour voir les processus et leur statut en cours d'exécution par utilisateur connecté ?
    4. Comment relancer un processus Linux ?
  • Laisser un commentaire

    Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

    Go up