张小牛 发表于 2022-2-3 00:07:04

8145x6固件解包方法

本帖最后由 张小牛 于 2022-2-15 10:12 编辑

# cat /proc/mtd
dev:    size   erasesizename
mtd0: 00100000 00020000 "bootcode"
mtd1: 0ff00000 00020000 "ubilayer_v5"
mtd2: 0001f000 0001f000 "flash_configA"
mtd3: 0001f000 0001f000 "flash_configB"
mtd4: 0001f000 0001f000 "slave_paramA"
mtd5: 0001f000 0001f000 "slave_paramB"
mtd6: 030ec000 0001f000 "allsystemA"
mtd7: 030ec000 0001f000 "allsystemB"
mtd8: 00117000 0001f000 "keyfile"
mtd9: 0103a000 0001f000 "frameworkA"
mtd10: 0103a000 0001f000 "frameworkB"
mtd11: 0001f000 0001f000 "wifi_paramA"
mtd12: 0001f000 0001f000 "wifi_paramB"
mtd13: 00a0d000 0001f000 "file_system"
mtd14: 06064000 0001f000 "apps"

#dd if=/dev/mtdblock6 of=rootfs.bin

用HWFW_GUI 1.0.8 beta5打不开这个rootfs.bin,原作者已经停更,没有新版本了。



张小牛 发表于 2022-2-3 09:54:12

hutuch 发表于 2022-2-3 09:37
如何搞定的,请介绍一下嘛,谢谢了哈。

ultraedit打开就可以看到,搜关键字whwhV。稍后我写个拆出rootfs的脚本。解包好办,难的是修改后装回去,不知道有没有校验、会不会变砖。

张小牛 发表于 2022-2-3 01:27:05

搞定!一共打包了4个文件,分别是:签名、uboot、kernel和rootfs。

hutuch 发表于 2022-2-3 09:37:26

张小牛 发表于 2022-2-3 01:27
搞定!一共打包了4个文件,分别是:签名、uboot、kernel和rootfs。

如何搞定的,请介绍一下嘛,谢谢了哈。

zhjook 发表于 2022-2-3 15:54:32

正常来说 那个工具 是可以导出模块的,

校验是有的,在签名里边 ,是sha256 的哈希

520beibei 发表于 2022-2-3 17:40:34

导出来也刷不进去的,目前没方法刷合成固件

张小牛 发表于 2022-2-3 18:08:02

520beibei 发表于 2022-2-3 17:40
导出来也刷不进去的,目前没方法刷合成固件

mtd write和dd都不行吗?

张小牛 发表于 2022-2-3 18:26:13

zhjook 发表于 2022-2-3 15:54
正常来说 那个工具 是可以导出模块的,

校验是有的,在签名里边 ,是sha256 的哈希 ...

我试过,“打开文件失败!,错误码[-6]"

520beibei 发表于 2022-2-3 18:39:42

张小牛 发表于 2022-2-3 18:08
mtd write和dd都不行吗?

解锁分区后,dd刷分区可以

张小牛 发表于 2022-2-3 19:45:52

本帖最后由 张小牛 于 2022-2-3 20:42 编辑

写了个非常丑陋的拆rootfs的脚本,大家来改进,哈哈

dd if=mtdblock6.bin of=rootfs.img skip=$(($((0x`hexdump -C mtdblock6.bin | sed -n '/whwhV/h;${x;p}' | cut -c 1-8`)) + $((0x94)))) iflag=skip_bytes
页: [1] 2 3
查看完整版本: 8145x6固件解包方法