找回密码
 注册

QQ登录

只需一步,快速开始

查看: 45488|回复: 102

中兴光猫固件提取

  [复制链接]
发表于 2020-3-25 02:23:32 | 显示全部楼层 |阅读模式
本帖最后由 tm5880891 于 2020-3-25 02:33 编辑 ' v4 f9 P* n9 ]& i6 q& e% A/ h

& P4 i, w* H, D+ _
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"

. a" R7 x0 ]- v4 O3 [
这就是所有的分区内容了

1 W: n: r1 Z. t3 x; h5 L1 y+ _
要求:需要使用 dd 命令依次取出这些分区里的内容

* e$ W; M. U! f; L' l: l/ ]  Y
2.中兴光猫自带的busybox 没有 dd 命令,因此需要导入一个带有dd命令的busybox
) |& C% M9 A' D: T" }
导入前要先查看光猫 CPU 信息,方便导入对应的busybox
+ v/ U) l7 x, q; t5 g. M) H6 |) Z) G
/ # 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
9 X/ A3 `+ L: a. M$ ^% `
Hardware        : HGU
R
evision        : 0000
Serial          : 0000000000000000
/ #

, Y8 f6 W+ ]! E/ d/ c
注意到 Processor 为 ARMv7 Processor rev 1 (v7l)
2 |+ u+ d6 D' b5 r# @
因此得导入arm v7l 版本的 busybox

9 c3 U7 U+ N8 }# u
在所在文件的目录下开启tftpd软件
cd /tmp
tftp -g -r busybox-armv7l -l busybox-armv7l 192.168.1.2
chmod +x busybox-armv7l
mv busybox-armv7l busybox

" X3 B8 [7 |$ U
3.开始拷贝文件

8 u& g" Q/ n+ p' p
cd /tmp
# H& W' |0 [8 Z2 x/ y7 [
dd if=/dev/mtd1 of=/tmp/u-boot.bin    # 打包分区
tftp -l u-boot.bin -p 192.168.1.2     # 上传打包的分区到本地 tftp 服务器
! F) v6 t  X: @) W6 n
至此,按各分区大小和所在目录分别传输完毕...

/ |6 e8 D! S( d" B
+ R( ]* ]1 b( {6 e& S: {- v) `* `

4 M2 F, I# \$ \2 e. V  C/ B2 V4 |* a7 `

% Q. L8 e# d2 F2 s5 t0 S4 I
 楼主| 发表于 2020-7-14 17:47:27 | 显示全部楼层
hvon 发表于 2020-7-14 14:43% D! ?1 z0 N5 y& k* V  b
提取分区数据之后,还要分析出固件的数据,例如固件的头,kernel和系统文件的压缩区域,然后再根据逆向出的crc3 ...
% d! e" o9 N; j* x1 V
嗯,你说的很对嘛,但这个不教
发表于 2023-11-20 20:24:18 | 显示全部楼层
tm5880891 发表于 2022-5-24 22:51
, u" o* N- D% E" }( f所有的固件都可以提取,不论他是什么产品,只是他带了固件就成
3 R# q# A: @) p! s( T, z) Q6 J: [
大佬, 联通版 中兴F4610U T1版本的固件 你呢有吗?
发表于 2023-4-23 00:21:54 | 显示全部楼层
tm5880891 发表于 2020-3-25 23:19
6 q% Y. g. n2 ^5 I& g$ c* l' i每个型号按每个型号的搞法的,我这个提的是中兴F460 5.0。具体情况根据自己的猫目录和版本号加以灵活应用 ...

& x' n) \" @% x5 O* k3 I实际提取固件不需要用dd,这个型号的原厂固件里带有nanddump这个命令,还有nandwrite。% g# i, B7 q$ {. I. f. |8 w" _
nanddump -f nandinfo.txt /dev/mtd0& V" S. Q' h1 j. s- t+ R6 f  p. t
nandwrite -p /dev/mtd6 /mnt/usb1_1/mtd6_kernel1.bin
 楼主| 发表于 2020-3-25 23:19:16 | 显示全部楼层
ftth650603 发表于 2020-3-25 23:17% X' O" E2 b# c( S' o4 s
我的光猫是中兴F607怎么输入cat /proc/cupinfo之后。和你的显视版本不一样呢。而且用你的命令也出错呀。 ...
6 {" X: G4 x! V; `. q3 ~3 e! {+ q
每个型号按每个型号的搞法的,我这个提的是中兴F460 5.0。具体情况根据自己的猫目录和版本号加以灵活应用
发表于 2020-3-25 10:32:23 | 显示全部楼层
请问下,这个上传到tmp下的busybox可以拷贝到/bin下覆盖原来的busybox吗,
1 }; |* A/ i; ?; e# _
 楼主| 发表于 2020-3-25 11:19:35 | 显示全部楼层
zhy123138 发表于 2020-3-25 10:32: \2 o# \: X$ f6 A# c( E2 z( `
请问下,这个上传到tmp下的busybox可以拷贝到/bin下覆盖原来的busybox吗,
( r7 ^7 m7 [1 A9 j0 {. \9 f+ ^
没必要覆盖原来的,直接在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. w6 g+ I/ W, z% V3 b% r/ X4 A
导出来的系统怎么恢复到其他猫上

# }, L$ ^7 T/ z( T; f4 C个人算了,商家加V
发表于 2020-3-25 23:17:33 | 显示全部楼层
我的光猫是中兴F607怎么输入cat /proc/cupinfo之后。和你的显视版本不一样呢。而且用你的命令也出错呀。
*滑块验证:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

粤公网安备 44152102000001号

GMT+8, 2024-4-28 13:59 , Processed in 0.031512 second(s), 8 queries , Redis On.

Powered by Discuz! X3.5 Licensed

Copyright © 2001-2020, Tencent Cloud.

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