anestisb / vdexExtractor

Tool to decompile & extract Android Dex bytecode from Vdex files
Apache License 2.0
1k stars 215 forks source link

extract vdex-010 got error #81

Open swearl opened 7 months ago

swearl commented 7 months ago

it is android 8 (api 27)

vdexExtractor -i services.vdex -o vdex -v 4 
[INFO] Processing 1 file(s) from services.vdex
[DEBUG] [39536] 2024/01/23 12:07:29 (vdexExtractor.c:224 main) Processing 'services.vdex'
[DEBUG] [39536] 2024/01/23 12:07:29 (vdex_api.c:43 vdexApi_initEnv) Initializing environment for Vdex version '010'
------ Vdex Header Info ------
magic header & version      : vdex-010
number of dex files         : 1 (1)
dex size (overall)          : 86686c (8808556)
verifier dependencies size  : 126c4 (75460)
verifier dependencies offset: 866888 (8808584)
quickening info size        : 9da (2522)
quickening info offset      : 878f4c (8884044)
dex files info              :
  [0] location checksum : 3546dbe1 (893836257)
---- EOF Vdex Header Info ----
[DEBUG] [39536] 2024/01/23 12:07:29 (vdex/vdex_010.c:76 vdex_010_GetNextDexFileData) Processing first Dex file at offset:0x1c
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:622 dex_dumpHeaderInfo) ------ Dex Header Info ------
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:624 dex_dumpHeaderInfo) magic        : dex-038
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:629 dex_dumpHeaderInfo) checksum     : d2ad2477 (3534562423)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:630 dex_dumpHeaderInfo) signature    : f91d1d44709e25730f2a5966e61b5d3dbaffac2c
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:632 dex_dumpHeaderInfo) fileSize     : 86686c (8808556)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:634 dex_dumpHeaderInfo) headerSize   : 70 (112)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:636 dex_dumpHeaderInfo) endianTag    : 12345678 (305419896)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:638 dex_dumpHeaderInfo) linkSize     : 0 (0)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:640 dex_dumpHeaderInfo) linkOff      : 0 (0)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:642 dex_dumpHeaderInfo) mapOff       : 86679c (8808348)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:644 dex_dumpHeaderInfo) stringIdsSize: 139d9 (80345)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:646 dex_dumpHeaderInfo) stringIdsOff : 70 (112)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:648 dex_dumpHeaderInfo) typeIdsSize  : 17b3 (6067)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:650 dex_dumpHeaderInfo) typeIdsOff   : 4e7d4 (321492)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:652 dex_dumpHeaderInfo) protoIdsSize : 2fab (12203)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:654 dex_dumpHeaderInfo) protoIdsOff  : 546a0 (345760)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:656 dex_dumpHeaderInfo) fieldIdsSize : 5f9d (24477)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:658 dex_dumpHeaderInfo) fieldIdsOff  : 782a4 (492196)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:660 dex_dumpHeaderInfo) methodIdsSize: b058 (45144)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:662 dex_dumpHeaderInfo) methodIdsOff : a7f8c (688012)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:664 dex_dumpHeaderInfo) classDefsSize: e9d (3741)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:666 dex_dumpHeaderInfo) classDefsOff : 10024c (1049164)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:668 dex_dumpHeaderInfo) dataSize     : 7494e0 (7640288)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:670 dex_dumpHeaderInfo) dataOff      : 11d5ec (1168876)
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:687 dex_dumpHeaderInfo) -----------------------------
[DEBUG] [39536] 2024/01/23 12:07:29 (dex.c:373 dex_isValidDex) Dex version '038' detected
[FATAL] [39536] 2024/01/23 12:07:29 (dex.c:836 dex_getStringId) ((idx)) < ((dex_getStringIdsSize(dexFileBuf)))

here is the file

services.zip

please help, thanks

ohyeah521 commented 4 months ago

Are you sure this is a correct vdex file and can be executed?

hongwanli commented 4 months ago

Are you sure this is a correct vdex file and can be executed?

这是一个从一个车机系统(Android 8.1)上导出的文件,不确定是否可执行。导出路径为/system/oat/arm64/services.vdex

ohyeah521 commented 4 months ago

我昨天调试了一下,发现dex里面的字符串的idx会有负数的情况,很奇怪,要么就是这不是一个正常的文件,要么就是被混淆了,现在无法确认属于那种情形

hongwanli commented 4 months ago

我昨天调试了一下,发现dex里面的字符串的idx会有负数的情况,很奇怪,要么就是这不是一个正常的文件,要么就是被混淆了,现在无法确认属于那种情形

方便留个联系方式吗 我重新导出发给你看一下

ohyeah521 commented 4 months ago

我的id,gmail邮箱