الأمن السيبراني وأمن المعلومات

Path Traversal و Local File Inclusion: كيف تختبر بأمان

6 دقيقة قراءةتاريخ النشر: 5 أغسطس 2026
توضيح بصري احترافي لموضوع اختبار Path Traversal في مجال Web و API PT
إجابة سريعة

يتم اختبار Path Traversal فقط في المختبر أو في نظام مصرح به. يتم فحص الطلب/الاستجابة، سلوك الخادم، الأدوار، الحالة، والتأثير، باستخدام اختبارات بسيطة لا تضر بالبيانات.

يجب أن يفحص اختبار أمان الويب وواجهة برمجة التطبيقات (API) حدود الثقة والأذونات والإدخال والحالة ومنطق العمل. تم تصميم كل اختبار في هذه المقالة للمختبر أو CTF أو نظام تم الحصول على إذن صريح بشأنه. تركز هذه المقالة على اختبار Path Traversal وهي مخصصة لطلاب اختبار الاختراق للويب (Web PT). الهدف هو توفير منهجية عمل يمكن تطبيقها في التدريب والمقابلات المهنية وبيئة العمل، دون الاكتفاء بتعريف معجمي.

التحدي الرئيسي هو أن البيانات غالبًا ما تكون جزئية. يمكن أن يشير canonicalization، و base directory، و encoded separators إلى اتجاه، لكن معناها يعتمد على الوقت، والمورد، والمستخدم، والنشاط المتوقع. لذلك، سنبني الاختبار حول سؤال بحثي، وأدلة مطلوبة، ومعيار واضح للانتهاء.

السيناريو العملي في المقالة هو: الوصول إلى ملف Marker مخصص داخل المختبر. جميع الأمثلة هي بيانات معملية أو وصف لعمليات. عند التعامل مع اختبار الاختراق، الويب أو السحابة، يجب العمل فقط بموافقة صريحة، ونطاق محدد، والقدرة على إيقاف الاختبار.

مصادر إدخال المسار (Path)

في هذه المرحلة، يتم تحديد الأدلة المطلوبة للإجابة على سؤال التحقيق. بالنسبة لاختبار Path Traversal، النقاط الأساسية هي الدور (Role) والجلسة (session)، ونقطة النهاية (Endpoint) والأسلوب (method)، والطلب/الاستجابة (Request/Response)، ومعرف الكائن (Object identifier). لكل مصدر، يتم توثيق المالك، نطاق الاحتفاظ، المنطقة الزمنية، تأخير الاستقبال والحقول التي قد تكون مفقودة.

جودة التجميع لا تُقاس بـ'وصول' السجل. يجب فحص الاكتمال (Completeness)، زمن الوصول (Latency)، التحليل (Parsing)، الأحداث المكررة (Duplicate events) ومزامنة الوقت. يتيح اختبار Canary أو حدث مختبر معروف التأكد من أن الإجراء ظهر في المصدر، ومر عبر Pipeline ويمكن البحث عنه في الحقول الصحيحة.

Traversal مقابل LFI

موضوع 'Traversal مقابل LFI' هو جزء أساسي من العمل على اختبار Path Traversal. يوصى بتقسيمه إلى ثلاثة أسئلة: ما هو الإدخال، أي قرار نريد اتخاذه، وأي دليل يكفي لتبريره. تمنع هذه الأسئلة الاستخدام التلقائي للأداة دون فهم الهدف.

في الممارسة، قم بتسجيل canonicalization، و base directory، و encoded separators، و symlink، و allowlist، وقارنها بالسلوك المتوقع وحدد محورًا واحدًا على الأقل. يجب أن تكون النتيجة قابلة للتحقق من قبل محلل آخر، بما في ذلك القيود والخطوات التالية.

الترميز (Encoding) والتوحيد (Canonicalization)

موضوع 'الترميز (Encoding) والتوحيد (Canonicalization)' هو جزء أساسي من العمل على اختبار Path Traversal. يوصى بتقسيمه إلى ثلاثة أسئلة: ما هو الإدخال، أي قرار نريد اتخاذه، وأي دليل يكفي لتبريره. تمنع هذه الأسئلة الاستخدام التلقائي للأداة دون فهم الهدف.

في الممارسة، قم بتسجيل canonicalization، و base directory، و encoded separators، و symlink، و allowlist، وقارنها بالسلوك المتوقع وحدد محورًا واحدًا على الأقل. يجب أن تكون النتيجة قابلة للتحقق من قبل محلل آخر، بما في ذلك القيود والخطوات التالية.

تحقق آمن

يبدأ الاختبار الاحترافي لـ Path Traversal بشروط النجاح وشروط الفشل. يتم تعريف الحالة الإيجابية (Positive Case)، والحالة السلبية (Negative Case)، والحالة الحدية (Edge Case)، والنشاط المشروع المماثل. وبهذه الطريقة يمكن تحديد كل من False Negative و False Positive.

في بيئة مصرح بها، يتم استخدام إجراء بسيط يثبت الادعاء دون التسبب في ضرر. يتم حفظ الإدخال، والإخراج، والوقت، والإصدار، وبعد الإصلاح يتم إجراء Retest في نفس السيناريو ويتم أيضًا فحص Regression على الوظائف المجاورة.

المعالجة (Remediation) وإعادة الاختبار (Retest)

يبدأ الاختبار الاحترافي لـ Path Traversal بشروط النجاح وشروط الفشل. يتم تعريف الحالة الإيجابية (Positive Case)، والحالة السلبية (Negative Case)، والحالة الحدية (Edge Case)، والنشاط المشروع المماثل. وبهذه الطريقة يمكن تحديد كل من False Negative و False Positive.

في بيئة مصرح بها، يتم استخدام إجراء بسيط يثبت الادعاء دون التسبب في ضرر. يتم حفظ الإدخال، والإخراج، والوقت، والإصدار، وبعد الإصلاح يتم إجراء Retest في نفس السيناريو ويتم أيضًا فحص Regression على الوظائف المجاورة.

نقاط اختبار فريدة

في هذا الموضوع، يوصى ببناء خريطة أدلة مركزة مسبقًا. نقاط الاختبار المركزية هي: canonicalization، و base directory، و encoded separators، و symlink، و allowlist، و error handling. القائمة ليست قائمة تحقق تلقائية؛ تم اختيار كل عنصر لأنه يمكن أن يربط كيانًا، وعملية، ووقتًا، أو يشرح سلوكًا مشروعًا.

  • canonicalization: حدد القيمة المتوقعة، وما الذي سيعتبر غير طبيعي، وأي مصدر إضافي سيؤكد النتيجة.
  • base directory: حدد القيمة المتوقعة، وما الذي سيعتبر غير طبيعي، وأي مصدر إضافي سيؤكد النتيجة.
  • encoded separators: حدد القيمة المتوقعة، وما الذي سيعتبر غير طبيعي، وأي مصدر إضافي سيؤكد النتيجة.
  • symlink: حدد القيمة المتوقعة، وما الذي سيعتبر غير طبيعي، وأي مصدر إضافي سيؤكد النتيجة.
  • allowlist: حدد القيمة المتوقعة، وما الذي سيعتبر غير طبيعي، وأي مصدر إضافي سيؤكد النتيجة.
  • error handling: حدد القيمة المتوقعة، وما الذي سيعتبر غير طبيعي، وأي مصدر إضافي سيؤكد النتيجة.

عندما يكون أحد التركيزات غير متاح، يجب توثيق الفجوة واختيار بديل. على سبيل المثال، إذا كان Process identifier غير مستقر، يمكن استخدام الوقت، والمضيف (Host)، والمستخدم (User)، والوالد (Parent)؛ إذا كان Payload مشفرًا، يتم استخدام البيانات الوصفية (Metadata)، والحجم، والتردد، وسياق TLS/DNS.

سير عمل موصى به

  1. حدد النطاق (Scope) وسؤال عمل واحد حول اختبار Path Traversal.
  2. سجل مصادر البيانات والأدلة المطلوبة: canonicalization، و base directory، و encoded separators، و symlink.
  3. أنشئ خط أساس (Baseline) قصير للسلوك الصحيح أو النتيجة المتوقعة.
  4. نفذ الحد الأدنى من الاختبار في بيئة المختبر واحفظ الوقت والإدخال والإخراج.
  5. أنشئ جدول زمني (Timeline) أو جدول مقارنة وافصل بين الحقيقة والتفسير.
  6. انتقل إلى مصدر إضافي لتأكيد أو دحض التفسير الأولي.
  7. لخص القرار، والقيود، والإجراء الموصى به، ومعيار Retest.

سيناريو عملي

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

في نهاية التمرين، يجب تقديم منتج يمكن لمحلل أو مختبر آخر مراجعته: لقطة شاشة أو تصدير للدليل، جدول زمني قصير، افتراض أولي، دليل مؤكد، قيود وتوصية. عندما لا يكون هناك دليل كافٍ، فإن الاستنتاج الصحيح هو أن السيناريو لم يثبت.

المرحلةما الذي يتم تنفيذهالناتج
التحضيرحدد النطاق والوقت والهدف. سجل الحقول أو الأدلة المتوقع ظهورها من canonicalization، و base directory، و encoded separators.خطة اختبار قصيرة
إنشاء بياناتقم بإجراء عملية آمنة ووهمية تتعلق باختبار Path Traversal، بدون معلومات حقيقية أو تأثير على نظام الإنتاج.حدث/طلب/تدفق خاضع للتحكم
الجمعاجمع الدليل الخام والسياق من مصدر إضافي. تأكد من المنطقة الزمنية والمعرفات والاكتمال.دليلان مرتبطان
التحليلاكتب ما يثبته كل دليل، وما لا يثبته، وما هو التفسير المشروع المحتمل.استنتاج مؤقت
الانتهاءاختر الإغلاق، أو التصعيد، أو Finding، أو Tuning؛ أضف توصية و Retest.منتج موثق

قائمة تحقق عملية

  • تحقق ووثق: الدور (Role) والجلسة (session).
  • تحقق ووثق: نقطة النهاية (Endpoint) والأسلوب (method).
  • تحقق ووثق: الطلب/الاستجابة (Request/Response).
  • تحقق ووثق: معرف الكائن (Object identifier).
  • تحقق ووثق: التأثير على جانب الخادم (Server-side effect).
  • تحقق ووثق: التحكم المتوقع (Control expected) والإصلاح (remediation).
  • اذكر المنطقة الزمنية (Time zone)، إصدار الأداة ووقت التجميع.
  • احفظ البيانات الخام قبل التصفية أو التعديل.
  • اكتب ما تثبته النتيجة وما هو غير معروف بعد.
  • حدد المالك والإجراءات اللاحقة مع الموعد.

أخطاء شائعة

  • الاكتفاء بالتحقق من Status code.
  • الاعتماد على التغيير من جانب العميل (Client-side).
  • استخدام Payload خطير.
  • عدم اختبار أدوار مختلفة (Roles).
  • تجاهل منطق العمل (Business logic).
  • التبليغ بدون Request/Response نظيفين.

الخلاصة والدعوة للعمل (CTA)

Path Traversal و Local File Inclusion: كيف تختبر بأمان هو موضوع يربط المعرفة التقنية بانضباط العمل. ابدأ بسؤال، اجمع فقط الأدلة ذات الصلة، حافظ على السياق والوقت، واختر إجراءً يمكن تبريره وإعادة اختباره.

في مسار Cybersecurity & AI في HPI، يتم ممارسة هذه المبادئ باستخدام الأنظمة والسجلات والمختبرات. الخطوة الطبيعية التالية هي الانتقال إلى المقالات المرتبطة، وإجراء تمرين المختبر، وحفظ المنتج كجزء من حافظة الأعمال المهنية.

الأسئلة الشائعة

هل يُسمح باختبار Path Traversal على موقع ويب عام؟

لا، إلا بإذن صريح من مالك النظام. حتى الاختبار الذي يبدو سهلاً قد يغير البيانات، أو يشغل آليات الحماية، أو يعتبر وصولاً غير مصرح به.

ماذا نفعل عندما تكون بعض البيانات مفقودة؟

وثق النقص، ابحث عن مصدر بديل، وخفض مستوى اليقين. لا تكمل الحقول بالتخمين أو تعرض 'غير معروف' (Unknown) على أنه صحيح.

ما هي المدة التي يجب الاحتفاظ بالأدلة؟

تعتمد المدة على السياسة والتنظيم والتكلفة ونوع الحدث. من المهم تحديد مدة الاحتفاظ (Retention)، والاحتجاز القانوني (Legal hold)، والقدرة على تصدير الأدلة بتنسيق يمكن التحقق منه مسبقًا.

كيف أتدرب دون المخاطرة بنظام حقيقي؟

استخدم الأجهزة الافتراضية، والبيانات الوهمية، و CTF، أو مختبر مخصص. في الاختبارات المصرح بها، حدد النطاق (Scope)، وشروط الإيقاف (Stop conditions)، والنسخ الاحتياطي (backup) قبل بدء العمل.

هل تريد التحقق مما إذا كان هذا المسار يناسبك؟

اترك تفاصيلك وسيتصل بك مستشار من HPI لإجراء مكالمة قصيرة لتقييم الملاءمة، دون أي التزام.

يتم تخزين بياناتك بأمان.

لدراسة SOC والأمن السيبراني ضمن برنامج Cybersecurity & AI

هل ترغب في تفاصيل البرنامج؟ اترك بياناتك وسنتواصل معك.

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