首先,什么是UPnP?
UPnP是一种用于PC和智能设备(或仪器)的通用对等网络连接架构。UPnP使设备能够自动相互连接和协作,从而使网络(尤其是家庭网络)为更多人所用成为可能。所以很多路由器都开通了UPnP服务。
全球约有280万台物联网设备开通了UPnP SSDP服务(端口1900),存在被利用进行DDoS攻击的风险。其中,38.6%的设备还开通了UPnP SOAP服务。在这些已经开通SOAP服务的设备中,69.8%的设备存在漏洞。
吕蒙技术发现的两类恶意端口映射族
由于SOAP服务缺乏认证机制,端口映射服务可访问的约41万台物联网设备可能被入侵。在这些设备中,有8.9%的设备被发现存在恶意端口映射条目,例如内网的445和139端口会暴露在互联网上,开启这两个端口服务可能存在被永恒蓝和永恒红攻击的风险,平均每台被感染设备有282条感染记录。
1、内部扫描
我们收集了约260,000条IntraScan内外网之间的端口映射数据,平均每个恶意IP约有31条恶意端口映射记录。韩国的内扫描受影响最严重,占所有感染的47%。
IntraScan暴露的内网端口包括与Web服务相关的80、81、82、8080端口,FTP 21端口,SSH 22端口,Samba 445端口,My*L 3306端口,MS*L 1433端口等。暴露最多的端口是9308端口,这是索尼PlayStation的端口。

表1是受内部扫描感染的设备的内部和外部网络端口之间的映射关系的示例。我们发现了两种不同类型的端口映射规则。一种是内网端口与映射的外网端口相同,这种规律出现在9303-9308端口之间以及所有端口大于等于49152端口时;另一种是在内网端口号上加1000作为对应的外网端口号。如果映射失败(即外部网络端口已被使用),它将尝试在内部网络端口号上添加1025作为对应的外部网络端口号。如果映射失败,它将继续向*p加1,直到映射成功,例如示例中的端口80、81、82、8443和999。
/图像-2//图像-3/
2、NodeDoS
NodeDoS中有两种恶意行为。一个是映射到8.8.8.8 53端口,假设是肉鸡集群,有DNS反射攻击;另一种是映射到色情广告平台,通过分发广告点击获利。目前全球约有600台设备被感染。NodeDoS内外网端口映射关系数据约34000条,平均每个恶意ip约有58条恶意端口映射记录。韩国受NodeDoS影响最严重,占所有感染的51%。
UPnP是一个严重的问题,需要多方共同努力。
作为安全供应商:
(1)可以在扫描产品中加入UPnP扫描能力,及时发现客户网络中潜在的安全风险。
(2)可以在防护产品中增加SSDP和SOAP的流量检测能力,及时发现客户网络中的安全威胁。
作为设备开发人员:
(1)听从OCF的建议,在产品实现时,增加了限制各类操作权限、端口转发和租用时间等安全机制。
(2)在产品上采用相对安全的UPnP SDK。
(3)提供自动设备升级服务。
(4)严格遵循UPnP规范,如无需要,不要在网上暴露UPnP相关端口。
作为监管机构:
(1)监控网络中的UPnP威胁,并报告发现的问题。
(2)提高人们对UPnP安全的认识。
(3)推进设备中UPnP功能的安全评估,如设备不符合相关要求,禁止该设备上市。
作为用户:
(1)如果不需要,关闭路由器的UPnP功能。
(2)借助工具,自检端口映射表,发现异常条目并及时清除。
(3)及时升级路由器等包含UPnP功能的设备固件。