legu_unpacker_2019
1.0.0
用于解压受腾讯乐谷保护的 Android 应用程序的脚本。它仅适用于 Legu 版本4.1.0.15和4.1.0.18 。
博客文章:https://blog.quarkslab.com/a-glimpse-into-tencents-legu-packer.html
原始DEX文件位于assets/0OO00l111l1l
中,布局如下:
我们可以在 Kaitai 文件中找到该结构的详细信息:legu_packed_file.ks
第二部分嵌入的hashmap在legu_hashmap.ks文件中描述:
pylegu 包含用于解密和解压缩嵌入在assets/0OO00l111l1l
中的数据的 Python 绑定。
编译并安装pylegu
:
$ cd pylegu
$ python3.7 ./setup.py build -j4 install --user
$ python -c " import pylegu "
还可以使用 jap/pyucl 解压缩数据,使用 aguinet/dragonffi 绑定 XTEA 的自定义实现。
示例 com.intotherain.voicechange.apk 是一个可疑的应用程序,可以按如下方式解包:
$ python ./unpack.py ./samples/com.intotherain.voicechange.apk
[+] Legu version: 4.1.0.15
[+] Password is ' IPk2Hw7AKTuIQBlc '
[+] Number of dex files: 1
[+] Unpacking # 1 DEX files ...
[+] dex 0 compressed size: 0x1619a3
[+] dex 0 uncompressed size: 0x5671f8
[+] Unpacking # 1 hashmap ...
[+] hashmap 0 compressed size: 0x4399c
[+] hashmap 0 uncompressed size: 0x95558
[+] Unpacking # 1 packed methods ...
[+] packed methods 0 compressed_size: 0xf4636
[+] packed methods 0 uncompressed_size: 0x1e3072
[+] Stage 2: Patching DEX files
[+] Unpacked APK: unpacked.apk
解压后的 DEX 文件位于unpacked.apk
文件中。