چطور بی‌سر و صدا ماکروهای آلوده را روی macOS اجرا کنیم؟

18 شهریور 1399 چطور بی‌سر و صدا ماکروهای آلوده را روی macOS اجرا کنیم؟

روابط عمومی شرکت ایدکو (توزیع کننده محصولات کسپرسکی در ایران)؛ بسیاری از کاربران کامپیوتر macOS هنوز هم بر این باورند که دستگاه‌هایشان نیازی به محافظت ندارد. بدتر اینکه ادمین‌های سیستمِ شرکت‌ها –جایی که کارمندان با سخت‌افزار اپل کار می‌کنند- اغلب همین عقیده را دارند. در بلک‌هت آمریکا 2020 پاتریک واردلِ محقق، سعی داشت با ارائه‌ی تجزیه و تحلیل بدافزاری روی macOS و ساخت یک زنجیره اکسپلویت برای در دست گرفتن کنترل کامپیوتر اپلی، آن دسته از مخاطبین را که بر این باور غلط اصرار می‌ورزیدند از اشتباه دربیاورد. در ادامه خواهیم دید چطور بی‌سر و صدا ماکروهای آلوده روی macOS اجرا می‌شوند. با ما همراه شوید.

مایکروسافت، ماکروها و مک

یکی از شایع‌ترین روش‌های حمله به کامپیوترهایی که macOS اجرا می‌کنند از طریق داکیومنت‌های درآمیخته با ماکروهای آلوده انجام می‌گیرد؛ بهتر بگوییم از طریق اپلیکیشن‌های Microsoft Office. به طور حتم، با وجود اینکه خود اپ‌های بهره‌وری اپل قابل‌دسترسی هستند اما باز هم بسیاری از کاربران ترجیح می‌دهند از Microsoft Office استفاده کنند. برخی از روی عادت چنین ترجیحی دارند و عده‌ای نیز به دلیل قابلیت سازگارپذیری با داکیومنت‌هایی که همکارانشان درست‌ می‌کنند. البته که دیگر بر همگان عیان است داکیومنت‌های حاوی ماکروها می‌توانند بالقوه چقدر تهدیدآمیز باشند. بنابراین، هم مایکروسافت و هم اپل، مکانیزم‌هایی برای محافظت از کاربر دارند. مایکروسافت وقتی کاربران داکیومنتی حاوی یک ماکرو باز می‌کنند به آن‌ها هشدار می‌دهد. افزون بر این، اگر کاربر تصمیم بر اجرای ماکرو (با همه خطراتی که می‌تواند داشته باشد) بگیرد، سپس کدی در سندباکس اجرا می‌شود که بر طبق گفته‌های توسعه‌دهندگان مایکروسافت نمی‌گذارد این کد به فایل‌های کاربران دسترسی پیدا نموده یا به سیستم لطمات دیگری وارد کند. در مورد اپل نیز این شرکت چندین قابلیت امنیتی جدید را در آخرین نسخه‌ی سیستم‌عامل خود (macOS Catalina) معرفی کرده است. این قابلیت‌ها به طور خاص شامل قرنطینه‌ی فایل و notarization (تنظیم اسناد) –فناوری‌ای که مانع اجرای قابل‌اجراها[1] از منابع خارجی می‌شود- می‌شوند. در اصل این فناوری‌ها (ترکیبشان با هم) باید آنقدری کافی باشند که جلوی لطمات را از جانب ماکروهای آلوده بگیرند. به لحاظ تئوریک، هرچیزی به نظر تماماً امن و امان می‌آید.

زنجیره اکسپلویت ماکرو را از سندباکس بیرون می‌کند 

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

  1. دور زدن این مکانیزم (که باعث غیرفعالسازی ماکروها می‌شود)

برای مثال، سیستمی را که هنگام شناسایی یک ماکرو در داکیومنت هشدار می‌دهد در نظر بگیرید. در اکثر موارد آنطور که توسعه‌دهندگان در نظر گرفته‌اند کار می‌کند اما در عین حال نیز این امکان وجود دارد که داکیومنتی ساخته شود که در آن، ماکرو به طور خودکار و بدون اینکه هشداری به کاربر داده شود اجرا شود (حتی اگر ماکروها در تنظیمات غیرفعال شده باشند). این کار را می‌شود با استفاده از فرمت فایل Sylk (SLK) انجام داد. این فرمت –که از زبان ماکروی XLM استفاده می‌کند- در دهه 80 میلادی توسعه داده شد و آخرین بار سال 1986 بروزرسانی گشت. با این حال، اپ‌های مایکروسافت (برا مثال اکسل) هنوز هم به دلیل ویژگی سازگاری عقبرو[2] از Sylk پشتیبانی می‌کنند. این آسیب‌پذیری، چندان هم تازه نیست و در سال 2019 مفصلاً شرح جزئیاتش بیرون آمد.

  1. فرار از سندباکس

همانطور که اکنون ثابت شد، مهاجم می‌تواند به طور نامرئی و بسیار بی‌سر و صدا ماکرویی را اجرا کند درحالیکه کد هنوز داخل سندباکس ایزوله‌ی مایکروسافت آفیس اجرا شده است. به هر روی، چطور یک هکر می‌تواند به کامپیوتر حمله کند؟ بسیارخوب، اینطور پی بردیم که فرار از سندباکس مایکروسافت روی مک چندان هم کار دشواری نیست. این که نمی‌توانید فایل‌های از قبل ذخیره‌شده روی کامپیوتر خود در داخل سندباکس را دستکاری کنید اما می‌توانید آن‌ها را ایجاد کنید! این اکسپلویت از پیش نیز برای فرار از سندباکس مورد استفاده قرار می‌گرفته و به نظر می‌رسد مایکروسافت برای بستن این آسیب‌پذیری آپدیتی نیز منتشر کرد. با این وجود، این مشکل از اساس حل نشد زیرا بررسی جزئی‌تر روی پچ آن نشان می‌دهد که:

این فیکس، به علایم و نشانه‌ها پرداخته و ایجاد فایل را در مکان‌هایی که برخی توسعه‌دهندگان «ناامن» خواندند (مانند فولدر LaunchAgents که لوکیشن ذخیره‌سازی مخصوص اسکریپت‌هایی است که به طور خودکار بعد از ریبوت لانچ می‌شوند) مسدود ساخته است. اما اساساً چه کسی تعیین کرده که وقتی مایکروسافت پچی بیرون می‌دهد دیگر مو لای درزش نمی‌رود؟ شاید تعجب‌آور باشد اما حقیقت دارد که اسکریپتی نوشته‌شته به زبان پیتون و اجراشده از داکیومنت آفیس –و بنابراین اجراشده داخل یک سندباکس- می‌تواند برای ساخت چیزی به نام Login Item مورد استفاده قرار گیرد. چیزی با این اسم به طور خودکار وقتی کاربر به سیستم لاگین می‌شود لانچ می‌گردد. این سیستم، آن چیز را لانچ کرده تا خارج از سندباکس آفیس اجرا شود و بدین‌ترتیب محدودیت‌های امنیتی مایکروسافت را دور بزند.

  1. دور زدن مکانیزم‌های امنیتیِ اپل

بنابراین اکنون ما می‌دانیم چطور می‌شود مخفیانه یک ماکرو را اجرا نموده و Login Item را ساخت. البته که مکانیزم‌های امنیتی در macOS هنوز هم مانع لانچ بک‌در می‌شوند، اینطور نیست؟ از طرفی می‌شود گفت بله همینطور است: مکانیزم‌های امنیتی اپل به طور حتم اجرای کد بدست‌آمده به چنین روشی را بلاک می‌کند اما از طرفی هم می‌شود گفت نه اینطور نیست: اگر به عنوان یک Login Item به آرشیو ZIP رخنه کنید آنوقت سیستم در لاگین بعدی به طور خودکار فایل را unzip خواهد کرد. دیگر تنها کاری که مهاجم مانده انجام دهد انتخاب لوکیشن درست برای unzip کردنِ فایل است. بعنوان مثال، این آرشیو می‌تواند در همان دایرکتوریی آرشیوهای کاربری قرار گیرد. خود این آرشیو می‌تواند شامل دایرکتوری‌ای به نام LaunchAgents شود که حاوی اسکریپت Launch Agent است. وقتی اسکریپت unzip شد برای اجرا روی ریبوت در فولدر LaunchAgents قرار داده می‌شود. این اسکریپت -ساخته‌شده توسط برنامه قابل‌اطمینان (Archiver) و نداشتن خصیصه‌های قرنطینه- می‌تواند برای لانچ چیزی خطرناک‌تر مورد استفاده قرار گیرد. مکانیزم‌های امنیتی حتی جلوی لانچ این فایل را هم نمی‌گیرند. در نتیجه، مهاجم می‌تواند از طریق پوسته‌ی فرمان Bash برای پیدا کردن دسترسی ریموت، مکانیزمی را لانچ کند. این فرآیند Bash را می‌توان برای دانلود فایل‌ها استفاده کرد که همچنین فاقد خصیصه‌ی قرنطینه هستند. بدین‌ترتیب به مهاجم این اجازه داده می‌شود تا کد بسیار مخرب را دانلود نموده و بدون هیچ محدودیتی اجرایش کند.

خلاصه:

  • مهاجم می‌تواند مخفیانه بدون نمایش هیچ هشداری یا پرسیدن هیچ سوالی (حتی اگر اجرای ماکرو در تنظیمات غیرفعال نیز شده باشد) ماکروی مخربی را لانچ کند. فقط کافیست کاربر داکیومنت آفیس را دانلود کرده و بازش کند!
  • سپس، مهاجم می‌تواند از سندباکس مایکروسافت آفیس فرار کند و Login Item و آرشیوی با Launch Agent داخل آن (که در لاگین بعدی به صورت خودکار خارج سندباکس اجرا می‌شود) بسازد.
  • مهاجم با چند گام دیگر می‌تواند براحتی مکانیزم‌های امنیتی اپل را با استخراج یک Launch Agent دور بزند. این برنامه که از این رو از مکانیزم‌های امنیتی سیستم طفره رفته است می‌تواند بخش «کُمبَت»[3] کد آلوده را دانلود و اجرا کند.

راهکارهای امنیتی

البته این محقق یافته‌های خود را هم به اپل و هم مایکروسافت گزارش داد و هر دوی این شرکت‌ها نیز بدون تبلیغ آن‌ها یا حتی تعیین رسمی شناساگرهای CVE برای این آسیب‌پذیری‌ها اصلاحاتی انجام دادند؛ با این حال بر اساس بررسی‌های انجام‌شده روی مکانیزم‌های امنیتی، امکان پیدا شدن متودهای دور زدن آن‌ها کاملاً وجود دارد. در گذشته، macOS بسیار امن تلقی می‌شد اما این بیشتر به دلیل تمرکز نکردن مهاجمین روی آن بوده تا داشتن تنظیمات پیشرفته امنیتی! (به محض اینکه هکرها اراده کنند می‌توانند دخل این سیستم‌عامل را درآورند). با این حال کامپیوترهای اپل دارند بیش از هر زمان دیگری محبوب می‌شوند و از این رو آسیب‌پذیری‌شان از سوی مهاجمین از هر زمان دیگری قریب‌الوقوع‌تر است. برای همین به منظور رعایت جانب امنیت، نه تنها باید همیشه سیستم و تمامی نرم‌افزارهای رویش را به‌روز نگه دارید که همچنین می‌بایست از راهکارهای امنیتی استفاده کنید که قادرند فعالیت مشکوک را شناسایی و با آن‌ مبارزه کنند. بعنوان مثال خط محصولات امنیتی ما –هم برای کاربران خانگی و هم مشتریان سازمانی- نسخه‌ی macOS دارد.

 

[1] executables

[2] پس ‌سازگاری یا سازگاری عقب رو یک ویژگی از ابزار یا فناوری‌هایی است که توانایی کار کردن با ورودی‌های درست‌شده در نسخه‌های پیش از خود را در آنها ممکن می‌سازد و غالباً در مخابرات و رایانش مطرح می‌شود.

[3] اصطلاحاً یعنی بخش مهم و مرکزی

 

منبع: کسپرسکی آنلاین (ایدکو)

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

محصولات مرتبط

  • Kaspersky Internet Security

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

    9,447,000 ریال
    خرید
  • Kaspersky Internet Security for Android

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

    3,147,000 ریال
    خرید
  • Kaspersky Total Security

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

    12,597,000 ریال
    خرید
  • Kaspersky Cloud Password Manager

    Kaspersky Cloud Password Manager ابزار مدیریت کلمه عبور ابری کسپرسکی (KCPM) ضمن ذخیره ایمن تمامی کلمات عبور مورد استفاده شما برای وبسایت‌ها، اپلیکیشن‌ها، و شبکه‌های اجتماعی آنها را در تمامی ...

    4,722,000 ریال
    خرید
  • Kaspersky Safe Kids

    شما می توانید بر ارتباطات اینترنتی کودکان از قبیل فعالیتهای عمومی در فیسبوک، کنترل تماسها و پیامها از طریق دستگاههای اندرویدی نظارت داشته باشید. کمک شما به کودکان بهترین راهنمایی برای آنها ...

    4,722,000 ریال
    خرید
  • Kaspersky Antivirus

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

    6,297,000 ریال
    خرید
  • Kaspersky Small Office Security

    محافظت در حین کار Kaspersky Small Office Security به طور خاص برای سازمان‌هایی طراحی شده است که 5 تا 25 دستگاه کامپیوتر در خود جای داده‌اند. نصب آن بسیار آسان است؛ مدیریت آن ...

    11,340,000 ریال
    خرید

نظر خودتان را ارسال کنید


کاربر گرامی چنانچه تمایل دارید، نقد یا نظر شما به نام خودتان در سایت ثبت شود، لطفاً وارد سایت شوید.
*نظر
کلیه حقوق مادی و معنوی این سایت محفوظ و متعلق به شرکت گسترش خدمات تجارت الکترونیک ایرانیان است و هر گونه کپی برداری از آن پیگرد قانونی دارد