شماره ركورد
15949
شماره راهنما(اين فيلد مربوط به كارشناس ميباشد لطفا آن را خالي بگذاريد)
15949
پديد آورنده
حميدرضا صالحي
عنوان
مبهمسازي كد به منظور جلوگيري از اجراي نمادين
مقطع تحصيلي
كارشناسي ارشد
رشته تحصيلي
نرم افزار
سال تحصيل
اسفند 1394
تاريخ دفاع
اسفند 1394
استاد راهنما
دكتر سعيد پارسا
دانشكده
كامپيوتر
چكيده
چكيده
هدف در اين پايان¬نامه مبهم¬سازي كد در جهت ممانعت از تحليل و اجراي نمادين آن است. براي اين منظور در اين پايان¬نامه ابتدا با معرفي مفاهيم پايه و سپس، با بررسي انواع چالش¬هاي موجود در اجراي نمادين، از چالش انفجار مسير براي مقابله با يك اجراي نمادين موفق استفادهشده است. در اجراي نمادين هدف اين است كه كليه مسيرهاي اجرايي كد پيمايش شده و كليه حالات ممكن از شروع تا اتمام برنامه ترسيم گردد. درنهايت با يك اجراي نمادين موفق درختي از كليه مسيرهاي ممكن برنامه فراهم مي¬گردد. ازاينرو براي كشف مسيرهاي اجرايي برنامه نياز به حل محدوديت¬ها و شروط ممكن در برنامه است بهطوريكه ابزار بتواند بهطور خودكار تغيير مسير برنامه را بهواسطه برخورد با يك عبارت شرطي تشخيص دهد. چالش عمده در مسئله انفجار مسير كمبود حافظه و همچنين بزرگ شدن درخت نمادين برنامه بيش از ظرفيت و توان پردازشي سيستم است. لذا در اين پايان¬نامه روش نويني ارائه نموده¬ايم كه عملاً با ساير روش¬هاي مبهم¬سازي كد متناقض نبوده و درعينحال روش عملكرد آن بهسادگي قابل مهندسي معكوس توسط روش¬هايي مانند كشف الگوي رفتاري يا بررسي حجم فايل نيست. در اين روش با جاگذاري برخي شروط غيرواقعي و جديد در مسير برنامه و مرتبط نمودن متغيرهاي آن با متغيرهاي اصلي برنامه حل¬كننده محدوديت را دچار اشتباه نموده و باعث ايجاد شاخه¬هاي متعدد و غيرواقعي در درخت نمادين برنامه گردد. ارزيابي¬ها نشان مي¬دهد كه درنتيجه اين مبهم¬سازي ابزار اجراي نمادين كد در توليد همه مسيرهاي اجرايي برنامه شكست مي¬خورد. همچنين به دليل عدم تأثير كد اضافهشده بر روي رفتار اصلي عملاً الگوي جديدي از رفتار توليد نمي¬گردد تا قابلشناسايي و افزودن به الگوهاي (مخرب) قديمي باشد. درعينحال با حفظ صحت شرط اجراي رفتار برنامه تنها سربار محاسباتي كمي بر روي آن اعمال مي¬شود كه در اجراي واقعي عملاً محسوس نخواهد بود. اين روش در مقايسه با دو سه روش مطرح ديگر مبهم سازي در همين زمينه زمان تحليل را به طور قابل توجهي بالا مي¬برد و همچنين، حجم و الگوي كد را تغيير چنداني نمي¬دهد. از طرفي در ارزيابي¬¬ها مشخص مي¬گردد شيوه اجرا وابسته به نوع و بازه ورودي نخواهد بود. روش مورداشاره بهتفصيل در اين پايان¬نامه مورد بررسي قرارگرفته و از جنبه¬هاي مختلف مورد بحث و ارزيابي واقعشده است.
واژههاي كليدي: اجراي نمادين، مبهم¬سازي كد، انفجار مسير، الگوي كد