获取移动光猫超级密码
移动光猫通用用户及密码
CMCCAdmin aDm8H%MdA
破解步骤
- 查看光猫背面用户名密码,登录到后台web管理页面。
- 开启telnet。在重启开关/恢复默认设置那个页面,F12打开审查元素,搜索TRTelnet,删除掉display: none,即可看到页面显示,勾选启用Telnet即可。
- 打开terminal工具,输入telnet 192.168.1.1回车,输入密码为上面通用账号密码。
- 进去系统之后,切换到root用户,查找dbbackupcfg.xml文件。
~ $ su Password: / # find / -name 'db_backup_cfg.xml' /userconfig/cfg/db_backup_cfg.xml
- 在光猫上启动一个tftp服务。
udpsvd -vE 0 69 tftpd -c /
- 在terminal上下载文件。
➜ tftp -e connect 192.168.1.1 69 usage: tftp [-e] host-name [port] tftp> connect 192.168.1.1 69 tftp> get /userconfig/cfg/db_backup_cfg.xml Received 503436 bytes in 0.3 seconds tftp>
- 接受完毕后,将如下脚本保存到和dbbackupcfg.xml目录相同的decode.py文件里。
from Crypto.Cipher import AES from binascii import a2b_hex KEY = b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' def decrypt(text): cryptor = AES.new(KEY, AES.MODE_ECB) plain_text = cryptor.decrypt(a2b_hex(text)) return plain_text cfg_file = open("db_backup_cfg.xml", "rb") dec_file = open("db_backup_cfg.decode.xml", "w") file_header = cfg_file.read(60) while 1: trunk_info = cfg_file.read(12) trunk_data = cfg_file.read(65536) trunk_real_size = int.from_bytes(trunk_info[0:4], byteorder='big', signed=False) trunk_size = int.from_bytes(trunk_info[4:8], byteorder='big', signed=False) next_trunk = int.from_bytes(trunk_info[8:12], byteorder='big', signed=False) print(trunk_real_size, trunk_size, next_trunk) dec_file.write(decrypt(trunk_data.hex()).decode(encoding="utf-8")) if next_trunk==0: break
- 解密
➜ python decode.py
若模块没有安装,可以尝试如下安装
pip install binascii pip install pycrypto
以上除光猫内操作之外,所有操作均为在macOS环境下操作。
参考链接:
Comments:
Email questions, comments, and corrections to hi@smartisan.dev.
Submissions may appear publicly on this website, unless requested otherwise in your email.