找回密码
 注册

QQ登录

只需一步,快速开始

查看: 44917|回复: 102

中兴光猫固件提取

  [复制链接]
发表于 2020-3-25 02:23:32 | 显示全部楼层 |阅读模式
本帖最后由 tm5880891 于 2020-3-25 02:33 编辑
  X  W) C2 n6 ?- y5 d* o$ C7 S* @* e1 r9 m( Y1 s$ q1 c% a, r
1.通过/proc虚拟文件系统读取MTD分区表:
/ # cat/proc/mtd
dev:    size  erasesize  name
mtd0: 0800000000020000 "whole flash"
mtd1: 0020000000020000 "u-boot"
mtd2: 0040000000020000 "parameter tags"
mtd3: 0140000000020000 "kernel0"
mtd4: 0040000000020000 "middleware"
mtd5: 0080000000020000 "usercfg"
mtd6: 0140000000020000 "kernel1"
mtd7: 0060000000020000 "others"
mtd8: 0040000000020000 "wlan"
' H  x$ Q4 p% I% |& w
这就是所有的分区内容了
+ Y$ n" C* o$ m- c% u- v# m& ~- g" x; @
要求:需要使用 dd 命令依次取出这些分区里的内容

2 s+ ^' Q1 j0 n. T
2.中兴光猫自带的busybox 没有 dd 命令,因此需要导入一个带有dd命令的busybox
* W: F* F: H0 j) E' s
导入前要先查看光猫 CPU 信息,方便导入对应的busybox
" D3 ]; ^4 {& x' R( P4 ~9 _" C, _
/ # cat/proc/cpuinfo
Processor       : ARMv7 Processor rev 1 (v7l)
BogoMIPS        : 1599.07
Features        : swp half fastmult edsp
CPU implementer: 0x41
CPUarchitecture: 7
CPUvariant     : 0x4
CPU part        : 0xc09
CPUrevision    : 1
6 \( |% E# F; S8 h. C7 Z/ }2 n2 r
Hardware        : HGU
R
evision        : 0000
Serial          : 0000000000000000
/ #
7 A9 P# A, P" o( @. Y& d
注意到 Processor 为 ARMv7 Processor rev 1 (v7l)

: G! K+ I0 M, v  m+ J/ N
因此得导入arm v7l 版本的 busybox
+ B$ E& H- h/ F* \/ R+ k" f. e
在所在文件的目录下开启tftpd软件
cd /tmp
tftp -g -r busybox-armv7l -l busybox-armv7l 192.168.1.2
chmod +x busybox-armv7l
mv busybox-armv7l busybox

+ M: e* J$ Q% }: g+ w. m! p
3.开始拷贝文件

/ a. y! B# t3 _7 X" j6 k
cd /tmp
% [0 f# G. X; H( b( ~' @: a$ Y$ x
dd if=/dev/mtd1 of=/tmp/u-boot.bin    # 打包分区
tftp -l u-boot.bin -p 192.168.1.2     # 上传打包的分区到本地 tftp 服务器
2 a# Y4 R0 x' n
至此,按各分区大小和所在目录分别传输完毕...

( `2 P* }2 Y$ I+ L1 H
- W7 r+ D$ f7 F1 t
/ P9 Z$ v& P1 a2 I0 p" y

; H6 ^7 z% E7 R8 m0 T% |& j4 H' a! E  x( i
 楼主| 发表于 2020-7-14 17:47:27 | 显示全部楼层
hvon 发表于 2020-7-14 14:43: c1 K! ~" Q8 y8 J! a/ b) g# ]
提取分区数据之后,还要分析出固件的数据,例如固件的头,kernel和系统文件的压缩区域,然后再根据逆向出的crc3 ...
% Q3 Q; S' a8 Y( W. k0 n& \+ Y- h
嗯,你说的很对嘛,但这个不教
发表于 2023-11-20 20:24:18 | 显示全部楼层
tm5880891 发表于 2022-5-24 22:51
5 F# V" ]) A5 W5 ^3 A, m所有的固件都可以提取,不论他是什么产品,只是他带了固件就成
. _  ^" L" J  J
大佬, 联通版 中兴F4610U T1版本的固件 你呢有吗?
发表于 2023-4-23 00:21:54 | 显示全部楼层
tm5880891 发表于 2020-3-25 23:19
$ A0 z+ B3 H$ w* c  o/ w每个型号按每个型号的搞法的,我这个提的是中兴F460 5.0。具体情况根据自己的猫目录和版本号加以灵活应用 ...

4 y3 {7 P+ X4 i' K. F, C实际提取固件不需要用dd,这个型号的原厂固件里带有nanddump这个命令,还有nandwrite。
4 T0 q# s6 B1 A; ?( Enanddump -f nandinfo.txt /dev/mtd0+ X8 x, ?" s& }- }4 e" ^9 n. w
nandwrite -p /dev/mtd6 /mnt/usb1_1/mtd6_kernel1.bin
 楼主| 发表于 2020-3-25 23:19:16 | 显示全部楼层
ftth650603 发表于 2020-3-25 23:17
4 N: ^: @5 j4 a我的光猫是中兴F607怎么输入cat /proc/cupinfo之后。和你的显视版本不一样呢。而且用你的命令也出错呀。 ...

% E  W  G3 z! M: e( j每个型号按每个型号的搞法的,我这个提的是中兴F460 5.0。具体情况根据自己的猫目录和版本号加以灵活应用
发表于 2020-3-25 10:32:23 | 显示全部楼层
请问下,这个上传到tmp下的busybox可以拷贝到/bin下覆盖原来的busybox吗," `2 h7 V& K8 }# \7 o2 G
 楼主| 发表于 2020-3-25 11:19:35 | 显示全部楼层
zhy123138 发表于 2020-3-25 10:32# b5 Y/ l2 d! a' \3 i
请问下,这个上传到tmp下的busybox可以拷贝到/bin下覆盖原来的busybox吗,
& w& K. I  m, {3 H0 O
没必要覆盖原来的,直接在tmp下运行他就行了
发表于 2020-3-25 17:29:49 | 显示全部楼层
虽然看不太懂  但还是要顶一下
发表于 2020-3-25 18:49:49 | 显示全部楼层
导出来的系统怎么恢复到其他猫上
发表于 2020-3-25 18:57:02 | 显示全部楼层
还是要顶一下............
发表于 2020-3-25 22:46:36 | 显示全部楼层
盖楼,群主积分太多了
 楼主| 发表于 2020-3-25 22:59:55 | 显示全部楼层
hdros 发表于 2020-3-25 18:49
- g8 F$ |0 I: \导出来的系统怎么恢复到其他猫上
7 [$ w: e' S- E( d
个人算了,商家加V
发表于 2020-3-25 23:17:33 | 显示全部楼层
我的光猫是中兴F607怎么输入cat /proc/cupinfo之后。和你的显视版本不一样呢。而且用你的命令也出错呀。
*滑块验证:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|宽带技术网 |网站地图

粤公网安备 44152102000001号

GMT+8, 2024-4-25 16:11 , Processed in 0.033736 second(s), 8 queries , Redis On.

Powered by Discuz! X3.5 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表