Processus Linux inconnu avec commande aléatoire

11

J'ai un processus inconnu quand je lance top:

entrez la description de l'image ici

  • Lorsque je tue le processus, il revient avec un autre nom aléatoire.
  • quand je vérifie les niveaux rc.d et init.d, il y a beaucoup de noms aléatoires similaires à celui-ci et celui-ci est également présent.
  • quand j'essaye d'apt-get remove ou anselme ça recommence.
  • Lorsque je branche un câble réseau, tout notre réseau est verrouillé.

Avez-vous une idée de comment je peux l'enlever?

Quel est ce service / processus?

Ceci est le fichier exe, quand je le supprime, il revient aussi.

/proc/**pid**/exe => symbolic link to /usr/bin/hgmjzjkpxa

Lorsque je vérifie "netstat -natp", il y a une adresse étrangère d'établissement 98.126.251.114:2828. Lorsque j'essaie d'ajouter des règles à iptables, cela ne fonctionne pas. Mais après avoir essayé puis redémarré cette adresse, changez-la en 66.102.253.30:2828.

OS est Debian Wheeze

utilisateur1424059
la source
5
Probablement un client botnet (votre machine est compromise). Vous devez savoir comment cela a commencé. Des utilitaires tels que ceux-ci cruftpeuvent être utiles pour voir quels fichiers n'appartiennent pas à des paquets.
Dan
2
ps lvous montrera quel est le processus parent. Très probablement, cela vous dira ce qui engendre ce processus. Regardez la colonne PPID pour l'information que vous voulez. Je ne serais pas si rapide pour déclarer ce malware.
Krowe
+1 pour vérifier le processus parent. Et si le fichier /use/bin/hgmjzjkpxaexiste (pourrait-il être dans / usr?), Est-ce aussi un lien, ou quelque chose d’intéressant répertorié dans ls -la, ou vu avec lessou strings?
Xen2050
il n'y a pas de processus parent, il ressemble à un processus whoami, il y a une chose lorsque je vérifie "netstat -natp" s'il existe une adresse étrangère d'établissement 98.126.251.114:2828. lorsque j'essaie d'ajouter des règles à iptables, cela ne fonctionne pas. Mais après avoir essayé puis redémarré cette adresse, changez-la en 66.102.253.30:2828 Avez-vous des idées à ce sujet?
user1424059

Réponses:

15

Ceci est connu comme le cheval de Troie XORDDos Linux L'astuce est de courir killavec -STOPle processus d'être mis en pause pour qu'il ne crée pas une nouvelle.

`kill -STOP PROCESS_ID`
Algeriassique
la source
Génial. C'est exactement ce que je cherchais. Sans redémarrage, vous ne pouvez vraiment pas vous débarrasser de ce virus s'il est toujours en mémoire. Vous ne devez même pas modifier les dossiers après l'avoir arrêté - il suffit de supprimer les fichiers et les liens, et c'est tout.
Oleg Bolden
13

J'ai quelques expériences sur ce cheval de Troie de chaîne aléatoire de 10 bits, il enverra beaucoup de paquets pour SYN flood.

  1. Réduisez votre réseau

Le cheval de Troie a un fichier brut venant de /lib/libudev.so, il va copier et copier à nouveau. Il ajoutera également le cron.hourlytravail nommé gcc.sh, puis ajoutera le script initial dans votre /etc/rc*.d(Debian, CentOS peut-être /etc/rc.d/{init,rc{1,2,3,4,5}}.d)

  1. Utilisez rootpour exécuter le script ci-dessous pour modifier les privilèges du dossier:chmod 0000 /lib/libudev.so && rm -rf /lib/libudev.so && chattr +i /lib/

  2. Supprimez tous les /etc/rc{0,1,2,3,4,5,6,S}.dfichiers créés aujourd'hui. Le nom ressemble à S01????????.

  3. Modifiez votre crontab, supprimez le gcc.shscript dans votre /etc/cron.hourly, supprimez le gcc.shfichier ( /etc/cron.hourly/gcc.sh) puis ajoutez des privilèges pour votre crontab:sed '/gcc.sh/d' /etc/crontab && chmod 0000 /etc/crontab && chattr +i /etc/crontab

  4. Utilisez cette commande pour vérifier les dernières modifications apportées au fichier: ls -lrt

Si vous trouvez des fichiers suspects nommés S01xxxxxxxx(ou K8xxxxxxxx), supprimez-les.

  1. Ensuite, vous devez redémarrer sans réseau.

Ensuite, le cheval de Troie doit être nettoyé et vous pouvez modifier les privilèges du dossier sur les valeurs d'origine ( chattr -i /lib /etc/crontab).

Rainysia
la source
Les instructions de cette réponse m'ont sauvé. Malgré son âge, ce cheval de Troie semble toujours être à l'état sauvage. Cependant, à l'étape 4, une erreur s'est produite car la commande sed ne modifie pas le fichier. Il est simplement modifié, bien que: sed '/gcc.sh/d' /etc/crontab > /etc/crontab.fixed && mv /etc/crontab.fixed /etc/crontab && chmod 0000 /etc/crontab && chattr +i /etc/crontab. De plus, selon le lien de la réponse de @Colin Rosenthal, l’infection se fait par le mot de passe ssh brutal-forcé de la racine. Par conséquent, pour éviter toute réinfection, modifiez ou désactivez le mot de passe root avant de redémarrer le réseau.
frederik
0

Pour moi, il y avait deux options:

  1. Pour le cheval de Troie qui manipule des fichiers dans / usr / bin, j’ai seulement fait ceci: echo> /lib/libudev.so Tuez le PID du cheval de Troie

  2. Pour ceux qui jouent avec / bin (ici, il y avait toujours 5 à 10 processus en cours d'exécution pour une fraction de chattr + i / bin et suivez les étapes mentionnées par rainysia

Zatarra
la source
0

Nous sommes également confrontés au même problème. Nos serveurs sont également piratés et j’ai découvert qu’ils avaient forcé la connexion ssh, qu’ils avaient réussi et qu’ils avaient réussi à injecter des chevaux de Troie dans notre système.

Voici les détails:

less / var / log / secure | grep 'Echec du mot de passe' | grep '222.186.15.26' | wc -l 37772 commencé

et obtenu l’accès en dessous du temps imparti: mot de passe accepté pour root à partir du port 65418 ssh2 du 222.186.15.26

Et selon l’emplacement d’emplacement IP, cette adresse IP appartient à quelque part en Chine.

Mesures correctives: veuillez suivre les étapes indiquées par: @rainysia

Mesures préventives :

  1. Selon moi, un gestionnaire de notifications devrait être présent quand quelqu'un a essayé de ssh ou d'accéder à votre serveur et a échoué plusieurs fois.
  2. Les contrôleurs de débit réseau devraient être présents si vous utilisez une plate-forme cloud telle que aws, gcp, azure, etc.
Sahil Aggarwal
la source
mais d'abord, interdire l'accès root via ssh, interdire tout accès ssh avec mot de passe, autoriser uniquement l'accès via ssh avec des clés
pietrovismara