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