D-Link路由器后门固件逆向分析及漏洞利用

2020-05-20  本文已影响0人  andy_shx

转载,详见原文:http://www.atomsec.org/%E5%AE%89%E5%85%A8/d-link%E8%B7%AF%E7%94%B1%E5%99%A8%E5%90%8E%E9%97%A8%E5%9B%BA%E4%BB%B6%E9%80%86%E5%90%91%E5%88%86%E6%9E%90%E5%8F%8A%E6%BC%8F%E6%B4%9E%E5%88%A9%E7%94%A8/

1、下载D-Link DIR-100固件

下载链接:ftp://ftp.dlink.eu/Products/dir/dir-100/driver_software/DIR-100_fw_reva_113_ALL_en_20110915.zip

2、使用binwalk -e解包

image

查看解压后的文件,发现squashfs-root文件夹下内容为空,并且存在另一个squashfs文件

image

说明:squashfs-root文件夹下内容为空的问题是由于sasquatch安装的有问题导致的,可以通过重新安装sasquatch解决,参考:https://www.jianshu.com/p/29c99274ff85,具体如下:

<meta charset="utf-8">

百度了一下,在这篇文章中找到答案binwalk WARNING: Extractor.execute failed to run external extractor 'sasquatch -p 1 -le -d '%%squash
需要安装sasquatch:
安装地址位于:
https://github.com/devttys0/sasquatch
安装步骤

  1. 打开命令行(或到如下github上手动下载安装)
    git clone https://github.com/devttys0/sasquatch
  2. 安装依赖环境
$ sudo apt-get install build-essential liblzma-dev liblzo2-dev zlib1g-dev

  1. cd 到clone下来的文件下安装sasquatch
$ ./build.sh

之后,再进行binwalk解压,终于成功。

image

作者:飞熊先生
链接:https://www.jianshu.com/p/29c99274ff85
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


解压出来的文件主要有两类,可以查看文件夹下内容来具体区分查看

image

image

3、静态分析,将bin/webs二进制程序载入idapro中

在strings window中找到一个有趣的字符 thttpd-alphanetworks/2.23

这是一个嵌入式设备常用的小型http服务器,特点是其中的函数都是以alpha_开头

image

4、在functions window窗口中找alpha_开头的函数,发现一个疑似登录认证的函数 alpha_auth_check

image

5、分析此函数,找到几个比较有趣的地方

image

image

6、根据上下文分析代码,存在如下逻辑:

7、仔细观察check_logined登录验证图 可以看到明显的登录绕过可能性 —-> 当strcmp字符串比较匹配时

image

初步结论: 此硬编码很可能就是预留的路由器后门

8、哪一个参数跟此字符串比较?

函数交叉调用关系

image

根据$S0偏移量0xD0进行字符查找

image

根据函数调用关系和字符查找,发现可能的赋值代码处

image

9、双击进入定位到偏移代码处

image

根据跳转关系向上查找到调用处

image

传入的参数是 User-Agent?

目前还不确定,分析到此有个初步结论

结论:

访问站点时设置 User-Agent: xmlset_roodkcableoj28840ybtide 就可以绕过登录验证过程

PS:

后门字符串倒置 edit by 04882joel backdoor _teslmx 更加怀疑是后门

10、对漏洞进行验证

使用shodan查找使用此后门漏洞缺陷的D-Link路由器,例如型号 DI-524UP

image

找到一个站点** http://93.184.71.88:8080**

访问此站点,使用Burpsuite抓包修改User-Agent的值

image

会有个重定向到Home/h_wizard.htm页面,记得此处还需要修改 User-Agent值

image

forward值之后,就可以查看到 /Home/h_wizard.htm的页面了

image

成功绕过了登录认证过程

探索路由器后台功能,例如查看有哪些设备连接了此路由器,可以直接查看DHCP

image

至此,我们证明了D-Link路由器存在的后门漏洞以及如何进行利用

上一篇下一篇

猜你喜欢

热点阅读