نظرة حول Meta-Information XSS
تقييم المستخدمين: / 10
عاديممتاز 
الكاتب مصطفى العيسائي   
الخميس, 13 يناير 2011 00:58

سمعنا كلنا عن ثغرات XSS و عن خطورتها لما تمثلة من سهولة في الإكتشاف والإستغلال , وقد يعرف البعض أن أهم وسيلة للحماية منها هي التأكد من البيانات المدخلة للحيلولة دون إستهداف المستخدمين الآخرين , لكن هل يكفي ذلك للحماية منها ؟ ماذا عن Meta-Information ؟ و ما هي ثغرات Meta-Information Cross Site Scripting أو miXSS ؟

 


Meta-Info أو Metadata() هي عبارة عن بيانات تصف تركيب البيانات الملحقة بها, وفي موضوعنا هذا , هي البيانات المتعلقة بموقع ما , مثل معلومات خوادم DNS, خوادم البريد , معلومات المالك والشركة المسجلة , معلومات Whois وغيرها.

 

علاقة  Metadata بثغرات XSS

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

 

المعلومات الممكن تعديلها لاستغلال ثغرات miXSS :

  • معلومات النطاقات DNS.
  • معلومات شهادات التوثيق و SSL.
  • معلومات خوادم البريد.
  • ترويسات خوادم HTTP.
  • ترويسات HTTP Clients.
  • معلومات Whois.

 

 

أمثلة :

الان أنا عندي ملف تنفيذي يحتوي على كود جافاسكربت في معلومات الملف , سأقوم برفع الملف الى موقع Virus Total لنرى اذا سيتم تنفيذ كود الجافا أم لا. نشاهد الصورة بعد رفع الملف الى الموقع:

كما نرى فقد قام الموقع بتحويل كافة العلامات إلى '_' لتفادي تشغيل أي أكواد ملحقة .

مثال ثاني  :
قمت بالتجربة على خدمة Whois في (http://whois.isecur1ty.org) , وذلك بإضافة نطاق لصفحة تحتوي على كود (في معلومات الموقع) لاستغلال البيانات في عرض رسالة لتعلمنا باصابة الموقع بثغرة XSS , لكن كما ترون فإن هناك ترشيح للـtags في خانة العنوان , وهناك encoding للبيانات الأخرى بحيث لن يتم تستغبل أي أكواد خبيثة .

موقع مصاب:
نلاحظ في هذا الموقع والذي يعرض ترويسات طلبات HTTP أنه تم تنفيذ الكود وعرض الرسالة ( فحص ملف php يضيف الكود إلى الترويسة Hello) .

 

 

خلاصة الموضوع:

  • أي معلومات تأتي من مصادر خارجية, حتى لو كانت من مصادر موثوقة, يجب التحقق منها قبل عرضها للمستخدم.
  • ليست كل الروابط السليمة من الأكواد الخبيثة , سليمة المحتوى أيضاَ.


المصدر: Meta-Information Cross Site Scripting by Tyler Reguly

 

عن الكاتب:


مصطفى العيسائي, طالب جامعي مهتم بمجالات الأمن والبرمجة.


التعليقات (5)Add Comment
أحمد سمير
---
أرسلت بواسطة: E.Hegazy في January 13, 2011
جزاك الله كل خير أخي مصطفي علي الطرح المميز وفي إنتظار الجديد منك ..

اود ان اطرج الفكر التي فهمتها من الموضوع

علي سبيل المثال انه موقع etc.com هو شركة استضافه ولديهم سكربت مراسله يكون مصاب بثغرة xss

فاقوم انا بحجز دومين من اي شركه واقوم بالتعديل علي بياناتي المتاحه داخل الدومين بالكود الذي يتم من خلاله استغلال ثغره سكربت المراسله في موقع etc.com

ثم اراسل شركة etc.com انني اريد تحويل الدومين الخاص به اليهم والذي يمكن الاطلاع علي بياناته من الرابط التالي

وهو موقع يكون موثوق مثل whois.com او دومين مثله وبالتالي ستعرض بياناتي وضمنها الكود .!!

هذا الذي فهمته .. والفكره رائعه فعلا .. شكرا لك .
Hit-Man
...
أرسلت بواسطة: Hit-Man في January 13, 2011
السلام عليكم
شكرا أخي مصطفى على المقال
خالد عمر
...
أرسلت بواسطة: خالد عمر في January 13, 2011
شرح وافى وجيد جدا
يا اخ مصطفﮯ
و لاكن انت ركزت على الحمايه بالنسبه للمتسخدم فهل الحمايه بالنسبه لصاحب الموقع
ان يجعل برمجياته تقوم بعمل ترشيح للـtags في العنوان
و عمل تشفير للبيانات حتى لا يتم تستغبل الأكواد الخبيثة
و الغاء تنفيذ الجافا سكربت عن طريق اى متغير يستطيع المستخدم استغلاله
ام هناك طرق اخرى اخ مصطفﮯ
شكراااا
مصطفے
...
أرسلت بواسطة: مصطفے في January 13, 2011
وعليكم السلام ورحمة الله ..

E.Hegazy: القصد من الموضوع هو أن الإستغلالات لا يجب أن تتم عن طريق الروابط , قد يمكن إستغلال معلومات يتم جمعها آلياً من قبل البرامج , ولنفرض أن شركة الإستضافة لديها سكربت يقوم بجمع معلومات نطاقك عند مراسلتك لها لتسهيل عرض معلوماتك لديهم , بتغييرها إلى كود ضار, ستستطيع تنفيذه عندما يقومون بعمل إحصاء لمعلوماتك :)

أخ خالد عمر: بالنسبة لأصحاب الخدمات والمواقع , عليهم أن يحرصوا على عدم تخزين أو جمع أكواد قابلة للتنفيذ بالأساس , وبإستعمال دوال مثل htmlspecialchars (php) أو غيرها في برامجك , تستطيع تحويل الترميزات من > مثلاَ إلى '<' وبالتالي لن تنفذ على الصفحات المعروضة. أيضاَ يمكنك فلترة الtags قما قلت لكن الأفضل إلغاءها من الأساس ..

Hit-Man: حياك الله أخي الكريم ...
Anonymous
رائع يارائع
أرسلت بواسطة: Elnimr Elmasry في January 17, 2011
مقال اكثر من رائع اخي مصطفى وافادني جدا
بارك الله فيك

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

busy
 

SecurityTargets