我在中兴通讯 Speedport Entry 2i(CPE 主要用于德国、斯洛伐克等,可能是为德国电信定制的)中闲逛。可以从 UI 下载配置备份。
我发现它与其他中兴配置备份不同。通常它是 zlib 压缩的 XML。我怀疑这个上面有一层伪加密。
00000000 99 99 99 99 44 44 44 44 55 55 55 55 aa aa aa aa |....DDDDUUUU....|
00000010 00 00 00 00 00 00 00 00 00 00 00 04 00 00 00 00 |................|
00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40 |...............@|
00000040 00 02 00 00 00 00 00 80 00 00 57 c6 00 00 00 00 |..........W.....|
00000050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000080 04 03 02 01 00 00 00 00 00 00 00 12 53 70 65 65 |............Spee|
00000090 64 70 6f 72 74 20 45 6e 74 72 79 20 32 69 01 02 |dport Entry 2i..|
000000a0 03 04 00 00 00 02 00 00 00 00 00 00 57 a8 00 01 |............W...|
000000b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
000000d0 00 00 00 00 00 00 00 00 00 00 00 00 57 60 00 00 |............W`..|
000000e0 57 60 00 00 00 00 be d3 f7 b3 fe 9e 99 a4 35 75 |W`............5u|
000000f0 ce db 7f c2 99 17 43 7f 1e e2 54 7a 63 72 6f c8 |......C...Tzcro.|
00000100 b7 2d cc e8 cb 32 6c 3a f0 fd 55 19 10 ac ea d5 |.-...2l:..U.....|
00000110 e9 18 01 01 71 7c 20 68 ca 66 d0 d9 f9 12 03 3d |....q| h.f.....=|
00000120 ee bd ad 2a 00 e2 c1 96 73 12 bd 5a 94 3e 6d 1a |...*....s..Z.>m.|
00000130 a8 7f c8 a8 8b 3d b6 1e d8 ae 9b 43 63 6a e3 ea |.....=.....Ccj..|
00000140 94 33 55 57 dc 81 b2 22 c5 e7 39 fd 75 b9 ba 5b |.3UW..."..9.u..[|
00000150 00 ca a1 29 9b e2 9f bd 8e 1f 00 98 30 62 8b d7 |...)........0b..|
00000160 c6 12 ae ef 27 55 30 2a 4c f8 de 7c e5 2a 33 b9 |....'U0*L..|.*3.|
00000170 8b 32 4a d2 2c da 2a 18 ff 72 cf 1c 42 d8 41 6b |.2J.,.*..r..B.Ak|
这个配置的其他例子可以在这里找到:RE Compressed backup file,router linux based so it is compressed with zlib?
有没有办法弄清楚如何提取此配置的内容?有没有办法检测是否存在某种简单的 XOR 加密?
我无法获得设备的固件,它是 CPE,所以它非常锁定。设备本身看起来正在使用类似于中兴 E5502(相同的基于 lua 的 Web UI)E5502 固件的精简版本
你可以在这里下载配置。配置文件
编辑:
在阅读了关于压缩和熵之间差异的一些内容后,我得出结论,该文件可能是加密的,而不仅仅是用 XOR 之类的东西进行了混淆(因为这不会改变熵)
我从另一台 ZTE 设备(带有 zlib 压缩的设备)获得了配置文件
$ binwalk -E -N config_f660.bin
DECIMAL HEXADECIMAL ENTROPY
--------------------------------------------------------------------------------
1024 0x400 Rising entropy edge (0.973932)
10240 0x2800 Rising entropy edge (0.958898)
14336 0x3800 Rising entropy edge (0.966971)
17408 0x4400 Rising entropy edge (0.968328)
$ binwalk -E -N config_encrypted.bin
DECIMAL HEXADECIMAL ENTROPY
--------------------------------------------------------------------------------
1024 0x400 Rising entropy edge (0.974513)
22528 0x5800 Falling entropy edge (0.737589)
据我所知,这个数据的第一个上升沿是两个配置中未加密的标头。在压缩配置中,其他上升沿应该代表压缩的 zlib 块。如果您实际使用 binwalk 绘制图形,您可以看到熵中仍有一些上升沿,但小得多的线几乎是平坦的。(由于声誉低,不能包括图表)。我现在确信这是由对那些压缩的 zlib 块应用加密引起的。
我的假设是正确的还是我遗漏了什么?有没有一种方法可以在没有固件映像的情况下尝试破解或至少猜测加密类型?