一次挖矿病毒攻击分析

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一次挖矿病毒攻击分析相关的知识,希望对你有一定的参考价值。

参考技术A 这两天期末了,最近老板这里突然来了个任务,客户服务器被攻击了,某台机器的cpu一直都跑满了,持续高负荷状态,客户公司的运营实在没有办法找到了我们。
先说一说之前这台服务器也出现过问题,被两波人搞过,一波写了webshell,另个一种了挖矿病毒,都被清除了,当然这些我都没有参与。
因为老板比较忙,我和另一个小伙伴接手进行分析,我们拿到这台服务器,既然是web服务器,最好得最有效的办法就是看web日志,但是这个日志是在很多,这就考虑经验问题了,另一个小伙伴道行比我深,他发现了痕迹:

通过很多尝试,在筛选“wget”的时候找到了攻击痕迹。

emmmmm,看到这个POST的请求,基本可以猜测出就是这几天爆出的thinkphp新的rce,具体读者可以去看看相关的报告,rce的分析网上也有了,有想去的可以去了解一下。根据这条日志,筛选ip我们找到了具体的攻击痕迹:

上传ibus脚本文件到tmp目录下命名为指定文件,这里www用户有对tmp目录的读写权限。

执行tmp中上传的指定文件,并等待执行完成,删除文件.
本地虚拟环境执行了一下这个ibus脚本:

可以看到这里执行生成了三个sh简单加密的脚本文件:nmi,nbus和.dbus是哪个文件,这三个脚本文件解密之后是三个cat和perl的脚本,分别执行了一下命令:

执行了三个perl脚本,就是挖矿的脚本了。最后我们把生成的恶意文件备份之后就进行清除了,总共是三个sh脚本,三个perl挖矿脚本和两个记录id的随机数之类的文件。
怎么说呢,这次攻击分析看似挺简单的,但是最难的部分,从日志里找出攻击者的恶意访问是很困难的,需要有很多的经验,比如对最近新漏洞的了解,以及各类典型漏洞的攻击方式,才能及时的从庞大的日志文件中根据特征找到攻击者的痕迹。
安全从业者还是十分吃经验的,博主也会更多的在实战中历练自己,也会分享记录自己的经验。

一次挖矿程序的清理(回忆版)

由于是回忆版,当时并未留截图,所以只能口头描述一下了。

当时本地服务器发现一个进程占用了99%的CPU以后,kill了好几次发现过一会就会自动启动,于是开始找是哪个进程来启动这个进程的,当时TOP发现一个叫ujusl5的莫名其妙的进程,kill掉以后那个挖矿进程就不会自动启动了,启动这个进程的是postgresql用户,于是登录这个用户去寻找ujusl5的文件

一次挖矿程序的清理(回忆版)_安全

以及在crontab里发现了启动进程的脚本,一起删除后就正常了。

事后回想应该是当时需要居家办公,为了图方便就把本地服务器的22端口一起开放出去了,postgresql是PG用的账户,是个弱密码,所以被黑客找到放入了挖矿程序,把22端口取消对外以后就再也不会出现这个问题了。

以上是关于一次挖矿病毒攻击分析的主要内容,如果未能解决你的问题,请参考以下文章

服务器管理Ubuntu的一次惊心动魄的查杀挖矿病毒的经历:病毒伪装成python

亚信安全发布2021年挖矿病毒专题报告,聚焦挖矿病毒进化与治理

Linux应急响应:挖矿病毒

Window应急响应:挖矿病毒

Window应急响应:挖矿病毒

挖矿病毒