一、 事件背景
TP-LINK是普联技术有限公司旗下的品牌,成立于1996年,是专门从事网络与通信终端设备研发、制造和行销的厂商。TL-WR840N和TL-WR841N是TP-LINK旗下的无线路由器。
6月初,互联网上报道TP-LINK存在认证绕过漏洞(CVE-2018-11714)。该漏洞是由于/cgi/文件夹或/cgi文件上的会话处理不当引起的。如果攻击者发送特定的头文件后,那么对于任何操作都不需要身份验证。
相关链接:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-11714
二、 漏洞分析及复现
1) 漏洞分析
TL-WR840N和TL-WR841N的WEB服务提供了CGI,这允许用户通过CGI对路由器执行部分操作。正常情况下,用户在通过CGI操作路由器时,路由器会首先对用户的身份进行认证,如果不是合法用户,路由器会返回403页面。但是如果请求中包含了特定的HTTP Referer,就可以绕过认证阶段,直接执行用户请求的操作。
HTTP Referer是请求头的一部分,当浏览器向Web服务器发送请求的时候,通常会带上Referer,告诉服务器请求是通过哪个页面进行的,服务器可以藉此获得一些信息用于处理请求,比如说防止外链等。
在对TL-WR840N和TL-WR841N的CGI进行请求时,请求头中加入Referer: http://xx.xx.xx.xx/mainFrame.htm 即可绕过认证,直接进行路由器操作。
2) 漏洞复现
路由器的cgi/目录下存在conf.bin文件,该文件内保存了路由器的相关配置。首先尝试直接对该文件进行请求,状态码为403:
然后在请求头中加入Referer字段,再次请求conf.bin文件:
成功读取了该文件。接着将该文件下载下来,并使用相应的工具可以查看路由器的配置。
比如管理员的密码(特定版本可见),无线网的密码等信息。
通过得到的信息可以尝试通过浏览器登录路由器。
如果无法从配置文件中获得管理员的相关信息,依旧可以通过CGI来操作路由器,例如在路由器上配置端口转发、重启路由器、开启访客网络、更改无线网密码等。
3) 漏洞危害
攻击者通过此漏洞可以绕过路由器认证,在不登录的情况下就可以执行路由器上的绝大部分操作。攻击者还可以对路由器连接的网络进行恶意的配置,如篡改路由器的DNS服务器地址、劫持路由器用户的网络等。
三、 数据分析
1) 世界分布
世界范围内使用TP-LINK系列路由器约为15.4万台。其中,排名前五的国家分别为:俄罗斯、西班牙、保加利亚、巴西、乌克兰。
下图为世界范围内使用TP-LINK系列路由器分布情况:
图1、世界分布图
下图为世界范围内使用TP-LINK系列路由器数量排名前十的国家:
图2、世界排名前十
2) 国内分布
中国境内使用TP-LINK系列路由器的数量大约为9631台。其中,排名前五的省份或地区分别为:香港特别行政区、台湾省、广东省、澳门特别行政区、辽宁省。
下图为中国范围内使用TP-LINK系列路由器分布情况:
图3、国内分布图
下图为中国范围内使用TP-LINK系列路由器数量排名前十省份或地区:
图4、国内排名前十
下图为使用TP-LINK系列路由器的国内运营商排名:
图5、国内运营商排名前十
四、 防范建议
1) 漏洞影响设备
TP-Link TL-WR840N
TP-Link TL-WR841N
2) 修复建议
目前,厂商已经发布该漏洞的补丁,用户可在TP-LINK官网上获得下载,相关链接如下:
http://service.tp-link.com.cn/download?classtip=software&p=1&o=0