آسیب‌پذیری

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

محققان امنیتی یک آسیب‌پذیری که به‌راحتی قابل بهره‌برداری است را در ابزارهای توسعه‌دهنده اندروید کشف کردند که بر روی ابزارهای قابل دانلود و همچنین بر پایه cloud تأثیرگذار است، که می‌تواند مهاجمان را قادر به سرقت فایل‌ها و اجرای کدهای مخرب در سیستم‌های آسیب‌پذیر و از راه دور کند.

 این مسئله توسط محققان امنیتی در تیم تحقیقاتی Check Point کشف شد[۱]، که همچنین اثبات ادعای این حمله را نیز منتشر کردند و آن را ParseDroid نامیدند.

این آسیب‌پذیری در یک کتابخانه تجزیه‌وتحلیل XML محبوب به نام DocumentBuilderFactory قرار دارد که توسط رایج‌ترین محیط‌های توسعه یکپارچه‌ی اندروید(۱) مانند Android Studio ،JetBrains IntelliJ IDEA، Eclipse و همچنین ابزارهای مهندسی معکوس برای برنامه‌های اندروید مانند APKTool، Cuckoo-Droid و غیره مورداستفاده قرار می‌گیرد.

نقص ParseDroid که ازلحاظ فنی به‌عنوان آسیب‌پذیری (۲)XXE شناخته می‌شود، زمانی رخ می‌دهد که یک برنامه اندروید آسیب‌پذیر یا ابزار مهندسی معکوس یک برنامه را decode کرده و برای تجزیه کردن فایل مخربِ AndroidManifest.xml که در داخل آن قرار دارد، تلاش کند.

به‌بیان‌دیگر تمام کاری که مهاجم برای فعال شدن این آسیب‌پذیری باید انجام دهد این است که توسعه‌دهندگان یا مهندسین معکوس را به load کردن یک فایل APK تخریب‌شده ترغیب کند.

محققان می‌گویند: “به‌سادگی با بارگذاری فایل مخرب AndroidManifest.xml به‌عنوان بخشی از یک پروژه اندروید، IDE ها شروع به تفکیک کردن هر فایل پیکربندی‌شده توسط مهاجم می‌کنند.”

اثبات: XXE تا اجرای کد از راه دور

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

علاوه بر این، مهاجم نیازی به مستقیم هدف قرار دادن قربانیان خود ندارد، چراکه محققان پیشنهاد دادند یک سناریوی حمله دیگر وجود دارد که می‌تواند در سطح اینترنت مورداستفاده قرار گرفته تا تعداد زیادی از توسعه‌دهندگان اندروید را از طریق تزریق یک (۳)AAR مخرب موردحمله قرار دهد.

برای اهداف آموزشی و اثبات این حمله، محققان همچنین یک ابزار رمزگشای APK آنلاین را ایجاد کرده‌اند که می‌توانند فایل مخرب را از APK (در این مورد آن‌ها از یک PHP web shell استفاده کردند) استخراج کنند که به مهاجم اجازه می‌دهد تا فرمان‌های سیستمی را بر روی سروربرنامه وب(۴) اجرا کند[۲].

محققان شرکت Check Point به نام‌های Eran Vaknin، Gal Elbaz، Alon Boxiner و Oded Vanunu این مشکل را در ماه می ۲۰۱۷ کشف کردند و آن‌ها را به تمام IDE ها و توسعه‌دهندگان ابزارهای مهم، ازجمله گوگل، JetBrains، Eclipse و APKTool گزارش دادند.

بسیاری از توسعه‌دهندگان، ازجمله گوگل، JetBrains و APKTool این مشکل را توسط انتشار نسخه‌های وصله شده برطرف کردند.

ازآنجایی‌که تمام روش‌های حمله نشان داده‌شده توسط محققان cross-platform است، به توسعه‌دهندگان و مهندسین معکوس به‌شدت توصیه می‌شود که ابزارهای خود را به‌روزرسانی کنند.

منابع

[۱]https://research.checkpoint.com/parsedroid-targeting-android-development-research-community

[۲] https://youtu.be/w8Lg8ptpVpQ

[۳] https://thehackernews.com/2017/12/android-development-tools.html


(۱) Integrated Development Environments (IDEs)
(۲) XML External Entity
(۳) Android Archive Library
(۴) web application server