可模糊源端口數(shù)據(jù)的新型DDoS攻擊方法
最近的分布式拒絕服務(wù)(DDoS)攻擊展現(xiàn)通過模糊源端口數(shù)據(jù)繞過現(xiàn)有防御機(jī)制的新特性。
網(wǎng)絡(luò)安全解決方案提供商Imperva稱,除了常見的放大攻擊方法,新觀測(cè)到的攻擊使用了DDoS防御者沒想到的非常規(guī)源端口數(shù)據(jù)。該攻擊方法利用的是著名的UPnP(通用即插即用)協(xié)議漏洞。
UPnP協(xié)議允許通過 UDP 1900 端口發(fā)現(xiàn)設(shè)備,并允許使用任意TCP端口進(jìn)行設(shè)備控制。因此,很多IoT設(shè)備都用該協(xié)議在局域網(wǎng)(LAN)上相互發(fā)現(xiàn)并通信。
然而,開放遠(yuǎn)程訪問的設(shè)備默認(rèn)設(shè)置、身份驗(yàn)證機(jī)制的缺乏,以及UPnP遠(yuǎn)程代碼執(zhí)行漏洞,令該協(xié)議構(gòu)成了安全風(fēng)險(xiǎn)。
UPnP相關(guān)漏洞早在20年前就被安全研究人員披露了,除此之外,簡(jiǎn)單對(duì)象訪問協(xié)議(SOAP) API調(diào)用也可用于通過廣域網(wǎng)(WAN)遠(yuǎn)程重配置不安全設(shè)備??刂贫丝谵D(zhuǎn)發(fā)規(guī)則的AddPortMapping指令同樣能經(jīng) SOAP API 調(diào)用遠(yuǎn)程執(zhí)行。
2018年4月11日,Imperva在緩解某簡(jiǎn)單服務(wù)發(fā)現(xiàn)協(xié)議(SSDP)放大攻擊時(shí),注意到某些攻擊載荷不是來自UDP/1900,而是來自一個(gè)非預(yù)期的源端口。幾周后的另一個(gè)攻擊中,同樣的方法再次出現(xiàn)。
Imperva稱:“對(duì)這些事件的調(diào)查,讓我們構(gòu)建出集成了UPnP的攻擊方法的概念驗(yàn)證代碼(PoC),可被用于模糊任意放大攻擊載荷的源端口信息。”
想要使用該P(yáng)oC執(zhí)行DNS放大攻擊,先得利用Shodan之類公開在線服務(wù)執(zhí)行大范圍SSDP掃描,找出開放UPnP路由器。
此類掃描能掃出130多萬臺(tái)此類設(shè)備,當(dāng)然,不是全部設(shè)備都帶有相應(yīng)漏洞。但定位出一臺(tái)可利用的脆弱設(shè)備依然相當(dāng)容易,因?yàn)榭梢杂媚_本自動(dòng)化該過程。
接下來,攻擊者需要通過HTTP訪問該設(shè)備的XML文件(rootDesc.xml),用Shodan中的真實(shí)設(shè)備IP替換掉‘Location’ IP就行。
rootDesc.xml文件列出了所有可用UPnP服務(wù)和設(shè)備,下一步就是通過AddPortMapping指令修改設(shè)備的端口轉(zhuǎn)發(fā)規(guī)則。
運(yùn)用文件中的機(jī)制,可以使用SOAP請(qǐng)求來創(chuàng)建轉(zhuǎn)發(fā)規(guī)則,將所有發(fā)送至端口1337的UDP包通過端口UDP/53(DNS端口)重路由至外部DNS服務(wù)器(3.3.3.3)。
雖然端口轉(zhuǎn)發(fā)應(yīng)僅用于將外部IP的流量映射到內(nèi)部IP或反之,但大多數(shù)路由器并不驗(yàn)證所提供的內(nèi)部IP是否真的是內(nèi)部的,這就允許來自外部IP的代理請(qǐng)求到另一個(gè)外部IP了。
要使用該端口模糊的DNS放大攻擊,發(fā)往設(shè)備并被UPnP設(shè)備在UDP/1337端口接收的DNS請(qǐng)求,需通過目的端口UDP/53被代理至DNS解析器。解析器通過源端口UDP/53響應(yīng)設(shè)備,而設(shè)備在將源端口改回UDP/1337后再將該DNS響應(yīng)轉(zhuǎn)發(fā)回原始請(qǐng)求者。
源端口模糊的DNS放大攻擊
真實(shí)攻擊場(chǎng)景中,初始DNS請(qǐng)求會(huì)從被假冒的受害者IP發(fā)出,也就是說對(duì)該請(qǐng)求的響應(yīng)也會(huì)返回給該受害者。
該設(shè)備可用于以能規(guī)避檢測(cè)的端口發(fā)起DNS放大DDoS攻擊,因?yàn)楣糨d荷源于非常規(guī)的源端口,通過查看源端口數(shù)據(jù)檢測(cè)放大攻擊載荷的常見防御措施就會(huì)被繞過。該繞過檢測(cè)的方法也能用于SSDP和NTP(網(wǎng)絡(luò)時(shí)鐘協(xié)議)攻擊,且能與其他放大攻擊方法聯(lián)合使用,比如Memcached。
源IP和端口信息不再成為可靠的過濾因素,執(zhí)行深度包檢測(cè)(DPI)是最有可能的放大攻擊載荷發(fā)現(xiàn)方法,但這是資源密集型過程,如果沒有專門的緩解設(shè)備支持,執(zhí)行速度會(huì)很慢。