تحلیل بدافزار (Malware Analysis)
Malware یا بدافزار در اصل قطعه کدهایی هستند که توسط برنامهنویسان نوشته میشوند تا بوسیله آن بدون اجازه مالک سیستم، آن را آلوده و اقدام به کارهای ناخواسته یا خرابکارانه کنند. این واژه به صورت عمومی به تمامی کدها و برنامههای مخرب اطلاق میشود و به طور کلی هر نوع کدی که روی سیستم یا شبکه شما قرار بگیرد و عملیاتی ناخواسته را انجام دهد به عنوان بدافزار شناخته میشود. Malware میتواند گوشی تلفن، تبلت و کامپیوترها را نیز آلوده کند.
Malware پس از ورود به سیستم شما میتواند کارهایی مانند ارسال ایمیلهای اسپم، سرقت اطلاعات و رمز عبورهای اکانتها و… انجام دهد. بدافزارها میتوانند از انواع روشها و تکنیکهای مختلف برای اجرای خود استفاده کنند. مثلاً بعضی از آنها از سیستم شما به عنوان قربانی یا زامبی برای انجام عملیات تخریب روی دیگر سیستمها استفاده میکنند، بعضی از آنها اقدام به جمعآوری اطلاعات شخصی کاربران مانند شماره حساب بانکی، رمز عبور و نامهای کاربری و… کرده و حتی ممکن است باعث تخریب در سیستم کاربران شوند.
Malware همچنین میتواند از طریق حفرههای امنیتی موجود بر روی برنامه سایت شما وارد سیستم شود.
تحلیل بدافزار (Malware Analysis) چیست
صنعت امنیت سایبری روشهای مختلفی را برای تجزیهوتحلیل بدافزارها توسعه داده است و البته هرکدام مجموعه نقاط قوت و ضعف خود را دارند. این به این معنی است که درحالیکه استفاده از فقط یک روش تجزیهوتحلیل بدافزار میتواند یک شبکه را در معرض خطر قرار دهد، اجرای روشهای تجزیهوتحلیل متعدد با ترتیب درست، میتواند با احتمال بالاتری از نفوذ بدافزارها به شبکه جلوگیری کند.
یک گروه امنیتی میتواند با اجرای متوالی روشهای مختلف تحلیل بدافزار، تقریباً اکثر تهدیدات را بصورت خودکار تشخیص دهد در صورتی که بدون استفاده از مدلهای اجرایی موفق و کسب اطلاعات کافی در مورد تهدید، ممکن است تنها به یک بازی حدس و گمان بسنده کنند که در نهایت نیز محکوم به شکست است. در محیطهای تحلیل بدافزار ما با 3 نوع تحلیل مواجه هستیم:
- تحلیل ایستا (Static Analysis): تجزیهوتحلیل ایستا، خط اول دفاع است که شامل شکستن یک پرونده ناشناخته به مؤلفههایی برای بررسی آن و بدون خراب شدن پرونده است و یک راه فوقالعاده سریع و دقیق برای تشخیص بدافزارهای شناختهشده و انواع دیگر است که بخش عمدهای از حملاتی که معمولاً در سازمانها دیدهشده را تشکیل میدهد.
- تحلیل با استفاده از یادگیری ماشین (Machine Learning Analysis): یادگیری ماشین شامل ایجاد و خودکارسازی یک سامانه برای طبقهبندی رفتارهای مخرب به گروههای متفاوت است. این گروهها میتوانند برای شناسایی محتوای مخرب در آینده بدون نیاز به ساخت الگوی دستی مورداستفاده قرار گیرند و هرچه نمونه بدافزارهای بیشتری مورد بررسی قرار گیرد و فهرست شود، توانایی سامانه برای تشخیص حملات در طول زمان رشد میکند.
- تحلیلهای پویا (Dynamic Analysis): آنچه عموماً به عنوان تحلیل پویا شناخته میشود معمولاً شامل ارسال یک نمونه مشکوک به یک محیط مبتنی بر ماشین مجازی و سپس فعال کردن آن در یک محیط کاملاً کنترل شده (با نام مستعار Sand box یا جعبه شنی) است که رفتار آن مشاهده و از آن اطلاعاتی استخراج میشود.
از آنجا که تجزیهوتحلیل ایستا و یادگیری ماشین هر دو نیاز به درجهای از آشنایی قبلی با بدافزار دارند، برای آنها شناسایی فعالیتهای مخرب کاملاً جدید دشوار است. چالش تجزیهوتحلیل پویا مقیاسپذیری آن است که نیاز به محاسبات عظیم، ذخیرهسازی و خودکارسازی دارد. گفته میشود اگر هر دو تجزیهوتحلیل ایستا و یادگیری ماشین انجامشده باشد آنها به احتمال زیاد بخش عمدهای از بدافزارها را شناسایی کردهاند.
برای اینکه بتوانید اقدامات اصلی را برای تحلیل بدافزار انجام دهید نیاز به ابزارهایی دارید که در اینجا به معرفی برخی از مهمترین ابزارها، کتابها و منابعی پرداخته خواهد شد که در تجزیه و تحلیل بدافزار و مهندسی معکوس مورد استفاده قرار میگیرد.