tplink企业vpn路由器GetShell

闲鱼上淘到某款企业vpn路由器,比较早的设备。

拿到某款设备肯定要想办法拿到固件来分析,并搞到getshell来干更多好玩的东西。

前期尝试

通过官方网站下载的升级固件,尝试升级。

image-20231113134757833

寄!

尝试扫描端口查看是否开启ssh。

image-20231113135348552

寄!

都无效,也没有查到历史漏洞,只能拆了。

IMG_6135

串口通过调试,并不能获取到任何数据,可能是给关掉了。

基本思路均失败。

发现配置文件,尝试新思路

在系统工具,设备管理中发现备份设置,该品牌设备多是基于openwrt开发,所以我们将希望寄托在备份文件中。

尝试下载备份文件。

分析发现为gzip压缩文件,直接解包。

image-20231113140236875

image-20231113140453660

发现了dropbear,passwd,shadow等文件,思路这不就来了。

首先尝试修改dropbear配置文件,将其改为开机自启。添加自定义用户,权限组为root,并设置其密码为自定义,方便dropbear打开后能正常登陆shell。

通过关键字搜索,发现dropbear配置文件

image-20231113141235260

将ssh_port_switch修改为on,使设备启动时打开ssh

并记住其端口,33400

先将其打包恢复备份,查看是否有签名校验。

成功恢复,证明没有签名校验,然后尝试ssh连接设备

image-20231113142231336

成功开启ssh,下一步就是创建自定义用户,是我们能够成功登入系统

修改passwd和shadow文件

修改passwd文件,这里我创建了一个与root一样的用户pipi

image-20231113142358252

在shadow中给pipi用户设置密码,这里自定义即可,也可以直接复制自己linux机器的用户名密码

image-20231113142454495

在次打包,将其恢复。

image-20231113142620362

成功登入,可以发现其就是一个openwrt。

cat /proc/cpuinfo后可以发现其设备为mips架构,使用的是高通骁龙QCA956X的一款芯片。

openwrt可玩性很高,这里不多赘述。

提取固件

getShell之后可以尝试使用dd命令来提取固件,大概思路如下。

使用cat /proc/mtd来查看分区

image-20231113143147532

使用dd命令来直接提取分区

image-20231113143322534

image-20231113143411309

得益于openwrt的各种命令都比较完整,可以用nc 等方式将固件下载到本地来进行分析。

以上就是通过修改备份文件的思路来GetShell。


tplink企业vpn路由器GetShell
http://example.com/article/de04eab8.html
Author
p1yang
Posted on
November 13, 2023
Licensed under