• 本文作者: 雨, 夜
  • |
  • 2018年3月1日
  • |
  • 漏洞分析
  • |

TrendNET路由器权限绕过漏洞分析

一、TrendNET介绍

TRENDnet是全球主要数据网络专业厂商之一,总部设在美国硅谷,在欧美设有多家分公司。TRENDnet在网络技术上具有领先地位,在美国硅谷设立研发中心;主要产品面向企业用户为主,为企业提供最具性价比的网络解决方案,全球流行的技术。TRENDnet的产品包括无线,有线,监控,连接和外围设备。

二、受影响的路由器版本

  • TEW-751DR – v1.03B03
  • TEW-752DRU – v1.03B01
  • TEW733GR – v1.03B01

三、漏洞分析过程

本次分析使用的版本是 TEW-751DR,固件版本1.03B03

1. 使用binwalk对固件解包

1

解包后的内容

2

登录时将数据发送给session.cgi文件

3

2. 登录验证是由cgibin文件完成的,验证过程如下:

首先判断请求类型(HEAD、GET、POST)

4

函数sub_405CF8() 作用是获取AUTHORIZED_GROUP的值,这个过程发生在身份验证之前

5

如果 $AUTHORIZED_GROUP >-1,系统认为已经登录,由于变量AUTHORIZED_GROUP可控,所以攻击者可以通过设置这个变量的值绕过安全验证读取任意文件

3. 利用getcfg.php读取文件

getcfg.php文件可以执行getcfg目录下的PHP文件并显示执行结果

6

首先判断$AUTHORIZED_GROUP的值,服务端会接收一个SERVICES参数(可控),经过处理后带入$file中,如果文件存在则执行$file

4. 漏洞利用结果如下

Exp:   curl -d “SERVICES=DEVICE.ACCOUNT%0aAUTHORIZED_GROUP=1″ “http://[IP]/getcfg.php”

7

四、影响范围

从shodan上可以看出,受影响的主要国家为美国

8

五、防御方法

根据路由器版本去官网下载最新固件, 更新方法压缩包里有说明

Written by 雨, 夜