导语:华为家用路由器HG532发现远程代码执行0day漏洞(CVE-2017-17215)。攻击者利用该漏洞建立了一个类似Mirai的僵尸网络,经过调查分析发现,攻击者的身份应该只是一个爱好者,而不具有国家或者大型组织背景。

Check Point研究人员发现,华为家用路由器HG532存在0day漏洞(CVE-2017-17215),可以远程执行任意代码,并且已经有攻击利用了该漏洞。payload是名为OKIRU/SATORI,是Mirai的升级版变种。攻击发起者的昵称为Nexus Zeta,后面会进行深入分析。

攻击分析

11月23日,Check Point的研究人员发现蜜罐中有一些可疑的安全警告。经过调查发现了攻击运行在37215端口,利用的了已经公布的华为家用路由器HG532 CVE-2017-17215漏洞。同样的攻击模式也出现在美国、意大利、德国、埃及等地的传感器中,所以这是由华为路由器组成的僵尸网络。

研究人员确认了漏洞后,就通报给华为,华为安全团队非常给力,很快对该漏洞进行了响应和修复,并提供了补丁。

map.png

华为路由器组成的僵尸网络感染图

CVE-2017-17215

华为网关应用了UPnP(通用即插即用)协议,通过TR-064及技术标准,UPnP被广泛用于家用和企业用的嵌入式设备。TR-064用于本地网络配置,比如工程师可以进行基本的设备配置,固件升级等。但是,华为使用TR-064时,通过37215端口暴露给了互联网。

从设备的UPnP描述来看,它支持DeviceUpgrade服务,这种服务是通过发送请求给/ctrlt/DeviceUpgrade_1来实现固件升级的,还通过NewStatusURL和NewDownloadURL两个元素实现。

漏洞允许远程管理员通过注入shell 元字符到NewStatusURL和NewDownloadURL中来执行难任意代码。

the-attack-vector.png

攻击向量

以上执行后,利用会返回一个默认的HUAWEIUPNP消息,这就模拟了一个upgrade过程。

command-injection.png

僵尸网络命令注入

Virus-Total-2.png

Virus-Total-1.png

VirusTotal 对payload的检测成功率

工作原理

Payload的功能非常简单。僵尸主机的主要意图是用伪造的UDP和TCP包对目标发起洪泛攻击。攻击开始后,僵尸主机会发起对硬编码域名的DNS请求来解析C&C服务器的IP地址。僵尸主机会从DNS响应从获取IP地址,并尝试用硬编码的端口(例子中是7645)连接。

Mirai僵尸网络中,用0x07值以XOR的方式对DNS名和其他的字符串进行硬编码。

Payload也含有非编码的字符串,是从不会用的虚假C&C域名:

Fake-CC.jpg

经过加密的和假的C&C域名

用于洪泛的包的数量和对应的从C&C服务器传输的参数:

Parsing-Data.png

从C&C服务器接受的数据

C&C服务器可以传递用于攻击的单个IP地址或者子网:

Random-IP.png

给定子网生成的随机IP地址

在发送包后,僵尸主机并不会等待来自被攻击主机的响应。

僵尸主机的二进制文件含有一些从没有用过的、混淆过的、明文的文本字符串。这可能是从其他僵尸或之前的版本的残留。

C&C流量

对于C&C通信,僵尸会使用自己的协议,有两个硬编码的请求用于检查和认证:

CC.jpg

硬编码的C&C请求

Example-of-CC.jpg

C&C请求例子

C&C服务器响应含有DDOS攻击的参数,如果响应消息的前两个字节是0000或0107,那么之后的数据就是攻击数据,DDOS攻击功能也就发起了。如果字节不对应,那么就不会有DDOS攻击行为。

Example-of-CC-Response.jpg

C&C响应例子

IoC

攻击服务器和Dropzones

93.97.219
211.123.69
7.59.177
106.110.90
nexusiotsolutions.net.
[email protected]

Payloads

7a38ee6ee15bd89d50161b3061b763ea mips
f8130e86dc0fcdbcfa0d3b2425d3fcbf okiru.x86
fd2bd0bf25fc306cc391bdcde1fcaeda okiru.arm

攻击者分析

我们分析这款新的恶意软件的同时,引出了许多关于攻击发起者身份的问题。因为流量巨大,未知的0day漏洞和多个攻击服务器,所以很难判断攻击者的身份,最初怀疑是背后有国家势力支持或者是一些臭名昭著的黑客组织。

慢慢地,我们发现了注册僵尸网站C&C域名(nexusiotsolutions.net)的邮箱地址[email protected]和昵称“Nexus Zeta”。搜索Nexus Zeta1337我们发现HackForums有一名昵称为Nexus Zeta的注册成员。根据发帖内容可以判断,他的最初的目的是建立一个类似Mirai的IOT僵尸网络。

下图分别是Nexus Zeta在hackforums的发帖、twitter帐号和github主页,从中可以得出结论,Nexus Zeta应该只是一个极客,针对华为路由器0day漏洞利用的攻击活动也只是个人兴趣,并没有政府组织和其他大规模黑客组织的参与。

NZ-on-HackForums.png

NZ-on-Twitter.png

NZ-on-Github.png

参考文献

https://www.checkpoint.com/defense/advisories/public/2017/cpai-2017-1016.html

http://www.huawei.com/en/psirt/security-notices/huawei-sn-20171130-01-hg532-en

https://research.checkpoint.com/good-zero-day-skiddie/

源链接

Hacking more

...