首页
社区
课程
招聘
[原创]大众etka汽车电子目录逆向1----图片解密
发表于: 2018-12-14 14:55 11003

[原创]大众etka汽车电子目录逆向1----图片解密

2018-12-14 14:55
11003
     基本上没什么难度,od载入程序,下断点CreateFileA,留意传进来的参数很快就找到了
在Bilder这个目录下面

 
后缀名来看是tif图片 但是很不幸,用系统自带图片浏览器打开查看失败
用FlexHEX 随便打开一张看下十六进制


可以看到图片的文件头都是乱码,经过加密了,需要分析一下程序解密的过程



通过  CreateFileA断点 在读取图片的时候返回跟踪 找到程序解密图片的函数

祭出神器F5  
在od看数据在哪里解密,发现是从第一个判断里的函数sub_6BF03390 里面 



[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

最后于 2018-12-14 15:49 被pak无名编辑 ,原因:
收藏
免费 4
支持
分享
最新回复 (20)
雪    币: 3797
活跃值: (769)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
  汽车软件一套又一套的 还贼贵
2018-12-14 16:07
0
雪    币: 2697
活跃值: (389)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
gaoan 汽车软件一套又一套的 还贼贵[em_2]
大众这个还好  20块大洋~~!!!
2018-12-14 16:10
0
雪    币: 1392
活跃值: (5147)
能力值: ( LV13,RANK:240 )
在线值:
发帖
回帖
粉丝
4
pak无名 大众这个还好 20块大洋~~!!!
汽车诊断行业有搞头吗。大佬们。据说很赚钱啊
2018-12-15 17:19
0
雪    币: 2697
活跃值: (389)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
IamHuskar 汽车诊断行业有搞头吗。大佬们。据说很赚钱啊
老公司就不要去了 要逆向的软件基本都搞完了 去了坐冷板凳没意思的 对技术也提升不了
2018-12-17 09:09
0
雪    币: 1392
活跃值: (5147)
能力值: ( LV13,RANK:240 )
在线值:
发帖
回帖
粉丝
6
pak无名 老公司就不要去了 要逆向的软件基本都搞完了 去了坐冷板凳没意思的 对技术也提升不了
主要是看他们要搞逆向的。但是感觉汽车诊断那块如果不熟悉汽车底层,光靠逆向,搞出来的代码稳定性这些有保证吗? 都是逆向其他一些公司的产品
2018-12-17 11:43
0
雪    币: 2697
活跃值: (389)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
IamHuskar 主要是看他们要搞逆向的。但是感觉汽车诊断那块如果不熟悉汽车底层,光靠逆向,搞出来的代码稳定性这些有保证吗? 都是逆向其他一些公司的产品
不好说,这个涉及单片机逆向 做好了还是可以的
2018-12-17 15:08
0
雪    币: 1001
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
还以为是逆向了网络请求那一段
2018-12-18 18:47
0
雪    币: 2697
活跃值: (389)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
9
wx_七月流光 还以为是逆向了网络请求那一段[em_48]
逆向过了 放不放看心情
2018-12-20 09:05
0
雪    币: 48
活跃值: (496)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
10
网络请求在这里



2020-3-4 10:01
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
11
wtxpwh 网络请求在这里
大佬,你这个是返回的结果吧
2020-5-4 19:14
0
雪    币: 48
活跃值: (496)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
12
菜刀也是刀 大佬,你这个是返回的结果吧
是的
2020-8-12 23:28
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
13
etka里头通常有奥迪(au)、斯柯达(sk)、西雅特(se)、大众(vw)等四个目录。四个目录里图形文件主要分为png(逾11万张)、zgd(逾9万张)、tif(逾6万张)、fdb(约2千张)。尊帖仅谈及了tif。 
2020-8-26 23:57
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
14
etka的大部分数据存取是通过etData.dll。後者有25个Class(c++的类),约五百个函数接口(api)。
1.车型类        CDataModell::
2.油漆(etka误译为"化学品")类         CLackTeile::
3.标准件类         CNormTeile::
4.变速箱类         CGkb::
5.发动机类         CMkb::
6.销售底盘类         CFgstVkbzData::
7,V页类        CVSeiten::
8.零件类        CEtKatalogData::
9.ATP码类         CTvnData::
10.替换件1         CAustauschteile::
11.零件树1类         CEtkaStammData::
12.基本编号类        CRumpfNummern::
13.客户编号1类        CKdNummern::
14.经销商编号类        CSlpNummern::
15.客户折扣类        CEtPreisInfo::
16.维修信息类         CTkrInformation::
17.零件树2类         CStammData::
18.图类         CBegriff::
19.零件图2类        CFileDataBase::
20.零件图1类         CTnrRef::
21.字典类         CEtDuden::
22.维修磨损件类        CEtServiceParts::         
23.建议零件类         CEtTeileVorschlag::
24.适合零件类         CFittingParts::
25.替换件2类         CRepSaetze::
26.杂项        37个函数接口
2020-8-27 00:48
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
15
上述的zgd图像解码,与及楼主的tif异或,均隶属于CEtKatalogData::类的函数族,
後者会间接调用LxidDib.dll、LxidDcod.dll、LxidTiff.dll、LxidPng.dll,从而解码得出图像。
2020-8-27 01:13
0
雪    币: 2697
活跃值: (389)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
16
竹闲 etka里头通常有奥迪(au)、斯柯达(sk)、西雅特(se)、大众(vw)等四个目录。四个目录里图形文件主要分为png(逾11万张)、zgd(逾9万张)、tif(逾6万张)、fdb(约2千张)。尊帖 ...
没时间更新这些,内容太多了
2020-8-28 13:00
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
17

 pak无名: 没时间更新这些,内容太多了

如此,则在下有僭了:

例如

运行 大众的EPC(电子零件目录)程式,

  1:在四大品牌(vw、se、sk、ad)里选择vw,
  2:在八个市场(br=巴西,cn=一汽大众,mek=墨西哥,ra=阿根廷,rdw(德文:Rest der Welt,可翻译为“余下地区”,下文将会详谈)=本地市场,sVW=上汽大众,usa=美国,za=南非)里选择 rdw,
  3:在左侧选择"PA"车型(其详注为"Passat/Variant/Santana")。
  4:在右侧选择 车型年份=2008。
   双击後,用户即正式进入《r\kat627.bin》文件所对应的界面。
  5:在10个主组(0="配件,信息娱乐系统,其他",1="发动机",2="燃油,排气,空调冷却",3="变速箱",4="前轴,转向装置",5="后轴",6="车轮, 制动器",7="踏板机构",8="车身",9="电子设备")里选择其中某组(例如是第3组"变速箱"),

双击“300-060”图号,截图如下。请留意右下角目录“627”,对应上述r\kat627.bin》文件。

《r\kat627.bin》”文件部分内容如下:

在《r\kat627.bin》文件里的偏移0x00056c930x00056cc60x00056d110x00056d400x00056d6f0x00056dad
Bildtafel(图像编组)"30060 "




ET-Vor


" f"
" f"
Teilenummer(零件编号)

"02E300015MX""02E300015MX009""02E300011CL""02E300011CL005"
OU
'U'



BTPos(图像文字位置)

"1"
"(1)"
Einsatz(日期始)


0507
0507
Auslauf(日期终)


0728
0728
HG/UG(主组/从组)"300"




Grafik(图像名)"030046746"




TSBen(名称索引)
10556(即"6档双离合器变速箱,\n用于全轮驱动")10556(同左)10556(同左)10556(同左)10556(同左)
TSBem(注释索引)





TSMoa(型号规格索引)





Stuck(件数)

"1"
"1"
Benennung(名称)





Bemerkung(注释)





Modellangabe(型号规格)

"JPY"
["KJL,KNM"]
TabET





PR-Nummer(PR特性)
"G0R"



Landessetzung(国家地区)





Baugruppen(组件)





GKB(变速箱)
["JPY","KDF","KJL","KNK","KNM","LHQ"]"JPY""JPY"["KJL","KNM"]["KJL","KNM"]
Ausstattungsvarianten(颜色)





Farbkombi(色彩组合)





MKB(发动机)





Einsatz(日期始)





Auslauf(日期终)





MV(MV特征)





MV Tnr(MV零部件号)





MV Stk(MV零部件数量)





PaktID(适合零件ID索引)





PaketArt(适合零件ART)





PaketStk(适合零件数量)





HTG(维修磨损件组)"COB"




Bildtafel(图像编组)300060




Art9




VKK(销售)





PrZusatz(PR附加)





GkbNeu(附加变速箱)
["JPY ","KDF ","KJL ","KNK ","KNM ","LHQ "]"JPY ""JPY "["KJL ","KNM "]["KJL ","KNM "]
MkbNeu(附加发动机)





BildNameNeu(图像文件名)"746300460"(即《746\746300460.zgd》)




Grafische Navigation(导航)180(即"变速箱")




其中的BildNameNeu(图像文件名)=《746300460.zgd》,即楼上所述的zgd(逾9万张)之一。


零件.控制数据(即详细数据):

因为epc每个零件只显示几行,屏幕位置不足,所以需在鼠标右键的popUp菜单“控制数据”里专门显示:

标准设备国家区号其它发动机变速箱销售标识部件
显示零件在上述的
"PR-Nummer"字段
显示零件在上述的
"Landessetzung"字段
显示零件在上述的
"Ausstattungsvarianten"字段
显示零件在上述的
"MKB"字段
显示零件在上述的
"GKB"字段
显示零件在上述的
"VKK"字段
显示零件在上述的
"Baugruppen"字段


举例甲:“《r\kat627.bin》”文件某部分内容如下:

在《r\kat627.bin》文件里的偏移0x000ca432
Bildtafel(图像编组)
ET-Vor
Teilenummer(零件编号)"3C5857806F RAA"
OU
BTPos(图像文字位置)
Einsatz(日期始)0507
Auslauf(日期终)0708
HG/UG(主组/从组)
Grafik(图像名)
TSBen(名称索引)26288(即"黑色")
TSBem(注释索引)
TSMoa(型号规格索引)
Stuck(件数)
Benennung(名称)
Bemerkung(注释)"-ZQ,ZX,ZY"
Modellangabe(型号规格)
TabET
PR-Nummer(PR特性)["K8B"(即"塔式尾部"),
"3ZV"(即"后排外侧三点式自动安全带")]
Landessetzung(国家地区)"X5Q+"(即"印度国家销售目录")
Baugruppen(组件)

GKB(变速箱)

Ausstattungsvarianten(颜色)["ZQ "(即"黑色"),
"ZX "(即"经典灰(灰色)"),
"ZY "(即"拿铁玛奇朵(棕色)/灰色")]
Farbkombi(色彩组合)

MKB(发动机)

Einsatz(日期始)

Auslauf(日期终)

MV(MV特征)

MV Tnr(MV零部件号)

MV Stk(MV零部件数量)

PaktID(适合零件ID索引)

PaketArt(适合零件ART)

PaketStk(适合零件数量)

HTG(维修磨损件组)

Bildtafel(图像编组)

Art

VKK(销售)

PrZusatz(PR附加)

GkbNeu(附加变速箱)

MkbNeu(附加发动机)

BildNameNeu(图像文件名)

Grafische Navigation(导航)



举例乙:“《r\kat208.bin》”文件某部分内容如下:

在《r\kat208.bin》文件里的偏移0x001315f0
Bildtafel(图像编组)
ET-Vor" c"
Teilenummer(零件编号)"09A927750AA"
OU
BTPos(图像文字位置)"1"
Einsatz(日期始)
Auslauf(日期终)
HG/UG(主组/从组)
Grafik(图像名)
TSBen(名称索引)[3763(即"5档自动变速箱\n控制单元"),
6981(即" 仅用于:")]
TSBem(注释索引)1038(即" 用于发动机:")
TSMoa(型号规格索引)
Stuck(件数)"1"
Benennung(名称)
Bemerkung(注释)"09A 300 035 J"
Modellangabe(型号规格)"AJM,AUY"
TabET
PR-Nummer(PR特性)

Landessetzung(国家地区)

Baugruppen(组件)

GKB(变速箱)"EYM"
Ausstattungsvarianten(颜色)

Farbkombi(色彩组合)

MKB(发动机)["AJM ","AUY "]
Einsatz(日期始)

Auslauf(日期终)

MV(MV特征)

MV Tnr(MV零部件号)

MV Stk(MV零部件数量)

PaktID(适合零件ID索引)

PaketArt(适合零件ART)

PaketStk(适合零件数量)

HTG(维修磨损件组)

Bildtafel(图像编组)

Art

VKK(销售)

PrZusatz(PR附加)

GkbNeu(附加变速箱)"EYM "
MkbNeu(附加发动机)["AJM ","AUY "]
BildNameNeu(图像文件名)

Grafische Navigation(导航)



举例丙:奥迪“《r\kat764.bin》”文件某部分内容如下:

在《r\kat764.bin》文件里的偏移0x0000a148
Bildtafel(图像编组)
ET-Vor
Teilenummer(零件编号)"D 176501A1"
OU
BTPos(图像文字位置)"31"
Einsatz(日期始)
Auslauf(日期终)
HG/UG(主组/从组)
Grafik(图像名)
TSBen(名称索引)[8153(即""硅胶密封胶""),
35(即"粘结及密封材料")]
TSBem(注释索引)16591(即"50毫升")
TSMoa(型号规格索引)
Stuck(件数)"X"
Benennung(名称)
Bemerkung(注释)
Modellangabe(型号规格)
TabET
PR-Nummer(PR特性)

Landessetzung(国家地区)

Baugruppen(组件)

GKB(变速箱)

Ausstattungsvarianten(颜色)

Farbkombi(色彩组合)

MKB(发动机)

Einsatz(日期始)

Auslauf(日期终)

MV(MV特征)

MV Tnr(MV零部件号)

MV Stk(MV零部件数量)

PaktID(适合零件ID索引)481
PaketArt(适合零件ART)'T'
PaketStk(适合零件数量)1
HTG(维修磨损件组)

Bildtafel(图像编组)

Art

VKK(销售)"8UGR7Y+"
PrZusatz(PR附加)

GkbNeu(附加变速箱)

MkbNeu(附加发动机)

BildNameNeu(图像文件名)

Grafische Navigation(导航)



举例丁:奥迪“《r\kat764.bin》”文件某部分内容如下:

在《r\kat764.bin》文件里的偏移0x0000a148
Bildtafel(图像编组)
ET-Vor
Teilenummer(零件编号)"8U0035192E"
OU
BTPos(图像文字位置)"(1)"
Einsatz(日期始)
Auslauf(日期终)
HG/UG(主组/从组)
Grafik(图像名)
TSBen(名称索引)[19636(即"控制单元,用于信息""电子装置“RMC“"),
17461(即"用于装有导航系统或""导航系统预装备的车型")]
TSBem(注释索引)
TSMoa(型号规格索引)
Stuck(件数)"1"
Benennung(名称)
Bemerkung(注释)["PR-7Q4,7T2+","QV3"]
Modellangabe(型号规格)
TabET
PR-Nummer(PR特性)["7Q4"(即"导航系统预装备"),
"7T2"(即"导航系统(低级)"),
"QV3"(即"数字式无线电接收装置")]
Landessetzung(国家地区)

Baugruppen(组件)["CV118U0035192E","CV12*"]
GKB(变速箱)

Ausstattungsvarianten(颜色)

Farbkombi(色彩组合)

MKB(发动机)

Einsatz(日期始)

Auslauf(日期终)

MV(MV特征)

MV Tnr(MV零部件号)

MV Stk(MV零部件数量)

PaktID(适合零件ID索引)

PaketArt(适合零件ART)

PaketStk(适合零件数量)

HTG(维修磨损件组)

Bildtafel(图像编组)

Art

VKK(销售)

PrZusatz(PR附加)

GkbNeu(附加变速箱)

MkbNeu(附加发动机)

BildNameNeu(图像文件名)

Grafische Navigation(导航)



另:零件在上述的"HTG"(HausteilGruppen)字段,在epc的服务配件菜单里显示。
 零件在上述的"MV"字段,在epc的 零件树.适合配件 菜单里显示。
 零件在上述的"PaktID"字段,也在epc的 零件树.适合配件 菜单里显示。



2020-8-30 17:45
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
18

以上并非解密,纯粹是CEtKatalogData::类的函数族的部分演示。
只是读katalog(零件目录)数据,然後数据罗列。

在下後续还可以添加零件树1类“CEtkaStammData::”(主要是读出硬盘文件《stamm.bin》)

油漆类“CLackTeile::”(主要是读出硬盘文件《lacke.bin》)

标准件类“CNormTeile::”(主要是读出硬盘文件《norm.bin》)

V页类“CVSeiten::”(主要是读出硬盘文件《va.bin》、《vb.bin》...《vh.bin》)

基本编号类“CRumpfNummern::”(主要是读出硬盘文件《14.bin》)

客户编号1类“CKdNummern::”(主要是读出硬盘文件《14.bin》)

经销商编号类“CSlpNummern::”(主要是读出硬盘文件《sdc.bin》)

客户折扣类“CEtPreisInfo::”(主要是读出硬盘文件《rbsTg.bin》)

维修信息类“CTkrInformation::”(主要是读出硬盘文件《11.bin》)

零件图2类“CFileDataBase::”(主要是读出硬盘文件《Maxis\*.fdb》)

字典类“CEtDuden::”(主要是读出硬盘文件《06_zh.bin》)

维修磨损件类“CEtServiceParts”(主要是读出硬盘文件《faps.bin》)

建议零件类“CEtTeileVorschlag::”(主要是读出硬盘文件《08.bin》)

适合零件类“CFittingParts::”(主要是读出硬盘文件《fip01.bin》)

替换件2类“CRepSaetze::”(主要是读出硬盘文件《zsbInfo.bin》)

的补充说明、贴图举例。

但它们除了零件图2类“CFileDataBase::”涉及河豚(blowFish)方法解密之外,

其余都是明文,毋需解密。

最后于 2020-8-30 18:09 被竹闲编辑 ,原因: 补充
2020-8-30 17:54
0
雪    币: 222
活跃值: (37)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
图像可以直接通过sub_6BF03BB0(a2, a3)解密出来吗?我试过没弄出来,还是从文件头处开始?请指教一下
2021-6-29 11:41
0
雪    币: 222
活跃值: (37)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
@竹闲 老哥,zgd也是图像吗? 需要解密吗?我看文件头好像是压缩文件
2021-6-30 16:57
0
雪    币: 4711
活跃值: (4224)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
好家伙
2021-6-30 17:59
0
游客
登录 | 注册 方可回帖
返回
//