本文章系个人为了学习和研究软件内含的设计思想和原理

该文章适用于8M系列 ZTE固件 16M略有不同

固件提取
使用Flash编程器提取 例如 CH341A XTW100等 (个人推荐XTW系列)

image-20230614153826317

固件分析
使用Binwalk分析固件

image-20230528145411843

偏移地址:4882432 (0x4A8000)

文件系统类型:Squashfs

字节序:Little endian

版本:4.0

压缩方式:xz

文件系统大小:2971894字节

inode数量:668

块大小:262144字节

固件解包

dd if=YEBEI_TDD_8M.bin of=squashfs_image.sqfs bs=1 skip=4882432 count=2971894

使用dd命令将其中的Squashfs分区提取

安装 squashfs-tools

使用

unsquashfs squashfs_image.sqfs

解包固件 得到以下文件列表

image-20230622152143002

固件打包
使用如下命令打包固件

image.png

mksquashfs squashfs-root/ new_squashfs_image.sqfs -comp xz -noappend -b 262144 -no-xattrs -always-use-fragments -all-root

squashfs-root/ 是你解包的目录 262144是blocksize 参考上面的binwalk参数修改

-no-xattrs -always-use-fragments -all-root 为辅助参数 参考图上unsquashfs解析结果

得到新文件new_squashfs_image.sqfs

dd if=new_squashfs_image.sqfs of=YEBEI_TDD_8M.bin bs=1 seek=4882432 conv=notrunc

seek=4882432 参考binwalk分析结果
这时就可以使用编程器刷入修改后的固件 建议刷入后恢复一次出厂设置 确保nv参数生效

切记 任何操作前请备份原始固件

郑重警告
本人所写文章仅供学习参考,严禁非法使用,如非法使用,而导致的一切后果,由使用者自负。

文章作者: Zy143L
文章链接: https://momoe.ml/shizuku/063328.html

love love love

最后修改:2024 年 02 月 25 日
如果觉得我的文章对你有用,请随意赞赏