Saturday, September 3, 2016

SQL Truncation




كل منا يعرف ما هي وظيفة الــDatabase و طبعا صممنا تطبيقات و مواقع تعتمد عليها في تخزين و استرجاع البيانات 
اليوم في هذا المقال سوف نناقش واحدة من اخطر ثغرات قواعد البيانات و هي الـSQL Truncation

       ما هي الــSQL Truncation:
         هي خاصية في mysql وظفتها  حذف النص المدخل الي قواعد البيانات اكبر من 20  حرف 
          تحتوي علي مساحة فارغة كبيرة بينها  اي ان قواعد البيانات تقوم بحذف اذا كان المدخل اكبر من 20 حرف 


          الثغرة :


         الثغرة تحدث عندما يكون هنالك عندم تناسق بين التطبيق و قواعد البيانات اي اذا ادخل المستخدم مثلا

        admin                 xxxxxxxxxxxx في هذه الحالة تقوم الــDatabase بحذف النص الزائد و 
         حفظ كلمة admin في قواعد البيانات




        الان ناخذ مثال عملي علي هذا الموضوع و هو عبارة عن تحدي CTF 

       Root-me

     التحدي عبارة عن تسجيل الدخول باستخدام كلمة admin و لكن نحن لا نعلم ماهي كلمة السر 
     فكر معي فكر فكر 
     اذا قرات بداية المقال تكلمنا عن هذه الثغرة و تقوم قواعد البيانات بحذف المساحة الزائدة عن 20 جميل
      و يحفظ المستخدم الجديد باسم بعد حذف

      المساحة ما رايك في عمل تسجيل لمستخدم جديد بنفس اسم admin اضافة الي مساحة اكبر من 20 ماذا يحدث 

       يحدث تحديث لكلمة السر لمستخدم و هنا تاتي الخطورة




                كما في الصورة يمكننا اضافة مستخدم جديد و سوف بيانات التسجيل كالاتي 



                الاسم admin                 xxxxxxxxxxxx

                  كلمة السر PikachLOLOLO




              تمت عملية التسجيل و تم حفظ البيانات الان 




                   الان ندخل كلمة السر التي قمنا بتسجيل الحساب بها و هي PikachLOLOLO



                        تم الحصول علي الــflag 

                        flag : J41m3Qu4nD54Tr0nc


                               المصادر
http://resources.infosecinstitute.com/sql-truncation-attack/


التالي
هذا احدت موضوع.
Older Post

0 comments :

Post a Comment

عربي باي