شناسایی فایل های اجرایی مخرب دات نت با استفاده از نام های متدهای استخراج شده

۴٫۳٫ ایجاد مجموعه داده

ایجاد مجموعه داده ما شامل انتخاب نام روش ها بر اساس فراوانی وقوع آنها در بدافزار و نمونه های خوش خیم است. محدودیت ۵۰ وقوع (آستانه فرکانس) برای فرکانس نام هر روش در هر کلاس تنظیم شده است تا فراخوانی های متد نادر را فیلتر کند. علاوه بر این، این آستانه با کاهش تعداد نام‌های روش انتخابی از هر کلاس، بعد کلی مجموعه داده را کاهش می‌دهد. افزایش مقدار آستانه فرکانس منجر به تعداد کمتری از ویژگی های نهایی می شود، زیرا نام روش های کمتر رایج حذف می شود. انتخاب استفاده از آستانه ۵۰ یک تصمیم استراتژیک با هدف بهینه سازی مجموعه داده برای تجزیه و تحلیل بعدی است. طراحی شده است تا اطمینان حاصل شود که داده‌های مورد استفاده برای آموزش مدل‌های یادگیری ماشین قابل مدیریت و معنی‌دار است و امکان طبقه‌بندی دقیق را افزایش می‌دهد و در عین حال نویز و اطلاعات نامربوط را کاهش می‌دهد.

مراحل فرآیند انتخاب ویژگی به شرح زیر است:

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

  • نام روش ها را با فرکانس زیر آستانه از پیش تعریف شده (آستانه فرکانس در مورد ما برابر با ۵۰ است) از هر دو کلاس فیلتر کنید.

  • ۳۰ نام متداول بالا را در هر کلاس به طور جداگانه شناسایی کنید.

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

  • مجموعه ویژگی های هر دو کلاس را با استفاده از عملیات OR بین مجموعه ها ادغام کنید.

  • نام روش های رایج را از مجموعه ویژگی های ادغام شده حذف کنید.

فرآیند انتخاب ویژگی بر روی کل مجموعه داده قبل از هر گونه کم نمونه برداری و تقسیم برای آموزش و آزمایش انجام شد. استفاده از کل مجموعه داده برای انتخاب ویژگی در تحقیقات تشخیص بدافزار مرتبط است [۴۰,۴۱,۴۲]که در آن هدف شناسایی ویژگی‌ها و الگوهای جهانی است که بیشترین تبعیض را در بین طبقات دارند. اگرچه جدا کردن انتخاب ویژگی از مجموعه داده‌های آموزشی و آزمایشی از نظر تئوری ایده‌آل است، اما ممکن است همیشه امکان‌پذیر نباشد، به خصوص زمانی که مجموعه داده از نظر اندازه محدود باشد. در مورد ما، ما انتخاب ویژگی را برای کل مجموعه داده اعمال کردیم زیرا روش انتخاب ویژگی ما، که مبتنی بر آستانه فرکانس است، به داده‌های کافی برای شناسایی دقیق ویژگی‌ها و الگوهای کلی نیاز دارد.

فرآیند انتخاب ویژگی ما از اطلاعات برچسب استفاده می کند. در حالی که در مرحله انتخاب ویژگی از برچسب ها استفاده می شد، این یک مرحله پیش پردازش یک بار بود. ویژگی های جهانی نهایی پس از این مرحله ثابت شد. در طول آموزش و استنتاج، مدل تنها بر وجود یا عدم وجود این ویژگی ها تکیه می کند و از عدم وابستگی برچسب در زمان استنتاج اطمینان می دهد. دلیلی که ما تصمیم گرفتیم آستانه فرکانس وابسته به برچسب را اعمال کنیم این است که اطمینان حاصل کنیم که ویژگی‌های مشترک برتر را که بین بدافزارها و نمونه‌های خوش‌خیم به اشتراک گذاشته شده‌اند، به صراحت حذف می‌کنیم. این فرآیند انتخاب ویژگی را بهبود می‌بخشد و اطمینان می‌دهد که مجموعه نهایی نه تنها از نظر آماری مرتبط است، بلکه متمایز است. با جداسازی مجموعه داده به بدافزار و نمونه‌های خوش‌خیم، می‌توانیم به صراحت همپوشانی ویژگی‌های بین این دو را هدف قرار دهیم، که دستیابی به آن در یک فرآیند صرفاً مستقل از برچسب دشوار است. با این حال، توجه به این نکته مهم است که مجموعه حاصل از ۵۵۶ ویژگی کلی ثابت و مستقل از فرآیندهای آموزشی و ارزیابی بعدی باقی مانده است. این تضمین می کند که هیچ بازخورد تکراری بر طبقه بندی کننده تأثیر نمی گذارد.

سپس ۳۰ نام روش برتر را از هر دسته (بدافزار و بدخیم) انتخاب کردیم تا ویژگی های مشترک در هر کلاس را برجسته کنیم. انتخاب نام ۳۰ روش برتر به جای یک عدد بزرگتر (مثلاً ۱۰۰ مورد برتر) به ما امکان می دهد رایج ترین ویژگی ها را پیدا کرده و حذف کنیم و در عین حال حذف روش های کمتر رایج را که ممکن است برای نمایش دقیق ویژگی های نمونه ضروری باشند به حداقل برسانیم. تجزیه و تحلیل تقاطع برای کاهش ابعاد مجموعه داده با یافتن و حذف ویژگی‌های مشترک بین بدافزار و کلاس‌های خوش‌خیم استفاده شد.

شکل ۴ یک نمودار ون را نشان می دهد که به صورت بصری ۳۰ روش برتر را در کلاس بدافزار (دایره قرمز) و ۳۰ متداول ترین روش را در کلاس خوش خیم (دایره سبز) نشان می دهد. محل تلاقی این دو دایره شامل ۱۶ روش است که در هر دو گروه وجود دارد.
جدول ۱ همچنین توزیع فراوانی ۱۰ متداول ترین روش برتر (تقاطع) بین بدافزار و دسته های خوش خیم را نشان می دهد. علاوه بر این، ۱۰ روش برتر با بالاترین فراوانی در هر دو دسته بدافزار و بدخیم پس از حذف روش‌های رایج در جدول ۲ نشان داده شده است. روش‌های پرکاربرد برتر در کلاس بدافزار، همانطور که در جدول ۲ نشان داده شده است، لزوماً به معنای عدم استفاده از آنها نیست. توسط نمونه های خوش خیم؛ در عوض، در مقایسه با استفاده از آنها در کلاس بدافزار، کمتر مورد استفاده قرار می گیرند.
مجموعه داده نهایی شامل ۵۵۶ نام متد دات نت منحصر به فرد به عنوان ویژگی در کنار دو ستون اضافی است: “file” و “class”. ستون “فایل” یک مقدار هش منحصر به فرد برای هر نمونه دارد، در حالی که ستون “کلاس” نمایش باینری (۰ برای خوش خیم، ۱ برای بدافزار) برچسب کلاس هر نمونه تجزیه و تحلیل شده را نشان می دهد. سپس فرآیند برداری باینری برای هر نام ویژگی در مجموعه داده نهایی ما اعمال می شود. این رویکرد شامل تنظیم مقدار ۱ یا ۰ بر اساس وجود یا عدم وجود نام روش خاص در نام روش نمونه دات نت است. در کار خود، از تحلیل استاتیک برای استخراج نام متدها (ویژگی ها) از کدهای دیکامپایل شده استفاده کردیم. ترتیب نام این روش ها را نمی توان بدون اجرای نمونه و قطع متدهای فراخوانی شده دانست. زمانی که ترتیب ویژگی ها مهم یا مشخص نباشد، بردارسازی باینری انتخاب مناسبی است. با این حال، در سناریوهای خاص، مانند توالی فراخوانی API، که در آن استفاده می شود [۲] و [۲۰]ترتیب ویژگی‌ها مشخص است، و حفظ ترتیب توکن‌ها در طول توکن‌سازی برای ارائه زمینه و اطمینان از طبقه‌بندی دقیق توسط طبقه‌بندی‌کننده ML مهم است. نمونه‌ای از یک روش نشانه‌سازی مناسب که ترتیب توکن‌ها را در نظر می‌گیرد، نشانه‌گذاری در سطح کلمه است که یک مقدار عددی منحصربه‌فرد را به هر نشانه در واژگان اختصاص می‌دهد و در عین حال توالی اصلی خود را حفظ می‌کند. [۴۳]. در نهایت، نمونه‌های حاوی کمتر از ۱۰ ویژگی از مجموعه داده حذف می‌شوند، زیرا زمینه کافی برای طبقه‌بندی دقیق وجود ندارد، همانطور که قبلا ذکر شد.
ما از نمونه گیری تصادفی به عنوان یک تکنیک تعادل داده استفاده کردیم. همانطور که در جدول ۳ نشان داده شده است، به دنبال فرآیند ایجاد مجموعه داده، کلاس خوش خیم اکثر نمونه ها را با ۲۴۳۵ نمونه تشکیل می دهد، در حالی که کلاس بدافزار شامل ۱۵۹۸ نمونه است. کاهش در فرآیند ایجاد مجموعه داده به این دلیل اتفاق می‌افتد که نمونه‌هایی وجود دارند که کمتر از ۱۰ ویژگی از ویژگی‌های انتخابی نهایی دارند. این نمونه ها نادیده گرفته می شوند زیرا زمینه کافی برای طبقه بندی ML را فراهم نمی کنند. برای ارزیابی منصفانه، ما هر دو کلاس را با انتخاب تصادفی تعداد مساوی از هر دسته، متعادل کردیم، که منجر به ۱۵۰۰ نمونه در هر کلاس شد. جدول ۴ تعداد نمونه ها را برای قبل و بعد از فرآیند متعادل سازی داده ها با درصد کاهش نشان می دهد.
الف

آموزش یادگیری ماشین

در این کار، یادگیری ماشین با خودکار کردن شناسایی الگوها و رفتارهای مخرب در فایل های اجرایی دات نت نقش مهمی ایفا می کند. مدل‌های آموزشی بر روی یک مجموعه داده مشتق‌شده از فایل‌هایی با نام روش دات‌نت (هم بدخیم و هم بدافزار) امکان طبقه‌بندی دقیق بین بدافزار و نرم‌افزار قانونی را فراهم می‌کند. شش الگوریتم یادگیری ماشین بر اساس نقاط قوت مختلف و کاربرد آنها برای وظایف طبقه‌بندی باینری در تشخیص بدافزار انتخاب شدند. ما استفاده از XGBoost، جنگل تصادفی، KNN (K-نزدیکترین همسایگان)، SVM (ماشین بردار پشتیبان)، رگرسیون لجستیک و Bayes ساده را انتخاب کردیم. الگوریتم XGBoost به دلیل توانایی آن در مدیریت داده های با ابعاد بالا و گرفتن الگوهای پیچیده انتخاب شد. تکنیک‌های منظم‌سازی آن، آن را در برابر بیش از حد برازش قوی می‌کند، به‌ویژه هنگام کار با مجموعه داده‌های پر سر و صدا. ما جنگل تصادفی را به دلیل ماهیت مجموعه آن در نظر گرفتیم، که چندین درخت تصمیم را برای بهبود دقت پیش‌بینی ترکیب می‌کند. این به دلیل انعطاف پذیری در برابر برازش بیش از حد و توانایی آن در مدیریت داده های طبقه بندی شده و پیوسته شناخته شده است که آن را در گرفتن واریانس در مجموعه داده ما موثر می کند. KNN یک الگوریتم ناپارامتریک است که در تشخیص ساختارهای داده محلی به خوبی عمل می کند، که می تواند هنگام تمایز بین فایل های اجرایی بدخیم و مخرب مشابه مهم باشد. با این حال، می تواند به مقیاس داده ها حساس باشد و در برابر نویز مقاومت کمتری دارد، که توسط مدل های دیگر کاهش می یابد. SVM به دلیل قدرت آن در رسیدگی به مسائل طبقه بندی باینری انتخاب شد. با به حداکثر رساندن حاشیه بین کلاس‌ها، SVM به ویژه زمانی مؤثر است که مرز واضحی بین بدافزار و نمونه‌های خوش‌خیم وجود داشته باشد، اگرچه می‌تواند از نظر محاسباتی در مجموعه داده‌های بزرگ‌تر فشرده باشد. ما رگرسیون لجستیک را به دلیل سادگی و تفسیرپذیری آن انتخاب کردیم. این به عنوان یک مدل پایه قوی عمل می کند و بینشی در مورد اینکه چگونه ویژگی ها به طبقه بندی بدافزارها کمک می کنند ارائه می دهد. با این حال، ممکن است با الگوهای پیچیده‌تری که توسط مدل‌های مجموعه بهتر به تصویر کشیده می‌شوند، مبارزه کند. در نهایت، Naïve Bayes به دلیل اثربخشی آن در فضاهای با ابعاد بالا، مانند آنچه که توسط نام روش های متعدد در مجموعه داده ما ایجاد شده است، گنجانده شد.

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


منبع: https://www.mdpi.com/2673-2688/6/2/20

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *