اشتراک امنیت
مرکز امنیت و‌ رخدادهای‌ سایبری | APK

نحوه تشخیص بدافزار با Deep Learning یا یادگیری عمیق

بدافزار

در این مطلب در مورد چگونگی تشخیص بدافزار خواهیم گفت، امروزه Machine Learning به طور معمول در شناسايی هجوم به شبکه و برنامه‌های مخرب استفاده می‌شود، در بیشتر رویکردهای مبتنی بر Machine Learning هر نمونه تحلیل (‏مانند یک برنامه اجرایی، یک سند اداری، یا درخواست شبکه)‏ تحلیل می‌شود و تعدادی از ویژگی‌ها استخراج می‌شوند. برای مثال، در مورد یک برنامه Binary، ممکن است نام توابع کتابخانه‌ای استناد شده، طول بخش‌های قابل اجرا و غیره را استخراج کنیم. ​

ویژگی های جدید Splunk Machine Learning Toolkit Version 4.0 چیست؟

ویدیوهای بیشتر درباره امنیت

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

نقش  Feature Engineering یا مهندسی ويژگی در تشخیص بدافزارها

​​​​​​​ حتی اگر توضیحات بالا، ساده سازی بیش از حد فرآیند واقعی باشد، نکته کلیدی این است که در تشخیص بدافزار برخی از ویژگی های مهندسی ضروری هستند. به عبارت دیگر، Data Scientistها باید تصمیم بگیرند که کدام ویژگی‌ها باید از هر نمونه استخراج شوند و این تصمیم توسط دامنه دانش آن‌ها هدایت می‌شود، یا به طور دقیق‌تر، با احساس درونی از این که چه ویژگی‌هایی واقعا برای تشخیص مفید هستند. اما اگر درست متوجه نشوند چه؟ به عنوان مثال، در یک آزمایش اخیر، برخی از متخصصان امنیتی قادر بودند با قرار دادن stringهايي در یک بازی ویدئویی مناسب، از سیستم تشخیص یک محصول امنیتی فرار کنند.

شرکت APK دارای مجرب ترین تیم طراحی امنیت شبکه و SOC/SIEM در کشور


رویکرد جدید شناسایی بدافزار با استفاده ازتکنولوژی Sandbox

​​​​​ پژوهشی با یک رویکرد جدید به این صورت که برای شناسایی بدافزار، نیازی به Feature Engineering نداشته باشد صورت گرفت. این رویکرد متکی بر نمایش غنی از اطلاعات از برنامه‌هاست یعنی، گزارش تولید شده توسط تکنولوژی Sandbox. این گزارش‌ها جزییات اقدامات انجام شده توسط یک برنامه را زمانی که در یک محیط کنترل‌ شده به نام Sandbox اجرا می‌شود، گزارش می‌دهند. ​

همه Sandboxها یکسان ایجاد نمی‌شوند، اما یک ویژگی مشترک دارند، به این صورت که به جای تمرکز بر جنبه‌های استاتیک یک برنامه (‏یعنی، کد آن، یا روشی که داده‌ها در آن بسته‌بندی می‌شوند)‏، sandboxها بر جنبه‌های دینامیک اجرای واقعی برنامه تمرکز می‌کنند برای مثال، کدام فایل‌ها در دسترس بودند، کدام فرآیندها، کدام اتصالات شبکه ایجاد شدند.

بیشتر بخوانید: مقابله با بدافزارها به کمک قابلیت‌های Microsoft Defender ATP

معرفی Neurlux و نحوه عملکرد آن در تشخیص بدافزار

Neurlux از اسناد به عنوان ورودی و از تکنیک‌های Deep Learning برای ایجاد طبقه ‌بندی استفاده می‌کند که قادر است بین برنامه‌های مخرب و برنامه‌های خوب تمایز قایل شود. به طور دقیق‌تر، Neurlux این گزارش‌ها را مانند هر سند دیگری به عنوان یک سری کلمات تلقی می‌کند. این کلمات در فرآیندی به نام تعبیه شدن، به بردارها تبدیل می‌شوند. در نهایت، این بردارها به عنوان ورودی به یک شبکه عصبی یا Neural Network داده می‌شوند که چندین تکنیک را با هم ترکیب می‌کند، به لحاظ فني، یک Convolutional Neural Network  یا ‏CNN‏، يك Bidirectional Long Short-Term Memory Network يا BilSTM و يك Attention Network.

به منظور درک این که آیا این روش در تشخیص بدافزارها واقعا موثر است، ما Neurlux را با روش پیشرفته State-of-the-art  که متکی بر مهندسی ویژگی است مقایسه کردیم‏. Neurlux  دقت ۹۶.۸ % و State-of-the-art  دقت ۸۹.۲ % را نشان دادند.

این نتایج نشان می‌دهند که رویکردی که متکی بر مهندسی ویژگی نباشد، می‌تواند در محیط‌های دنیای واقعی بسیار موثر باشد. علاوه بر این، این واقعیت که هیچ انسانی در تعیین این که کدام ویژگی‌های خاص باید استخراج و کد گذاری شوند، درگیر نبوده است، این امکان را می‌دهد که رویکرد، “Future-proof” باشد: اگر به طور ناگهانی جنبه جدیدی از اجرا با شناسايي برنامه‌های مخرب مرتبط شود، سیستم نیازی به اصلاح ندارد، بلکه به سادگی دوباره آموزش داده می‌شود. با توجه به این که این سیستم‌ها در حالت آموزش مداوم کار می‌کنند تا چشم‌انداز تهدید همواره در حال تغییر را مورد توجه قرار دهند، رویکرد بدون ویژگی اثر بخشی بیشتری را بدون نیاز به متخصصان انسانی برای تغییر مداوم سیستم فراهم می‌کند.

پکیج آموزشی VMware NSX شرکت APK
وبینار رایگان حملات apt