حذف 1700 برنامه‌ی آلوده به بدافزار Joker از فروشگاه Google Paly 

یک‌شنبه ۱۳ بهمن ۱۳۹۸
گوگل از سه سال گذشته تا به امروز1700 برنامه‌ی اندرویدی آلوده به بدافزار Joker(معروف به Bread)را از فروشگاه Google Paly حذف کرده است.
مرکز آپا شریف
SUT-APA-LOGO

گوگل از سه سال گذشته تا به امروز1700 برنامه‌ی اندرویدی آلوده به بدافزار Joker (معروف به Bread) را از فروشگاه Google Paly حذف کرده است.
بدافزار Joker از خانواده کلاهبرداری‌های صدور صورتحساب است که در سال 2017 ظاهر شد و از سال 2019 به‌طورجدی شروع به کار کرد. این بدافزار یک کد مخرب است که خود را به‌عنوان یک برنامه‌ی سیستمی قانونی جا می‌زند و به مهاجمان اجازه می‌دهد طیف وسیعی از کارهای مخرب ازجمله غیرفعال کردن سرویس GooglePlay Protect، نصب برنامه‌های مخرب، تولیدنظرات جعلی و نمایش تبلیغات را انجام دهند.
بدافزار Joker کاربران 37 کشور ازجمله استرالیا، اتریش، بلژیک، برزیل، چین، قبرس، مصر، فرانسه، آلمان، غنا، یونان، هندوراس، هند، اندونزی، ایرلند، ایتالیا، کویت، مالزی، میانمار، هلند، نروژ، لهستان، پرتغال، قطر، جمهوری آرژانتین، صربستان، سنگاپور، اسلوونی، اسپانیا، سوئد، سوئیس، تایلند، ترکیه، اوکراین، امارات متحده عربی، انگلستان و ایالات‌ متحده امریکا را آلوده ساخته است.
جاسوس‌افزار Joker برای سیم‌کارت‌های مشترک با یکی از کشورهای فوق مورد بررسی قرار گرفته است. اکثر برنامه‌‌ها، کشورهای اتحادیه اروپا و آسیا را هدف قرار می‌دهند.
کد مخرب، تکنیکی را پیاده‌سازی می‌کند که بررسی‌های Google Play را دور می‌زند. این بدافزار کد مخرب را درون چارچوب‌های تبلیغاتی پنهان می‌کند. پس از نصب برنامه، یک صفحه نشان می‌دهد که لوگوی برنامه را نمایش می‌دهد، درحالی‌که فرایندهای مقداردهی اولیه مختلفی را در پس‌زمینه اجرا می‌کند.
این جاسوس‌افزار همچنین اشتراک خدمات پرمیوم تبلیغات مختلفی را برای قربانیان ثبت می‌کند. این بدافزار همچنین می‌تواند تعامل لازم با صفحه‌وبی که پرمیوم را پیشنهاد می‌کند، ازجمله جداکردن پیامکی که حاوی کد تأیید است را خودکار سازد.
برنامه‌های بدافزار Joker در ابتدا برای انجام کلاهبرداری صدور صورتحساب پیامکی طراحی شده بودند، اما پس از معرفی خط‌مشی‌های جدید Play، مهاجمان تا حد زیادی برای پرداخت WAP از آن استفاده می‌کنند. به‌طورکلی، برنامه‌های Bread به دو دسته تقسیم می‌شوند: کلاهبرداری پیامکی (نسخه‌های قدیمی‌تر) و کلاهبرداری toll (نسخه‌های جدیدتر). هر دو نوع این کلاهبرداری‌ها از روش‌های صدور صورتحساب موبایلی که شرکت مخابراتی کاربر،  دارای آن است، سوءاستفاده می‌کنند.

صدور صورتحساب پیامکی:
شرکت مخابراتی ممکن است با عرضه‌کنندگان همکاری کند تا صدور صورتحساب سرویس‌ها از طریق پیامک صورت پذیرد. لازم است کاربر ابتدا یک کلیدواژه‌ی تعیین‌شده را به یک شماره‌ی تعیین‌شده تایپ کند (کد کوچک).سپس شارژی به‌حساب کاربر توسط ارائه‌دهنده‌ی خدمات تلفن همراه اضافه می‌شود.

صدور صورتحساب toll:
شرکت‌های مخابراتی ممکن است صدور صورتحساب از طریق صفحه‌ی وب نیز ارائه دهند. کاربر برای کامل‌کردن پرداخت، یک URL را ملاقات و شماره تلفن همراه خود را وارد می‌کند. تأیید درخواستی که از دستگاه کاربر آمده است بااستفاده از دوروش زیر کامل می‌شود:

  1. کاربر از طریق داده‌ی تلفن همراه (نه WiFi)،  به سایت وصل می‌شود (بنابراین ارائه‌دهنده‌ی سرویس مستقیماً این اتصال را مدیریت می‌کند و می‌تواندشماره تلفن را اعتبارسنجی کند)
  2. کاربر باید کدی که از طریق پیامک به آن‌ها ارسال شده است را دریافت و آن را وارد صفحه‌ی وب کند.


نسخه‌های جدیدتر بدافزار Joker از کلاهبرداری toll استفاده می‌کنند.در این نوع کلاهبرداری، قربانیان به‌گونه‌ای فریب داده می‌شوند که از طریق پرداخت تلفن همراه خود انواع محتواها را بخرند یا ثبت اشتراک کنند.
هر دو روش پرداختی که بالا شرح داده شده است تأیید دستگاه را ارائه می‌دهند، اما برای تأیید کاربر اقدامی صورت نمی‌گیرد.شرکت مخابراتی می‌تواند تشخیص دهد که این درخواست از دستگاه کاربر نشأت گرفته است‌، اما ازآنجایی‌که به هیچ‌گونه تعاملی از طرف کاربر نیاز ندارد نمی‌تواند به خودکاربودن فرایند پرداخت پی ببرد. نویسندگان بدافزار از کلیک‌های تزریقی،پارسرهای سفارشی و گیرنده‌های پیامک به‌منظور خودکارسازی فرایند پرداخت بدون آنکه نیازی به تعامل از سوی کاربر باشد، استفاده می‌کنند.
  برنامه‌های Joker‌ از هرگونه روش ابهام‌سازی و مخفی‌‌سازی برای شناسایی‌نشدن استفاده می‌کنند. آن‌ها سعی می‌کنند بااستفاده از روش‌های مختلف ازجمله رمزنگاری استاندارد و سفارشی، رشته‌ها را از موتورهای تجزیه‌وتحلیل مخفی کنند.
روش‌های رمزنگاری استانداردی که Joker استفاده می‌کند عبارت است از AES، Blowfish و DES و همچنین ترکیبی از این روش‌ها برای مخفی‌سازی رشته‌ها. در  رمزنگاری سفارشی از روش‌های XOR پایه، XOR لانه‌ای و اشتقاق کلید سفارشی استفاده می‌کند.
این رشته‌های رمزنگاری‌شده ممکن است تحلیل‌گران را متوجه سازد که سعی دارند چیزی را مخفی کنند، بنابراین Joker از رشته‌های رمزنگاری‌نشده‌ای که با روش‌های دیگری مانند شکستن آن‌ها به تکه‌هایی که مانع انطباق خودکار رشته با آنتی‌ویروس یا ابزار امنیتی دیگر می‌شود، مخفی می‌شوند، استفاده می‌کند. نسخه‌های مختلف Joker ممکن است شاخص تقسیم را تغییر دهند.
همچنین برخی از برنامه‌‌های Joker از delimeter استفاده می‌کنند. delimeterها رشته‌های کوتاه و ثابتی از کاراکترهایی هستند که در نقاط استراتژیک درج می‌شوند تا کلیدواژه‌ها را جدا کنند. delimeter در زمان اجرا، پیش از استفاده از رشته برداشته می‌شود.
کلاهبرداری پیامکی و toll به چند رفتار پایه (مانندغیرفعال‌کردن wifiیا دسترسی به پیامک) نیاز دارد که از طریق تعداد معدودی API قابل دسترسی هستند. ازآنجایی‌که استفاده از این APIها می‌تواند نشانه‌ی رفتار بد یک برنامه باشد، استفاده از این APIها اغلب برای بازرسی توسط راه‌حل‌های امنیتی پرچم‌گذاری می‌شود. بنابراین برنامه‌های Joker مجبورند تکنیک‌های متنوعی را برای پوشاندن استفاده از این APIها به کار گیرند. برنامه‌های Joker  برای مخفی‌کردن استفاده از API بیشتر از روش بازتاب جاوا (Java reflection) استفاده می‌کنند. در بعضی نمونه‌ها، Bread مستقیماً Reflect API را بر رشته‌هایی که در زمان اجرا رمزگشایی شده‌اند، فراخوانی می‌کند. گاهی اوقات یک برنامه‌ی Joker از کتابخانه‌ی بومی Android برای ذخیره‌سازی رشته‌هایی که برای دسترسی به API پیامک لازم است، استفاده می‌کند.
مهمتر از همه اینها، برنامه‌های Joker همچنین از چندین بسته‌‌بند تجاری موجود، از جمله Qihoo360 ،AliProtect و SecShell برای مخفی کردن کد خود استفاده می‌کنند و گاهی اوقات آن را در یک کتابخانه بومی حاوی فایل APK پنهان می‌سازند.
مزیت اصلی در این است که اپراتورها این ترفندها را ترکیب و منطبق سازند.
علاوه بر تلاش‌های Joker برای مخفی‌کردن کدهای مخربش، برخی ویژگی‌های آن نیز قابل‌توجه است. به‌عنوان‌مثال، بررسی می‌کند دستگاه به کدام شرکت مخابراتی متصل می‌‌شود و یک پیکربندی در حال هماهنگ‌شدن را از کارگزار کنترل و فرمان (C2) دریافت می‌کند. این امر به بدافزار می‌گوید از کدام توابع استفاده کند (به‌عنوان‌مثال جابجایی وضعیت Wi-Fi یا  خواندن/تغییر صندوق ورودی پیامک) و در برخی موارد امکان حل‌کردن CAPTCHAهای اصلی که پازل‌های بصری استفاده‌شده توسط وب‌سایت‌ها برای از بین بردن فعالیت بات است را فراهم می‌آورد.
لازم به ذکر است که برنامه‌های Joker در روشی که کاربران را فریب می‌دهند تا آن‌ها را دانلود کنند متفاوت عمل می‌کنند. گاهی اوقات برنامه‌ها دارای نظرات جعلی هستند و گاهی اوقات مهاجمان از نسخه‌سازی استفاده می‌کنند. در نسخه‌سازی، نسخه‌های اولیه تمیز هستند؛ اما نسخه‌های بعدی به‌روز شده حاوی کدهای مخرب هستند.
کاربران باید آگاه باشند که برخی برنامه‌های Joker دارای قابلیت جاسوس‌افزاری هستند. برای مثال در ماه اکتبر سال 2019، گوگل 24 برنامه‌ را از فروشگاه Google Play، بدین دلیل که آلوده به بدافزار Jokerبودند، حذف کرد. این 24 برنامه‌‌ی مخرب درمجموع 472000 بار نصب شده بودند. این برنامه‌ها قادر به ‌سرقت پیامک‌ها، لیست مخاطبان و اطلاعات دستگاه، علاوه بر ثبت اشتراک خدمات پرمیوم برای کاربران بودند.
سرویس Google Play Protect دائماً در حال به‌روزرسانی موتورهای تشخیص است و به کاربرانی که برنامه‌های مخرب را در دستگاهشان نصب کرده‌اند، هشدار می‌دهد.