شرح ثغرات xss بالتفصيل الممل

شرح ثغرات xss بالتفصيل الممل


صفحة 1 من 5 123 ... الأخيرةالأخيرة
النتائج 1 إلى 10 من 50

الموضوع: شرح ثغرات xss بالتفصيل الممل

العرض المتطور

المشاركة السابقة المشاركة السابقة   المشاركة التالية المشاركة التالية
  1. #1

    Hasri شرح ثغرات xss بالتفصيل الممل

    السلام عليكم ,,,,,

    اهلاً وسهلاً بكم احبّتي اعضاء في دراسة ثغرة [ XSS ] !

    [ اولاً المقدمة ]

    ثغرة [ XSS ] هي اختصار لـ[ Cross site scripting ] وسبب عدم كتابتها بالاختصار الصحيح [ CSS ] لكي لا يحدث خلط مع لغة الـ[ CSS ] الانماط القياسية المعروفة [ Cascading Style Sheets ] , وبذلك تم تسميتها [ XSS ] !

    المواقع اصبحت تحتاج الى طرق تفاعل مع المستخدم " الزائر " ومن اساليب التفاعل هو السماح له بادراج رد وتعليق اعجاب , اوحتى وان كان السكربت يطبع مايدخله الزائر كما تفعل الكثير من السكربتات الخاصة في البحث [ انت تبحث عن : ساحة التطوير ] ..

    طباعة المخرجات دون الفلترة هو نقطة تكوّن ثغرات الـ[ XSS ] وذلك لان المستخدم يمكنه ادراج اكواد html , **** script والخ من ملحقات لغة html وينفّذ هذا المدخل في الصفحة , وهذا يعني تخطيه صلاحياته في الطباعه , وكما يعلم الجميع ان ثغرات [ XSS ] تعد من اكثر الثغرات انتشاراً والسبب هو ان المبرمج يحتاج الى حماية المخرجات والقيام بفلترتها . .

    ثغرات [ XSS ] لها نوعين وهما /

    اولاً / ثغرات XSS ثابته - مخزّنه [ Persistent - stored ] !

    ثانياً / ثغرات XSS غير ثابته - غير مخزّنه [ Non persistent - Reflected ] !

    ثغرات XSS الثابته هي اخطر من النوع الغير ثابت , وذلك لان ثغرات [ XSS ] الثابته , مايدخله الزائر ثابت بالصفحه , اي مايدخله مثلاً يخزّن بقاعدة بيانات السكربت , وبذلك عند دخول موضوع يحتوي على امكانية التفاعل بالردود , في حالة لم يكون السكربت محمي بالتأكيد اي شخص يقوم بالدخول الى الموضوع سيشاهد اعمال المخترق في الصفحة . .

    بعكس ثغرات الـ[ XSS ] الغير ثابته , هي النوع الاكثر انتشاراً وليس "خطورة " وهي التي تقوم على اساس الادخال الخاص مثلاً , كما ذكرنا سابقاً عند البحث في المنتديات [ انت تبحث عن : طريقة اكتشاف xss ] هنا الحالة تسمى غير ثابته , وذلك لان ادخالك لن يخزّن في قاعدة بيانات الموقع اي في حالة الطلب يظهر لك لا اكثر ..

    "وللمعلوميه " ثغرات [ XSS ] الثابته البعض يُطلق عليها [ HTML Injection ] لكي يوضّح انها ثغرة [ XSS ] مُخزّنه وخطيرة ولكن التسمية ليست صحيحه فعلياً لكي تخصص لنوع معيّن وذلك لان النوعين تقوم على اساس حقن الاكواد . .

    خطورة الثغرة كبيرة جداً في النوع الثابت , وذلك لانه يمكن للمخترق اولاً اختراق متصفحي الموقع [ وهذا يعني القدرة على اختراق مُدير الموقع وبذلك اختراق السيرفر ] و كذلك تشويه الاندكس , او حتى تغييره بشكل كامل واخيراً سرقة الكوكيز . .

    قمت بتصفح موقع [ zone-h ] بحثاً عن اكبر الشركات في الانترنت لكي ابرهن مدى خطورة هذه الثغرة , فوجدت شركة [ microsoft ] مسجله في [ zone-h ] وهذا هو رابط التسجيل




    وكما تشاهد هنا حقن المخترق كود [ ********.****.innerHTML ] المعروف وهو الخاص في اظهار الرسالة بصفحة خاصة , وسنتكلم عن هذا الاستغلال البسيط في دروس الاستغلال طبعاً . .

    كما تشاهد سابقاً ان شركة كبيرة مثل [ microsoft ] تم اختراقها بثغرة [ XSS ] وهذا يدل على خطورة الثغرة وانتشارها, واللغات المُصابة في الثغره , جميع اللغات المتخصصه في برمجة تطبيقات الويب مثل [ PHP , Perl , ASP ] والخ . .

    طبعاً كما ذكرنا سابقاً ان ثغرات [ XSS ] خطيرة جداً ولها القدرة على تشوية الاندكس وعمل رسالة للاختراق , وكذلك اختراق صاحب الموقع عن طريق سحب الكوكيز الخاص فيه , والامر يصل حتى الى اختراق جهازه وجميع الزوّار , لذلك هنا نقول ان ثغرات [ XSS ] خطيرة جداً ولا يستهان ابداً بها . .

    اعيد واكرر مره اخرى ان عدم فلترة المُخرجات هي السبب الرئيسي في تكون الثغرة , وبذلك علينا حماية المخرجات لكي لا يتمكن الزائر من حقن اكواد [ html , **** script ] والخ في الصفحة . .



    [ ثانياً الاكتشاف والاستغلال ]


    اهلاً وسهلاً بكم احبّتي اعضاء ساحة التطوير في درس استغلال واكتشاف ثغرة [ XSS ] !

    بعد المقدمة تعلّمنا سابقاً , ماهي انواع الثغرة ومدى خطورتها وماذا يمكن ان يفعل المخترق بواسطة الثغرة , حان الوقت للتطبيق العملي [ على ] ماذكرناه سابقاً , لكي تكون فرصة ترقيع الثغرة كبيرة نتيجة تعلّمنا طرق الاستغلال والاكتشاف . .

    وذكرت لكم في ان لكل ثغرة لابد من برمجة سكربت نقوم بالتطبيق عليه في بيئة السيرفر المحلي , وكذلك نقوم بترقيعه والتأكد من سلامة الترقيع , وطبعاً سكربت الـ[ XSS ] تم برمجته وفقاً للانواع المذكورة سابقاً [ ثابت وغير ثابت ] اي مُخزّن وغير مُخزّن , وطبعاً لابد ان اذكّر ان طُرق الاستغلال طُرحت لكي نختبر الحماية في المستقبل للثغرة , وكذلك نكون في علم بطرق الاستغلال التي قد يستغلها المُخترق . .



    اولاً تحميل السكربت . .



    قبل الدخول في شرح تنصيب السكربت , التعليق [ موجود ] على جميع الصفحات . .


    اتمنى وصلت المعلومه , الان نقوم [ سريعاً ] بالدخول الى طريقة التنصيب . .


    نقوم بالدخول الى [ phpMyAdmin ] !


    نقوم بعمل قاعدة بيانات جديده باسم [ xss ] !


    بعد التكوين نقوم باختيار [ القاعده ] من القائمة . .


    نقوم بالضغط على [ import ] لاستيراد قاعدة البيانات . .


    نقوم بالضغط على [ زر ] الاستعراض . .


    نجد ان القاعدة موجوده في مجلد السكربت باسم [ القاعده.sql ] !


    نقوم بالضغط على [ تنفيذ ] لاستيراد القاعدة . .


    تم الاستيراد وكما تشاهد تم تكوين الجدول وحقوله بنجاح . .

    الان نقوم بنقل مجلد السكربت الى السيرفر المحلي داخل مجلد [ www ] طبعاً . .

    نقوم بتحرير ملف الكونفق [ config.php ] !


    طبعاً المستضيف [ + ] اسم المستخدم لا علاقة لنا فيه , الرقم السري للقاعده قم بادخال الرقم السري عند مرحلة تنصيب السيرفر المحلّي . . .

    اما اسم القاعده والجدول تكلّمنا عنه سابقاً وفقاً للموجود الان ..


    كما ذكرت لكم سابقاً ساعمل السكربت [ وفقاً ] لانواع الثغرة لكي نعمل المقارنة بالشكّل الجيد . .

    طبعاً التصميم كلاسيكي متوافق مع هدف [ السكربت ] واتمنى انه ينال على اعجابكم

    طبعاً المخزن [ يقصد ] به الثابت , والغير مخزن يقصد به الغير ثابت , مع العلم اني وضحت ذلك في المقدمة ولكن التكرار جيّد ومُفيد

    بالنسبة للتحذير , هو بشكل [ عام ] وليس بشكل خاص , لان السكربت مصاب وقد اعمل سكربتات اخرى اكثر خطورة من ناحية الاستغلال كما ان السكربت مصاب في [ xss ] وهو خطير بالفعل , وبما يخص قطع الاتصال لاصحاب الاتصالات المباشرة [ مثل ] الكونكت , وذلك لان الآي بي لجهازك في حالة كان مباشر يمكن للجميع استعراض سيرفرك في الانترنت وبذلك تصفح ملفاتك , وملف خطير كهذا قد يكون سبب في اختراقك [ اما ] بالنسبة لمن يقوم برفع السكربت على استضافة , هنا هو السبب في اي مشكلة مستقبلية من اختراق والخ " للتوضيح مادمنا نعمل في مجال علمي " . . .




    نقوم باختيار المخزن [ الاكثر خطورة والاقل في الانتشار ] . .


    كما تشاهد عملت مثل صندوق الرد , والصندوق يقوم بالتخزين والاستعراض من قاعدة البيانات , وبذلك الصفحة [ مخزنه ] . .

    الان اولاً اكتشاف الخطأ البرمجي . .

    الملف المختبر [ xss-sav.php ] نقوم بتحرير الملف في اي مُحرّر . .


    كما تُشاهد هنا , ان المبرمج طلب طباعة الموجود في حقل الـ[ **** ] و [ comment ] واقصد بها العنوان والتعليق , دون اي فلترة , فوراً اطبع وهنا الخطأ البرمجي واضح وهو عدم تأمين المخرجات من القاعده في السطر [ 146 ] + [141 ] !

    جيّد تم اكتشاف الخطأ البرمجي , والان بامكاننا اختبار السكربت , وعمل بعض الاستغلالات عليه . .

    اولاً نقوم بتحميل الملف التالي . .


    الملف يحتوي على ..



    اهم الاستغلالات التي اختبر بها السكربتات دائماً . .

    في حالة تم تنفيذ اي من الاكواد السابقه هذا يعني ان السكربت مصاب . .

    نقوم بتجربة كود اظهار رسالة [ ***** ] !


    نقوم بادخال الكود الخاص في اظهار رسالة تحتوي على [ 12345 ] في الجافا سكربت , لغرض التجربة والتأكد من ان الحقل يقوم بفلترة المخرجات او لا !


    كما تشاهد هنا ظهرت لنا رسالة تحتوي [ على ] الارقام المدخله سابقاً , الان نقول وبكل قوة ان السكربت مصاب نتيجة تجربة احد اكواد الجافا سكربت وتم تنفيذه كما تُشاهد . .

    الان هنا بما ان النوع هو المخزن هذا يعني ان اي زائر [ سيقوم ] بالدخول الى هذه الصفحة سيرى هذه الرسالة !!

    وبامكانك [ تجربة ] باقي اكواد التحذير . .

    طبعاً الان الكود مخزن وفي حالة فتح الصفحة سنجد [ نفس ] النتائج وهذا مايعيق التجربه بالشكل السليم , وكنت ساعمل زر [ خاص ] في تفريغ قاعدة البيانات ولكن وجدت الاشكال في حالة تم استغلال الرسالة في صفحة خاصة وبذلك لن نستفيد من الزر بشكل عام . .

    لذلك علينا ان نقوم بتفريغ القاعده يدوياً لكي [ يتم ] ازالة المدخل سابقاً , ونكمل باقي التجارب .


    قم بالدخول الى قاعدة البيانات [ XSS ] !


    قم بالضغط على الزر الخاص [ في ] افراغ الجدول كما في الصورة . .


    نقوم بالضغط على [ موافق ] للموافقة على تفريغ الجدول ..


    كما تشاهد تم [ تفريغ ] الجدول بنجاح . .


    والان نقوم بالدخول الى الصفحة مره اخرى , وكما تشاهد [ لا يوجد ] اي تعليق وذلك لاننا قمنا بازالة المدخل سابقاً . .


    نقوم بتجربة كود اظهار الرسالة بصفحة خاصة [ كما ] تكلّمنا عن هذا الاستغلال في موضوع المقدمة


    كما تشاهد خطر الثغرة يصل حتى الى [ تشويه ] الاندكس واظهار رسالة , نقوم بتفرغ القاعده كما تعلمنا سابقاً لتجربة استغلال اخر . .


    نقوم بتجربة كود [ التحويل ] بعد فتح الصفحة نجد ..


    كما تشاهد بعد فتح الصفحة [ تجد ] ان المتصفح يقوم بفتح الموقع


    والان بعد انتظار التحميل [ فوراً ] ظهر لنا موقع الساحه , نفرّغ القاعده كما تعلمنا , ونقوم بتجربة استغلال اخر . .


    هذا كود الفلاش وللاسف الشديد المنتديات العامه تقبل هذا الكود [ الصندوق الماسي ] وذلك لانه كود الفلاش , ولكن المخترق يستغله في مجال فتح صفحة وليس عرض الفلاش . .

    نقوم بفتح صفحة الساحه بعرض [ 100 ] وارتفاع [ 300 ] كما موجود في الكود . .


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

    هنا تأتي الخطورة الكبيره , باختراق جهاز صاحب السكربت وكذلك الزوار , عن طريق استخدام الاستغلال السابق وفتح صفحة ملغّمه في اي ثغرة يقبلها نظام صاحب السكربت [ + ] بعرض وارتفاع صغير وهذا يعني انه لا يرى فتح الصفحة ولكن سيتم فتح الصفحة !!

    طبعاً هذا الاستغلال خاص في مخترقي الانظمة وليس مخترقي السكربتات , لذلك عملت فديو سريع لكي ابرهن نجاح الاستغلال . .



    قم باختيار جودة [ HD ] تم استخدام ثغرة الاختصارات [ windows/browser/m0_046_shortcut_icon_dllloader ] داخل مشروع الـ[ ****sploit ] , ووضع رابط المجلد المصاب داخل الصفحة بعرض وارتفاع صغير لكود الفلاش المعروف . .

    وكما تشاهد تم اختراق الجهاز بنجاح , وهذا يعني اختراق مدير السيرفر والزوّار كذلك , لذلك ذكرت ان ثغرة [ XSS ] خطيره جداً ولا يستهان ابداً بها . .

    نذهب اخيراً الى اخر استغلال واقدم استغلال , وهو [ سرقة ] الكوكيز , كما يعلم الجميع ان اي عضوية تقوم بتسجيل الدخول لها رمز امني يمّيزها عن باقي العضويات , وفي حالة دخول الموقع مره اخرى , نجد ان المتصفح لا زال مسجل دخوله في المنتدى , نتيجة تواجد هذا الرمز الامني محفوظ في المتصفح . .

    الكوكيز عمله بشكل عام تخزين [ طلبات ] وشخصية الزائر , فمثلاً هناك اللغه اسفل المنتدى ان قمت باختيار اللغه الانجليزيه مثلاً هناك كوكيز يميّزك وفي دخولك مستقبلاً للموقع تجد انه فعلاً لازال حافظ تغيّراتك للغه الانجليزية . .

    وبذلك الكوكيز حين تسجيل دخول عضوية فهو يخرج لك كوكيز خاص بعضويتك , والشخص حين يقوم بسرقة الكوكيز , فهو قادر على ان يسرق [ شخصيتك وعضويتك ] لذلك الكوكيز خطير فعلاً في حالة السرقة , وثغرات [ XSS ] تمكننا من سرقة الكوكيز وبعد ذلك سرقة العضويات والخ . .

    اولاً عملت سكربت بسيط يحتوي على . .


    كما تشاهد سكربت بسيط هدفه سرقة الكوكيز وفتح ملف باسم [ co okies.html ] بدون مسافة وكتابة الكوكيز المسروق فيه . .

    للتحميل .


    نقوم بنقله الى مجلد السكربت [ XSS ] . .


    اولاً نقوم بعمل اختبار لاظهار [ الكوكيز ] , وبعد ذلك نقوم بسرقته . .


    كما تشاهد كوكيز باسم [ NassRawI ] والمحتوى [ d99y_team ] سنقوم الان بتجربة طريقة سرقة الكوكيز , طبعاً هذا كوكيز ثابت وانا قمت بعمله في الصفحة الرئيسية للسكربت لغرض عمل الاختبارات الامنية وتجربة سرقته . .


    طبعاً بامكانك [ عرض ] الكوكيز من المتصفح . .


    الخصوصية [ + ] تنزيل الكعكات الشخصية . .


    كما تشاهد الكوكيز , ولكن انا القصد من [ اظهار ] الكوكيز من السكربت وذلك لاني اعمل اختبار امني للسكربت , واتأكد اني قادر فعلاً على سرقة الكوكيز الذي املكه !

    بعد نقل الملف [ co okies.html ] بدون مسافة الى مجلد السكربت نقوم بعمل الاختبار


    نقوم باستخدام الاستغلال الخاص في سرقة الكوكيز كمثال للسكربت الذي قمنا بتنزيله سابقاً . . .

    الان نقوم باستعراض ملف [ co okies.html ] بدون المسافة الذي عمله السكربت الخاص في سرقة الكوكيز . .


    وكما تشاهد تم سرقة الكوكيز بنجاح , والاستغلال خطير , للسكربتات التي لها منافذ تسجيل دخول , ويمكنك تعديل الكوكيز الى المسروق بواسطة . .


    اضافة [ Edit Co okies ] المعروفة للفايرفوكس , وبذلك الدخول الى عضوية الادمن , ولكن بوجهة نظري ان اختراق الجهاز الاستغلال الاكثر خطورة اما سرقة الكوكيز سيكون بصلاحيات محدوده بعكس عندما يملك الرقم السري الفعلي للعضوية [ يمكنه التحكم بشكل كامل وتعديل الاعدادات واعادة تغيير الرقم السري ] ويملك جهاز المُدير كذلك , بعكس الكوكيز سيكون بصلاحيات محدودة في حالة طلب الرقم السري . .


    واخيراً الان نقوم بالدخول الى النوع [ الغير مُخزّن ] !


    اولاً كما تشاهد الخطأ البرمجي واضح في سطر [ 65 ] عدم تأمين المُخرجات . .


    نقوم بعمل رسالة اختبار [ 12345 ] كما تعلمنا في السكربت المُخزّن . .


    وكما تشاهد [ تم ] التّنفيذ بنجاح . .


    الان كما تشاهد ان السكربت غير مُخزّن والمرسل فقط يظهره , هنا نقول ان السكربت غير مخزن وغير ثابت , وفي حالة اي شخص قام بالدخول الى الصفحة الرئيسية للسكربت الغير مخزن لن يرى اي تغيير بواسطتك , لذلك الامر اقل خطورة من السابق . .

    ولكن الحاجة ام الاختراع والمُخترق دائماً يضع افكار توصله لنتائج مفيده , مثلاً الان كما نشاهد في السكربت الغير مُخزّن ان المدخل يظهر في الرابط سواءً [ GET | POST ] وسيتمكن من الاستغلال , لذلك من الممكن للمخترق ان يستغل الامر بارسال الرابط الذي يحتوي مثلاً على استغلال سرقة الكوكيز , الى مُدير السكربت وبذلك اختراقه [ ولكن عن طريق الارسال ودخول الرابط بعكس السابق ] . .


    كما تُشاهد نقوم بارسال الرابط بهذا الشكل لغرض سرقة الكوكيز , قد يأتي شخص [ ويقول ] ان الاستغلال واضح لمدير الموقع , من الممكن تشفير الرابط مابعد الاستغلال في موقع يقدم خدمة تشفير الروابط وهو . .



    نقوم بالدخول الى الموقع وتشفير [ كود ] الجافا سكربت للمراوغة


    وكما تشاهد تم تشفير الاستغلال واصبح [ غير ] واضح وبالشكل النهائي يكون . .


    كما تشاهد هذه من احد اساليب المراوغه في السكربت الغير مُخزن . .

    الان تعلّمنا ان السكربت المخزن [ حين ] دخول الشخص الى السكربت , سيجد الرد الملغّم فوراً وبذلك التطبيق عليه بعكس الغير مخزن عليك ارسال رساله والمراوغه بها [ وذلك لانه غير مخزن انت من يقوم بطلبه ] وبذلك ذكرنا ان الاستغلال المخزن هو اكثر خطورة من الغير مُخزّن . .

    تم بحمد الله شرح اكتشاف الخطأ البرمجي , وجميع طرق الاستغلال المتوفّره , اتمنى ان الدرس كان واضح وطبعاً الجميع يعلم ان طرق الاستغلال طُرحت لكي نأخذ الحذر منها وكذلك نوضّح خطورة الثغرة واخيراً لكي نقوم بتجربة الاستغلالات مابعد الترقيع ان شاء الله . .



    [ اخيراً الترقيع ]

    اهلاً وسهلاً بكم احبّتي , واتمنى للجميع بالصحة والعافية

    تمّ بحمد الله الانتهاء من المقدمه والاستغلال والاكتشاف , والان حان وقت ترقيع الثغرة , والتأكد من سلامة الترقيع . .


    تعرّفنا سابقاً ان الثغرة تقوم على سبب عدم فلترة المُخرجات , وكذلك تعرّفنا ان المخترق يحتاج الى وسوم [ html , **** script ] والخ لحقنها في الصفحة وتنفيذها . .

    طبعاً الـ[ php ] وفرت وظائف داخليه لفلترة المخرجات مثل تعطيل الوسوم الهامه [ / , ' , " , > , < ] وجميع الرموز التي لابد من توفّرها لتفعيل الكود . .

    هناك دوال تقوم بحذفها والاخرى تقوم بتعطيلها وطباعتها , سأقوم بشرح افضل الدوال حتى الان متوفره وجاهزه في الـ[ PHP ] وحلول فاشله , وكذلك عمل دالة خاصة بنا للترقيع !



    اولاً حلول فاشله , اول دالة وهي [ htmlentities ] مشكلة الدالة هي تضخيم القاعده والحرف الواحد في اللغه العربيه = 3 حروف واكثر , وبذلك تضخيم القاعده 3 مرات من حجمها الطبيعي , ثانياً مشاكل الترميز في اللغه العربيه التي لا تنتهي [ لذلك لا تُناسب البرمجيات العربية ] . .

    تجربة الدالة . .


    نفتح الملف [ xss-sav.php ] وكما تعلّمنا سابقاً ان الخطأ البرمجي هو طباعة المخرجات دون فلترتها في سطر [ 140 ] وسطر [ 145 ] طبعاً الاول هو الخاص بالعنوان والثاني هو الخاص بالتعليق . .


    استخدام الدالة بسيط ضعها قبل المراد طباعته وداخل [ () ] كما في الصورة . .


    نقوم بادخال حرف [ عربي ] كمثال . .


    وكما تشاهد مشاكل الترميز كثيرة ولا تنتهي [ في ] الدالة , ناهيك عن تدبيل حجم القاعده والاحرف . .


    ولكن هي ناجحة في الترقيع , نقوم [ بنسخ ] المستند ولصقه وتجربة الارسال . .


    وكما تشاهد تم الطباعه دون التنّفيذ , وهذا يعني انه ترقيع جميل ولكن كما ذكرت ان مشاكل اللغه العربيه وعدد الاحرف لا تنتهي . .

    افضل دالة للترقيع حتى الان هي دالة [ htmlspecialchars ] قمت باختبارها امنياً ولم اخرج باي نتائج , والدالة تستخدم في اشهر السكربتات وينصح بها كبار مجال الامن والحماية , البعض يقول ان ممكن تخطيها ولكن الكلام غير صحيح ابداً , الا ان كان يوجد هناك دليل فعلي على ذلك . .


    نقوم باستخدام الدالة [ كما ] تعلمنا سابقاً , ونحفظ الملف . .


    انسخ [ المستند ] بأكمله والصقه ..


    وكما تشاهد تم الطباعه [ دون ] الحذف والتنفيذ . .


    طبعاً بعد عرض المصدر وكما تشاهد تم تحويل الوسوم الضرورية الى [ ASCII ] وبذلك عرض دون تنفيذ , طبعاً الـ[ / ] بسبب ان الـ[ Magic Quotes ] مُفعّل وان شاء الله مستقبلاً سنتعلّم فوائده

    تمام الان تم ترقيع الثغرة بشكل كامل باستخدام الدالة المشهورة [ htmlspecialchars ] ذكرنا سابقاً انها تقوم بطباعة المخرجات مع تحويل بعض الوسوم الى [ ASCII ] لمنع تنفيذها , قد يأتي شخص ويقول نصراوي انا احتاج الى بعض الوسوم الخاصة في الـ[ HTML ] في صندوق الرد مثل [ <b> ] الخاص بجعل النص عريض مثلاً . .

    هنا يأتي عمل الدالة [ strip_tags ] !

    الدالة عكس السابقة [ htmlspecialchars ] التي تقوم بتحويل الوسوم الى [ ASCII ] وطباعتها بشكل كامل , الدالة [ strip_tags ] تقوم " بالحذف " بشكل كامل لجميع الوسوم الخطيره وكذلك الوسوم التي تملكها الدالة السابقة مثل [ < > ] وتحولها الى [ ASCII ] ولكن هي اكثر دقه من السابقه بكل تأكيد وهي تقوم "بالحذف " للاكواد الخطيرة وعمل تحويل لبعض الوسوم , هي جيّده فعلاً ويستخدمها الكثير ولكن "الحذف" غير مقنع للبعض , على العموم سنقوم باستخدام الدالة بالشكل الافتراضي


    كما تعلّمنا سابقاً . .


    قم بتجربة الاستغلالات . .


    وكما تشاهد تم الحذف والتعديل والتعطيل والخ . .

    جيّد الان نعود الى محور حديثنا كيفية السماح الى بعض الوسوم المفيده مثل [ <b> <br> ] !

    الدالة لها بارمترين الاول هو المراد تأمينه كما تعلّمنا سابقاً والثاني هي الوسوم المسموحة . .


    وكما تشاهد استخدمت البرمتر الاول هو للمراد تأمينه والثاني هي للوسوم المسموحة [ <b> ] مثلاً .


    متااااااابع
    نقوم بتجربة استخدام الوسم قبل [ السماح ] وكما تشاهد تم حذف الوسم دون تنفيذ . .


    وبعد الاستخدام كما تشاهد النص اصبح عريض , وهذا يعني ان الدالة سامحه للوسم المختار سابقاً وبامكانك اختيار جميع الوسوم الغير ضارة والمفيده مثل [ <b> <br> <h1> ] والخ . .

    جيّد الان تعلمنا كيف نقوم بحماية المخرجات بابسط الطرق , ومن الممكن ان تعمل دالة خاصة بك وفقاً لـ[ نظرتك ] في الترقيع بدلاً من الدوال الجاهزة


    وكما تشاهد عملت [ function ] جديد باسم [ d99y_xss ] واستخدمت دوال النصوص المعروفة وهي [ strtolower ] لتحويل الحروف من كبتل الى سمول , للابتعاد عن مشكلة التلاعب في الاحرف , واستخدمت دالة الاستبدال [ str_replace ] وقمت باستبدال جميع الوسوم التي نحتاجها في عملية الاستغلال , الى مسافه , وبذلك الان عملنا وظيفة جديده تقوم بالحماية من الثغرة , طبعاً [ " ' < > / ] هي كافية بالاساس للحماية ولكن للتأمين اكثر . .


    وهنا نقوم بالتجربة ضع الـ[ function ] طبعاً داخل وسوم [ php ] وبعد ذلك نستخدمها . .


    كما تعلمنا سابقاً نضع اسم الـ[ function ] ونقوم بالتجربة !


    وضعت المستند بأكمله وقمت بالضغط على [ ارسل ] . .


    وكما تشاهد تم تعطيل الاكواد بشكل كامل , طبعاً الامر عائد لك قم بالتعديل واضافة اي وسم خطير وبذلك صنعت [ function ] حماية خاصة فيك . .

    والامر عائد لك باستخدام الدوال الجاهزه او التي عملتها انت , لتحميل الـ[ function ] . .



    طبعاً طريقة ترقيع الملف الاخر الغير مخزن نفس ماذكرنا سابقاً . .


    كما تشاهد في السطر [ 65 ] تعلّمنا في درس الاكتشاف ان الخطأ هو طباعه المخرجات دون حماية . .


    وكما تعلّمنا سابقاً استخدام احد دوال [ الحماية ] بالطريقة المعروفة ولا حاجة للتكرار . .


    واخيراً تم ترقيع [ XSS ] بنجاح , وبطرق واساليب كثيره ولك الحرية الكامله في الاختيار , ولكن هناك مشكلة صغيرة في ترميز [ UTF-7 ] طبعاً الترميز لا اعتقد ان هناك مخلوق في عام [ 2011 ] يستخدمه , ولكن حرصاً على ايصال فكرة الحماية بشكل جيّد . .


    نقوم بالتطبيق على ملف [ xss-nosav.php ] كما تشاهد نحول الترميز . .


    نحوله الى [ UTF-7 ] وندوس على حفظ باسم . .


    نحفظه بنوع [ without BOM ] . .



    طبعاً لابد من استخدام متصفح قديم مثل [ Internet Explorer 6,7,8 ] واصدارات الفايرفوكس القديمه , اما الجديده جميعها لا تنفذّ الثغرة , لانه تمّ الاستغناء عنها . .

    ولابد ان تضع الاستغلال من الرابط مباشرة . .


    وكما تشاهد تم استعراض الكوكيز وتنفيذ الكود المشفر بواسطة [ utf-7 ] طبعاً لو تستخدم جميع دوال الحماية لن تستفيد اي شيء , لان المشكله هي من الترميز نفسه وليس من الحماية , لذلك يفضل دائماً الابتعاد عن الترميز القديم [ utf-7 ] والمتصفحات القديمه التي تدعمه , لافضل حماية وامان ..


    تمّ الانتهاء بحمد الله من دراسة ثغرات [ XSS ] وكان الامر طويل جداً ومُتعب خصوصاً شرح جميع الاستغلالات والاخطاء والترقيعات وتوضيحها والبرمجة والتصميم والامر متعب جداً ولكن ان شاء الله نجد الاجر عند الله . .

    اتمنى ان الدراسة كانت واضحة , ومفيده للجميع , وتذكّروا دائماً ان فهم الاستغلال هو الطريق لتكوين الحماية والتأكد كذلك منها . .

    تم الانتهاء من حماية المخرجات وبذلك الحماية من ثغرات [ XSS ] المشهورة . .


    لاتنسوووووني بالتقييم

    منقول للاستفده والافدة








  2. #2

    افتراضي رد: شرح ثغرات xss بالتفصيل

    مشكوور اخوي Abdullhadi JC على الموضوع الي في قمة الروعة
    مشكور على النقل, وجعلها في ميزان حسناتك ياغالي ان شاء الله

    تحياتي

    لا تترك صلاتك ابداً
    فهناك ألملايين تحت ألقبور يتمنون لو تعود بهم الحياة
    لـ يسجدو لو سجدة واحدة !



    اللهم صل وسلم وبارك على سيدنا محمد وعلى اله وصحبه اجمعين

    أستغفر الله العظيم الذي لا إله إلا هو الحي القيوم وأتوب إليه

  3. #3

    افتراضي رد: شرح ثغرات xss بالتفصيل

    تسلم يا غالي واعتقد انه موضوع يستحق التثبيت اليس كذالك ؟

  4. #4

    افتراضي رد: شرح ثغرات xss بالتفصيل

    اقتباس المشاركة الأصلية كتبت بواسطة Abdullhadi JC مشاهدة المشاركة
    تسلم يا غالي واعتقد انه موضوع يستحق التثبيت اليس كذالك ؟
    مثل هيك موضوع بالتأكيد يستحق التثبيت 1000% لانه بعتقد ما في اقوى من هيك شرح عربي لثغرات Xss
    موضوع حصري بنسبة عالية جداً ما شاء الله

    تم التثبيت
    تحياتي
    التعديل الأخير تم بواسطة QtRoNiX FoX ; 08-24-2012 الساعة 11:55 PM

  5. #5

    افتراضي رد: شرح ثغرات xss بالتفصيل الممل

    مشكور يا غالي ,الله يجزيه كل خير يلي تعب ب الموضوع حقا انه موضوع رائع
    قرأته وقلت لازم انقله وحفظت الصفحة مع الصور كي لا يضيع الموضوع اذا انحذفت الصور
    من السيرفر :p
    تحياتي لك.

  6. #6

    افتراضي رد: شرح ثغرات xss بالتفصيل الممل

    اقتباس المشاركة الأصلية كتبت بواسطة Abdullhadi JC مشاهدة المشاركة
    مشكور يا غالي ,الله يجزيه كل خير يلي تعب ب الموضوع حقا انه موضوع رائع
    قرأته وقلت لازم انقله وحفظت الصفحة مع الصور كي لا يضيع الموضوع اذا انحذفت الصور
    من السيرفر :p
    تحياتي لك.
    من ناحية الشب الي عمل هيك موضوع, بصراحة انا عجزت عن التعليق بأختصار!
    وكل الاحترام والله, وكمان وعامل سكربت ضخم ما شاء الله
    ويسلمو على احتفاظك بالموضوع كامل, يعطيك الف عافية ما قصرت

    بالتوفيق ان شاء الله

  7. #7
    هكر مجتهد الصورة الرمزية حبوط
    تاريخ التسجيل
    Dec 2010
    الدولة
    الســــــعودية
    المشاركات
    480

    افتراضي رد: شرح ثغرات xss بالتفصيل الممل

    بارك الله فيك على النقل + جاري التقيم + فايف ستارز
    دخــولي متقطع
    بسبب ظروف خاصه

  8. #8

    افتراضي رد: شرح ثغرات xss بالتفصيل الممل

    اقتباس المشاركة الأصلية كتبت بواسطة حبوط مشاهدة المشاركة
    بارك الله فيك على النقل + جاري التقيم + فايف ستارز
    مشكوووووور يا غالي تسلم
    ^_^

  9. #9

    افتراضي رد: شرح ثغرات xss بالتفصيل الممل

    اقتباس المشاركة الأصلية كتبت بواسطة QtRoNiX FoX مشاهدة المشاركة
    من ناحية الشب الي عمل هيك موضوع, بصراحة انا عجزت عن التعليق بأختصار!
    وكل الاحترام والله, وكمان وعامل سكربت ضخم ما شاء الله
    ويسلمو على احتفاظك بالموضوع كامل, يعطيك الف عافية ما قصرت

    بالتوفيق ان شاء الله
    ^_________^

  10. #10

    افتراضي رد: شرح ثغرات xss بالتفصيل الممل

    مشكوووووور
    على موضوع الرائع
    يعطيك الف العافيه
    تقبل مرورري يالغلا
    تعال ودق اشتراك مع قناتي لبى قلبك

    http://www.youtube.com/user/mishry20?feature=mhee

صفحة 1 من 5 123 ... الأخيرةالأخيرة

المواضيع المتشابهه

  1. مشاركات: 18
    آخر مشاركة: 03-08-2012, 08:51 PM
  2. اجعل موقعك ينتج مال ..... شرح بالتفصيل الممل ...... 100% $مال$
    بواسطة Dev-Hack في المنتدى المنتدى العام
    مشاركات: 3
    آخر مشاركة: 01-05-2012, 08:38 PM
  3. برنامج Poison Ivy + شرح بالتفصيل الممل
    بواسطة Resident Evil في المنتدى قسم اختراق الأجهزة
    مشاركات: 29
    آخر مشاركة: 01-02-2012, 09:55 PM
  4. تعالو هون اقوى شرح اختراق بالتفصيل الممل
    بواسطة muradblood في المنتدى قسم المواضيع المخالفة والمكررة
    مشاركات: 4
    آخر مشاركة: 01-29-2011, 10:18 PM

المفضلات

أذونات المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •