Comment puis-je tuer un malware mineur sur une instance AWS EC2? (serveur compromis)

26

J'ai trouvé un malware sur mon instance ec2 qui exploitait continuellement le bitcoin et utilisait la puissance de traitement de mon instance. J'ai réussi à identifier le processus, mais je n'ai pas pu le supprimer et le tuer.

J'ai exécuté cette commande. watch "ps aux | sort -nrk 3,3 | head -n 5" Elle montre les cinq premiers processus en cours d'exécution sur mon instance, à partir desquels j'ai trouvé qu'il existe un nom de processus « bashd » qui consommait 30% de CPU. Le processus est

bashd -a cryptonight -o stratum+tcp://get.bi-chi.com:3333 -u 47EAoaBc5TWDZKVaAYvQ7Y4ZfoJMFathAR882gabJ43wHEfxEp81vfJ3J3j6FQGJxJNQTAwvmJYS2Ei8dbkKcwfPFst8FhG -p x

J'ai tué ce processus en utilisant la kill -9 process_idcommande. Après 5 secondes, le processus a recommencé.

Nadeem Ahmed
la source
4
Vous ne donnez pas assez de détails (au moins plusieurs commandes que vous avez essayées)
Basile Starynkevitch
28
"Les serveurs sont du bétail, pas des animaux de compagnie." Surtout des serveurs virtuels vraiment faciles à créer et à détruire. Jetez celui-ci (terminez-le) et créez-en un autre. Ou créez-en un autre, basculez et conservez l'ancien pendant que vous découvrez comment le logiciel malveillant s'y est installé.
user253751
14
votre instance est compromise, supprimez-la de l'orbite
njzk2
4
(note pour quiconque lisant ceci - "les serveurs sont du bétail, pas des animaux de compagnie" ne s'applique qu'aux serveurs cloud ou à un grand nombre de serveurs identiques)
user253751
1
c'est l'exploitation minière de Monero, pas de bitcoin (si cela compte)
Dmitry Kudriavtsev

Réponses:

83

Si vous n'y avez pas installé le logiciel et / ou si vous pensez que votre instance cloud est compromise: mettez-la hors ligne, supprimez-la et reconstruisez-la à partir de zéro (mais lisez d'abord le lien ci-dessous). Il ne vous appartient plus, vous ne pouvez plus lui faire confiance .

Voir «Comment gérer un serveur compromis» sur ServerFault pour plus d'informations sur ce qu'il faut faire et comment se comporter lors de la compromission d'une machine.

En plus des choses à faire et à penser dans la ou les listes liées ci-dessus, sachez que selon qui vous êtes et où vous êtes, vous pouvez avoir une obligation légale de le signaler à un service de sécurité informatique local / central équipe / personne au sein de votre organisation et / ou auprès des autorités (éventuellement même dans un certain délai).

En Suède (depuis décembre 2015), par exemple, tout organisme public (par exemple les universités) est tenu de signaler les incidents liés aux TI dans les 24 heures. Votre organisation disposera de procédures documentées sur la façon de procéder.

Kusalananda
la source
29
Amen. Je pense qu'on ne peut pas dire mieux ou bien véhiculé "ça ne vous appartient plus"
Rui F Ribeiro
20
Et vous devez d'abord trouver comment cela est arrivé.
kagronick
12

Cette commande bashdest la même que celle ccminerdu ccminer-cryptonightprogramme pour extraire Monero sur votre système (il y a tuto: Monero - Ccminer-cryptonight GPU miner sous Linux ), le bashdest obtenu par aliasing ou en modifiant le code source du programme.

Cryptonight Malware: comment tuer le processus? (informations trouvées sur la page Web d'experts en logiciels malveillants)

C'est à nouveau un nouveau malware que nous appelons cryptonight, ce que nous n'avons jamais vu auparavant. Il télécharge le programme Linux exécutable et masque ce démon http en arrière-plan, ce qui est difficile à trouver à première vue.

Processus de suppression manuelle

Vous pouvez rechercher s'il existe un processus httpd, qui démarre le paramètre cryptonight:

ps aux | grep cryptonight

Ensuite, juste kill -9 process_idavec les autorisations root. (Vous devez tuer le processus de cryptonightpas le bashd)

Pour être en sécurité, vous devez:

  1. Réinstallez votre système
  2. Corrigez votre système pour éviter la vulnérabilité d'attaque à distance: les serveurs Linux détournés pour miner la crypto-monnaie via la vulnérabilité SambaCry
  3. Limiter les utilisateurs à exécuter des commandes limitées
GAD3R
la source