چگونگی دیکامپایل کردن فایل های apk در اندروید
APK مخفف Android Application Package است و فرمت اصلی فایلهای اجرایی در سیستمعامل اندروید محسوب میشود. این فایل شامل تمام بخشهای موردنیاز برای نصب و اجرای یک اپلیکیشن روی دستگاههای اندرویدی است.
زمانی که پروژه در Android Studio کامپایل میشود، تمامی فایلهای پروژه از جمله:
- فایل AndroidManifest.xml
- فایلهای Java یا Kotlin
- فایلهای Layout
- تصاویر و فایلهای رسانهای
- کتابخانهها و منابع پروژه
پردازش و ترکیب شده و در نهایت یک فایل APK تولید میشود.
در فرآیند Build، کدهای برنامه ابتدا به فایلهای DEX تبدیل میشوند. فایلهای DEX شامل Bytecode مخصوص ماشین مجازی اندروید هستند و سپس همراه سایر منابع پروژه در قالب یک فایل APK بستهبندی میشوند.
دیکامپایل کردن فایل APK به معنای استخراج فایلها و بررسی ساختار داخلی اپلیکیشن است. البته باید توجه داشت که بازیابی کامل سورسکد اصلی از نسخه کامپایلشده همیشه امکانپذیر نیست؛ زیرا بخشی از اطلاعات در زمان کامپایل تغییر میکنند یا از بین میروند. با این حال، ابزارهای مختلفی برای تحلیل، بررسی و دیکامپایل فایلهای APK وجود دارند که توسعهدهندگان از آنها برای اهداف آموزشی، تحلیل امنیتی یا بررسی ساختار اپلیکیشنها استفاده میکنند.
لذا در زیر روش دیکامپایل کردن فایل های APK با استفاده از ابزار آنلاین را مشاهده خواهیم کرد. استفاده از این ابزار بسیار آسان و بدون دردسر است.
مراحل دیکامپایل کردن فایل APK:
مرحله ۱: بازدید از وب سایت برای دیکامپایل کردن
به آدرس زیر بروید:
http://www.javadecompilers.com/

مرحله ۲: آپلود کردن فایل APK
فایل APK را آپلود کنید تا فایل های منبع آن که فایل های دیکامپایل شده آپلود شده APK هستند، مشاهده شوند.

پس از موفقیت در بارگذاری فایل های APK، دو پوشه وجود خواهد داشت، یکی برای فایل های منابع و دیگری برای منابع سورس.

مرحله ۳: مشاهده فایلهای جاوا/منبع
برای مشاهده فایلهای جاوا، به پوشه منبع (Sources Folder) بروید.

مرحله ۴: در نهایت، پوشه منابع را مشاهده کنید.

نتیجه گیری:
بجز وب سایت های آنلاین مجموعه از ابزارهای مانند Dex2Jar و یا apktool می توانید استفاده کنید.برای یادگیری مجموعه ای از تمامی ابزارهای مهم مهندسی معکوس میتوانید با شرکت در دوره امنیت در اندروید دانش کاملی در زمینه امنیت در اندروید پیدا کنید.