المقال المثبتامن وحماية تطبيقات الويبمواضيع عامةمواضيع ومقالات

مقال : شرح Path Disclosure

تم أرشفة هذا المحتوى


السلام عليكم

في الكثير من الاحيان تسمع حول Path Disclosure كثغرة  لكن اليوم سنوضح ما هو Path Disclosure ولماذا يستعمل .

 

اولاً : ما هو Path Disclosure


 

كشف المسار او Path Disclosure هو عبارة عن طلب او صفحة تقوم بعرض مسار الملف الحقيقي في السيرفر مع اعطاء معلومات حول صيغة الملف والمجلد الموجود به وهي ليست ثغرة بقدر ما هي كشف للمعلومات على السيرفر . ولهذه المعلومات فوائد سوف نقوم بعدها في نهاية المقال .

 

سبب ظهور المسار الافتراضي ؟ 


تعد رسائل الاخطاء في الصفحات هي السبب الرئيسي (غالباً) في ظهور مسار الملف الذي يحصل فيه الخطاً وهذه تعد فائدة للمطور لكشف الملف الذي يعرقل عمل التطبيق او الموقع وهذا سببه mis-configuration في السيرفر نفسه او في الصفحة يمكن تلافي هذه الاخطاء عن طريق منع ظهورها من خلال ملف ترتيب السيرفر config سنعرض الاصلاح لكل سيرفر ايضاً ولكل لغة برمجة .

 

ظهور المسار يكون خطراً في بعض الحالات وليس دائماً .

 

شكل صفحات الاخطاء : 


صفحات asp و aspx في سيرفرات IIS

 

ASP_Error

 

صفحات php

 

7-11-2016 1-24-25 PM

 

فواد كشف المسار 


  • معرفة اصدار السيرفر .
  • معرفة سلوك التطبيق او الموقع من خلال ادخال مدخلات برمجية مثل ‘ او @ , % ^ & ! <>
  • في حالة اكتشاف ثغرة LFI ستعرف اين يمكنك العثور على الملفات المهمة .
  • معرفة نوع الWEB APP المستخدم من خلال معرفة الملفات ومجلداتها .
  • اكتشاف اسم المدير  .

 

اكتشاف المسارات الخطرة 


لنفرض انه ظهر هذا المسار في الصفحة

1- /var/www/html

هذا المسار غير خطر ولا يوجد به اي معلومات فهو المسار الافتراض في سيرفرات ليونكس الخاص ب apache  لذلك لا يمكن الحصول على معلومات مفيدة منه .

 

2-/home/abdullah/public_html/ 

في هذا المثال ظهر اسم المستخدم abdullah في السيرفر وهذا امر خطير يمكن من خلاله اخذ هذا الاسم وعمل هجوم تخمين في ssh او في سيرفر ftp سوف نقوم بتطبيق مثال في الدرس القادم .

3- /var/www/html/script-name/admin/auth.php

في هذا السمار تم كشف اسم السكربت ومسار لوحة الادمن لذلك يمكن البحث عن اسم السكربت ومحاولة اكتشاف ثغرات به .

 

قد يحصل في بعض الاحيان ظهور ملفات او مسارات خارج مسار webroot لكن هذا نادر في حال حصول المهاجم على هذه العلومات من الممكن ان يقوم بمهاجمة ذاك المصدر في حال حصوله على ثغرة LFI  .

 

اصلاح صفحات php  

يمكن اصلاح صفحات php حتى لا تظهر المسار باضافة هذا السطر في بداية الصفحة لفهم الدالة اكثر هنا .

error_reporting(0);x

 

اصلا صفحات asp في سيرفر iis 

في ملف السيرفر اضف

<customErrors mode=”Off”/>

 

في سيرفرات apache 

ابحن عن ملف php.ini وضع هذا الكود في السطر الاخير او اي سطر

 

display_errors = Off

 

ملاحظات للمطورين 


في حال انك مطور ويب لذلك ترغب كثيراً في معرفة سلوك التطبيق او الموقع الذي تعمل عليه لذلك في حال تعطيل خاصية الابلاغ عن الاخطاء سيكون من الصعب عليك تحديد الملف الذي يعرقل البرنامج . نصيحتي لك ان تعمل على السيرفر الداخلي (locathost) وحين ترفع التطبيق او السكربت الى السيرفر حاول ان تقلل ظهور الاخطاء او يمكنك برمجة صفحة للاخطاء تظهر المعلومات التي تحتاجها في debugger بالاضافة الى انه لا يعد امر سيء اظهار المسار في بعض الاحيان لك

 

في موقع ورد بريس ينصح المبرمجون الى تعطيل صفحات الاخطاء

 

https://make.wordpress.org/core/handbook/testing/reporting-security-vulnerabilities/#why-are-there-path-disclosures-when-directly-loading-certain-files

 

سوف ننشر debugger امن في اقرب وقت لمطوري php بالمجان سنعلن عنه فور الانتهاء منه

 

لاي استفسار يمكنكم التواصل معي عبر حسابي في تويتر من هنا 

تحياتي وتحيات فريق isecur1ty

عبدالله حسام

مبرمج ومختبر اختراق من العراق مهتم بأمن المعلومات والثغرات البرمجية للتواصل معي عبر تويتر https://twitter.com/Abdulahhusam

مقالات ذات صلة

‫6 تعليقات

  1. شرح جميل عاشت يدك
    ممكن تجاوب على سؤال هذا صارلي تقريبا سبوع احاول ان افهم طرية استغلال هذا النوع من الثغرات كما اعتقد لكن دون جدوى
    هل يمكنني ان استغلالها كثغرة وكذالك الخطأ ينتج عند ادخال ‘ او اي مدخل ثاني يقوم بالكشف على ثغرات sql_injection
    الشيء الذي لم افهمه هو ان امتداد الصفحات لا يتنهي بـ PHP او asp بالينتهي ب_(cfm)
    وهذه صورة توضح المشكلة
    http://e.top4top.net/p_198l8q31.png

    #وشكرا

    1. الأمر عادي أخي الكريم
      السيرفر يعمل على نظام windos server وخدمة قواعد البيانات هي MSSQL

      يوجد شروحات لكيفية الحقن في هذه البيئة

      إبحث عن حقن الـMSSQL وستجد ضالتك
      لا يهم إنك كان cfm أو asp

      1. نعم واعتقد هذه اللغة هي لشركة ادوبي خاصة للسيرفر ويب ؟!
        كما في هذه الصفحة
        http://www.adobe.com/products/coldfusion-family.html
        على كل مع الاسف الموقع المصاب هو موقع عربي ذو نشاط جيد
        احببت ان اعمل تقرير كامل لهذه الثغرة وارسله لادارة الموقع لكن لم استطيع استغلالها وتحديد خطورتها
        اما يا اخي Mhammad Al Abdullah لا اعتقد الثغرة mssql لانني حاولت ان احقنها على كثير من ادوات حقن mssql لم ينفع حتى في الحقن اليدوي لم يجدي نتيجة
        على كل شكرا لكم

  2. مرحبا
    مشكور على الموضوع الرائع ..
    سؤالي : بخوصوص ظهور رابط الملف كاملا في صفحة الموقع .. مثال (www.some link / load_contents.php)
    ماذا يمكن للهاكر ان يستغل هاته المعلومة .. مع العلم انا استخدم (الجافا ) كي أنادي للملف و اعرض بواسطته تعاليق المستخدمين كل 1 ثانية يقوم بالتحديث.
    شكرا جزيلا لك

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى