前排提示:

如果使用虚拟机刷机的,需要在设置虚拟机的地方把网络设置成桥接模式, 也就是书需要在要刷机的小米路由器的网段下
说人话就是小米ip是192.168.31.1 你的机器ip需要是192.168.31.x 否则无法开启telnet

注意:必须使用路由模式,中继模式是打不开telnet的

该方法目前实测适用于3c 3G 3a 4a百兆版 4a千兆版
理论适用小米4代及以前的所有产品

视频教程

引用

刷机参考此文
原生固件来源

水友反馈

A:建议linux下使用这个python包,windows和mac下一大堆问题,我原来3.8安装依赖包时失败了 又改了教程里要求的3.6

-------- 来自水友 (~36~)

B:小米3C要用0.0.2版本,只有0.0.2版本可以用,秒进。我刷这个用的win10直接运行python

---- 来自水友 小麻瓜。

C:這邊想要指正一點關於 xhell中逐条执行以下命令,备份至tmp目录 這一節。這邊如果備份後沒有及時清除空間,會造成/tmp目錄空間佔用過多造成路由器卡死。在我的小米4C上實測是這樣的,希望可以加個tips說明一下。

---- 来自水友 nickname。

A.工具准备:

1.准备电脑一台

win10+ubuntu子系统(以下统称linux)或者linux系统或者win7等+虚拟机(以下统称linux)

2.准备小米路由器若干

B.教程开始:

小米路由器先升级成我提供的固件

1.使用root登陆进入linux系统

2.换成国内源

这里我使用的是ubuntu16.04,18系统的请自行百度,或者换16
首先备份源
为了照顾小白,还是说一下吧,sudo是使用root权限执行命令,所以输入这个命令后会让你输入密码。
此时输入的密码你是看不见的,实际上是输入进去了,不必担心。
对了,补充一句,密码是你当前用户的密码。
如果你当前用户是root用户,那么默认是不会让你输入密码的。

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
#备份原有源

编辑

cd /etc/apt/
sudo vim ./sources.list
#编辑原有源

复制代码,然后把你的输入法调成英文,然后按两下d键,会删除一行,就这样,把所有内容都删了
然后按 i 进入编辑模式

1.更换阿里源

#更换阿里源
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

2.更换清华源

#更换清华源
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

粘贴进去之后,点ESC,然后输入 :wq 然后点回车,就保存好了
接下来更新源

apt-get update
apt-get upgrade

耐心等待更新完成(如果准备我上面说的第二个工具,此时你几乎不用等待)

3.安装python3

下面的命令一条一条的复制粘贴回车。

sudo apt-get install python3.6
sudo apt-get install python3-pip

4.电脑连接小米路由器(wifi,网线都行)

电脑浏览器打开小米路由器的管理页面
不要关闭

5.回到linux把代码拉到本地

https://github.com/acecilia/OpenWRTInvasion 的代码利用下面的命令下载下来

wget https://github.com/yuos-bit/OpenWRTInvasion/archive/refs/tags/0.0.2.zip && unzip 0.0.2.zip
# github源
wget https://gitee.com/yuos-bit/other/attach_files/893486/download/OpenWRTInvasion-0.0.2.zip && unzip OpenWRTInvasion-0.0.2.zip
# gitee源

6.下面利用漏洞开启telnet

cd OpenWRTInvasion-0.0.2
/*如果使用OpenWRTInvasion-0.0.3请使用命令 cd OpenWRTInvasion-0.0.3/ */
pip3 install -r requirements.txt
python3 remote_command_execution_vulnerability.py

输入完之后系统会提示你输入路由器的ip 默认是192.168.31.1
回车之后会让你输入stok。这个stok就在上面我说的不让你关闭的小米路由器的管理页面。
你地址栏显示的应该是

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

这里面的xxxxxx就是你的stok
在地址栏复制stok,粘贴在linux里面 然后回车。
自动利用漏洞开启telnet
当显示telnet 192.168.31.1的时候一般来说就是成功了

7.telnet连接路由器,先备份原有固件以及eeprom(非常重要)

1.备份编程器固件

xhell登录路由器
shell工具下载
xhell中逐条执行以下命令,备份至tmp目录,使用win10自带的资源管理器访问 ftp://192.168.31.1 即可

查看分区如下,命令:

cat /proc/mtd

root@XiaoQiang:~# cat /proc/mtd

dd if=/dev/mtd0 of=/tmp/mtd0.bin
dd if=/dev/mtd1 of=/tmp/mtd1.bin
dd if=/dev/mtd2 of=/tmp/mtd2.bin
dd if=/dev/mtd3 of=/tmp/mtd3.bin
dd if=/dev/mtd4 of=/tmp/mtd4.bin
dd if=/dev/mtd5 of=/tmp/mtd5.bin
dd if=/dev/mtd6 of=/tmp/mtd6.bin
dd if=/dev/mtd7 of=/tmp/mtd7.bin
dd if=/dev/mtd8 of=/tmp/mtd8.bin
dd if=/dev/mtd9 of=/tmp/mtd9.bin
dd if=/dev/mtd10 of=/tmp/mtd10.bin
dd if=/dev/mtd11 of=/tmp/mtd11.bin
dd if=/dev/mtd12 of=/tmp/mtd12.bin

2.备份eeprom

eeprom

dd if=/dev/mtd3 of=/tmp/eeprom.bin
# 需要备份的eeprom 请根据实际更改命令备份 Factory(mtd*)分区,大小一般为64kb

xhell中逐条执行以下命令,备份至tmp目录,使用winscp下载备份,协议选scp
也可以使用 FinalShell下载
FinalShell

8.获取breed

小米4A千兆版 :

cd /tmp && wget https://gitee.com/yuos-bit/other/attach_files/893476/download/breed-mt7621-pbr-m1.bin

小米3G 和 小米4:

cd /tmp && wget https://gitee.com/yuos-bit/other/attach_files/893478/download/breed-mt7621-xiaomi-r3g.bin

小米3A,3C,4A百兆版,4C:

cd /tmp && wget https://gitee.com/yuos-bit/other/attach_files/893477/download/breed-mt7688-reset38.bin

网盘地址:小渔网盘

9.将备份的eeprom保存到本地

a.下载winscp

b.下载Finalshell

两者任选其一

下载好之后,参照下图连接路由器

登陆后,右边找到tmp文件夹,点进去下载eeprom.bin到本地。(非常重要)

10.刷breed

mtd write breed-mt7688-reset38.bin Bootloader
# 小米3A,3C,4A百兆版,4C
mtd write breed-mt7621-xiaomi-r3g.bin Bootloader
# 小米3G 和 小米4
mtd write breed-mt7621-pbr-m1.bin Bootloader
# 小米4A千兆版 

第一次进breed刷固件的时候,需要先按照第二张图固件更新上传固件的同时把eeprom然后把备份的eeprom(信号文件)给刷了。
怎么刷eeprom?


你要是还不会,那么抱歉。。。我帮不了你

刷完后自动重启

拒绝龟速百度,从点滴做起!

11.固件下载链接:

蓝奏网盘
小渔网盘

12.padavan下载链接:

蓝奏网盘
小渔网盘
Github下载

13.固件Web管理:

openwrt默认网关地址:10.32.0.1
Openwrt web:root
password:password

padavan默认网关地址:10.32.0.1
Padavan Web: admin
password:admin
如果是从光猫DHCP下来的请修改默认网关地址,否则网关冲突没网!

14.补充



经过本人实际测试,建议使用miwifi_r4cm_firmware_c6fa8_3.0.23_INT版本进行破解,其他版本亲测不太好破解Telnet

Last modification:November 27th, 2021 at 02:25 pm
如果觉得我的文章对你有用,请随意赞赏