首页
社区
课程
招聘
[原创]中兴ZTE ZX279128S芯片固件解密
发表于: 2023-4-23 23:10 40376

[原创]中兴ZTE ZX279128S芯片固件解密

2023-4-23 23:10
40376
收藏
免费 9
支持
分享
最新回复 (82)
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
76
大佬怎么联系
2024-1-29 00:02
0
雪    币: 181
活跃值: (154)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
77
楼主您好,我有一个zx279127的固件,也是分析了一半,现在也分析不下去了,我不能重新打包CPIO,只要重新打包了,刷进去就无限重启。。。。请问需要从哪入手才能解决啊?
2024-7-16 18:39
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
78
本人有279128芯片产品sdk源代码,可以无偿提供,哪位大神需要分析可以联系我
2024-7-25 23:03
0
雪    币: 180
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
79

不错不错

最后于 2024-8-27 11:38 被ringz编辑 ,原因:
2024-8-26 17:00
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
80
我改完了CRC值,提示Verify error kernel1 ret 12,这个又是啥呀,我改了header_crc32和data_crc32
2024-12-11 01:35
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
81
mb_buiexhfs 本人有279128芯片产品sdk源代码,可以无偿提供,哪位大神需要分析可以联系我
请问如何联系 我的邮箱chihaya-anon@outlook.com。我手里有279128开发板和带调试口的光猫。
2025-3-3 11:00
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
82
XYUU 通过比对,已经找到了修改zImage中gzip的全部偏移,维独还剩一个偏移量没有找到:seg000:400080C8 loc_400080C8    &nb ...
3. 代码逻辑分析
LDR R5, =0x2D290:把立即数 0x2D290 加载到 R5 寄存器。
ADR R1, loc_4000824C:把 loc_4000824C 这个地址加载到 R1 寄存器。
SUB R1, R6, R1:用 R6 寄存器的值减去 R1 寄存器的值,结果存于 R1 寄存器。
SUBS R1, R5, R1:用 R5 寄存器的值减去 R1 寄存器的值,结果存于 R1 寄存器,同时更新标志位。
ADDHI R9, R9, R1:若 CPSR 寄存器的 C 标志位为 1(即无符号数比较时 R5 > R1),就把 R9 寄存器的值加上 R1 寄存器的值,结果存于 R9 寄存器。
R5 偏移量的作用
R5 寄存器里的 0x2D290 这个偏移量或许是用来计算特定内存地址或者进行边界检查的。在 zImage 文件格式里,偏移量常常用于定位文件中的不同数据段,像压缩数据、解压缩代码、头部信息等。
推测用途
结合你提到的从 Image 到 zImage 的快速转换,0x2D290 这个偏移量可能和 zImage 文件里压缩数据的起始位置、解压缩缓冲区的大小或者其他关键信息的位置有关。你可以通过调试或者查阅 zImage 文件格式的文档来进一步明确这个偏移量的具体用途。
调试建议
日志输出:在代码里添加日志输出语句,把关键寄存器的值(例如 R5、R6、R9 等)打印出来,这样能观察它们在程序执行时的变化。
断点调试:使用调试器在 LDR R5, =0x2D290 指令处设置断点,逐步执行后续代码,查看寄存器的值和标志位的变化。
2025-4-13 20:49
0
雪    币: 574
活跃值: (459)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
83
厉害了楼主,mark一下
2025-4-27 18:01
0
游客
登录 | 注册 方可回帖
返回