找回密码
 注册

QQ登录

只需一步,快速开始

查看: 64872|回复: 102

中兴光猫固件提取

  [复制链接]
发表于 2020-3-25 02:23:32 | 显示全部楼层 |阅读模式
本帖最后由 tm5880891 于 2020-3-25 02:33 编辑
3 ^- J, z* L* `0 r% Q! b0 d% q
8 Y& i/ I9 w. m( b& {. [3 a/ V5 B
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"
3 @/ x% ]3 `% n( r) s1 O5 M. E$ |
这就是所有的分区内容了
7 ]  I9 Y) u  Y0 ?, O+ }
要求:需要使用 dd 命令依次取出这些分区里的内容

7 ]' e7 J, B: q
2.中兴光猫自带的busybox 没有 dd 命令,因此需要导入一个带有dd命令的busybox

$ O! j! U, ~, Q& |6 Z* [
导入前要先查看光猫 CPU 信息,方便导入对应的busybox

- r' i6 U! d7 n7 `0 b* _- C' T  j
/ # 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
8 r: i1 a7 |7 ]7 L" f! U
Hardware        : HGU
R
evision        : 0000
Serial          : 0000000000000000
/ #
7 `/ Z4 y( k2 I  u8 k( h
注意到 Processor 为 ARMv7 Processor rev 1 (v7l)

$ ~! d9 g6 k2 V3 ?7 d# \! z
因此得导入arm v7l 版本的 busybox

/ Q/ n: O' Z. S: s  Z2 ^% J
在所在文件的目录下开启tftpd软件
cd /tmp
tftp -g -r busybox-armv7l -l busybox-armv7l 192.168.1.2
chmod +x busybox-armv7l
mv busybox-armv7l busybox

8 _; e6 m( M7 v2 D
3.开始拷贝文件

" a' j4 ^4 y1 ~% f. @' x% n$ |) V
cd /tmp
/ V4 J1 X& R( z# A
dd if=/dev/mtd1 of=/tmp/u-boot.bin    # 打包分区
tftp -l u-boot.bin -p 192.168.1.2     # 上传打包的分区到本地 tftp 服务器

3 i! I: A' e) s! h% i& y
至此,按各分区大小和所在目录分别传输完毕...
4 Y. `) Y3 u1 w( e4 L" Y  m
5 u! A* V" Z/ E9 }1 X
0 h6 Y8 A6 M2 U. S0 c
, D' w8 x. G; J6 V
# g2 m( }9 C0 i
 楼主| 发表于 2020-7-14 17:47:27 | 显示全部楼层
hvon 发表于 2020-7-14 14:43! x; v! q& J2 K8 {
提取分区数据之后,还要分析出固件的数据,例如固件的头,kernel和系统文件的压缩区域,然后再根据逆向出的crc3 ...

- w# s! ?* P9 G# C, Y, m3 _2 z& o% F嗯,你说的很对嘛,但这个不教
发表于 2023-11-20 20:24:18 | 显示全部楼层
tm5880891 发表于 2022-5-24 22:514 H; \0 N; o$ S
所有的固件都可以提取,不论他是什么产品,只是他带了固件就成
0 S7 C5 x6 U, E4 t
大佬, 联通版 中兴F4610U T1版本的固件 你呢有吗?
发表于 2023-4-23 00:21:54 | 显示全部楼层
tm5880891 发表于 2020-3-25 23:19
. t  [. [! ?7 W! |每个型号按每个型号的搞法的,我这个提的是中兴F460 5.0。具体情况根据自己的猫目录和版本号加以灵活应用 ...

0 L9 c$ X0 k1 h8 K- ]实际提取固件不需要用dd,这个型号的原厂固件里带有nanddump这个命令,还有nandwrite。
* F" H0 E" }' Z; J2 ]nanddump -f nandinfo.txt /dev/mtd0
/ U- q9 A- k7 K  {0 g: Znandwrite -p /dev/mtd6 /mnt/usb1_1/mtd6_kernel1.bin
 楼主| 发表于 2020-3-25 23:19:16 | 显示全部楼层
ftth650603 发表于 2020-3-25 23:17
+ b+ v# j* ?* E) q* O" w% K我的光猫是中兴F607怎么输入cat /proc/cupinfo之后。和你的显视版本不一样呢。而且用你的命令也出错呀。 ...

7 }) l) J5 h! k2 L, O每个型号按每个型号的搞法的,我这个提的是中兴F460 5.0。具体情况根据自己的猫目录和版本号加以灵活应用
发表于 2020-3-25 10:32:23 | 显示全部楼层
请问下,这个上传到tmp下的busybox可以拷贝到/bin下覆盖原来的busybox吗,
  P% N: t6 B7 V$ q3 f) y* `0 @/ ]' y& x4 W
 楼主| 发表于 2020-3-25 11:19:35 | 显示全部楼层
zhy123138 发表于 2020-3-25 10:326 e% I7 ]. A" O7 R
请问下,这个上传到tmp下的busybox可以拷贝到/bin下覆盖原来的busybox吗,

1 k/ t' a/ Q' ^1 q* {没必要覆盖原来的,直接在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:494 r9 a5 @5 Z4 \3 C' U
导出来的系统怎么恢复到其他猫上

2 ?3 X/ b/ Q# z( B& s+ f! K3 O3 c个人算了,商家加V
发表于 2020-3-25 23:17:33 | 显示全部楼层
我的光猫是中兴F607怎么输入cat /proc/cupinfo之后。和你的显视版本不一样呢。而且用你的命令也出错呀。
*滑块验证:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

Powered by Discuz! X3.5 Licensed

Copyright © 2001-2020, Tencent Cloud.

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