סייבר ואבטחת מידע · web-api-pt

Path Traversal ו-Local File Inclusion: איך בודקים בבטחה

מאת תאיר מלכא 6 דק׳ קריאהפורסם: 5 באוגוסט 2026
המחשה חזותית מקצועית בנושא בדיקת Path Traversal בתחום Web ו-API PT
תשובה מהירה

בדיקת Path Traversal נבדק רק במעבדה או במערכת מורשית. בודקים את Request/Response, התנהגות השרת, Roles, State והשפעה, תוך שימוש בבדיקות מינימליות שאינן פוגעות בנתונים.

בדיקת אבטחת Web ו-API צריכה לבחון את גבולות האמון, ההרשאות, הקלט, ה-State והלוגיקה העסקית. כל בדיקה במאמר מיועדת למעבדה, CTF או מערכת שניתנה לגביה הרשאה מפורשת. המאמר הנוכחי מתמקד ב-בדיקת Path Traversal ומיועד ל-תלמידי Web PT. המטרה היא לתת שיטת עבודה שאפשר ליישם בתרגול, בראיון מקצועי ובסביבת עבודה, בלי להסתפק בהגדרה מילונית.

האתגר המרכזי הוא שהנתונים כמעט תמיד חלקיים. canonicalization, base directory, encoded separators יכולים להצביע על כיוון, אך המשמעות שלהם תלויה בזמן, בנכס, במשתמש ובפעילות הצפויה. לכן נבנה את הבדיקה סביב שאלת חקירה, ראיות נדרשות וקריטריון ברור לסיום.

התרחיש המעשי במאמר הוא: גישה לקובץ Marker ייעודי בתוך מעבדה.. כל הדוגמאות הן נתוני מעבדה או תיאור תהליכי. כאשר מדובר ב-Penetration Testing, Web או Cloud, יש לעבוד רק עם אישור מפורש, Scope מוגדר ויכולת לעצור את הבדיקה.

מקורות קלט ל-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, השוו להתנהגות צפויה והגדירו Pivot אחד לפחות. התוצאה צריכה להיות ניתנת לבדיקה על ידי אנליסט נוסף, כולל מגבלות וצעדי המשך.

Encoding ו-Canonicalization

הנושא 'Encoding ו-Canonicalization' הוא חלק מרכזי בעבודה על בדיקת Path Traversal. מומלץ לפרק אותו לשלוש שאלות: מהו הקלט, איזו החלטה רוצים לקבל, ואיזו ראיה מספיקה כדי להצדיק אותה. השאלות האלה מונעות שימוש אוטומטי בכלי ללא הבנת המטרה.

בתרגול, רשמו את canonicalization, base directory, encoded separators, symlink, allowlist, השוו להתנהגות צפויה והגדירו Pivot אחד לפחות. התוצאה צריכה להיות ניתנת לבדיקה על ידי אנליסט נוסף, כולל מגבלות וצעדי המשך.

אימות בטוח

בדיקה מקצועית ל-בדיקת Path Traversal מתחילה בתנאי הצלחה ותנאי כישלון. מגדירים Case חיובי, Case שלילי, Case גבול ופעילות לגיטימית דומה. כך ניתן לזהות גם False Negative וגם False Positive.

בסביבה מורשית משתמשים בפעולה מינימלית שמוכיחה את הטענה בלי לגרום נזק. שומרים Input, Output, זמן וגרסה, ולאחר תיקון מבצעים Retest באותו תרחיש ובודקים גם Regression על פונקציות סמוכות.

Remediation ו-Retest

בדיקה מקצועית ל-בדיקת Path Traversal מתחילה בתנאי הצלחה ותנאי כישלון. מגדירים Case חיובי, Case שלילי, Case גבול ופעילות לגיטימית דומה. כך ניתן לזהות גם False Negative וגם False Positive.

בסביבה מורשית משתמשים בפעולה מינימלית שמוכיחה את הטענה בלי לגרום נזק. שומרים Input, Output, זמן וגרסה, ולאחר תיקון מבצעים Retest באותו תרחיש ובודקים גם Regression על פונקציות סמוכות.

מוקדי בדיקה ייחודיים

בנושא הזה מומלץ לבנות מראש מפת ראיות ממוקדת. מוקדי הבדיקה המרכזיים הם: canonicalization, base directory, encoded separators, symlink, allowlist, error handling. הרשימה אינה Checklist אוטומטי; כל פריט נבחר משום שהוא יכול לקשור בין ישות, פעולה וזמן או להסביר התנהגות לגיטימית.

  • canonicalization: הגדירו מהו הערך הצפוי, מה ייחשב חריג ואיזה מקור נוסף יאמת את הממצא.
  • base directory: הגדירו מהו הערך הצפוי, מה ייחשב חריג ואיזה מקור נוסף יאמת את הממצא.
  • encoded separators: הגדירו מהו הערך הצפוי, מה ייחשב חריג ואיזה מקור נוסף יאמת את הממצא.
  • symlink: הגדירו מהו הערך הצפוי, מה ייחשב חריג ואיזה מקור נוסף יאמת את הממצא.
  • allowlist: הגדירו מהו הערך הצפוי, מה ייחשב חריג ואיזה מקור נוסף יאמת את הממצא.
  • error handling: הגדירו מהו הערך הצפוי, מה ייחשב חריג ואיזה מקור נוסף יאמת את הממצא.

כאשר אחד המוקדים אינו זמין, יש לתעד את הפער ולבחור חלופה. לדוגמה, אם Process identifier אינו יציב, אפשר להיעזר בזמן, Host, User ו-Parent; אם Payload מוצפן, משתמשים ב-Metadata, נפח, תדירות ו-TLS/DNS context.

תהליך עבודה מומלץ

  1. הגדירו Scope ושאלת עבודה אחת בנושא בדיקת Path Traversal.
  2. רשמו את מקורות הנתונים והראיות הדרושים: canonicalization, base directory, encoded separators, symlink.
  3. צרו Baseline קצר של התנהגות תקינה או תוצאה צפויה.
  4. בצעו את הבדיקה המינימלית בסביבת מעבדה ושמרו זמן, קלט ופלט.
  5. בנו Timeline או טבלת השוואה והפרידו בין עובדה לפרשנות.
  6. בצעו Pivot למקור נוסף כדי לאמת או להפריך את ההסבר הראשוני.
  7. סכמו החלטה, מגבלות, פעולה מומלצת וקריטריון Retest.

תרחיש מעשי

התרחיש שנבחר הוא גישה לקובץ Marker ייעודי בתוך מעבדה. מטרת התרגיל אינה להוכיח יכולת תקיפה, אלא לתרגל איסוף, השוואה ותיעוד בצורה בטוחה. לפני תחילת העבודה מגדירים נתונים מדומים, חלון זמן ותוצאה צפויה.

בסיום התרגיל יש להגיש תוצר שאנליסט או בודק אחר יכול לבקר: צילום או Export של הראיה, Timeline קצר, הנחה ראשונית, ראיה מאמתת, מגבלה והמלצה. כאשר אין ראיה מספקת, המסקנה התקינה היא שהתרחיש לא הוכח.

שלבמה מבצעיםתוצר
הכנההגדירו Scope, זמן ויעד. רשמו אילו שדות או ראיות מתוך canonicalization, base directory, encoded separators צפויים להופיע.תוכנית בדיקה קצרה
יצירת נתוןבצעו פעולה בטוחה ומדומה הקשורה ל-בדיקת Path Traversal, ללא מידע אמיתי או השפעה על מערכת ייצור.אירוע/Request/Flow מבוקר
איסוףאספו את הראיה הגולמית ואת ההקשר ממקור נוסף. ודאו Time zone, מזהים ושלמות.שתי ראיות מקושרות
ניתוחכתבו מה כל ראיה מוכיחה, מה אינה מוכיחה ומהו ההסבר הלגיטימי האפשרי.מסקנת ביניים
סיוםבחרו סגירה, הסלמה, Finding או Tuning; הוסיפו המלצה ו-Retest.תוצר מתועד

Checklist מעשי

  • בדקו ותעדו: Role ו-session.
  • בדקו ותעדו: Endpoint ו-method.
  • בדקו ותעדו: Request/Response.
  • בדקו ותעדו: Object identifier.
  • בדקו ותעדו: Server-side effect.
  • בדקו ותעדו: Control expected ו-remediation.
  • ציינו Time zone, גרסת כלי ושעת איסוף.
  • שמרו את הנתון הגולמי לפני סינון או שינוי.
  • כתבו מה הממצא מוכיח ומה עדיין אינו ידוע.
  • הגדירו בעלים ופעולת המשך עם מועד.

טעויות נפוצות

  • לבדוק רק Status code.
  • להסתמך על שינוי Client-side.
  • להשתמש ב-Payload מסוכן.
  • לא לבדוק Roles שונים.
  • להתעלם מלוגיקה עסקית.
  • לדווח בלי Request/Response נקיים.

סיכום ו-CTA

Path Traversal ו-Local File Inclusion: איך בודקים בבטחה הוא נושא שמחבר ידע טכני למשמעת עבודה. התחילו משאלה, אספו רק ראיות רלוונטיות, שמרו הקשר וזמן, ובחרו פעולה שאפשר להצדיק ולבדוק מחדש.

במסלול Cybersecurity & AI של HPI מתרגלים את העקרונות האלה באמצעות מערכות, לוגים ומעבדות. המשך טבעי הוא לעבור למאמרים המקושרים, לבצע את תרגיל המעבדה ולשמור את התוצר כחלק מתיק עבודות מקצועי.

שאלות ותשובות

האם מותר לבדוק בדיקת Path Traversal באתר ציבורי?

לא ללא הרשאה מפורשת מבעל המערכת. גם בדיקה שנראית קלה עלולה לשנות נתונים, להפעיל מנגנוני הגנה או להיחשב גישה לא מורשית.

מה עושים כאשר חלק מהנתונים חסרים?

מתעדים את החסר, בודקים מקור חלופי ומצמצמים את רמת הביטחון. אין להשלים שדות בהשערה או להציג Unknown כתקין.

כמה זמן צריך לשמור את הראיות?

הזמן תלוי במדיניות, רגולציה, עלות וסוג האירוע. חשוב להגדיר מראש Retention, Legal hold ויכולת לייצא ראיה בפורמט שניתן לאמת.

איך מתרגלים בלי לסכן מערכת אמיתית?

משתמשים במכונות וירטואליות, נתונים מדומים, CTF או מעבדה ייעודית. בבדיקות מורשות מגדירים Scope, Stop conditions וגיבוי לפני תחילת העבודה.

מקורות

רוצים לבדוק אם המסלול מתאים לכם?

השאירו פרטים ונציג של HPI יחזור אליכם לשיחת התאמה קצרה וללא התחייבות.

פרטייך נשמרים באופן מאובטח.

ללימודי SOC וסייבר במסגרת תוכנית Cybersecurity & AI

רוצים לשמוע פרטים על התוכנית? השאירו פרטים ונחזור אליכם.

על הכותב
תאיר מלכא
מייסד ומנכ״ל HPI ומרצה לסייבר

תאיר מלכא הוא מייסד ומנכ״ל HPI – המכללה למקצועות ההייטק, ומרצה לסייבר במסלולי ההכשרה של המכללה. במסגרת תפקידיו הוא אחראי על בניית תוכניות הלימוד המקצועיות של HPI בתחומי סייבר, IT ורשתות, ומוביל את הליווי המקצועי של הסטודנטים לאורך המסלול.

מאמרים קשורים