สคริปต์เพื่อคลายแพ็กแอปพลิเคชัน Android ที่ได้รับการปกป้องโดย Tencent Legu ใช้งานได้กับ 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
แฮชแมป ที่ฝังอยู่ในส่วนที่สองอธิบายไว้ในไฟล์ legu_hashmap.ks:
pylegu มีการผูก Python เพื่อถอดรหัสและคลายการบีบอัดข้อมูลที่ฝังอยู่ใน assets/0OO00l111l1l
เพื่อคอมไพล์และติดตั้ง 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