2019-06-17 13:44:5915800人阅读
百度安全智云盾团队在2019年4月为某第三方IDC提供DDoS防御能力时,捕获到一种新型的利用物联网设备发起的DDoS事件。智云盾系统在2秒内识别攻击,实时对流量做了隔离和清洗,保障用户免遭DDoS的伤害。
而类似的基于物联网设备的DDOS反射攻击,已经不是第一次出现。今年2月份,智云盾团队监测到首次以ONVIF协议发起的DDoS反射攻击。详情参考《基于ONVIF协议的物联网设备参与DDoS反射攻击》一文,ONVIF协议主要被用来作为物联网设备信息发现,黑客利用了其基于UDP协议且响应大于请求的属性发动了DDoS反射放大攻击。
本次攻击事件中黑客利用了基于物联网的CoAP协议发起了DDoS反射攻击,与ONVIF的反射有何不同呢?智云盾安全团队将对此次攻击事件做深入分析和演练。并且提供对应的防护策略。
1.攻击研究
智云盾系统检测到攻击时,自动对流量进行了采样,安全专家对采样包及时进行了深层次的分析和演练。本次攻击事件共涉及反射源15876个。
通过对智云盾的攻击采样包发现,反射流量的来源端口是5683,下图红色箭头指向的是反射源端口:
图1 采样包内攻击来源端口图
数据包中的payload显示数据格式是xml的数据格式,并且wireshark将此种协议标识为CoAP协议,协议字段详情如下图所示:
图2 CoAP字段详细内容
数据包中的CoAP协议的Payload字段内容较固定,字符串内容如下:
`E1(</qlink>,</qlink/ack>;title="Qlink-ACK
Resource",</qlink/request>;title="Qlink-Request
Resource",</qlink/searchgw>;title="SearchGW
Resource",</qlink/success>;title="Qlink-Success
Resource",</qlink/wlantest>;title="Qlink-WLAN
Resource",</gw>,</gw/query>,</gw/query/DiagnotorConnection>;title="Connect To Diagnotor",</gw/query/apdevices>;title="Inform Data
Resource",</basic>,</basic/heartbeat>;title="Basic-heartbeat
Resource",</basic/regist>;title="Qlink-Regist
Resource",</basic/show>;title="Qlink-SHOW
Resource",</device>,</device/command>,</device/command/control>;title="Device Control
Resource",</device/command/data>;title="Control Data
Resource",</device/inform>,</device/inform/boot>;title="Boot-Request Resource",</device/inform/bootstrap>;title="bootstrap-Request
Resource",</device/inform/data>;obs;title="Inform Data
Resource",</device/inform/heartbeat>;title="HeartBeat
Resource",</device/inform/offline>;title="ChildDevice Offline
Resource",</.well-known/core>
针对此次攻击事件,我们从智云盾威胁中心提取对应的请求流量数据进行分析,这是一次利用了CoAP协议进行的反射攻击。智云盾安全专家分析认为此次反射攻击与以往的反射攻击特征相似,不同之处在于利用物联网设备当作反射源。
下面将详细阐述一下反射攻击原理。
反射类型的DDoS攻击并不会直接攻击受害者IP,而是以受害者的IP构造UDP数据包,对反射源发送伪造的数据包,反射源向受害者IP响应的流量远超过攻击者伪造UDP流量的数据,DDoS黑客组织依靠此方式对受害者实施DDoS攻击,反射类型如下图3所示:
图3 反射攻击示意图
图3中黑客给放大器发送伪造的UDP数据包,经过智云盾团队对DDoS事件攻击的复现以及对标准CoAP协议DISCOVERY请求的复现,复现之后的payload字符串如下:
利用UDP的传输方式,发送该字符串到指定目标的5683端口,服务端返回DISCOVERY响应包。不满足CoAP定义的数据包格式,5683端口丢弃请求数据包不做响应。
按照我们前期对反射放大倍数的研究,采样科学的统计放大倍数时,请求响应的包头甚至是网络间隙都要考虑在内。详细的方案可以参阅《MEMCACHED DRDoS攻击趋势》一文。
我们尝试对智云盾威胁中心截取到的黑客进行反射攻击的请求包进行复现,响应的单个反射源数据包长度为1023字节,下图4是利用攻击事件反射源的复现截图:
图4 CoAP攻击请求复现截图
所以计算得到放大倍数为(1023+24)/(65+24)= 11.76倍。
通过从智云盾攻击采样包的实际情况中发现,黑客利用了CoAP的DISCOVERY类型的请求作为反射源请求进行反射攻击。请求Uri-Path是./well-known/core。这种Uri的接口请求返回值内容固定。
因此从目前观察到的2次CoAP的攻击事件中,我们推测此次放大倍数在11.76倍。
2.反射源分析
智云盾安全专家通过对反射源IP进行调查发现,其中被利用的反射源主要来源是物联网设备,这些设备的IP大多集中在中国国内。其中反射源大多分布在中国安徽,山东和江西。
2.1 CoAP协议介绍
CoAP(Constrained ApplicationProtocol)是一种应用在物联网网络的应用层协议,它的详细规范定义在RFC 7252。
由于物联网设备大多都是资源限制型型设备,有限的CPU,RAM,带宽等。对于这类设备来说想要直接使用现有网络的TCP和HTTP来实现设备间的通信显得很奢侈。于是为了让这部分设备能够顺利的接入网络,CoAP协议应运而生。
CoAP指受限制的应用协议,是基于UDP实现的类HTTP协议。相比于HTTP协议,CoAP继承了HTTP协议的可靠传输,数据重传,块重传,IP多播等特点。并且CoAP利用二进制格式传递数据,这样使得CoAP请求更加的轻量化,并且占用的带宽更小。
比起以往智云盾监测到的利用物联网设备发起反射攻击的事件来看,本次利用CoAP发起的UDP反射攻击,具有反射源数量较多,反射源大多集中在国内,反射比例较大的特点。
上文2.1中我们提到CoAP协议基于UDP和二进制的格式传递数据。由于UDP天生的不可靠性,并且二进制的格式传输数据,使得一次请求的CoAP的请求数据包相比HTTP请求包小。
CoAP协议规定提供服务的设备,必须提供./well-known/core的Uri-path并且默认绑定在5683端口上。
基于以上的特点黑客极易利用5683端口上绑定的CoAP协议,发送默认./well-known/core请求进行UDP反射放大攻击。
本次智云盾监测到的两次CoAP的UDP反射攻击都是利用了此种方式对受害者服务器进行攻击。
从SHODAN上对5683相关的端口进行检索发现,全球约有72万台主机暴露了5683端口,CoAP作为物联网设备联网的基础协议,将随着物联网网络的普及进一步的扩大,这些设备都将可能被用作反射源攻击,如下图5所示:
图5 5683端口分布图(数据来源与shodan.io)
从智云盾捕获到的攻击事件涉及到的反射来源分析,其中包括了大量暴露在公网的物联网设备,大多数分布在中国和俄罗斯地区。
上图5中显示涉及的反射源数量比智云盾监测到的几次利用物联网设备做反射源的数量更多。随着物联网网络的发展CoAP类型的攻击将更普及。
3.DDoS反射攻击趋势
此次攻击是CoAP的默认Uri-path被利用作为反射Uri进行反射攻击,反射源数量较多,并且利用了物联网协议漏洞进行反射攻击,危害较大。基础协议漏洞产生的DDoS攻击,将随着物联网网络的壮大而变得攻击性更强。
我们在2019年2月首次监测到ONVIF协议的DDoS反射事件的分析报告中预测过,由于物联网的应用协议大多基于UDP的实现,并且随着物联网的发展,未来利用物联网的反射攻击将越来越常见,本次捕获到的攻击事件,正是验证了当时的观点,类似情况应该从厂商到用户都引起重视,避免造成不必要的损失。
目前物联网发动的攻击大多还都以设备被入侵造成洪泛攻击为主,其中最臭名昭著的Mirai以物联网设备为感染目标形成庞 大的僵尸网络发起DDoS攻击。未来这种攻击方式将逐渐被低成本高效率的反射攻击所取代。
4.防范建议
1)对互联网服务
禁用UDP,不能禁用时,确保请求与响应不要有倍数关系
启用授权验证
2)对企业用户
如果没有UDP相关业务,可以再上层或者本机防火墙过滤掉UDP包
可以寻求运营商提供UDP黑洞的IP网段做对外网站服务
可以选择接入DDoS云防安全服务
删除协议默认路径
3)对物联网用户
如果没有公网访问需求,物联网设备不启用公网IP
如果有公网访问需求,应添加防火墙规则,限制访问IP,减少互联网暴露面