هل من الممكن أن يحصل هجوم XSS على ملفات تعريف الارتباط HttpOnly؟

StackOverflow https://stackoverflow.com/questions/228138

  •  03-07-2019
  •  | 
  •  

سؤال

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

وبصرف النظر عن حقيقة أن جميع المتصفحات لا تدعم هذه الميزة بشكل صحيح، فكيف يمكن للمتسلل الحصول على ملفات تعريف الارتباط الخاصة بالمستخدم إذا كانت HttpOnly؟

لا أستطيع التفكير في أي طريقة لجعل ملف تعريف الارتباط HttpOnly يرسل نفسه إلى موقع آخر أو تتم قراءته بواسطة البرنامج النصي، لذلك يبدو أن هذه ميزة أمان آمنة، لكنني دائمًا مندهش من مدى سهولة تعامل بعض الأشخاص مع العديد من الأشياء طبقات الأمان.

في البيئة التي أعمل فيها، نستخدم IE حصريًا حتى لا تشكل المتصفحات الأخرى مصدر قلق.أنا أبحث على وجه التحديد عن طرق أخرى يمكن أن تصبح بها هذه مشكلة لا تعتمد على عيوب محددة في المتصفح.

هل كانت مفيدة؟

المحلول

أولا، كما ذكر البعض الآخر، XSS على يمكن السماح حمولات أخرى، وليس فقط كوكي سرقة.

ولكن، <م> هو هناك على أية حال لسرقة httpOnly الكوكيز، مع XSS؟ (تجاهل مسألة httpOnly الدعم؟) .... الجواب هو: نعم
. ومن المعروف مجموعة فرعية من XSS كما عبر الموقع للبحث عن المفقودين (XST) (أو الذهاب إلى رقة بحثية ). هذا الهجوم لديه حمولة XSS إرسال طلب HTTP TRACE إلى خادم الويب (أو وكيل ، إلى الأمام أو الخلف)، والتي سوف أردد مرة أخرى إلى العميل على طلب الكامل - بما في ذلك ملفات تعريف الارتباط وhttpOnly أم لا. يمكن للحمولة XSS ثم تحليل المعلومات عاد، واسترداد تلك الكوكيز لذيذ ...


وراجع للشغل، بعد آخر "فرعية" (كيندا) من XSS، ينطوي على حقن حمولة إلى رؤوس الاستجابة. على الرغم من ما شابه ذلك، هذا ليس <م> بالضبط XSS، ورأس حقن يمكن أن يؤدي حتى إلى HTTP تقسيم استجابة (HRS) - الذي هو أقوى من ذلك بكثير، ويسمح سيطرة شبه كاملة من عملاء آخرين، مخبأ التسمم، وبطبيعة الحال الحصول على الكوكيز، إذا رغبت في ذلك

.

نصائح أخرى

إذا لم يفهم المتصفح HttpOnly، ينجح الهجوم. يحرر:حسنا، أنت لست قلقا.هذا جيد، لكنني سأترك هذا الإشعار للإشارة فقط.ومن المفيد أن نذكر ذلك صراحة.

هناك طريقة أخرى للسرقة إلى جانب استنشاق الشبكة وهي التحكم المباشر في كمبيوتر المستخدم.ثم يمكن قراءة ملفات تعريف الارتباط من ملف.إذا كان ملف تعريف ارتباط للجلسة، فستتم إزالته بالطبع بعد إغلاق المتصفح.

بالمناسبة، سرقة ملف تعريف ارتباط الجلسة ليست "الحمولة" الوحيدة الممكنة لهجوم XSS.على سبيل المثال، قد يجعل حماية CSRF الخاصة بك عديمة الفائدة.قد يغير محتويات موقعك لخداع المستخدم.وغيرها الكثير من الأشياء الخبيثة.

لذلك من الأفضل أن تحمي نفسك بطريقة جيدة (إخراج الهروب)، والتفكير في HttpOnly كما طبقة إضافية من الحماية.

استخدام ملفات تعريف الارتباط HttpOnly سيمنع هجمات XSS من الحصول على ملفات تعريف الارتباط هذه.

إلا إذا:

  • متصفحك لا يدعم HttpOnly
  • توجد ثغرة أمنية غير معروفة حتى الآن في المتصفح والتي تؤدي إلى اختراق HttpOnly
  • لقد تم اختراق الخادم (ولكن من المحتمل أن يتم اختراقك على أي حال).

كما لاحظ ملصق آخر:XSS ليس التهديد الوحيد الموجود، كما أن الاستيلاء على ملفات تعريف الارتباط ليس هو التهديد الوحيد من XSS.أنا متأكد من أنك تعرف هذا - لقد اكتملت للتو!

حظ سعيد!

يمكن لجافا سكريبت تعديل HTML على الصفحة، وبالتالي، httpOnly يفعل لا يعني أنك آمن ضد XSS.

وحزم استنشاق يمكن قراءة ملفات الكوكيز التي تنتقل عبر HTTP. ولكن قد لا تندرج تحت XSS.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top