yuleniwo 发表于 2024-9-4 15:11

中兴配置文件解包、打包工具及源码

程序参考F7015TV3下/bin/cspd解包打包实现,配置文件的所有研究也基于F7015TV3,有可能不适用与中兴其他型号的设备以及以后的新设备。

中兴cfg文件头有大端、小端之分,打包cfg需要指定是大端还是小端(默认大端)。cfg文件本质就是cfg文件头+中兴xml文件。


中兴xml文件头固定为01 02 03 04,后面4字节为版本,有0、1、2、3、4五种。

0:文件是原始文件压缩而来,解包只需要解压。比如中兴F663N。
1:文件是原始文件分片而来,解包只需要去除各个分片头把内容组装一起即可。我没有收集到这类型的xml文件,因此我的打包工具不支持打包成这种,解包可以。
2:文件是原始文件压缩后,再做一次分片。解包需先组装,再解压。我也没有收集到这类型的xml文件,因此打包工具也不支持打包成这种,解包可以。
3:文件是原始文件压缩后再aescbc加密而来,解包需先解密,再解压。使用的key为"PON_Dkey",iv为"PON_DIV"。比如F7015TV3下的“db_default_cfg.xml”就是这种。
4:文件是原始文件压缩后再aescbc加密而来,解包需先解密,再解压。使用的iv为"667b02a85c61c786def4521b060265e8",key有两种情况,早期的设备用的key为"8cc72b05705d5c46f412af8cbed55aad",目前新的设备把key放在/tagparam/paramtag文件里。每台设备key都不一样,因此解包需先拿到这个key再解密,解密后再解压。

关于key,以往aescbc的setup key生成方式为sha256(key最多取31个字符),这里简称生成setup key方法为sha256。新设备把key放到paramtag里(INDIVKEY)后,生成方式变成了,sha256(md5(INDIVKEY)后转小写字符串取31个字符),这里简称生成setup key方法为md5, sha256。

其他:如果中兴代码没做什么变动的话,那么可以解包好的文件再以仅压缩的方式打包回去,再导入设备。cspd的解包代码同时兼容了0~4五个版本,甚至版本4,优先尝试了INDIVKEY,如果失败再用默认user key尝试解密。至少我手上的F7015TV3是这样的,以后说不好。

程序使用方法:

Usage: zxcfg
Options:
-iinput file name(输入文件,必须指定)
-ooutput file name(输出文件,必须指定)
-mmode
      0 --- unpack cfg or xml file (默认为解包模式,解包中兴xml或cfg)
      1 --- pack into xml file (打包成中兴xml)
      2 --- pack into cfg file(打包成cfg)
-tpack type (此参数仅用于打包)
      0 --- compress(压缩,对应为版本0)
      1 --- compress, encrypt with default key(压缩后用default key加密。对应为版本3)
      2 --- compress, encrypt with user key(压缩后用user key加密,可配合“-k”参数一起使用。对应为版本4)
-kaescbc encrypt & decrypt key(指定key,如果没指定此参数,则使用默认值)
-vaescbc encrypt & decrypt iv(指定iv,如果没指定此参数,则使用默认值)
-ggenerate aescbc key method(生成aescbc key的方法)
      0 --- sha256(如果没有指定“-k”参数,则默认值0)
      1 --- md5, sha256(如果指定了“-k”参数,则默认值1)
-ndevice model name.(设备型号名称,仅用于打包成cfg。默认值: ZXHN F7015TV3)
-lbyte order.(字节序,仅用于打包成cfg。默认值: 0,即大端)
      0 --- big endian(大端)
      1 --- little endian(小端)
-ccfg type (仅用于打包成cfg。默认值: 2)
-ddefcfg type (仅用于打包成cfg。默认值: 0)


程序还测了网络上收集的一些用户配置文件,主要设备类型:F663N、F663NV3a、F673AV9、ZXHN_F450(EPON_ONU)、ZXHN_F650(GPON_ONU)、G7615(需要指定key)。

解包打包xml示例:


解包打包cfg示例:


程序以及源码:
**** Hidden Message *****


免责声明:程序和源码仅供研究研究,使用本程序带来的不良后果与本人无关。

qlhw 发表于 2024-9-4 15:23

大佬的,顶一下

aslov 发表于 2024-9-4 15:29

谢谢分享

ytshenfeng123 发表于 2024-9-4 15:30

谢谢分享!!!!!

h0727 发表于 2024-9-4 15:32

向大佬致敬

Tarchia 发表于 2024-9-4 15:34

支持技术贴!

qxyl001 发表于 2024-9-4 15:35

多谢大佬分享。

5und4y 发表于 2024-9-4 15:38

程序还测了网络上收集的一些用户配置文件,主要设备类型:F6

52rem 发表于 2024-9-4 15:43

感谢大佬分享。

feiqiulin 发表于 2024-9-4 15:49

大佬的,顶一下

logo007 发表于 2024-9-4 15:54

感谢大佬分享。

过期的可乐 发表于 2024-9-4 16:01

感谢大佬分享。

yslyh666 发表于 2024-9-4 16:22

回复看看

wgedu 发表于 2024-9-4 16:43

谢谢分享,看着有点麻烦

245668 发表于 2024-9-4 16:55

谢谢分享.............
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 中兴配置文件解包、打包工具及源码