في
الدرس السابق تحدثنا عن اداة APKTool
والتي
تستخدم لاستخراج تطبيقات اندرويد على
ملفات sources,
في
هذا الدرس سوف اشرح اداة في نفس مجال وهي
dex2jar
هذه
الاداة تقوم بقراءة ملفات الـ (.dex
/ .odex) وتقوم
بفك البرنامج على شكل smali
أو
jar
ويوجد
عدة أدوات مساعدة وهم:
اداة
d2j-jar2dex:
لتحويل
jar
إلى
dex
اداة
d2j-jar-remap:
تعديل
اسم في ملف الجار لـ الـ package
أو
الـ class
أو
method
أو
حتى الحقول.
اداة
d2j-dex2jar:
لتحويل
الـ dex
إلى
ملف jar
اداة
dex2jar:
هذه
نفس عمل اداة d2j-dex2jar
اداة
d2j-jasmin2jar:
تقوم
بعمل Assemble
.j إلى
ملف .class
اداة
d2j-jar-access:
تقوم
هذه الاداة بحذف او إضافة class/method/field
access إلى
ملف jar
اداة
d2j-asm-verify:
تقوم
بالتحقق من الـ .class
في
ملف الـ jar
اداة
d2j-dex-dump:
هذه
الاداة لعمل Dump
لملفات
الـ .in
وتقوم
باستخراج بصيغة out.dump.jar
اداة
d2j-init-deobf:
تقوم
بعمل ملف init
config لـ
deObfuscate
لملف
الـ jar
اداة
d2j-apk-sign:
لعمل
Sign
لتطبيق
اندرويد او حتى بايلود باستخدام شهادة
اختبار
اداة
d2j-jar2jasmin:
تقوم
بعمل Disassemble
على
ملف الـ .class
في
ملف Jar
وعمل
استخراج إلى jasmin
هذا
المشروع يمكن استخدامه في العديد من
الامور لكن في هذا الدرس سوف نقوم بحل
تحدي CTF
للتطبيق
لمشاهدة الدرس من هنا.