زمان جاری : جمعه 14 اردیبهشت 1403 - 10:59 قبل از ظهر
نام کاربری : پسورد : یا عضویت | رمز عبور را فراموش کردم


سلام مهمان گرامي؛
مهمان گرامي، براي مشاهده تالار با امکانات کامل ميبايست از طريق ايــن ليـــنک ثبت نام کنيد


آیا میدانید؟ ایا میدانید :






تعداد بازدید 274
نویسنده پیام
amani آفلاین



عضویت: 10 /10 /-622
مهندسی معکوس و دی‌کامپایل کردن فایل‌های APK آندروید
چندی پیش نیاز شد تا یک اپلیکیشن آندرویدی را کمی دست‌کاری کنم و چند تغییر کوچک در اون‌ اعمال کنم.این اپلیکیشن‌ متن باز نبود پس به کد منبع آن دسترسی نداشتم و فقط فایل باینری با پسوند APK در اختیارم بود.پس تنها راهی که پیش روی من بود رفتن به سراغ مهندسی معکوس بود تا شاید از این طریق بتوانم کاری از پیش ببرم.



اگر با مهندسی معکوس آشنایی ندارید صفحه ویکیپدیای آن را بخوانید تا با با این علم و کاربردهای آن آشنا شوید.مهندسی معکوس برای هکرها هم امکان ایجاد و توسعه کدهای مخرب (exploits)، ویروس‌ها و تروجان‌ها را فراهم میکند.

دی‌کامپایل کردن فایل‌های باینری جاوا و سایر زبان‌ها هم از دیرباز مطرح بوده.ابزارهای بسیاری وجود دارد که به شما اجازه دی‌کامپایل کردن پکیج‌های باینری اپلیکیشن‌ها و تا حدودی دسترسی به سورس آن‌ها را فراهم میکند که در بعضی موارد با تلاش فراوان در نهایت کد منبع آن قابل فهم و خواندن میشود.

حالا Brut.all از توسعه‌دهندگان XdaDeveloper روی یک دی‌کامپایلر اپن‌سورس با نام APKTools کار کرده که بوسیله آن میتوان اپلیکیشن‌های آندروید را دی‌کامپایل کرد.از این برنامه برای دی‌کامپایل کردن اپلیکیشن گوگل‌مپ هم استفاده شده است.

ابزار دیگری به نام dex2jar هم وجود دارد که توسط یک دانش‌آموز چینی ساخته شده که میتواند فایل dex را به jar تبدیل کند.برای قدم بعدی میتوانید از jd-gui استفاده کنید.

راه دیگر استفاده از Smali است که ابزار بسیار عالی برای مهندسی معکوس فایل‌های DEX است.این ابزار بوسیله JesusFreke ساخته شده که برای رام‌های آندرویدی‌اش مشهور است.

dissambler آندروید با نام dexdump. اطلاعات بیشتر

ابزار Decompile Android APK to Java برای دی‌کامپایل کردن فایل‌های APK آندروید به جاوا

معرفی APKTools:
APLKTools ابزاری است برای مهندسی معکوس اپلیکیشن‌های متفرقه،کد بسته و فایل‌های باینری اپلیکیشن‌های آندروید.این ابزار میتواند کار رمزگشایی و دی‌کامپایل کردن فایل‌های APK آندروید را انجام و پس از تغییرات اعمال شده آن را rebuild کند.این ابزار برای اهدافی همچون دزدی نرم‌افزار و مقاصد غیر قانونی پیشنهاد نمیشود.از این ابزار میتوان استفاده‌های مفیدی مثل محلی‌سازی اپلیکیشن‌ها، اضافه کردن ویژگی‌های دیگر یا اضافه کردن پشتیبانی از پلتفرم‌های دیگر انجام داد.
این ابزار میتواند ریسورس‌ها را رمزگشایی و تبدیل به فرم اصلی آن شامل resources.arsc, XMLs و ۹٫png … کرده و دوباره آن را rebuild کند.

پیش‌نیاز‌ها:

JRE 1.5+
aapt command in PATH environment variable
Basics of Android SDK
نحوه نصب APTTools:

ابتدا به اینجا بروید.سپس برای:

ویندوز:
فایل‌های apktool-install-windows-* و apktool-* را دریافت کنید
هر دو فایل را در دایرکتوری Windows بازگشایی کنید.
برای ویندوز ابزار ساده‌ای هم به نام APK Edit که بر پایه APKTools ایجاد شده وجود دارد که از آن هم میتوانید به سادگی استفاده کنید.پیش‌نیازها برای این ابزار: جاوا و .Net Framework 3.5 است.

لینوکس:
فایل apktool-install-linux-* را دریافت کنید.
فایل apktool-* را دریافت کنید.
هر دو فایل را در مسیر /usr/local/bin بازگشایی کنید(نیاز به دسترسی ریشه دارد)

مک او اس:
فایل‌های apktool-install-macos-* و apktool-* را دریافت کنید
هر دو فایل را در مسیر /usr/local/bin بازگشایی کنید (نیاز به دسترسی ریشه دارد)

نصب فایل‌های فریم‌ورک

نحوه استفاده:
یک ترمینال/خط فرمان باز کنید و عبارت apktool را بنویسید و enter را بزنید تا راهنمای استفاده را ببینید.

میتوانید از این ویدئوهای آموزشی یک و دو استفاده کنید.

پنجشنبه 18 آبان 1391 - 15:32
نقل قول این ارسال در پاسخ گزارش این ارسال به یک مدیر



برای ارسال پاسخ ابتدا باید لوگین یا ثبت نام کنید.


پرش به انجمن :


تماس با ما | مهندسی معکوس و دی‌کامپایل کردن فایل‌های APK آندروید | بازگشت به بالا | پیوند سایتی RSS