Dir-300敏感信息泄露漏洞
Posted Neil-Yale
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dir-300敏感信息泄露漏洞相关的知识,希望对你有一定的参考价值。
固件代码审计
将固件压缩包解压
使用binwalk提取
这时当前路径下生产一个新的文件夹
进入squshf文件系统
先对总体情况做个审计,使用firmwalk.sh
因为审计的结果很长,我们将其保存到1.txt
因为telnet经常会出现安全风险,我们可以匹配telnet关机字
去看看第一个telnetd.sh
在该文件中找到了用户名、密码;密码保存在image_sign文件中
去看看
这样我们就得到了telnet的账户和密码。接下来我们研究web层面的漏洞
已知dlink dir-300存在信息泄露漏洞,进入其www文件夹
漏洞出现在/model/__show_info.php
可以看到,禁止了$REQUIRE_FILE的参数为var/etc/httpasswd和var/etc/hnapasswd
但是我们可从根路径开始配置httpasswd,就能绕开过滤了
也就是说传给REQUIRE_FILE的是/var/etc/httpasswd
那么exp就是
localhost/model/__show_info.php?REQUIRE_FILE=/var/etc/httpasswd
以此绕过if判断
模拟路由器环境
在下图路径中
如上所示输入
红色圈起来的部分都是需要输入的,第二个圈是要求输入待分析的固件地址
第三个圈是要求输入brand,这个可以随意
其他地方碰到要求输入oit密码的时候就输入attify123
要求输入firmadyne的密码的时候就输入firmadyne
稍等片刻就可以看到环境准备好了
实战测试
在浏览器打开相应的网址,查到资料,知道dlink默认用户名为admin,密码为空,再正确输入验证码即可登录
登录后的结果
在mainteance处修改密码为test
点击save settings
接下里点击logout退出
接下里看看刚才我们代码审计挖掘到的漏洞是否真实存在
http://192.168.0.1/model/__show_info.php?REQUIRE_FILE=/var/etc/httpasswd
可以看到确实打印出了/var/etc/httpasswd的值
也就是登录路由器后台的账号和密码
。
参考:
1.http://www.s3cur1ty.de/m1adv2013-017
2. http://seclists.org/bugtraq/2013/Dec/11
3.http://www.devttys0.com/wp-content/uploads/2010/12/dlink_php_vulnerability.pdf
4.https://packetstormsecurity.com/files/120591/dlinkdir645-bypass.txt
https://github.com/adi0x90/attifyos
以上是关于Dir-300敏感信息泄露漏洞的主要内容,如果未能解决你的问题,请参考以下文章
Metabase 敏感信息泄露漏洞复现(CVE-2021-41277)
Metabase 敏感信息泄露漏洞复现(CVE-2021-41277)