瑞斯康达MSG2200系列进入shell及vtysh配置界面教程
今日咸鱼收得瑞斯康达msg2200c-up-4e4v一台(移动定制版),企业网关物美价廉,功能强大,处理器EN7523(?存疑,没看丝印),就是没telnet密码。
研究了一下成功进入shell,并实现了开机任意自启动,且利用漏洞无密码进入vtysh配置界面。
首先需要一根console线(RJ45),连接光猫的CONSOLE,按下电源按钮,开机的瞬间狂按Ctrl+C打断开机流程,输入账号密码admin/admin,进入u-boot,输入以下命令以进入shell
setenv bootargs "init=/bin/sh"
boot
进入shell后,输入以下命令挂载分区
cd /
mount -t proc proc proc
busybox.new ubiattach -m 12 /dev/ubi_ctrl
mount -t ubifs /dev/ubi0_0 /usr/app
cd /usr/app/conf
可以看到这个目录下有个start_java.sh,这个脚本可修改且每次开机都会运行,因此可以加一个开机启动telnetd的命令在这里,比如busybox.new telnetd -p 8023 -l /bin/sh
重启后果然可以telnet进去了
接下来破解vtysh
方法很简单,只需要vtysh -s 114514(随便写)就能进入vtysh而不需要AAA认证
输入enable进入特权模式,输入configure terminal进入配置模式,输入diagnose进入shell(如要密码是zhjrqmwg!),输入testnode修改机器参数(如要密码是rcios.test)
命令列表按?出现,命令参数按tab补全,以上。
此外,有一个打开内置telnet的链接,是http://192.168.2.1/debug/debug_info.php?telnet_enable_submit=1,但是进去是需要登录的vtysh
接下来我们可以把机器的配置修改为公版配置(可以访问telnet,配置TR069之类的,但可惜原版界面进不去),只需要进入testnode输入bn RC01,一路exit退出到shell,输入以下命令打开防火墙,重启即可
sed -i 's/access http/access http\n access telnet/g' /mnt/config/syscfg.con
重启后telnet开在23端口。账号密码是CMCCAdmin/aDm8H%MdA
如果不小心重置了可能WiFi名字会变成RaiseCom-打头的,密码可能是a5d82ec6b3(我的,疑似随机),建议用网线,账号密码都是admin,使用telnet直接链接,进shell后cd /mnt/config,找备份(syscfgbak目录下,cp到syscfg.con即可)
另外,修改密码的指令是user administrator <用户名> local <密码> authorized-table [telecomadmin|useradmin]
二编:
常用命令not found?机器里有四个不同的busybox,可以都试试(busybox xxx即可调用)
进阶玩法: 使用USB3.0接口跑容器云
如题,机器基于arm架构,有USB3.0接口和512M大内存,并且内核已打开cgroup相关功能,因此可以尝试补全lxc运行环境,跑lxc容器 (docker理论也行,可以自己移植试试看)
lxc下载链接: 提取码:816n (lxc4.0.12)
食用教程:
下载lxc.tar.gz (-full: 完整编译产物; -minimal: 最小化lxc环境(不带lxc-create工具) )到EXT4格式的移动硬盘/U盘下,运行以下指令挂载cgroup并设置lxc环境变量
cd /mnt
mkdir /mnt/usb1_1 /mnt/lxc
# 如果分区为sda1(U盘第一个分区)的话
mount /dev/sda1 /mnt/usb1_1
# 编译目录为/mnt/lxc 请不要变更它...
tar xzvf -C /mnt/lxc /mnt/usb1_1/lxc.tar.gz
export PATH="$PATH:/mnt/lxc/bin"
# 有报错正常, 可以无视
cgroupfs-mount
# 如果lxc容器就在U盘根目录下...
lxc-start -P /mnt/usb1_1 --name lxc_test
已知问题:
内核被精简,lxc无法自动挂载proc文件系统,需要手动配置容器config
# Manually mount proc
lxc.mount.auto = ""
lxc.mount.entry = proc proc proc nodev,noexec,nosuid 0 0
lxc.mount.entry = sysfs sys sysfs defaults 0 0
lxc.mount.entry = tmpfs tmp tmpfs defaults 0 0
使用glibc还是有些占内存了,电脑上又没有uClibc的工具链,下次试试用musl libc
--------------
你已经看完这篇博文了!
本文来自博客园,作者:星如雨yu,转载请注明原文链接:https://www.cnblogs.com/tianpanyu/p/18893928
另,建议转载手动看一眼,把代码块转过去呗(超小声嘀咕)

浙公网安备 33010602011771号