خانه امنیت و هک آشنایی با بدافزار چندریختی (Polymorphic Malware) و راهکارهای شناسایی و جلوگیری از آن
امنیت و هک همه مطالب

آشنایی با بدافزار چندریختی (Polymorphic Malware) و راهکارهای شناسایی و جلوگیری از آن

بدافزار چندریختی

تصور کنید یک بدافزار هربار که وارد سیستم جدیدی می‌شود، ظاهر و کد خود را تغییر دهد؛ به‌طوری که آنتی‌ویروس نتواند آن را با نمونه‌های شناخته‌شده مطابقت دهد. در چنین شرایطی، حتی اگر نرم‌افزار امنیتی شما به‌روز باشد، ممکن است این تهدید بدون جلب توجه وارد سیستم شود و برای مدت طولانی پنهان بماند. این دقیقاً همان کاری است که بدافزار چندریختی (Polymorphic Malware) انجام می‌دهد.

بدافزارهای چندریختی یکی از پیشرفته‌ترین تهدیدهای دنیای امنیت سایبری هستند که با تغییر مداوم کد خود، از شناسایی مبتنی‌بر امضای دیجیتال (Signature-Based Detection) فرار می‌کنند.

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

در این مقاله بررسی می‌کنیم که بدافزار چندریختی چیست، چگونه عمل می‌کند و چه تفاوتی با بدافزارهای دگردیس (Metamorphic Malware)  دارد. همچنین با مهم‌ترین نشانه‌های آلودگی، روش‌های تشخیص، نمونه‌های واقعی حملات و بهترین راهکارهای پیشگیری از این تهدید آشنا خواهید شد.

در ضمن اگر علاقمند به افزایش امنیت دیجیتال خود هستید مقاله ما با عنوان راه‌های جلوگیری از سرقت رمز عبور و اطلاعات شخصی را مطالعه بفرمایید.

فهرست مطالب

بیشتر آنتی‌ویروس‌ها چگونه بدافزارها را شناسایی می‌کنند؟

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

اما اگر بدافزار بتواند به‌طور مداوم ظاهر خود را تغییر دهد و کدش را به شکلی دگرگون کند که از شناسایی فرار کند، چه اتفاقی می‌افتد؟ این تهدید پیشرفته همان چیزی است که به آن بدافزار چندریختی (Polymorphic Malware) گفته می‌شود.

ویروس چندریختی (Polymorphic Virus) چیست؟

ویروس چندریختی نوعی بدافزار است که می‌تواند کد خود را تغییر دهد یا به اصطلاح «دگرریخت» شود تا از شناسایی توسط بیشتر آنتی‌ویروس‌ها فرار کند.

همین ویژگی باعث می‌شود حذف و پاک‌سازی آن بسیار دشوارتر از بسیاری از بدافزارهای دیگر باشد.

در اغلب موارد، کد این ویروس رمزگذاری شده است؛ بنابراین نه‌تنها شناسایی ویژگی‌های آن، بلکه حتی خواندن کد آن نیز کار ساده‌ای نیست.

ویروس‌های چندریختی معمولاً در دسته ویروس‌ها قرار می‌گیرند، زیرا برای فعال شدن و گسترش یافتن به اقدام کاربر نیاز دارند.

علاوه‌بر این، اغلب خود را به فایل‌ها یا برنامه‌های سالم و معتبر متصل می‌کنند تا راحت‌تر از سد دفاعی کاربران عبور کنند.

انواع و ویژگی‌های اصلی بدافزارهای چندریختی

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

ویروس‌های چندریختی (Polymorphic Viruses):

مانند سایر ویروس‌ها، این بدافزارها به فایل‌های سالم متصل می‌شوند و هربار که سیستم جدیدی را آلوده می‌کنند، کد خود را تغییر می‌دهند.

کرم‌های چندریختی (Polymorphic Worms):

این تهدیدها بدون نیاز به دخالت کاربر، به‌طور خودکار در شبکه‌ها منتشر می‌شوند و هم‌زمان کد خود را مرتب تغییر می‌دهند تا از شناسایی یا تشخیص فرار کنند.

تروجان‌های چندریختی (Polymorphic Trojans):

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

باج‌افزارهای چندریختی (Polymorphic Ransomware):

این نوع بدافزار داده‌های کاربران را هدف قرار می‌دهد. فایل‌های شخصی را رمزگذاری می‌کند و در هربار اجرا، کد خود را تغییر می‌دهد تا از مکانیزم‌های دفاعی مبتنی‌بر امضای دیجیتال (Signature-Based Detection) عبور کند.

آنچه ویروس‌های چندریختی را از سایر انواع بدافزار متمایز می‌کند، توانایی آن‌ها در تغییر کد بدون تغییر رفتار یا هدف اصلی‌شان است.

از دیگر ویژگی‌های مهم این بدافزارها می‌توان به موارد زیر اشاره کرد:

  • تغییر مداوم کد (Code Mutations): ویروس باید بتواند هنگام تکثیر یا اجرا، به‌صورت خودکار بخش‌هایی از کد خود را بازنویسی کند.
  • کد رمزگذاری‌شده (Encrypted Code): منطق مخرب ویروس به‌طور مداوم رمزگذاری و هنگام اجرا رمزگشایی می‌شود تا از دید ابزارهای نظارتی بلادرنگ و تحلیل ایستا پنهان بماند.
  • حفظ هدف اصلی (Consistent Target): باوجود تغییرات مداوم در کد، ویروس همچنان عملکرد اصلی خود را حفظ می‌کند و همان اقدامات مخرب قبلی را انجام می‌دهد.

بدافزارهای چندریختی چگونه منتشر و سیستم‌ها را آلوده می‌کنند؟

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

  • پیوست‌های آلوده ایمیل
  • لینک‌های مخرب
  • نرم‌افزارهای آلوده
  • حافظه‌های جانبی و تجهیزات ذخیره‌سازی قابل حمل
  • سوءاستفاده از آسیب‌پذیری‌های شبکه

تفاوت بدافزار چندریختی با بدافزار دگردیس (Metamorphic Malware)

اگر قبلاً اصطلاح بدافزار دگردیس (Metamorphic Malware) را شنیده باشید، ممکن است تصور کنید که همان بدافزار چندریختی است.

هر دو نوع بدافزار برای فرار از شناسایی، کد خود را تغییر می‌دهند؛ اما نحوه انجام این کار در آن‌ها متفاوت است.

بدافزار چندریختی تنها بخش‌هایی از کد خود را (معمولاً با استفاده از رمزگذاری) تغییر می‌دهد و در عین حال، منطق اصلی و ساختار داخلی خود را حفظ می‌کند.

در مقابل، بدافزار دگردیس یک گام فراتر می‌رود و پس از هربار تکثیر، کل کد خود را از نو بازنویسی می‌کند.

این بازنویسی شامل تغییر کامل منطق اصلی و ساختار زیرین برنامه نیز می‌شود. به همین دلیل، شناسایی بدافزارهای دگردیس به‌مراتب دشوارتر از بدافزارهای چندریختی است.

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

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

بلافاصله پس از فعال شدن، ویروس خود را در حافظه سیستم بارگذاری می‌کند تا ماندگاری (Persistence) خود را تضمین کند.

به این ترتیب، حتی اگر دستگاه خاموش یا راه‌اندازی مجدد (ری‌استارت) شود، برای اجرا شدن دوباره نیازی به اقدام کاربر نخواهد داشت.

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

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

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

این محموله می‌تواند شامل سرقت اطلاعات، رمزگذاری فایل‌ها یا نصب درهای پشتی (Backdoor) برای دسترسی از راه دور باشد.

بااین‌حال، برخلاف ویروس‌های سنتی، ویروس‌های چندریختی به لطف تغییر مداوم کد خود، می‌توانند تمام این فعالیت‌ها را به‌صورت مخفیانه انجام دهند و برای مدت طولانی از دید ابزارهای امنیتی پنهان بمانند.

چرا شناسایی بدافزارهای چندریختی دشوار است؟

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

تغییر کد چگونه باعث فرار از شناسایی مبتنی‌بر امضا می‌شود؟

تغییرات مداوم در کد باعث می‌شود هر نسخه از بدافزار دارای امضای دیجیتال (Signature) متفاوتی باشد.

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

برخی از ویژگی‌هایی که شناسایی این بدافزارها را دشوار می‌کنند عبارت‌اند از:

  • امضاهای دائماً درحال تغییر: حتی کوچک‌ترین تغییر در کد نیز می‌تواند امضای باینری ویروس را تغییر دهد و باعث شود امضاهای ذخیره‌شده در آنتی‌ویروس دیگر کاربردی نداشته باشند.
  • محموله‌های رمزگذاری‌شده: هسته اصلی ویروس به‌صورت رمزگذاری‌شده باقی می‌ماند و تنها هنگام اجرا رمزگشایی می‌شود؛ بنابراین تحلیل ایستا (Static Analysis) زمانی که بدافزار غیرفعال است، قادر به شناسایی آن نخواهد بود.
  • روال‌های متغیر رمزگذاری و رمزگشایی: حتی روش‌هایی که ویروس برای رمزگذاری و رمزگشایی هسته خود استفاده می‌کند نیز مرتب تغییر می‌کنند و هرگونه الگوی قابل شناسایی را از بین می‌برند.

ترکیب این تغییرات باعث می‌شود ابزارهای امنیتی سنتی نتوانند بدافزار چندریختی را به‌عنوان یک تهدید شناخته‌شده تشخیص دهند.

ویروس‌های چندریختی چگونه محیط‌های Sandbox را فریب می‌دهند؟

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

به‌محض اینکه متوجه شوند در چنین محیطی قرار دارند، رفتار خود را تغییر می‌دهند؛ برای مثال فعالیت‌های مخرب را متوقف می‌کنند یا کاملاً غیرفعال باقی می‌مانند تا شناسایی نشوند. در نتیجه، برای سیستم تحلیل خودکار Sandbox مانند یک فایل سالم یا یک نرم‌افزار عادی به نظر می‌رسند.

چگونه بدافزار چندریختی را پیش از انتشار شناسایی کنیم؟

اکنون که با نحوه عملکرد بدافزارهای چندریختی آشنا شدید، سؤال این است که چگونه می‌توان قبل از گسترش آن‌ها را متوقف کرد؟

در مقابله با بدافزارهایی که قادرند کد خود را تغییر دهند، یکی از مؤثرترین روش‌ها شناسایی مبتنی‌بر رفتار (Behavior-Based Detection) است. در این روش، به‌جای جستجوی خود ویروس، رفتارها و ردپاهایی که هنگام اجرا روی دستگاه از خود به‌جا می‌گذارد، بررسی می‌شود.

از سوی دیگر، یک نرم‌افزار ضد بدافزار قدرتمند می‌تواند ویروس را در همان مراحل اولیه شناسایی کند.

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

در هر دو حالت، بهترین راهکار، استفاده هم‌زمان از اسکن کامل سیستم و محافظت بلادرنگ و دائمی آنتی‌ویروس است.

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

در نسخه امنیت اینترنتی شید شما می‌توانید در برابر ویروس‌ها ایمن باشید، در مقابل تهدیدهای اینترنتی محافظت شوید و نگران ایمنی خریدها، پرداخت‌ها و کارهای بانکی‌تان نباشید. همچنین کنترل برنامه‌های دستگاه‌تان را در دست بگیرید.

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

جهت آشنایی بیشتر با محصولات ما روی تصویر زیر کلیک کنید.

تهدید رو‌به‌رشد بدافزارهای چندریختی در سال ۲۰۲۶

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

 در سال ۲۰۲۶، مجرمان سایبری نیز از هوش مصنوعی برای ساخت بدافزارهایی استفاده می‌کنند که آن‌ها را در بازارهای زیرزمینی اینترنت تولید، خریدوفروش و توزیع می‌کنند.

بدافزارهای چندریختی پیشرفته‌تر می‌توانند از تلاش‌های ناموفق سیستم‌های امنیتی برای شناسایی خود درس بگیرند و با استفاده از تغییرات پویای کد مبتنی‌بر هوش مصنوعی، روش‌های استتار خود را بهینه کنند.

هوش مصنوعی همچنین به این بدافزارها امکان می‌دهد تصمیم‌های هوشمندانه‌تری بگیرند؛ برای مثال تشخیص دهند چه زمانی غیرفعال باقی بمانند، چگونه منتشر شوند، چه محموله‌ای را اجرا کنند و در چه زمانی آن را فعال کنند.

در نتیجه، بدافزار چندریختی دیگر فقط یک تهدید «گریزان از شناسایی» نیست، بلکه به یک تهدید سازگارشونده (Adaptive) تبدیل می‌شود که می‌تواند خود را با شرایط مختلف وفق دهد.

نمونه‌های واقعی حملات ویروس‌های چندریختی

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

برخی از نمونه‌های شناخته‌شده عبارت‌اند از:

  • Storm Worm: یکی از نخستین حملات گسترده بدافزارهای چندریختی که در سال ۲۰۰۷ رخ داد و برآورد می‌شود حدود ۸ درصد از دستگاه‌های جهان را آلوده کرده باشد. Storm Worm یک تروجان بود که ازطریق ایمیل منتشر می‌شد، هر ۳۰ دقیقه ظاهر خود را تغییر می‌داد و دستگاه قربانی را به بخشی از یک بات‌نت تبدیل می‌کرد.
  • کارزارهای بدافزارEmotet: نمونه‌ای جدیدتر که در سال ۲۰۲۳ مشاهده شد. Emotet یک تروجان بانکی چندریختی است که ازطریق ایمیل‌های فیشینگ و لینک‌های مخرب منتشر می‌شود و پس از کلیک کاربر، محموله مخرب خود را اجرا می‌کند.

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

نکات ضروری برای پیشگیری از آلودگی به بدافزارهای چندریختی

بدافزارهای چندریختی به‌گونه‌ای طراحی شده‌اند که بتوانند از شناسایی توسط حتی آنتی‌ویروس‌های تخصصی نیز فرار کنند. بهترین راه برای جلوگیری از آلوده شدن به این نوع بدافزارها، استفاده از راهکارهای امنیتی مبتنی‌بر تحلیل رفتار (Behavior-Based Protection) و رعایت همیشگی اصول امنیت و بهداشت دیجیتال در هنگام استفاده از اینترنت است.

در ادامه، اقداماتی که می‌توانید برای کاهش خطر آلودگی انجام دهید آورده شده است:

۱. در باز کردن پیوست‌های ایمیل و دانلود فایل‌ها محتاط باشید.

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

۲. سیستم‌عامل و نرم‌افزارهای خود را همیشه به‌روز نگه دارید.

. نصب به‌روزرسانی‌ها و وصله‌های امنیتی، بسیاری از آسیب‌پذیری‌هایی را که بدافزارها از آن‌ها سوءاستفاده می‌کنند، برطرف می‌کند.

۳. نظارت بر شبکه و نقاط پایانی (Endpoints) را فعال کنید.

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

۴. سطح دسترسی کاربران را محدود کنید.

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

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

در نهایت، بهترین راهکار این است که شناخت خود را نسبت به قابلیت‌ها و روش‌های عملکرد بدافزارهای چندریختی افزایش دهید و همواره اصول و بهترین شیوه‌های امنیت سایبری را در استفاده روزمره از فناوری رعایت کنید.

دوست عزیز

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

خروج از نسخه موبایل