كل منا يعرف ما هي وظيفة الــDatabase و طبعا صممنا تطبيقات و مواقع تعتمد عليها في تخزين و استرجاع البيانات
اليوم في هذا المقال سوف نناقش واحدة من اخطر ثغرات قواعد البيانات و هي الـSQL Truncation
ما هي الــSQL Truncation:
هي خاصية في mysql وظفتها حذف النص المدخل الي قواعد البيانات اكبر من 20 حرف
تحتوي علي مساحة فارغة كبيرة بينها اي ان قواعد البيانات تقوم بحذف اذا كان المدخل اكبر من 20 حرف
الثغرة :
الثغرة تحدث عندما يكون هنالك عندم تناسق بين التطبيق و قواعد البيانات اي اذا ادخل المستخدم مثلا
admin xxxxxxxxxxxx في هذه الحالة تقوم الــDatabase بحذف النص الزائد و
حفظ كلمة admin في قواعد البيانات
الان ناخذ مثال عملي علي هذا الموضوع و هو عبارة عن تحدي CTF
التحدي عبارة عن تسجيل الدخول باستخدام كلمة admin و لكن نحن لا نعلم ماهي كلمة السر
فكر معي فكر فكر
اذا قرات بداية المقال تكلمنا عن هذه الثغرة و تقوم قواعد البيانات بحذف المساحة الزائدة عن 20 جميل
و يحفظ المستخدم الجديد باسم بعد حذف
المساحة ما رايك في عمل تسجيل لمستخدم جديد بنفس اسم admin اضافة الي مساحة اكبر من 20 ماذا يحدث
يحدث تحديث لكلمة السر لمستخدم و هنا تاتي الخطورة
كما في الصورة يمكننا اضافة مستخدم جديد و سوف بيانات التسجيل كالاتي
الاسم admin xxxxxxxxxxxx
كلمة السر PikachLOLOLO
تمت عملية التسجيل و تم حفظ البيانات الان
الان ندخل كلمة السر التي قمنا بتسجيل الحساب بها و هي PikachLOLOLO
تم الحصول علي الــflag
flag : J41m3Qu4nD54Tr0nc
المصادر
http://resources.infosecinstitute.com/sql-truncation-attack/
0 comments :
Post a Comment