最近折腾 AX9000 的时候发现了一些奇奇怪怪的玩法,记录一下
传统的 SSH 开启方法大致如下:
xqsystem.lua
进行注入 xqsystem.lua
远程执行 SSH 开启命令telnet
开启 SSH bdata
分区,刷入分区开启 telnet
然后执行 SSH 开启指令最近在恩山看到了一篇文章,是利用 CVE-2023-26319 实现的,通过米家智能场景控制器(xqsmartcontroller
)来打开 SSH,在所有支持米家智能场景控制器且未修复漏洞的固件上都可以用这种方式开启 SSH
不过一个个输命令有点麻烦,我写了一个简单版的脚本
在路由器后台登录后,按下 F12 打开开发者工具,选择控制台并把代码粘贴进去即可
米家智能场景控制器中的 mac
没有进行过滤,并且这个参数是直接由用户控制的,会直接传递给 run_cmd
,因此可以在智能场景的 action_list[0].payload.mac
中使用 ;<Command>;#
进行注入,并调用 scene_start_by_crontab
执行智能场景
打开完 SSH 后,就可以编辑 Docker 守护进程文件来换源和部署容器了
SSH 密码可以在 https://miwifi.dev/ssh 进行计算
需要注意的是,在小米路由器中,启动 Docker 服务需要使用 /etc/init.d/mi_docker start
这里使用 WinSCP 演示
使用 root 连接路由器后,进入 /www
,此处存放着小米路由器后台管理界面的 HTML 文件,我们可以下载下来在本地美化后上传