Buffalo WCR-GN路由器诊断功能命令注入漏洞

在这里插入图片描述

1.注入点的发现:
探索路由器的诊断功能时,联想到练习过的DVWA 命令注入靶场。这类调用操作系统命令实现的功能,若对于用户输入验证不足,很容易引入命名注入风险。基于这种猜测,开始了这次实践。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
1.采用命令注入常规思路,通过 ; 进行命令拼接。

2.由于后端采用仅采用正则匹配的方式回显ping包结果,故用户注入部分无法回显有效信息。

3.联想Time Base盲注的思路,采用时延的方式,确定注入点的存在。

2.漏洞利用:
难点1: busybox功能裁剪:
在这里插入图片描述
反弹shell 最常用的nc命令没有,所幸有一个比较好用的wget.

难点2: 只读文件系统/www路径无法写入
# cat /proc/mounts
rootfs / rootfs rw 0 0
/dev/root / squashfs rw 0 0
proc /proc proc rw 0 0
none /var ramfs rw 0 0
none /tmp ramfs rw 0 0
none /media ramfs rw 0 0
none /dev/pts devpts rw 0 0
/dev/mtdblock5 /etc/config jffs2 rw 0 0
none /var ramfs rw 0 0
none /tmp ramfs rw 0 0
none /media ramfs rw 0 0

由于squashfs 只读文件系统的原因,/www web UI的路径下并不可以写入web shell。

解决办法:
命令注入,通过现有busybox 残留的wget命令,向/tmp路径下上传完整的busybox,再利用其nc命令实现 getshell

命令注入,上传完整版本busybox:

https://busybox.net/downloads/binaries/1.21.1/

在这里插入图片描述
如上图所示,注入wget命令,给路由器下载完整版的busybox,然后啥都可以干了(web服务是root账户启的)。

在这里插入图片描述
接下来nc反弹shell,整个路由器就是你的了。

3.总结:
1.渗透测试或者探索性测试时,望、问、听、窃打开五观来感知被测对象的一些反馈(ping包时延来判断注入点)。
2.渗透测试或者探索性测试时,我们要善于将被测对象的不可见,变为可见(nc反弹)。
3.善于一点及面逐步扩大战果(上传完整版busybox,扩大漏洞影响面)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值