|
|
51CTO旗下网站
|
|
移动端

糟糕!服务器被植入挖矿木马,CPU飙升200%

某日,正在午休中,突然一则噩耗从前线传来:网站不能访问了!

作者:我叫刘半仙来源:Oschina|2019-11-06 09:36

某日,正在午休中,突然一则噩耗从前线传来:网站不能访问了!

图片来自 Pexels

此项目是我负责,线上服务器用的是某讯云的,运行着 Tomcat,MySQL,MongoDB,ActiveMQ 等程序。

排查过程

我以 150+ 的手速立即打开了服务器,看到 Tomcat 挂了,然后顺其自然的重启,启动过程中直接被 killed,再试试数据库,同样没成功,多次尝试甚至重启机器无果。

机智的我打了个 Top,出现以下内容:

这是谁运行的程序?不管三七二十一先杀掉再说,因为它就是 Tomcat 等程序启动不了的元凶。

然而并没有什么卵用,过一会再看那个东西又跑出来占 CPU。怀疑是个定时任务:

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

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

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

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

杀掉,找到存放目录:

进入临时目录:

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

虎躯一震,发现了不少信息啊,User 是他的 Server 的登录用户,下面是密码,只可惜加密过,应该找不到对方。

算了,大度的我先不和你计较。干掉这两个文件后再查看 Top:

解决办法

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

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

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

  • 把所有软件升级到新版本。
  • 修改所有软件默认端口号。
  • 打开 ssh/authorized_keys,删除不认识的密钥。
  • 删除用户列表中陌生的帐号。
  • 封了他的 ip。
  • SSH 使用密钥登录并禁止口令登录(这个一般是加运维一个人的秘钥)。

对了,本次遭受攻击是低版本 ActiveMQ 开放端口 61616 有漏洞,大家记得做优化。

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

写在最后

网友提供的一劳永逸终极解决办法:把你自己的挖矿脚本挂上去运行,这样别人就算挂脚本也跑不起来了。

【编辑推荐】

  1. 服务器部署:php.ini配置性能调优
  2. 9款Kubernetes的无服务器工具,收藏了
  3. 3000台服务器不宕机,微博广告系统全景运维大法
  4. 详解Java使用Jsch与sftp服务器实现ssh免密登录
  5. 一文读懂Python web框架和web服务器之间的关系
【责任编辑:武晓燕 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

骨干网与数据中心建设案例

骨干网与数据中心建设案例

高级网工必会
共20章 | 捷哥CCIE

376人订阅学习

中间件安全防护攻略

中间件安全防护攻略

4类安全防护
共4章 | hack_man

136人订阅学习

CentOS 8 全新学习术

CentOS 8 全新学习术

CentOS 8 正式发布
共16章 | UbuntuServer

282人订阅学习

读 书 +更多

SOA 原理•方法•实践

本书并不是关于Web服务的又一本开发手册,抑或是开发技术的宝典之类的读物。本书的作者来自于IBM软件开发中心的SOA技术中心,作为最早的一...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO官微