نظرة حول Meta-Information XSS

سمعنا كلنا عن ثغرات 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) .


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

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

إرسال تعليق