找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9432|回复: 9

[救砖进行时]HS8545M jffs2 分区损坏,ttl日志见附件

[复制链接]
发表于 2019-10-6 17:05:33 | 显示全部楼层 |阅读模式
本帖最后由 hongsxxxxxxxx 于 2019-10-6 19:22 编辑
* g9 A2 N& U2 F) g; @6 |$ {( ^) f; ]9 }. ^4 I# x6 c3 k: }
江苏移动hs8545m, 用ttl, restore manufactory,  后使能telnet,用论坛上的2kb文件补全了shell, 但补完shell后,除了改改界面,改改模式,其他的都干不了。根分区只读,无法添加任何自启动脚本。看到有篇很冷门的文章,https://blog.leexiaolan.tk/persi ... loss-on-hg8120c-ont,思想大概就是通过注入内核模块来启动脚本,大概研究了下,发现几个r019之前所有固件都存在的漏洞,有能力的人可以自己研究下,扯远了,回归主题。5 s; S' d" t6 F- C6 I& N' Z
在测试的过程中加了一个脚本导致自启动循环,现在直接导致jffs2分区被破坏。
- R0 \. a1 u& jttl启动错误日志主要如下:/ a& E$ n- P5 U9 j0 F
UBIFS error (pid 546): ubifs_read_node: bad node type (255 but expected 6)
2 q' R* G. Z2 L) `) [0 z" m: [UBIFS error (pid 546): ubifs_read_node: bad node at LEB 0:0, LEB mapping status 0, ~& o; T3 Y' D8 n1 s
Not a node, first 24 bytes:! p  G0 I5 C9 M& d5 B
00000000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff                        
! m: C' i+ {( ]8 f( R, ~==================== New superblock =====================
* c$ ]/ K  R/ s4 C# L3 X        magic          0x6101831$ ~; h: V; p5 c  `% Q1 n
        crc            0x0
8 Y' _8 ?9 y/ K; U  I( j        node_type      6 (superblock node)* i; z" |7 v' P) i
        group_type     0 (no node group)9 J* m2 k- b. S! j4 j: ^
        sqnum          0
$ C( V5 E" _2 H& k        len            0
6 s0 n, |3 c& s  T        key_hash       0 (R5)
- x& l! l5 f6 l        key_fmt        0 (simple)
$ L! ^, }. N/ |        flags          0x05 V2 Q( }9 U6 `0 P5 b& d& t
          big_lpt      0
( I) {$ l! f; L/ i; u  }4 W          space_fixup  09 W1 S6 f6 i) C2 `: @
        min_io_size    2048
, w1 c* F: K# B6 w" h. E( S        leb_size       126976
, N% _) h2 [! I        leb_cnt        166
2 u, L9 {& e; ^7 ^" O$ [5 Y* x        max_leb_cnt    166+ \6 `! v# \* O: B( v
        max_bud_bytes  634880
  l& c' j9 g& P" e        log_lebs       36 z9 }& Q' E) ?+ `
        lpt_lebs       27 w1 j5 f; }  w' m! L( Y' R
        orph_lebs      2
0 [% t. ?2 v9 j7 e1 ^3 C0 M        jhead_cnt      1+ |9 O! _  p% f# t/ a$ u
        fanout         8( B  }2 z& u; z8 O/ @
        lsave_cnt      2565 e3 f# i) G7 g
        default_compr  1
* S& i5 ^  R3 z; C" R        rp_size        9904126 c- e: |, {  G
        rp_uid         07 \  G. }' r- T7 w. U/ y
        rp_gid         0
0 A6 [, c  B( b, z) o, _        fmt_version    4  d# R& j& L- E6 |
        time_gran      1000000000
6 k, u% g& E1 y. z2 G, d        UUID           BB4560BC-C90C-4E79-B42B-BB42BCCCF01E  i  a' t4 X8 N
=========================================================, O' i6 X# J8 X* w  E

" W4 k$ z7 r, t( [  ]mount: mounting /dev/ubi0_13 on /mnt/jffs2/ failed: Invalid argument
; j. P+ i$ {- W# a; ~. X; M" I-rw-r--r--    1 root     root             9 Jan  1 00:00 mSQUASHFS error: error -4! {2 e# D+ k! v) _) B
ount_ok, X7 d6 S+ C3 H9 D; p/ W: b
0 t- _, M4 q- k* H2 {
现状:/ ~& e: r0 q' e7 _' h: e
1。jffs2分区损坏, N2 s% R* [& u9 d
2。系统分区没有问题,可以ttl 登陆,但是网卡好像没有启动,不能联电脑,系统的shell, 又是阉割的,死循环
7 s2 o- i: e2 a% e" @. [8 k6 k  j

; o" S# r- Q) O( H( e4 \7 I目前修复思路大概有:
; \, g1 [9 d. J2 F1 S) V/ Q' v! P8 {" ]5 x$ X
1。找到jtag接口引脚,刷入带启动停止的uboot.bin,(有所有分区备份,华为很恶心,屏蔽了uboot命令行),这篇文章说到给uboot打补丁,https://blog.csersoft.net/archives/174#comment-86华为光猫HG8245H救砖笔记⑥逆向UBoot恢复海思命令行],需要知道jtag。通过uboot命令恢复jffs2分区及数据。9 k( t$ {1 e' G3 L6 ^
1 t/ Y% I, C# H! G. K5 }
2。flash编程,听说很贵!!!6 x7 e1 k* T$ Y4 e2 g
3。重新买个猫!!!恩,已经从移动小哥哥那里花50块买了二手的hs8545m5,这货的软件版本是r019的,补shell的bin文件死活不能通过load pack 命令刷入,只能通过华为的ont使能工具刷!!!!已经搞定重启自启动脚本,运行dropbear -p 2222。下一步研究ss能不能运行,如果可以,就可以仍掉我的tplink路由器了。
* A0 `* \, _: z2 a) z+ M3 u( h& l7 V! R: U
& q5 N+ Y3 S" H8 S
有没有大老知道 jtag 引脚的具体位置,或者 sd1156 cpu 的手册,谢谢
6 s  u$ S2 {- ^* Q% ]# C稍候发附件
0 s9 ?% e# Q4 ]3 I2 k( F' G3 \( O! d
资源来源论坛分享,感谢大佬无私分享!) y3 |% N* E* z3 v2 U. }- x/ g

: Z2 k8 {) F9 O

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 发表于 2019-10-7 13:13:35 | 显示全部楼层
图片是实物图,jTAG可能的地方,见图标识

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 发表于 2019-10-7 14:53:06 | 显示全部楼层
本帖最后由 hongsxxxxxxxx 于 2019-10-7 17:47 编辑 ) P$ {/ T$ I9 t5 |$ g1 ]. q! i

4 Q' K, Y/ K- n1 Uhs8545m bin 全备份包,有兴趣的可以下载自己研究下
3 v0 g1 l" [" `  I1 s6 d链接:[url=链接: https://pan.baidu.com/s/1rb-o-URbDMjD7HfEKEzrvQ 提取码: 7zsq]https://pan.baidu.com/s/1rb-o-URbDMjD7HfEKEzrvQ[/url] 提取码: 7zsq百度云备份hs8545m bin4 R& x8 Z6 W& t1 F  @7 }
, X: F) T7 {/ }8 `) v! @' h9 C) o
  w) H4 C" i8 k) S" G
 楼主| 发表于 2019-10-7 17:10:16 | 显示全部楼层
吐槽下4 h& E1 i; g2 J3 p" i$ A
在启动日志里看到
0 D& ^6 u% @# r2 J% F3 u. z/ u
- [. u) s: Y1 Z* ~0 d. u, jinsmod: can't insert './kernel/fs/fuse/fuse.ko': No such file or directory
3 v' z0 d) z3 p% x4 e9 O" a6 Oinsmod: can't insert './kernel/fs/overlayfs/overlayfs.ko': No such file or directory
! T& a0 e, H. r) V$ g% Q) C( ?9 X& H- J8 R7 c4 @7 V; F
按道理 jffs2分区如果没了,应该不会影响到系统启动,至少网卡什么的也能起来!
6 G( T* q6 J7 T4 t0 E+ ~1 P! V. l  O9 x" b
写这个固件 的程序员其实挺坏的
9 {/ G+ Y" ^1 E8 t; o! C# i1 O$ {8 a* B+ v& R0 }$ J2 i
发表于 2019-10-8 11:37:53 | 显示全部楼层
uboot能启动,就能修好!只要能停止!
( P8 ?! X5 w) E& m/ |' q方法配置tftp 设置ip
1 q, _! m9 ?; {! `: h就说这么多了
 楼主| 发表于 2019-10-8 14:54:04 | 显示全部楼层
chenwu0625 发表于 2019-10-8 11:37
' x' E: r7 C4 ~' a2 n+ O. Quboot能启动,就能修好!只要能停止!
1 p8 @! K$ z- f' p方法配置tftp 设置ip: w1 ~; S3 x( I  V+ V1 |
就说这么多了

# k6 J- ^) e, C嗯,uboot无法中止,华为屏蔽了海思uboot命令行!!!!!,现在能想到的方法就反编译uboot,给uboot打补丁,再通过jtag接口烧写到内存
发表于 2019-10-8 18:38:06 | 显示全部楼层
编程器,几分钟的问题!呵呵呵
 楼主| 发表于 2019-10-8 18:42:13 | 显示全部楼层
chenwu0625 发表于 2019-10-8 18:38" f2 n/ p; x  b, ?. A; q& t9 X, }
编程器,几分钟的问题!呵呵呵
$ z2 _6 J: F! [! e6 L
已经在用ida pro 分析uboot了
发表于 2019-10-8 19:04:06 | 显示全部楼层
nand有坏快,我把答案告诉你了
 楼主| 发表于 2019-10-9 11:07:54 | 显示全部楼层
chenwu0625 发表于 2019-10-8 19:04# Y% Q7 P3 v0 [4 g/ v- x
nand有坏快,我把答案告诉你了
  p# S8 e3 \$ k( Q& D  z
我确定nand没有坏点,因为启动脚本,导致无限重启,我想到了办法,当系统准备挂载jffs2的时候,通过给RAM的某个引脚接上高电平,来干扰系统,往nand里写数据,导致jffs2分区损坏的,因为不损坏,永远无法进入系统!!!!,第一次进入系统后,能通过网线连猫,而且系统也提示jffs2只读,怪我没有注意,应该及时通过ubi恢复 jffs2分区,就重启了, 后来想了想,这是背水一战啊
*滑块验证:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-5 03:51 , Processed in 0.026403 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5 Licensed

Copyright © 2001-2020, Tencent Cloud.

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