攻击者正在试验通过应用通用即插即用 (UPnP) 协议以隐藏 DDoS 洪水攻击过程中发送的网络包的源端口来规避某些 DDoS 防护解决方案。

周一,DDoS 防护公司 Imperva 表示至少观测到两起 DDoS 攻击使用了这种技术。

研究人员表示,通过掩藏流入网络包的源端口,依靠这种信息拦截攻击的老旧 DDoS 防护系统需要更新至更加复杂的依靠深度包检测的解决方案。后者成本更高、见效也更慢。

UPnP 如何帮助攻击者

问题的核心在于 UPnP 协议。该协议是一种用于简化发现本地网络上附近设备方法的技术。

UPnP 协议的其中一种功能是将互联网连接转发到本地网络。它通过将传入 (Internet) IP:port 连接映射到本地 IP:port 服务实现这一点。该功能不仅允许 NAT 遍历,而且还允许网络管理员远程用户访问仅存在于内部网络上的服务。

研究人员指出,“然而,很少有路由器真正地验证所提供的‘内部 IP’ 是否是真正的内部 IP 并遵守所有的转发协议。”也就是说如果攻击者设法投毒端口映射表格,那么他就能将路由器当做代理使用,并将传入的 Internet IP 重定向至其它 Internet IP。

这种场景并不新鲜。Akamai 公司上个月曾详细说明了这种技术(即 UPnProxy),当时该公司披露称,发现僵尸网络和受国家支持的网络间谍组织使用路由器作为代理来反射并隐藏恶意流量。

DDoS 攻击使用 UPnProxy 技术

但研究人员表示同样的技术也可被滥用于 DDoS 攻击中,达到隐藏 DDoS 放大攻击(也被称为“反射型 DDoS 攻击”)源端口的目的。

经典的 DDoS 放大攻击依靠攻击者从远程服务器中反射恶意包,并通过受骗 IP 地址将其发送给受害者。

在典型的 DDoS 放大攻击中,源端口一直都是放大攻击服务的端口。例如,在 DNS 放大攻击中反射的 DNS 服务器将拥有的源端口是53,而 NTP 放大攻击的源端口是123。

这样,DDoS 缓解服务就能够通过阻止拥有某个具体的源端口的所有传入包来检测并拦截放大攻击。

但通过使用 UPnProxy,攻击者能够修改易受攻击路由器的端口映射表,并凭借这些映射表掩藏 DDoS 攻击的源端口,因此它们来自任意端口、反射易受攻击的服务器并发动 DDoS 攻击。

带有被掩藏源端口的 DDoS 攻击已现身

Imperva 公司表示已开发一款自有 PoC 脚本并已测试成功,而且复现了在实际中发现的两起 DDoS 攻击中的一种。

他们开发的 PoC 查找暴露 rootDesc.xml 文件(该文件持有端口映射配置文件)的路由器,添加隐藏源端口的自定义端口映射规则,随后发动 DDoS 放大攻击。出于显而易见的原因,该公司并未发布该 PoC 代码。

研究人员认为他们检测到的攻击使用 UPnP 协议隐藏源端口,在 DDoS 洪水攻击中利用了 DNS 和 NTP 协议。也就是说,从攻击者选择使用的 DDoS 放大技术类型角度而言,该技术是不可知的。

研究人员希望他们的研究成果能帮助缓解行业准备好应对以上提及的躲避技术,同时希望研究成果能丰富 UPnP 相关安全威胁的现有研究成果,并提升物联网制造商和传播者的安全意识。

毫无疑问,随着时间的流逝,这种技术将变得越来越流行。就像 UPnProxy 缺陷刚出现时,建议路由器所有人在不使用 UPnP 支持功能时将其禁用。

本文由360代码卫士翻译自BleepingComputer

声明:本文来自代码卫士,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。