小米路由器 4A 千兆版刷入 OpenWrt
小米路由器 4A 千兆版刷入 OpenWrt

背景与核心痛点:因为淘汰下来的小米 4A 千兆版路由器官方固件限制较多,通过刷入开源 OpenWrt 固件可大幅释放路由性能并支持丰富的软路由插件。本文详解利用 CVE-2019-18370 漏洞开启路由器 SSH、刷入 Breed 不死 Bootloader 引导装载程序,以及编译并刷入全功能 OpenWrt 固件的完整避坑实操。
目录
准备与依赖环境
- 电脑(Win/Mac/Linux),需具备物理网线接口(Mac 用户建议准备 USB/Type-C 网线转接器)
- 小米路由器 4A 千兆版硬件原机
- 本地 Python 3 运行环境
- 标准 RJ45 千兆网线 1 条
开启路由器 SSH
小米官方固件仅开发版原生支持 SSH,但该型号官方未单独发布开发版,因此需利用系统漏洞开启。
系统存在 CVE-2019-18370 远程命令执行漏洞,可使用开源项目 acecilia/OpenWRTInvasion 提供的自动化脚本完成破解。
1. 下载并安装依赖
git clone https://github.com/acecilia/OpenWRTInvasion.git
cd OpenWRTInvasion
pip3 install -r requirements.txt
2. 执行漏洞利用脚本
通过 WiFi 或网线直连路由器,在终端中执行:
python3 remote_command_execution_vulnerability.py
执行过程中提示输入路由器后台 IP(默认 192.168.31.1 或 miwifi.com)与管理密码。文件传输选择本地服务器(输入 1):
here two options to provide the files needed for invasion:
1. Use a local TCP file server runing on random port to provide files in local directory `script_tools`.
2. Download needed files from remote github repository. (choose this option only if github is accessable inside router device.)
Which option do you prefer? (default: 1) 1
脚本执行完毕后,路由器将成功开放 Telnet、SSH 及 FTP 端口,默认管理员账号密码均为 root。
3. SSH 连接验证
ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -c 3des-cbc -o UserKnownHostsFile=/dev/null root@192.168.31.1
刷入 Breed 不死引导
开启 SSH 后即可刷入 Breed。Breed 由国内开发者 HackPascal 开发,是功能强大的第三方 Bootloader,支持通过独立 Web 恢复控制台刷机,即使固件刷坏也能随时重置,杜绝变砖风险。
1. 下载 Breed 固件
小米路由器 4A 千兆版主控芯片为 MT7621,访问官方发布页下载:
- 下载地址:
https://breed.hackpascal.net/breed-mt7621-pbr-m1.bin
2. 上传至路由器
使用 FTP 客户端(如 Cyberduck 或 SCP)连接 192.168.31.1,将 breed-mt7621-pbr-m1.bin 上传至路由器的 /tmp 目录。
3. 写入 Bootloader 分区
在 SSH 终端中执行以下命令刷入 Breed:
cd /tmp
mtd write breed-mt7621-pbr-m1.bin Bootloader
写入完成后路由器会自动重启。注意:进入 Breed 状态下路由器不开启 WiFi,指示灯可能变暗或不亮,此时将电脑通过网线直连路由器 LAN 口,若电脑自动获取到 192.168.1.x 网段 IP,在浏览器访问 http://192.168.1.1 即可进入 Breed 控制台。
刷入 OpenWrt 固件
下载官方镜像
OpenWrt 官方镜像提供 initramfs-kernel 与 squashfs-sysupgrade 两种格式:
initramfs-kernel运行在内存中,重启后配置丢失,适合临时引导。squashfs-sysupgrade为持久化固件。由于官方原版对 R4A 千兆版分区支持原因,部分官方版本可能会陷入无限重启。
构建 OpenWrt 镜像
推荐使用 GitHub Actions 自动化编译适配 R4A 的专用全功能固件(预置简体中文 LuCI 界面及常用网络插件):
- 参考项目:
https://github.com/unkaer/Actions-OpenWrt-Xiaomi-R4A - Fork 该仓库后进入 Actions 标签页,运行
编译小米R4A千兆版_默认工作流。 - 构建完成后在 Actions 运行详情页的 Artifacts 下载
OpenWrt_firmware_xiaomi_mi-router-4a-gigabit固件包。
Breed Web 刷入固件
- 浏览器打开 Breed 控制台(
http://192.168.1.1)。 - 点击 固件更新 -> 勾选 固件。
- 选择解压出的 Kernel/Sysupgrade 固件文件上传并执行更新。
- 刷写完成自动重启后,电脑重新获取 IP,在浏览器打开
http://192.168.31.1或http://192.168.1.1进入 OpenWrt LuCI 界面,默认用户名为root,默认密码为password。
救砖与重置说明
若后续固件异常或无法开机:
- 拔掉路由器电源线。
- 用取卡针长按机身背部的 Reset 重置小孔不要松手。
- 插上电源线通电,观察指示灯交替闪烁后松开 Reset 键。
- 电脑网线直连,浏览器访问
http://192.168.1.1即可重新进入 Breed 控制台刷入新固件。