小米路由器青春版刷入其他固件

2023-05-16

小米路由器青春版搭载的是基于OpenWRT深度定制的智能路由器操作系统MiWiFi ROM,实质即嵌入式linux系统。

小米路由器青春版自带的miwifi_r1cl_all_59371_2.1.26.bin及其以下版本中存在通过路由器web管理界面开启ssh的bug,借此契机我们通过外部工具对小米路由器自带的固件进行外部刷入。

miwifi固件ROM包下载地址

固件刷新步骤:

1. 进入路由器内部系统(开启ssh)
2. 备份原厂bin
3. 刷入breed管理固件
4. 进入breed管理界面,刷入外部固件(Padavan固件、华硕固件、梅林等)
5. 路由器重启,配置新的固件管理及测试

在开放平台中,我们很容易就能找到”开启SSH工具”,了解服务器的都知道,用SSH的方式,我们可以通过命令行的方式与系统进行连接,路由器系统也不例外。出于安全考虑,路由器系统都会把SSH关了,自然我们就不容易进到路由器的系统中。在寻找官方的开启SSH工具的过程中我们会发现,我们的小米路由器青春版其实是没有官方的开启工具的。

这个时候有细心网友及技术党发现,在旧版的开发版系统中(低于2.1.26皆可,含2.1.26),是可以直接通过修改路由管理器的请求地址的特定参数值对,而改变系统参数。

下面引用修改的方法:

一、刷回旧版固件,开启SSH

因小米官方并未开放青春版SSH开启工具,所以必须刷回旧版固件利用BUG获取权限。

1、刷入旧版固件

自行下载小米路由器青春版的2.1.26或低于该版本的ROM,并使用官方管理系统刷入,并完成进入路由器设置好密码等一系列操作。

2、登录路由管理界面

连接设置好的WiFi后在浏览器地址栏输入192.168.31.1,输入账号密码后,浏览器地址栏可以看到类似如下URL

http://192.168.31.1/cgi-bin/luci/;stok=351a9142135557c27acdeae2175381f9/web/home#router 

3、更改root密码

将以上地址URL中的

/web/home#router

改成

/api/xqsystem/set_name_password?oldPwd=当前路由的密码&newPwd=新的路由密码

这里我们可以设置新的路由密码为admin
然后在浏览器地址栏回车查看网页的返回结果,如果返回的JSON字符串是

{"code":0}

就已经成功的更改了root密码了。

4、启用路由器telnet登录

以同样的方式修改网址URL,把

/web/home#router

改为

/api/xqnetwork/set_wifi_ap?ssid=xiaomi&encryption=NONE&enctype=NONE&channel=1%3B%2Fusr%2Fsbin%2Ftelnetd

然后查看返回的JSON数据

{"msg":"未能连接到指定WiFi(Probe timeout)","code":1616}

返回码有可能不同,出现以上返回消息时已经可以通过telnet的方式来登录路由器了。

5、启用路由器SSH登录

下载Putty并打开,填写以下参数:连接类型:telnet;主机名称:192.168.31.1;打开后看到login,输入root,密码为刚修改后的新密码。若

输入密码时出现键盘无法输入时,解决办法如下:
右击putty菜单栏,打开设置界面,点terminal,在出现的界面中将implicit CR in every LF、implicit LF in every CR勾选,local echo下点选force on,然后apply即可。
在这里插入图片描述
登录后依次执行下面的三条指令:

sed -i ":x;N;s/if \[.*\; then\n.*return 0\n.*fi/#tb/;b x" /etc/init.d/dropbear
/etc/init.d/dropbear start
nvram set ssh_en=1; nvram commit

到此SSH已完成开启。

二、备份并刷入Breed固件

1、备份原厂bin

1.1、Putty操作

打开Putty,按以下选择或填写:主机名:192.168.31.1;端口号22;连接类型:ssh。如有提示点击更新或者确定。弹出窗口输入用户名:root;密码:上面设置的新密码。然后在Putty命令行窗口中输入命令

cat /proc/mtd

在这里插入图片描述
可以看到有十个固件和分区,看名字可以知道第一个mtd0固件包含已全部分区的数据(All),第二个是Bootloader。 输入命令

dd if=/dev/mtd0 of=/tmp/all.bin

在这里插入图片描述
这表示备份第一个固件到tmp文件夹的all.bin文件中,如有需要可按对应的方式备份其他分区数据。

cd /tmp
mkdir rom
dd if=/dev/mtd0 of=/tmp/rom/ALL.bin
dd if=/dev/mtd1 of=/tmp/rom/Bootloader.bin
dd if=/dev/mtd2 of=/tmp/rom/Config.bin
dd if=/dev/mtd3 of=/tmp/rom/Factory.bin
dd if=/dev/mtd4 of=/tmp/rom/OS1.bin
dd if=/dev/mtd5 of=/tmp/rom/rootfs.bin
dd if=/dev/mtd6 of=/tmp/rom/OS2.bin
dd if=/dev/mtd7 of=/tmp/rom/overlay.bin
dd if=/dev/mtd8 of=/tmp/rom/crash.bin
dd if=/dev/mtd9 of=/tmp/rom/reserved.bin
dd if=/dev/mtd10 of=/tmp/rom/Bdata.bin

也可使用终端登录路由器:ssh -l root 192.168.31.1,密码:新设置的密码

1.2、Winscp操作

打开Winscp,按以下选择或填写:文件协议:SCP;主机名:192.168.31.1;端口号:22;用户名:root;密码:上面设置的新密码。如有提示点击更新或者确定。进入/tmp文件夹将备份到 /tmp/rom 中的这些 bin 文件拷贝出来作为备份,因为 tmp 目录是个临时存放处,当系统重启时临时文件就会丢失。
在这里插入图片描述

恢复命令 (以后备用)

mtd write /tmp/rom/Bootloader.bin Bootloader
mtd write /tmp/rom/Config.bin Config
mtd write /tmp/rom/Factory.bin Factory
mtd write /tmp/rom/OS1.bin OS1
mtd write /tmp/rom/rootfs.bin rootfs
mtd write /tmp/rom/OS2.bin OS2
mtd write /tmp/rom/overlay.bin overlay
mtd write /tmp/rom/crash.bin crash
mtd write /tmp/rom/reserved.bin reserved
mtd write /tmp/rom/Bdata.bin Bdata

2、下载并刷入Breed

2.1、下载Breed

Breed发布地址,进入作者提供的下载地址https://breed.hackpascal.net,选择breed-mt7688-reset38.bin和md5sum.txt下载。(注意:下载后一定要校验bin文件的MD5值,将校验结果与md5sum.txt文件中对应bin文件的MD5值比对,如MD5值不符,重新下载并校验)。将breed-mt7688-reset38.bin改名为breed.bin,方便后续操作。
校验过程:使用Command Prompt(CMD)、Powershell 均可。

certutil -hashfile 文件路径/文件名称 MD5
certutil -hashfile 文件路径/文件名称 SHA1
certutil -hashfile 文件路径/文件名称 SHA256

CertUtil -hashfile C:\xxx.tar MD5
此命令不仅可以做MD5哈希算法校验,还支持其他的哈希算法,具体如下:
CertUtil -hashfile 文件路径 [算法]
支持的算法有:MD2 MD4 MD5 SHA1 SHA256 SHA384 SHA512

在这里插入图片描述
比对官方发布的MD5文件中的MD5码发现一致,083bd22c3048383aab718e0662487ad1 breed-mt7688-reset38.bin,证明breed的bin包可用。

2.2、刷入Breed

通过WinScp把breed.bin传入到/tmp中。然后使用Putty,输入命令

mtd -r write /tmp/breed.bin Bootloader

将breed刷入bootloader,刷入成功后按提示重启路由器。

三、Breed的使用与固件推荐

1、进入breed控制台

拔掉路由器电源,使路由关机,用取卡针或者其他尖锐物戳着reset键,然后插上电源,待路由器后方的网络接口灯闪烁时松开reset键即可,然后用一条网线把电脑和路由器的WAN口相连,打开浏览器访问192.168.1.1,即可进入breed控制台。进入后即可开始对路由器进行刷机。
在这里插入图片描述

2、路由器固件推荐

推荐使用Padavan固件,固件发布地址:http://opt.cn2qq.com/padavan/(注意:小米路由器青春版请选择MI-NANO专版,目前最新版固件名称如下:MI-NANO_3.4.3.9-099.trx)。

Padavan 默认配置 旧固件网关:192.168.1.1 新固件网关:192.168.123.1 管理页面:http://my.router/ 管理账号:admin/admin wifi:1234567890 

在这里插入图片描述
路由器插件使用:https://blog.csdn.net/Josh_Zhen/article/details/83718410
老毛子固件基础教程:http://www.duomingxing.com/jiaocheng/padavan/
也可以使用其他固件。
梅林固件ss账号教程:https://www.johntitorblog.com/?p=310
tomato固件:http://dl.tomato.org.cn/mt7620/
华硕RT-N56U:https://bitbucket.org/padavan/rt-n56u/src/master/

四、原厂固件刷回

小米路由器破解开启SSH 小米路由器mini丢失SN后恢复找回SN 完美无需编程器!https://www.right.com.cn/forum/thread-178547-1-1.html

找个官方固件名称包含 “all” 就是带u-boot
登陆Breed刷官方固件
重启登陆后台再手动升级固件(换掉Breed)
开启SSH,修复SN
最后再升级到最新固件

http://www.miui.com/thread-1776173-1-1.html
https://www.right.com.cn/forum/thread-178547-1-1.html

相关资料:https://blog.csdn.net/Josh_Zhen/article/details/83716624
锐捷校园网:小米mini路由刷Padavan固件实现wifi上网
https://blog.csdn.net/u013447565/article/details/78007540
小米路由器3实现锐捷认证[免刷固件]
https://blog.csdn.net/dj741/article/details/78871797
小米 mini 路由器刷 openwrt
https://blog.csdn.net/weixin_33941350/article/details/91997894
小米路由器MINI 潘多拉迅雷远程/xunlei安装教程
https://blog.csdn.net/lbsjs/article/details/90705922
關於小米路由器老毛子Padavan固件中ss的使用
https://blog.csdn.net/Josh_Zhen/article/details/83718410
小米路由器mini刷7620老毛子Padavan固件
https://blog.csdn.net/Josh_Zhen/article/details/83716624
小米路由器刷入Padavan系统
https://www.jianshu.com/p/e49f4e19396a
小米路由器青春版 开启ssh 刷入breed 潘多拉 华硕 固件
https://www.jianshu.com/p/6cbf7251c551
小米路由器青春版刷潘多拉、华硕固件
https://blog.csdn.net/qq_19666821/article/details/69948930

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

小米路由器青春版刷入其他固件 的相关文章

  • Matlab日记

    Matlab中对clear函数赋值后如何清除变量 xff1f 方法很多 xff0c 一般用 builtin clear b u i l t i n 执 行 内 建 的 函 数 b u i l
  • QT_Windows_命令行下编译,发布

    本文所使用到的资源链接 xff1a 1 所有QT版本镜像下载 2 单文件制作封装工具Engima Virtual Box 环境配置 xff1a 报如下错 xff0c 参考这个 在我这里是因为 xff1a 系统的环境变量的目录中有几个版本不同
  • 容斥原理详解

    翻译 xff1a vici 64 cust 对容斥原理的描述 容斥原理是一种重要的组合数学方法 xff0c 可以让你求解任意大小的集合 xff0c 或者计算复合事件的概率 描述 容斥原理可以描述如下 xff1a 要计算几个集合并集的大小 x
  • 2018ACM/ICPC全国邀请赛(江苏) 总结

    抱憾打铁 整理了一下今天的思路 xff0c 记录如下 开始时我先开的A题 xff0c 我感觉是模拟 xff0c 和lqs讨论了一下 xff0c 感觉会T xff0c 就想其他方法了 开始wjj开的B xff0c 他说感觉是推个公式 xff0
  • HDU 1002 Java大数

    题意很简单输出 a 43 b a 43 b 只不过 a a 和 b b 都很大 xff0c 需要处理大数问题 Java大数解决方法 xff0c 详见代码 xff1a import java io import java util impor
  • broadcom OF-DPA

    https www broadcom com products ethernet connectivity software of dpa http broadcom switch github io of dpa doc html OFD
  • 【论文笔记】Spatial Temporal Graph Convolutional Networks for Skeleton-Based Action Recognition...

    Spatial Temporal Graph Convolutional Networks for Skeleton Based Action Recognition 2018 01 28 15 45 13 研究背景和动机 xff1a 行人
  • Windows下GCC编译环境中文乱码解决方案

    转载声明 xff1a 来自https blog csdn net MyLibs article details 27913281 在编译参数中增加以下两条指令 xff1a fexec charset 61 gbk finput charse
  • C++ 读入优化与输出优化 模板

    来自 xff1a https blog csdn net liyizhixl article details 54412459 简介 C 43 43 是一种神奇的编程语言 自然 xff0c 读入和输出也有着许多种形式 xff1a 如 xff
  • RMQ(range minimum/maximum query)即查询区间最大最小值。

    转载来自 https www cnblogs com yyxayz p 4109390 html 对于求区间最大最小值 xff0c 我们自然而然就想到了一个O xff08 n xff09 时间复杂度的算法 xff0c 但是如果询问有很多呢
  • 数论小知识点总结

    m i 61 1 g c d m i 61 d m d m d i 61 1 m g
  • 牛客国庆集训派对Day1(A C E L)

    链接 xff1a https www nowcoder com acm contest 201 question 牛客国庆集训派对Day1 A Tobaku Mokushiroku Kaiji xff08 水题 xff09 C Utawar
  • 牛客国庆集训派对Day2(A F H)

    链接 xff1a https www nowcoder com acm contest 202 question 牛客国庆集训派对Day2 A 矩阵乘法 xff08 分块 xff09 F 平衡二叉树 xff08 数据结构 xff09 H 卡
  • Git learn

    分布式版本控制系统 Git https git scm com 一 初始化 init xff0c 添加 add 到暂存区 stage xff0c 提交 commit 到版本库 master 二 工作区 xff0c 版本库 状态 status
  • 牛客国庆集训派对Day4(A D I J)

    链接 xff1a https www nowcoder com acm contest 204 question 牛客国庆集训派对Day4 A 深度学习 xff08 思维水题 xff09 D 最小生成树 xff08 思维 xff09 I 连
  • Codeforces Round #513 by Barcelona Bootcamp (rated, Div. 1 + Div. 2) (A B C)

    链接 xff1a http codeforces com contest 1060 Codeforces Round 513 A Phone Numbers xff08 水题 xff09 B Maximum Sum of Digits xf
  • 计算几何 (POJ1127 、 )

    计算几何 1 判断线段是否相交 1 判断线段是否相交 在不需求出交点 xff0c 只需判断两条线段是否相交 xff0c 可以使用 1 快 速 排 斥 实
  • oled显示乱码解决方法

    有时候oled偶尔发生乱码 xff0c xff08 大多数时候正常 xff0c 偶尔乱码 原因分析 xff0c 由于显示oled时使用的i2c连线较长 xff0c 会出现更大的电感 进而出现振铃现象 解决办法 在时钟线和数据线中串联100欧
  • 次短路

    次短路 概念 xff1a 次短路是相对于最短路的 xff0c 简单来说就是第二短的路径 方法 xff1a d i j k s t r
  • 2017icpc沈阳站_M_HDU-6229_(思维)

    链接 xff1a http acm hdu edu cn showproblem php pid 61 6229 题意 xff1a 给一个矩阵上面有一些坏点 xff0c 坏点不能走 xff0c 起点是 0 0

随机推荐

  • CSP认证 201803-3 URL映射

    CSP认证 201803 3 URL映射 链接 xff1a http 118 190 20 162 view page gpid 61 T71 题意 xff1a 从简条件下的 U R L 映 射 URL映射
  • 2017icpc沈阳站_M_HDU-6229_(思维)

    链接 xff1a http acm hdu edu cn showproblem php pid 61 6229 题意 xff1a 给一个矩阵上面有一些坏点 xff0c 坏点不能走 xff0c 起点是 0 0
  • 【Java】程序设计竞赛(Java 方向)

    目录 1 头文件2 输入3 输出4 大数计算5 进制转换6 字符串7 排序8 优先队列9 二分10 Map11 Set 1 头文件 span class token keyword import span java span class t
  • HDU_3089_约瑟夫环快速递推

    HDU 3089 约瑟夫环快速递推 链接 xff1a http acm hdu edu cn showproblem php pid 61 3089 题意 xff1a 约瑟夫环问题 给出 n n n 个人 xff0c 从 1
  • 【ACM】编程笔记

    1 编译错误1 Windows下GCC编译环境中文乱码2 Java中编译错误 编码GBK的不可映射字符 2 JavaJava中 String 和 Integer 的相互转换 3 C C 43 43 C 43 43 中 int 和 strin
  • RSA 算法流程及证明

    RSA 算法流程及证明 需要的前置知识 xff1a 欧拉函数 xff0c 欧拉定理 xff0c 费马小定理 xff0c 同余式乘法性质 xff0c 互质数判断 算法描述算法流程RSA 算法证明RSA 算法 C 43 43 实现参考资料 算法
  • ftp上传不成功,提示 200 227 501 错误

    solve xff1a 检查文件名是不是中文字符 xff0c 若是 xff0c 请换成英文文件名 origin xff1a https www cnblogs com mubin p 3528353 html
  • 【WIN10】添加全局快捷键

    WIN10 添加全局快捷键 打开控制面板 点击管理工具 将 设置好快捷键 的 快捷方式 复制 移动 进 管理工具文件夹 重启 xff0c 一定要重启 xff0c 加张图片告诉你 重启
  • 如何解析DICOM文件中的Pixel Data ?

    DICOM文件可以大致分为两部分 xff1a 一部分 xff1a 与图像相关的元信息 xff0c 包括患者信息 xff0c 检查信息 xff0c 序列信息 xff0c 图像信息等等 另一部分 xff1a 图像的像素数据 在解析DICOM文件
  • 【ARM】ADS1.2 破解版安装后无法运行

    ADS1 2 安装文件 https pan baidu com s 1g0AU kxxs pqsn Lgs8evA 提取码 xff1a 5c6h WIN10 安装 ADS1 2 可能会遇到一堆兼容性bug 我的解决方法如下 xff08 不完
  • 【ARM】微处理器工作模式

    收获 SPACE 和 DCD 的区别在于 xff1a SPACE 申请一片内存空间 以字节为单位申请 xff0c 但不赋初值 DCD 申请一个字 32bit 的内存空间 xff0c 并赋初值 对于 32 位的 ARM xff0c 一个字为
  • 【MAC】添加软连接 将 sublime 放入命令行中

    软链接 类似于 Windows 的快捷方式加环境变量 将 Sublime Text 以 subl 作为新的名字进行全局软连接 span class token function sudo span span class token func
  • 【ARM】 《C 语言调用汇编子程序》 与 《汇编调用 C 语言程序》

    题目 xff1a 实现计算 1 43 2 43 3 43 43
  • 【MAC】启动 ssh 服务 及 ssh 长时间不用自动断开解决

    一 启动 ssh 服务 mac本身安装了ssh服务 xff0c 默认情况下不会开机自启 启动sshd服务 xff1a span class token function sudo span launchctl load w System L
  • 【Linux】ssh 链接服务器 并 安装宝塔面板

    一 ssh 链接服务器 xx 是连接 ssh 的端口号 xx xx xx xx 是 IP 号 span class token function ssh span p xx root 64 xx xx xx xx 二 安装宝塔面板 yum
  • 【Linux】解决 SS 在安装宝塔面板后无法连接服务器问题

    问题 xff1a 在安装宝塔面板后 ss 无法使用 xff0c 但是 ssh 可以连接服务器 原因 xff1a 因为宝塔面板的安全设置默认会禁止除 ssh 端口外的所有端口 解决 xff1a 找到宝塔面板里的安全将 ss 的 server
  • 【SSH】解决 WIN10 通过 ssh 连接 Mac 中文乱码

    问题 xff1a MacOSX 下默认的是 utf 8 字符集 xff0c WIN10 通过 ssh 连接后显示是 utf 8 xff0c 但是中文乱码 原因 xff1a 这种情况一般是终端和服务器的字符集不匹配 在 Mac 终端中输入 l
  • 【python】Notebook

    CONTENT 1 小Tips三元运算符平均数 np mean range 与 np arange 求最大 小值及索引值合并 list 为字符串剪切板模块 pyperclip将秒数转化为小时分钟秒 2 数学随机数 3 文件相关按分隔文件路径
  • 【Mac】Mac 系统读写 NTFS 格式硬盘

    查看磁盘 typename diskutil list 更新 etc fstab文件 sudo vim etc fstab 写入如下内容 xff1a LABEL 61 GRMCULXFRER none ntfs rw auto nobrow
  • 小米路由器青春版刷入其他固件

    小米路由器青春版搭载的是基于OpenWRT深度定制的智能路由器操作系统MiWiFi ROM xff0c 实质即嵌入式linux系统 小米路由器青春版自带的miwifi r1cl all 59371 2 1 26 bin及其以下版本中存在通过