中国联通VN007自带一个root(超级管理员用户)用户,但密码没有公布,获取到密码后可以进行锁定物理小区等操作。本文介绍获取root密码的方式。
原理
对VN007进行端口扫描后发现,vn007的adb端口是开放的,如下所示:
1 | $ nmap -A 192.168.0.1 -Pn |
其中5555是adb端口,连接adb获取shell后,从配置文件中获取了root密码。下面是具体步骤。
第1步:安装adb
下载得到一个压缩包
platform-tools_r31.0.3-windows.zip
,解压后进入其中的platform-tools
文件夹.
第2步:获取adb shell
在地址栏(上图红框中)输入
cmd
三个字母,打开一个命令行窗口。在命令行窗口输入命令
adb connect 192.168.0.1:5555
连接路由器的adb端口,然后再输入命令adb shell
获取进入shell命令行模式:如果adb connect连接失败怎么办??请翻到本文后面查看vn007开启adb端口的方法。
进入shell后,可以看到当前用户是root
用户。
第3步:获取root密码
密码存储在配置文件/tmp/mdlcfg.sysconfig
中的SYS_SENIOR_LOGIN_PWD
变量,使用下面的命令获取密码:
1 | cat /tmp/mdlcfg.sysconfig | grep SYS_SENIOR_LOGIN_PWD |
如下如所示(每台设备的密码不一样,密码已打码):
登录管理后台
获取到root密码后就可以登陆管理后台啦~
用户是root
,密码就是前面获取的。后台管理界面如下图所示:
vn007开启adb端口的方法
部分VN007、vn007+的固件版本没有开启adb端口,需要手动打开,步骤如下。
使用admin账号登录路由器管理后台。
按下F12打开浏览器控制台,切换到Network选项卡(如下图所示)。
网页会不停地发送数据包到http.cgi,随便点击一个,然后切换到Payload:
如上图所示,在payload中有一个SessionId,复制一下。
接下来需要发送一个开启adb端口的命令到路由器,具体操作如下:
1
2
3
4$.post(
'http://192.168.0.1/cgi-bin/http.cgi',
'{"adbSwitch":1, "cmd": 237, "method":"POST", "language":"CN", "sessionId": "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"}',
function(result){ console.log(result) })完整复制上面这段代码,把其中的
eeeeeeeeeeeeeeee
部分换成刚刚复制的sessionId。切换到Console标签,把修改后的代码粘贴进去,按回车执行,显示success即开启adb端口成功,如下图所示: