分享

国产路由器的死穴:UPNP功能介绍和危害

 一点珍珠 2014-10-09
            本来我是不写这篇主题的,但是我家的无线路由最近几天深夜忽然无线网络非常差~~~一查之下,蹭网的非常猖獗。白天登陆路由器界面都登不上,网络还是畅通。我才知道原来是蹭网的趁深夜主人不用之时蹭网狂下载。而且因为我开启了UPNP,路由器开了三天后登陆界面系统已经挂掉了,但是底层系统还在运行(简称假死)
说起UPNP,大家还不是很清楚什么。现在我来介绍下,内容是从百度知道剪过来的,另外附加自己理解:

UPNP解释成:对于一台内网电脑,BitComet的UPnP功能可以使网关或路由器的NAT模块做自动端口映射,将BitComet监听的端口从网关或路由器映射到内网电脑上。


网关或路由器的网络防火墙模块开始对Internet上其他电脑开放这个端口。


NAT穿越技术允许网络应用程序对它们是否位于一个具有UPnP能力的NAT设备之后进行检测。然后,这些程序将获得共享的全球可路由IP地址,并且配置端口映射以将来自NAT外部端口的数据包转发到应用程序使用的内部端口上--所有这一切都是自动完成的,用户无需手动映射端口或者进行其它工作。NAT穿越技术允许网络设备或者点对点应用程序通过动态开启和闭合与外部服务之间的通信端口穿过NAT网关与外界通信。


换句话说,概括成:以简单NAT转换效率是不高的,若启动UPNP技术,可以提高NAT数据转换效率。


听起来好像是一件很好的事情。但是呢???


UPNP存在严重缺点:以下是截过来的。


第一个缺陷是对缓冲区(Buffer)的使用没有进行检查和限制。外部的攻击者,可以通过这里取得整个系统的控制特权!由于UPnp功能必须使用计算机的端口来进行工作,取得控制权的攻击者,还有可能利用这些端口,达到攻击者的目的。这个缺陷导致的后果很严重,不论那个版本的windows 系统,只要运行UPnP,就都存在这个危险!但严格地说,这并不完全是UPnP技术本身的问题,更多的是程序设计的疏忽。
  第二个缺陷就与UPnP的工作机理有关系了。该缺陷存在于UPnP工作时的“设备发现”阶段。发现设备可以分为两种情况:如果某个具备UPnP功能的计算机引导成功并连接到网络上,就会立刻向网络发出“广播”,向网络上的UPnP设备通知自己已经准备就绪,在程序设计这一级别上看,该广播内容就是一个M-SEARCH(消息)指示。该广播将被“声音所及”范围之内的所有设备所“听到”。并向该计算机反馈自己的有关信息,以备随后进行控制之用。
  相类似,如果某个设备刚刚连接到网络上,也会向网络发出“通知”,表示自己准备就绪,可以接受来自网络的控制,在程序设计这一级别上看,该通知就是一个NOTIFY(消息)指示。也将被“声音所及”范围之内的所有计算机接受。计算机将 “感知”该设备已经向自己“报到”。实际上,NOTIFY(消息)指示也不是单单发送给计算机听的,别的网络设备也可以听到。就是在上述的一播一听之间,出现了问题!
  如果某个黑客向某个用户系统发送一个NOTIFY(消息)指示,该用户系统就会收到这个NOTIFY(消息)指示并在其指示下,连接到一个特定服务器上,接着向相应的服务器请求下载服务―――下载将要执行的服务内容。服务器当然会响应这个请求。UPnP服务系统将解释这个设备的描述部分,请求发送更多的文件,服务器又需要响应这些请求。这样,就构成一个“请求――响应”的循环,大量占用系统资源,造成UPnP系统服务速度变慢甚至停止。所以,这个缺陷将导致“拒绝服务”攻击成为可能!



其实换句话说:UPNP功能在使用阶段是不断耗费自身的网络资源,当设备网络资源耗尽的时候就会出现假死现象。看上面那段资料就知道了。


其实UPNP功能好处是有,但是对于国产设备来说,这个是一个噩耗。


由于国产设备的芯片简化,很多厂家没有留意当开启UPNP功能后设备的稳定性,所以将固件设置默认为关闭状态,当用户觉得这个功能有效的时候(尤其的菜鸟,看说明书为精通的)就手动开启了UPNP功能,谁知道这个功能就是害死路由器的罪魁祸首。



现在的很多网络传送软件,多数都会要求用户开启UPNP功能,其实国产网络设备质量不会好过国外的产品,国外的产品有拆过的网友都会知道,里面至少芯片是好过国产的,甚至比较中等的路由器都会在芯片上面弄块散热片加强散热。

这里需要补充说明:UPNP功能必须要路由器和软件同时支持才能有效,但是很多情况下,不用路由器单纯用猫上网用带UPNP功能的软件,摸下猫猫都发烫得可以将冷水变成温水(40度左右)。可想而知路由器,SOHO路由器一般情况下是不带散热片就单纯一块芯片算数。


至于我为什么会说外国路由使用的芯片会好过国产,首先,成本的问题,这个不想说。其次,芯片自身原因,某些芯片具备高级UPNP计算模块,能提升路由器转发速度,但是国产使用的芯片多数不具备UPNP功能(说我坦白),开启后发热量会增加。



我自己用了很多TP-LINK的网络设备,也卖过很多路由器给别人,我最怕的就是开UPNP。


在以前买R402M的时候,拉2台电脑,一台不断下载,一台不断看视频,9个小时之后上路由器,谁知道已经挂掉了,但是网络是通的。关闭UPNP功能之后跑了一个星期都没挂界面。


现在买了台W89541G,本以为这路由已经很强的了,那个人已经很给面子了,给了台最好的,谁知道这个星期测试,星期日通电,没关UPNP,今天早上看下路由器情况却上不了了,网络同样是通的,PING还有反应。唯有重启,今晚刚好要检查笔记本电池,现在有空,上路由看下,谁知道路由界面又上不去了,勉强上了之后发现蹭网的用网络很大~~~





而且网络超级慢~~看下UPNP设置,我顶~~蹭网的竟然使用PIPI、迅雷5、酷狗~~~~因为我提早关闭了没截图所以抱歉。


果断关闭UPNP,网络好了些~~但是UDP传送比较大,应该是PIPI软件使用UDP通道。现在暂时不理了,反正测试路由稳定性,关闭UPNP先。

UPNP,我爱你,但我也恨你啊~~但也能说明国产设备不给力啊~~~



关于UPNP的问题大家可以开贴讨论下~~~


下次继续开炮:有线正常无线犹如鬼灵那样挂了??无线路由带宽疑惑详解~~~~


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多