Presentation is loading. Please wait.

Presentation is loading. Please wait.

تحلیل ساختاری ویروس‌های کامپیوتری از تئوری تا کاربرد

Similar presentations


Presentation on theme: "تحلیل ساختاری ویروس‌های کامپیوتری از تئوری تا کاربرد"— Presentation transcript:

1 تحلیل ساختاری ویروس‌های کامپیوتری از تئوری تا کاربرد
سخنرانی: تحلیل ساختاری ویروس‌های کامپیوتری از تئوری تا کاربرد دکتر مجید وفایی جهان زهرا قزل بیگلو یکشنبه 1392/09/10 ساعت 12:00 آمفی تئاتر دانشکده مهندسی – دانشگاه آزاد اسلامی مشهد

2 f

3 تحلیل ساختاری ویروس‌های کامپیوتری از تئوری تا کاربرد
“Structure Analysis of Computer Viruses: From Theory to Application” دکتر مجید وفایی جهان زهرا قزل بیگلو

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

5 مقدمه از ديدگاه دانشمندان و حتي شركت‌هاي معتبر ضدويروس همچون سيمانتك، نوشتن نرم افزاري كه بتواند هر نوع كدمخرب را تشخيص دهد غير ممكن است. اما مي توان با بكار بردن الگوريتم هايي درصد قابل توجه اي از كدهاي مخرب كامپيوتري را كشف كرد. يك دسته از كدهاي مخرب كه عموما اثرات ناخوشايندي مانند تخريب، دزدي اطلاعات از خود بجاي مي‌گذارند ويروسهاي كامپيوتري هستند. كشف ويروسهاي كامپيوتري و جلوگيري از انتشار آنها، هنوز نيز جزء مسائل علمي است كه راه حل همه منظوره و كاملي براي آن ارائه نشده است.

6 تحلیل ساختاری - رفتاری ویروس‌های کامپیوتری
تحليل ميزان اطلاعاتي است كه هر ويروس دارد از ديدگاه تحليل آنتروپي – آزمون‌های آماری كشف خصيصه‌هاي خاص و مشترك ويروس‌هاي كامپيوتري از ديدگاه فركانس يا تكرار خصيصه‌ها. ترسيم شمايي بصري از هر ويروس و تحليل ژئومتري ويروس از ديدگاه فركتالي و بعد فركتالي بررسي احتمالي خصيصه‌ها و احتمال تشكيل ساختار خاص از ديدگاه فرایندها تصادفی (فرایند مارکوف) و سری‌های زمانی خصيصه سنجي فايل مخرب در مقايسه با فايل سالم جهت كاهش اشتباه در تشخيص فايل (كاهش خطاي مثبت كاذب).

7 اهداف ویروس شناسی 1- آيا مي‌توان يك تصوير از ويروس كامپيوتري ارائه داد؟ 2- يك ويروس كامپيوتري چه ميزان اطلاعات دارد؟ 3- آيا ميزان اطلاعات يك فايل ويروس و يك فايل سالم تفاوت معنا داري دارند يا خير؟ 4- چرا بسياري از آنتي ويروسهاي معروف فايلهاي آلوده را بجاي فايل سالم و فايل سالم را بجاي فايل آلوده تشخيص مي‌دهند. بعبارتي چگونه مي‌توان خطاي منفي كاذب را كاهش داد؟ 5- چه خصوصياتي در فايلهاي ويروسي مهمترند؟ اين خصايص آيا تفاوت معناداري با خصايص مهم فايلهاي سالم دارند؟

8 کلمه ویروس به صورت علمی برای اولین بار در سال 1984 توسط فرد کوهن (Fered Cohen) در مقاله‌ای تحت عنوان «آزمایشهایی با ویروس‌های کامپیوتری» مورد استفاده قرار گرفت. قبل از آن این واژه تنها در رمان‌های تخیلی مورد استفاده قرار می‌گرفت. ماهیت بدافزارها 2 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

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

10 انواع بدافزارها (Virus): ویروس کامپیوتری یک قسمت از کد است که توانایی آلوده سازی فایل‌های اجرایی خوش خیم را دارد. در واقع ویروس کدی خود تکرار است که فایل‌های اجرایی دیگر را آلوده می‌کنند، ویروس‌ها معمولا نیاز به مداخله انسان‌ها جهت تکرار و اجرا دارند. (Trojan): اسب‌های تروآ نوعی نرم افزار مخرب است که خود را به عنوان یک فایل مشروع یا نرم افزاری سودمند در می‌آورد و هدف آن کسب دسترسی غیر مجاز به یک کامپیوتر است. (Worm): کرم را می‌توان نوع خاصی از ویروس دانست که برای انتشار از طریق شبکه طراحی شده است با این تفاوت که برای گسترش به برنامه‌های دیگری نیاز ندارد. 4 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

11 انواع بدافزارها (Constructor): ابزاری است که به وسیله نویسندگان بدافزارها برای ایجاد یا توسعه بدافزارهای جدید از بلاک‌های آماده کد به کار برده می شود، و به کاربران به سادگی اجازه ساخت و ایجاد بدافزارهای چند ریخت پیچیده را می دهد. (Backdoor): برنامه‌ای است که با باز کردن دروازه‌های رایانه برای هکرها، اجازه دسترسی یا از کار انداختن سیستم را به آن‌ها می دهد. (HackTool): به وسیله مهاجمان برای حمله و بهره برداری از سیستم کاربران برای بدست آوردن دسترسی غیر مجاز به منابع سیستمی استفاده می‌شود. (Exploit): کدی برای سوء استفاده از حفره‌های امنیتی برنامه‌های کاربردی، سیستم عامل‌ها، وب سرور و ... می باشند. 5 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

12 بدافزارها و استراتژی حفاظت از خود
استراتژی حفاظت از خود شامل روش‌هایی است که بدافزارها برای اجتناب از شناخته شدن و مشکل‌تر شدن شناسایی، استفاده می‌کنند که شامل موارد زیر می‌باشد: 1. رمزگذاری 2. چند ریختی 3. دگر ریختی 4. مبهم کردن کد 5. نهان سازی 6 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

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

14 اهمیت و ضرورت انجام تحقیق
این مطلب که بنیان و ساختار جامعه امروزی بر اساس کامپیوترها بنا شده است بر کسی پوشیده نیست. متأسفانه این بدین معنی است که تهدید و در معرض خطر قرار گرفتن کامپیوترها، به معنی تهدید و در معرض خطر قرار گرفتن جامعه امروزی است. بیشترین عامل موثر در به خطر افتادن کامپیوترها وجود ویروس‌ها و کدهای مخرب می‌باشند که با رشد بسیار سریعی در حال گسترش است تا جایی امروزه امکان روبرویی با یک ویروس در حین انجام فعالیت‌های روزمره همچون جستجو در اینترنت، 22% گزارش شده است. یکی از مشکلات برنامه های کاربردی همچون ضد ویروس، کشف و از بین بردن ویروس‌ها پس از اجرا و یا ظاهر شدن در کامپیوتر است. 8 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

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

16 روش های شناسایی بدافزارها
در این بخش اقدامات انجام شده توسط سایرین در راستای شناسایی بدافزارها در گروه های مختلف طبقه بندی شده است. روش های شناسایی بدافزارها 10 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

17 روش هاي شناسایی بدافزارها
اسکن کردن: در این روش از پایگاه داده‌ای شامل امضاء‌های مختلف برای شناسایی بدافزارها استفاده می‌شود. داده کاوی: در این روش بدافزارها با استفاده از روش‌های یادگیری ماشین همچون دسته بندی، خوشه بندی، گراف، شباهت سنجی و ... مدل می‌شوند. نظارت بر فعالیت: در این روش برای بدست آوردن دنباله رفتارهای مخرب رفتار فایل در یک محیط امن و یا مجازی مورد نظارت قرار گرفته می‌شود. بررسی درستی: در این روش یک Checksum رمزنگاری شده، به ازای هر فایل در سیستم ایجاد می شود و فایل را به صورت دوره‌ای مانیتور کرده و هر تغییر احتمالی که توسط بدافزار صورت پذیرد تشخیص داده می شود. 11 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

18 ویژگی ها انواع ویژگی های استخراج شده از یک فایل بدافزار عبارتند از:
ویژگی n-gram API سیستمی دستورات اسمبلی سوابق اتصال به شبکه ویژگی های ترکیبی 12 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

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

20 استراتژی تشخیص تشخیص ناهنجاری: در این روش رفتار نرمال سیستم و برنامه‌ها مشخص می‌شود و هر گونه انحراف از آن به عنوان ناهنجاری در نظر گرفته می‌شود. تشخیص سوء استفاده: در این روش عکس روش تشخیص ناهنجاری می باشد به این صورت که رفتار مخرب در برنامه ها به صورت امضاهای دقیق یا اکتشافی تعریف می شودو سپس این امضاءها در برنامه ها مورد بررسی قرار می گیرند. تشخیص ترکیبی: در این روش از هر دو گروه خوش خیم و یا بدافزار جهت مدل برای ساخت طبقه بند استفاده می شود و هیچ رفتاری از ابتدا تعریف نخواهد شد. 14 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

21 در این بخش سیر تکاملی این پژوهش از ابتدا شرح داده شده و علت ناکارا بودن هر یک نیز توضیح داده شده است. سپس در ادامه روش پیشنهادی ارائه شده عنوان شده است. روش پیشنهادی 15 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

22 استفاده از مدل n-gram و خوشه بندی بیت ها
ابتدا فراوانی کلیه دنباله های nتایی از کلمات هر فایل محاسبه می‌شود. سپس عمل خوشه بندی بر اساس میانگین فراوانی دنباله‌های nتایی مربوط به کلیه فایل‌ها انجام می‌شود. A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 کلمه 2 8 4 34 12 9 1 54 6 23 11 43 3 10 فراوانی A16 A9 A8 A15 A2 A13 A6 A14 A10 A1 A4 A11 A5 A12 A3 A7 کلمه 1 2 3 4 6 8 9 10 11 12 23 34 43 54 فراوانی A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 کلمه 11 10 9 3 5 8 1 4 6 2 7 بردار برچسب کلاس 16 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

23 ویژگی های آماری فراوانی داده‌ها: برابر با تعداد تکرار یک کلمه در یک متن است. برای مقایسه بهتر داده‌ها از فراوانی احتمالی استفاده شده است که برابر با میزان فراوانی یک کلمه به تعداد کل کلمات موجود در یک متن است. 17 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

24 ویژگی های آماری خود همبستگی: بررسی ارتباط بین داده‌ها و میزان استقلال داده‌ها از یکدیگر یکی از معیارهای مهم در بررسی متون، دنباله‌ها و فرآیند های تصادفی است. ρ k = 𝐸 X o X k −𝐸 X o 𝐸 X k σ X o σ X k 18 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

25 ویژگی های آماری آزمون مربع-کای: این آزمون برای بررسی و تست میزان تطابق یک مجموعه از داده‌ها با یک توزیع آماری خاص معرفی شده است. X 2 = i=1 k ( 𝑂 𝑖 − 𝐸 𝑖 ) 2 𝐸 𝑖 19 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

26 ویژگی های آماری آنتروپی: از این آزمون برای سنجش تنوع دنباله اعداد مورد استفاده قرار می‌گیرد. با استفاده از فرمول زیر می‌توان مقدار آنتروپی یک دنباله را محاسبه کرد. 𝐻=− 𝑖=1 𝑛 𝑝 𝑖 . log 2 ⁡( 𝑝 𝑖 ) 20 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

27 ویژگی های آماری نرخ آنتروپی: به منظور تخمین تغییرات کمی و آشفتگی‌های موجود در ماتریس احتمال انتقال زنجیره مارکوف n-gram از روش ریاضی اندازه گیری اطلاعات نظری استفاده کرده، و آن را نرخ آنتروپی می‌نامیم، که تراکم زمانی میانگین اطلاعات یک فرایند تصادفی را تعیین می‌کند. 21 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

28 ویژگی های آماری فاصله مینکوفسکی: یک تعمیم متریک است برای محاسبه اختلاف قدر مطلق تفاضل یک جفت از اشیاء. 𝑚 i = λ j=o n X j − X j+1 λ 22 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

29 ویژگی های آماری فاصله کانبرا: فاصله کانبرا در حقیقت مجموع سری تفضلات کسری بین مختصات یک جفت از اشیاء را محاسبه می‌کند. 𝐶𝐴 𝑖 = 𝑗=0 𝑛 𝑋 𝑗 − 𝑋 𝑗 𝑋 𝑗 + 𝑋 𝑗+1 23 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

30 استفاده از دنباله آپکدها
در این روش ابتدا هر فایل با استفاده از دی اسمبلر به رشته ای از دستورات ماشین تحت عنوان کد اسمبلی تبدیل می‌شود. این دستورات شامل دو بخش عملوند و آپکد می باشند. به دلیل اینکه آپکدها به تنهایی نیز می توانند گویای اعمال یک فایل باشند از آنالیز بخش عملوندها صرف نظر شده و تنها دنباله آپکودهای هر فایل استخراج می‌شود. push esi call SUB_L0100D36F pop ecx test eax,eax jnz L0100D281 push Ch call SUB_L0100D330 push call pop test jnz 24 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

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

32 استفاده از دنباله آپکدها
به طور متوسط تعداد آپکودها در فایل‌های اجرایی مختلف نزدیک به 250 مورد می‌باشد. پس از آن، از مدل آماری n-gram برای استخراج ویژگی هاست. در این صورت به ازای nهای مختلف خواهیم داشت: 250 n=1 n=2 n=3 n=4 n=5 26 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

33 استفاده از دنباله آپکدها
دسته بندی ویروسها با توجه به ابعاد بسیار زیاد فضای ویژگی ها امری دشوار و در بیشتر موارد غیر ممکن خواهد بود. به منظور کاهش ابعاد فضای ویژگی ها عموماً از روشهای مختلف انتخاب ویژگی استفاده میشود. برای مثال «Shabtai» و همکارانش از 515، 39011، ، ، و ویژگی استخراج شده برای 1، 2، 3، 4، 5 و gram-6 هر فایل، با استفاده از روش DF تعداد 50، 100، و 300 ویژگی برتر را انتخاب کرده و پیچیدگی مسئله را کاهش دادند. حال این سوال مطرح می شود آیا می توان بدون استفاده از روش های انتخاب ویژگی که خود به مراتب هزینه محاسباتی بالایی دارند ابعاد فضای ویژگی های مسئله را کاهش داد؟.... 27 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

34 روش پیشنهادی در این پژوهش روشی جدید بر مبنای دسته بندی آپکدها به منظور کاهش تعداد آن ها صورت گرفته است. بر خلاف سایر روش‌های موجود که با استفاده از روش‌های داده کاوی به دسته بندی ویژگی‌ها بر اساس مشخصات آماری همچون فراوانی و یا ... می‌پردازد در اینجا از نوعی دسته بندی معنایی بر اساس وظیفه و نقش هر آپکد استفاده شده است. در این روش ابتدا نقش‌های مختلف موجود برای آپکدها تعریف می‌شود، سپس آپکدها در دسته‌هایی متناسب با نقش (وظیفه) هر آپکد دسته بندی می‌شوند. در این پژوهش به هر آپکد یک عدد تحت عنوان نقش آن اختصاص داده می‌شود. 28 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

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

36 استفاده از دنباله آپکدها
پس از آن که دنباله آپکدهای مشاهده شده استخراج می‌شود، در دسته‌هایی متناسب با نقش (وظیفه) هر آپکد دسته بندی می‌شوند. {(push,3),(call,4),(pop,3),(test,4),(jnz,4),(push,3),(call,4),(pop,3)} شماره نقش‌های تعریف شده نمونه آپکد رنگ 1 آپکدهای مربوط به انجام عملیات منطقی Add, or, sub, … سبز 2 آپکدهای مربوط به عملیات مرتبط با حافظه Mov, stos, lods, … قرمز 3 آپکدهای مربوط به عملیات مرتبط با پشته Push, pop, leave, … نارنجی 4 آپکدهای مربوط به عملیات‌های کنترلی و وظعیتی Test, call, jmp, … آبی 5 آپکدهای پیشوندی Fs, repe, ss, … زرد 6 آپکدهای مربوط به عملیات سیستمی و ورودی/خروجی In, out, cupid, … بنفش 7 آپکدهای چند ساختاری و توسعه یافته Nop, fpu, sse, … خاکستری 8 آپکدهای مربوط به انجام عملیات منطقی که با حرف "f" شروع می‌شوند. Fmul, fsub, fsqrt, … صورتی 9 آپکدهای خاص Punpckhbw, … سفید 10 سایر آپکودها سیاه 30 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

37 استفاده از دنباله آپکدها
در این پژوهش پس از استخراج دنباله نقش-آپکودها مطابق با روش ارائه شده در بخش سوم، فراوانی دنباله نقش-آپکد‌های متوالی به طول n، مشاهده شده در متن کد اسمبلی هر فایل به عنوان ویژگی مربوط به آن فایل، مورد استفاده قرار گرفته است. برای مثال برای دنباله نقش-آپکدها به طول 2 مربوط به مثال ذکر شده در بخش سوم برابر با {(push,call),(call,pop),(pop,test),(test,jnz),(jnz,push),(push,call),(call,pop)} است که پس از تبدیل به نقش-آپکد به صورت دنباله {(3-4),(4-3),(3-4),(4-4),(4-3),(3-4),(4-3)} خواهد شد. 31 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

38 مدل n-gram دنباله نقش-آپکدها
push esi call SUB_L0100D36F pop ecx test eax,eax jnz L0100D281 push Ch call SUB_L0100D330 push call 3 4 3 4 4 3 4 3 pop test jnz استخراج دستورات اسمبلی {(push),(call),(pop),(test),(jnz),(push),(call),(pop)} استخراج دنباله آپکدها مدل 1-gram push مدل 2-gram مشخص نمودن وظیفه هر آپکد (push, call, pop) call {(push,call), (call,pop), (pop,test),(test,jnz),(jnz,push),(push,call),(call,pop)} pop {(3),(4),(3),(4),(4),(3),(4),(3)} {(3-4),(4-3),(3-4),(4-4),(4-3),(3-4),(4-3)} 32 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

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

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

41 در پژوهش حاضر از چهار نوع دسته بند مختلف برای ساخت مدل و طبقه بندی نمونه ها استفاده شده است.
35 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

42 درخت تصمیم درخت تصمیم یکی از مشهورترین و قدیمی‌ترین روش‌های ساخت مدل دسته‌بندی است. در الگوریتم‌های دسته بندی مبتنی بر درخت تصمیم دانش خروجی به صورت یک درخت از حالات مختلف مقادیر ویژگی‌ها ارائه می‌شود. این شیوه نمایش موجب می‌شود دسته بندی‌های مبتنی بر درخت تصمیم کاملاً قابل تفسیر باشند. در این پژوهش از سه درخت C4.5، J48 و جنگل تصادفی (Random Forest) استفاده شده است. 36 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

43 ماشین بردار پشتیبان (svm)
ماشین بردار پشتیبانی (Support vector machines) یکی از روش‌های یادگیری بانظارت است که از آن برای طبقه بندی و رگرسیون استفاده می‌کنند. این روش از جمله روش‌های نسبتاً جدیدی است که در سال‌های اخیر کارایی خوبی نسبت به روش‌های قدیمی‌تر برای طبقه‌بندی از جمله شبکه عصبی پرسپترون نشان داده است. در این الگوریتم هدف پیدا کردن ابر صفحه جدا کننده با بیشترین فاصله از نقاط حاشیه­ای است که نقاط دو کلاس را از یکدیگر جدا کند که در مرحله آموزش بدست می­آید. 37 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

44 k- نزدیک‌ترین همسایه در روش k- نزدیک‌ترین همسایه، گروهی شامل k رکورد از مجموعه نمونه‌های آموزشی که نزدیک‌ترین نمونه‌ها به نمونه آزمایشی است انتخاب شده و بر اساس برتری دسته یا برچسب مربوط به آن ها در مورد نمونه آزمایشی مزبور تصمیم گیری می‌شود. در این مقاله نتایج مربوط به الگوریتم k-نزدیکترین همسایه به ازای k=1,2,3,4,5 محاسبه شده است. 38 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

45 نیو بیزین شبکه بیزین ساده یا نیو بیزین (Naïve Bayes)، نوعی خاص از شبکه بیزین است که برای دسته‌بندی داده‌های سیستمی مورد استفاده قرار می‌گیرد. در این شبکه فرض بر این است که متغیرها از یکدیگر مستقل شرطی هستند. در شبکه بیزین ساده، هدف محاسبه احتمال پسین 𝑃(𝐶| 𝑋 1 , 𝑋 2 ,…, 𝑋 𝑛 ) است که با استفاده از قانون بیزین که قبلا بیان شد قابل محاسبه است: 𝑃 𝐶 𝑋 1 , 𝑋 2 ,…, 𝑋 𝑛 = 𝑃 𝑋 1 , 𝑋 2 ,…, 𝑋 𝑛 𝐶 .𝑃(𝐶) 𝑃( 𝑋 1 , 𝑋 2 ,…, 𝑋 𝑛 ) کافی است که بیشترین احتمال پسین برای هر دسته از داده‌ها محاسبه شده، هر دسته‌ای که بیشترین احتمال را دارد پاسخ خواهد بود. 39 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

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

47 پایگاه داده داده‌های مورد استفاده در این پژوهش یک مجموعه شامل بیش از نمونه از جدیدترین بدافزارها، به همراه کد شناساییMD5 و شناسنامه آن‌ها می‌باشد که در تاریخ 2013/3/20 از سایت‌های رسمی ویروس‌ها همچون virusshare.com malshare.com Malware.lu طی درخواست‌های مکتوب و مکرر دریافت شده است. 41 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

48 تحلیل نتایج برای مقایسه روش پیشنهادی با سایر روش‌ها از یک پایگاه داده شامل 500 نمونه فایل خوش خیم و 500 نمونه بدافزار استفاده شده است. در روش اول از هر نمونه دنباله آپکدهای ظاهر شده استخراج شده است که در مجموع 215 مورد آپکد مشاهده شده است. پس از استخراج دنباله آپکدها فراوانی احتمالی هر نمونه محاسبه شده است. ابعاد فضای ویژگی در روش اول برابر با 215 است. در روش دوم پس از استخراج دنباله آپکدها از هر نمونه، دنباله نقش-آپکدها مطابق با روش ارائه شده به‌دست می‌آید. سپس فراوانی احتمالی هر زوج نقش-آپکد متوالی محاسبه می‌گردد. در این روش تعداد زوج نقش-آپکدها برابر با 100 نمونه است که تنها 95 مورد از آن‌ها در کل نمونه‌های پایگاه داده مشاهده شده است. ابعاد فضای ویژگی در روش دوم برابر با 95 است. 42 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

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

50 ارزیابی نتایج F-Measure: این معیار ترکیب دو معیار Recall (درصد نمونه‌های مرتبط بازیابی شده) و Precision (درصد نمونه‌های بازیابی شده مرتبط) است که با استفاده از رابطه زیر محاسبه می‌شود. 𝐹=2× 𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜×𝑟𝑒𝑐𝑎𝑙𝑙 𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜+𝑟𝑒𝑐𝑎𝑙𝑙 44 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

51 سئوالات پاسخ داده نشده 45 منابع تحلیل نتایج ساخت مدل روش پیشنهادی
اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

52 آیا ویروس‌های کامپیوتری همانند ویروس‌های واقعی دارای شکلند؟
آیا بعد فرکتال یک فایل آلوده نسبت به معادل سالم آن، تغییر می کند. چه تاثیری یک فایل مخرب بر روی فایل سالم می گذارد؟ آیا این تغییر می تواند گویای فایل ویروسی باشد. آیا ویروس کامپیوتری، مدل ساختاری دارد؟ یعنی یک مدل می‌تواند امضای فایل مخرب باشد؟ مثلا آیا یک مدل مخفی مارکوف (HMM) می‌تواند معادل یک ویروس باشد؟ یا مثلا آیا یک شبکه بیزین (BN) می‌تواند، مدلی از یک ویروس را ارائه دهد؟ ما در این پژوهش بستری را برای پاسخ به دو سئوال فوق مهیا کردیم؛ باشد که شما پاسخ آنها را ارائه کنید.

53 منابع استفاده شده 45 منابع تحلیل نتایج ساخت مدل روش پیشنهادی
اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

54 منابع 46 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده
S. M. Tabish, M. Z. Shafiq and M. Farooq, "Malware detection using statistical analysis of byte-level file content," in ACM SIGKDD Workshop on CyberSecurity and Intelligence Informatics, New York, NY, USA, 2009. B. Jochheim, "On the Automatic Detection of Embedded Malicious Binary Code using Signal Processing Techniques Project Report," Hamburg, October 17, 2012. K. Kaushal, P. Swadas and N. Prajapati, "Metamorphic Malware Detection Using Statistical Analysis," International Journal of Soft Computing and Engineering (IJSCE), vol. 2, no. 3, pp , July 2012. M. Eskandari and S. Hashemi, " A graph mining approach for detecting unknown malwares," Journal of Visual Languages & Computing, vol. 23, no. 3, p. 154–162, June 2012. R. Moir, "Defining Malware: FAQ," October [Online]. Available: G. McGraw and G. Morrisett, "Attacking Malicious Code: A Report to the Infosec Research Council," IEEE SOFTWARE, vol. 17, no. 5, pp , September/October 2000. T. Nash, "An Undirected Attack Against Critical Infrastructure," 2005. J. Z. Kolter and M. A. Maloof, "Learning to Detect Malicious Executables in the Wild," in tenth ACM SIGKDD international conference on Knowledge discovery and data mining, ACM New York, NY, USA, 2004. T. Abou-Assaleh, N. Cercone, V. Keselj and R. Sweidan, "N-gram-based Detection of New Malicious Code," in 28th Annual International Computer Software and Applications Conference (COMPSAC’04), Sept 46 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

55 منابع 47 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده
T. Abou-assaleh, N. Cercone and R. Sweidan, "Detection of new malicious code using n-grams signatures," in Second Annual Conference on Privacy, Security and Trust, 2004. D. K. S. Reddy, S. K. Dash and A. K. Pujari, "New Malicious Code Detection Using Variable Length n-grams," Information Systems Security , vol. 4332, pp , 2006. B. Zhang, J. Yin, J. Hao, D. Zhang and S. Wang, "Malicious Codes Detection Based on Ensemble Learning," Autonomic and Trusted Computing, vol. 4610, pp , 2007. B. Zhang, J. Yin, J. Hao, S. Wang and D. Zhang, "New Malicious Code Detection Based on N-Gram Analysis and Rough Set Theory," Computational Intelligence and Security, vol. 4456, pp , 2007. E. Menahem, A. Shabtai, L. Rokach and Y. Elovici, "Improving malware detection by applying multi-inducer ensemble," Computational Statistics and Data Analysis, vol. 53, no. 14, pp , February 2009. L. Fang and OUQingyu, "Research on N-gram-based Malicious Code Feature Extraction Algorithm," in IEEE International Conference on Computer Application and System Modeling (ICCASM 2010), 2010. W. Lu, G. Rammidi and A. A. Ghorbani, "Clustering botnet communication traffic based on n-gram feature selection," Computer Communications, vol. 34, no. 3, p. 502–514, March 2011. D. Yuxin, Y. Xuebing, Z. Di, D. Li and A. Zhanchao, "Feature representation and selection in malicious code detection methods based on static system calls," Computers & Security, vol. 30, no. 6-7, p. 514–524, September–October 2011. 47 منابع تحلیل نتایج ساخت مدل روش پیشنهادی اقدامات انجام شده ضرورت تحقیق ماهیت بدافزارها مقدمه

56 با تشکر


Download ppt "تحلیل ساختاری ویروس‌های کامپیوتری از تئوری تا کاربرد"

Similar presentations


Ads by Google