TP-LINK路由器缓冲区溢出0 day 破绽 | 申博官网
登录
  • 欢迎进入申博官网!
  • 如果您觉得申博官网对你有帮助,那么赶紧使用Ctrl+D 收藏申博官网并分享出去吧
  • 这里是申博官方网!
  • 申博官网是菲律宾sunbet官网品牌平台!
  • 申博开户专业品牌平台!

TP-LINK路由器缓冲区溢出0 day 破绽

申博_新闻事件 申博 202次浏览 已收录 0个评论

NSC 2019网络安全大会将于6月举行

第七届中国网络安全大会(NSC 2019)将于6月13日在北京国家会议中心举行。大会由赛可达实验室、国家计算机病毒应急处理中心、国家网络与信息系统安全产品质量监督检验中心、首都创新大联盟及百家行业联盟共同主办。 中国网络安全大会历经

路由器已成为我们一样平常生涯的必需品,在家庭和办公室随处可见。人们依靠路由器举行通讯、银行生意业务、网上购物等等。IBM平安研究人员Grzegorz Wypych对消费者运用的最普遍的互联网路由器TP-Link WR-940举行了剖析,发明个中存在一个0 day缓冲区溢出破绽,歹意第三方能够运用该破绽长途掌握路由器装备。

下面临该破绽举行剖析:

TP-LINK路由器缓冲区溢出0 day 破绽

图1: TP-Link WR940

认证和掌握

 2018年9月,美国消费者协会宣布申报称80%以上的路由器存在平安破绽,因而研究人员对运用最普遍的路由器举行了平安性剖析。

起首,研究人员剖析了TP-Link WR940运转的软件和硬件信息,硬件版本是TL-WR940N hardware version 3和TL-WR941ND hardware version 6,运转的固件版本都是150312。

从该装备的软件平安性来看,对路由器的掌握重要运用在用户用来设置装备摆设路由器的web接口上。然则对接口的掌握没法珍爱路由器,并且易被进击者运用。好比,在体系对象/测试选项中,用户能够经由过程ping发送ICMP echo请乞降相应包,即发送包到IPv4地点或主机名。面板的平安掌握能够会限定字符的范例和数目,然则不会限定用户用Burp Suite署理来阻拦和修正要求。

Bug by Bug

然后研究人员最先寻觅一些通用的运用破绽。研究人员起首搜检了敕令注入,由于ping如许的操纵大多是运用Bash shell的。然则研究人员没有经由过程静态剖析发明对体系的援用,然后研究人员搜检了注入进击场景。

研究人员发明当用户发送ping要求后,会在装备的console上限定一个音讯,如下图所示:

TP-LINK路由器缓冲区溢出0 day 破绽

图2: Ping要求挪用路由器console上的音讯

然后研究人员运转了Burp Suite带来来搜检到ping效劳的出GET要求。下图中能够看到要求的参数,图2的console音讯中也有一样的参数。

TP-LINK路由器缓冲区溢出0 day 破绽

图3: 到ping效劳的GET要求

然后,研究人员启动IDA disassembler来检察字符串援用:

TP-LINK路由器缓冲区溢出0 day 破绽

图4:  IDA Pro上到ping效劳的GET要求

能够直接挑战到援用的函数的地点:

# DATA XREF: sub_44C610+5E0↑o

然后能够看到另一个音讯块:

TP-LINK路由器缓冲区溢出0 day 破绽

图5: IDA Pro中的音讯块

语法是用Microprocessor without Interlocked Pipeline Stages(MIPS,无互锁装配的流水线微处理器)Assembly言语编写的,MIPS是用来与MIPS微处理器合作的,重要用于网关、路由器如许的嵌入式体系。

在MIPS中央处理器单位中:

· 函数参数是在寄存器$a0-$a3中通报的,若是某个函数的参数多于4个,就会被推动栈中。

· 寄存器$t9常被用作跳转地点的holder,经常使用jalr指令来加载内存地点并跳转到寄存器$t9。

· 挪用的函数必需生存$s0-$sX寄存器,X透露表现$s范例的可用寄存器的最大数目。

· 返回的值生存在$v0 or $v1寄存器中。

典范缓冲区溢出

下面进入下一步剖析。

————————————-

申博网络安全巴士站

申博-网络安全巴士站是一个专注于网络安全、系统安全、互联网安全、信息安全,全新视界的互联网安全新媒体。

————————————-

从下图中能够看出printf函数接收到一个到console纪录中涌现过的字符串的指针。这里的参数被加载到$a0寄存器中。

然后,挪用ipAddrDispose函数。它会加载到$a2寄存器,值为564(十进制),它也能够作为函数中的一个参数。下面看一下该函数:

TP-LINK路由器缓冲区溢出0 day 破绽

图6: ipAddrDispose函数袒露缓冲区溢出题目

Strcpy函数挪用是TP-Link httpd历程掌握的最先,也是存在破绽的二进制文件。这是一个典范的缓冲区溢出题目。

还函数会一个字节一个字节地复制接收到的输入,并生存到一个巨细其实不适宜的缓冲区中。因而数据的巨细会凌驾缓冲区的界限。

破绽是可运用的

研究人员为该破绽创建了PoC,证明了该破绽是能够被运用的。

起首剖析数据巨细凌驾可用空间后会发作甚么,因而研究人员将ping_addr参数修正为hold number 0x41,凌驾了缓冲区的巨细。下图是ipAddrDispose函数为栈帧预留的224字节空间。

TP-LINK路由器缓冲区溢出0 day 破绽

图7: ipAddrDispose为栈帧预留了224字节内容

由于栈中有224字节数据,因而研究人员发送300字节的A以剖析缓冲区溢出的效果。研究人员用Burp Suite阻拦了HTTP要求,并修正了ping_addr 参数。

TP-LINK路由器缓冲区溢出0 day 破绽

图8: 发送300字节的A

依据console中涌现的音讯,研究人员预测能够掩盖了返回地点$ra,并最先掌握程序实行。

 TP-LINK路由器缓冲区溢出0 day 破绽

图9: 路由器console音讯注解地点能够被掩盖

在编写破绽运用之前,还要搜检若是发送了太大的payload,哪些会被覆写。下面看以下位于/tmp文件夹的复制的中心内存信息:

研究人员想知道若是运用该破绽的话是不是能够掌握寄存器,和能够掌握哪一个寄存器。因而研究人员下载了复制的中心内存信息:

TP-LINK路由器缓冲区溢出0 day 破绽

图10: 剖析TP-Link路由器中心内存信息

由于路由器是MIPS架构的,因而下一步是运用gdb-multiarch来翻开复制的中心内存信息。

TP-LINK路由器缓冲区溢出0 day 破绽

图11: 运用gdb-multiarch翻开中心复制的中心内存

然后就能够掌握以下三个寄存器了:

· $s0;

· $s1; and

· $ra.

由于$a0寄存器只援用了栈中的一个地点,由于研究人员只获得了局部掌握权。并且破绽运用发作在MIPS架构上,这与罕见的web运用缓冲区溢出破绽运用是分歧的。

总结

美国消费者协会2018年宣布申报显现有83%的WiFi路由器存在平安破绽,个中很多都是开源破绽,受影响的产物包罗多个来自环球的知名品牌。路由器已不再是一个简朴的中继装备,路由器具有本身的操纵体系、软件,同时也有专属的破绽。路由器的破绽黑白常罕见的,能够归因于分歧的要素,本钱要素也是重要斟酌要素之一。

路由器被黑会带来甚么效果呢?路由器破绽会致使用户数据被泄漏或被进击者用于构建僵尸收集或进击其他主机。进击者还能够运用路由器破绽来看管用户、发送垂纶信息,修正用户接见网站的数据。若是路由器沾染歹意软件,就能够会酿成僵尸收集的一局部。

NSC 2019网络安全大会将于6月举行

第七届中国网络安全大会(NSC 2019)将于6月13日在北京国家会议中心举行。大会由赛可达实验室、国家计算机病毒应急处理中心、国家网络与信息系统安全产品质量监督检验中心、首都创新大联盟及百家行业联盟共同主办。 中国网络安全大会历经


申博|网络安全巴士站声明:该文看法仅代表作者自己,与本平台无关。版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明TP-LINK路由器缓冲区溢出0 day 破绽
喜欢 (0)
[]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址