• شماره ركورد
    13101
  • شماره راهنما(اين فيلد مربوط به كارشناس ميباشد لطفا آن را خالي بگذاريد)
    13101
  • پديد آورنده

    وحيد عليزاده

  • عنوان
    طراحي و پياده¬سازي رويكردي جديد براي مبهم سازيجريان كنترلي برنامه
  • مقطع تحصيلي
    كارشناسي ارشد
  • رشته تحصيلي
    كامپيونر - نرم افزار
  • سال تحصيل
    دي 1392
  • تاريخ دفاع
    دي 1392
  • استاد راهنما
    دكتر سعيد پارسا
  • چكيده
    چكيده هدف مبهم سازي جريان كنترلي كد اجرايي مي‌باشد. انگيزه¬ اصلي مبهم سازي كد، محافظت در برابر مهندسي معكوس و در مقابل، تغيير امضاي كدهاي بدخواه است. مشكل اصلي مبهم سازي جريان كنترلي، مخفي نمودن هدف شاخه‌ها و دستورات پرشي به گونه‌اي است كه جريان كنترلي برنامه به راحتي و آسان قابل‌تشخيص نباشد. براي رسيدن به اين هدف از يك تابع توزيع‌كننده كه بر حسب بلاك جاري بلاك بعدي كه بايد اجرا شود را تعيين مي‌كند استفاده مي‌شود. اين تابع آدرس بلاك جاري را به عنوان ورودي استفاده كرده و آدرس بلاك بعدي كه بايد اجرا شود را مشخص مي‌كند. چالش اصلي ايجاد تابع توزيع‌كننده‌اي است به گونه‌اي كه تعيين آدرس بلاك بعدي اجرايي به راحتي قابل‌تشخيص نباشد. براي حل اين مسئله در اين پايان‌نامه از يك بردار سراسري شامل 8 عدد هشت بيتي كه در ابتدا به صورت تصادفي تخصيص داده‌شده استفاده شده است. اين بردار به وسيله تابع توزيع‌كننده براي توليد يك شناسه منحصربه‌فرد جهت شناسايي آدرس بلاك¬هاي اوليه استفاده مي‌شود. بعد از اينكه بلاك جاري تشخيص داده شد به بلاك بعدي كه هدف بلاك جاري است پرشي انجام‌شده و اجرا مي‌شود. مزيت اصلي تابع توزيع‌كننده پيشنهادي استفاده از بردار سراسري است كه قبل از اجراي كد نمي‌توان مقادير آن را در هر بلاك تشخيص داد. مقادير اين بردار زماني كه هر بلاك اجرا مي‌شود متفاوت است و شناسه توليدي به وسيله توزيع‌كننده به اين بردار و در واقع به جريان كنترلي برنامه و بلاك اجرايي جاري وابسته است. واژه‌هاي كليدي: مبهم سازي، گراف جريان كنترلي، بلاك اوليه، تابع توزيع‌كننده