找回密码
 注册

QQ登录

只需一步,快速开始

查看: 64873|回复: 102

中兴光猫固件提取

  [复制链接]
发表于 2020-3-25 02:23:32 | 显示全部楼层 |阅读模式
本帖最后由 tm5880891 于 2020-3-25 02:33 编辑
- H" u. u( H# ?& A. M! S/ S1 B1 J6 k7 n
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"

( {/ I. C* B( K% }  q$ O
这就是所有的分区内容了

3 o! S9 ^5 U5 ]
要求:需要使用 dd 命令依次取出这些分区里的内容

% g" _# z- l5 u) w, m) G
2.中兴光猫自带的busybox 没有 dd 命令,因此需要导入一个带有dd命令的busybox

  Z5 T- T7 r; ~
导入前要先查看光猫 CPU 信息,方便导入对应的busybox
3 m. a5 x3 M8 l8 v4 `
/ # 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

/ d/ i" f7 S; V$ p( @6 f# O9 ~- {1 n1 t
Hardware        : HGU
R
evision        : 0000
Serial          : 0000000000000000
/ #
1 e* k$ F/ F7 y0 |3 T
注意到 Processor 为 ARMv7 Processor rev 1 (v7l)

9 t6 Y( x! e  B5 i$ W
因此得导入arm v7l 版本的 busybox

- j8 Y$ s0 Z6 v$ y+ h) \$ v
在所在文件的目录下开启tftpd软件
cd /tmp
tftp -g -r busybox-armv7l -l busybox-armv7l 192.168.1.2
chmod +x busybox-armv7l
mv busybox-armv7l busybox
: N- R- x7 |) l$ K- ~+ C
3.开始拷贝文件
3 @1 Z. i# m3 d* F. o% z5 ~* t
cd /tmp
  D# A$ F# J9 I  P  e; r. z( l: m! o
dd if=/dev/mtd1 of=/tmp/u-boot.bin    # 打包分区
tftp -l u-boot.bin -p 192.168.1.2     # 上传打包的分区到本地 tftp 服务器
: J' c6 h: Y& Y9 ^, w1 H; k
至此,按各分区大小和所在目录分别传输完毕...

- s/ r+ Y- Y( C! o( R
" s8 X' t1 ?  X$ B& }  C

+ d/ ]. q, S( ?4 C( {  [
9 ~4 S% h# o9 ]2 i
! w6 L0 S' z' l! j, K
 楼主| 发表于 2020-7-14 17:47:27 | 显示全部楼层
hvon 发表于 2020-7-14 14:43
: I- G0 S3 \/ p3 [$ W1 I. D提取分区数据之后,还要分析出固件的数据,例如固件的头,kernel和系统文件的压缩区域,然后再根据逆向出的crc3 ...

4 q' u1 h4 u/ y( \7 |9 D) v嗯,你说的很对嘛,但这个不教
发表于 2023-11-20 20:24:18 | 显示全部楼层
tm5880891 发表于 2022-5-24 22:51
' H) \5 \9 m! F  b1 d* k( j所有的固件都可以提取,不论他是什么产品,只是他带了固件就成
# b7 c6 P! K" ^+ z7 Y3 D9 {- E
大佬, 联通版 中兴F4610U T1版本的固件 你呢有吗?
发表于 2023-4-23 00:21:54 | 显示全部楼层
tm5880891 发表于 2020-3-25 23:199 B( B3 f4 D4 ^, q9 k
每个型号按每个型号的搞法的,我这个提的是中兴F460 5.0。具体情况根据自己的猫目录和版本号加以灵活应用 ...

+ A$ L* Q( x1 e. R) Y实际提取固件不需要用dd,这个型号的原厂固件里带有nanddump这个命令,还有nandwrite。
6 M( Z# ^; s/ l7 j# Cnanddump -f nandinfo.txt /dev/mtd0
8 P2 v5 ?* |0 cnandwrite -p /dev/mtd6 /mnt/usb1_1/mtd6_kernel1.bin
 楼主| 发表于 2020-3-25 23:19:16 | 显示全部楼层
ftth650603 发表于 2020-3-25 23:17, o$ i( I  {. a; s6 J8 j
我的光猫是中兴F607怎么输入cat /proc/cupinfo之后。和你的显视版本不一样呢。而且用你的命令也出错呀。 ...
/ R7 z' V; }- E
每个型号按每个型号的搞法的,我这个提的是中兴F460 5.0。具体情况根据自己的猫目录和版本号加以灵活应用
发表于 2020-3-25 10:32:23 | 显示全部楼层
请问下,这个上传到tmp下的busybox可以拷贝到/bin下覆盖原来的busybox吗,
% \# U& z5 A& @6 W! M, C
 楼主| 发表于 2020-3-25 11:19:35 | 显示全部楼层
zhy123138 发表于 2020-3-25 10:32
9 \2 f5 h" l1 a请问下,这个上传到tmp下的busybox可以拷贝到/bin下覆盖原来的busybox吗,
: w  V1 G9 O$ {$ X5 u: \
没必要覆盖原来的,直接在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, [" U. Z% G& T
导出来的系统怎么恢复到其他猫上

4 N2 h0 S  D4 X, {! \& ~+ W6 S& R个人算了,商家加V
发表于 2020-3-25 23:17:33 | 显示全部楼层
我的光猫是中兴F607怎么输入cat /proc/cupinfo之后。和你的显视版本不一样呢。而且用你的命令也出错呀。
*滑块验证:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|宽带技术网 |网站地图 粤公网安备44152102000001号

GMT+8, 2025-6-16 06:26 , Processed in 0.053162 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5 Licensed

Copyright © 2001-2020, Tencent Cloud.

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