לדלג לתוכן

דרישות קדם ומבנה הקורס

מבוא

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

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


דרישות קדם

ידע נדרש מהקורס הבסיסי

הקורס מניח שאתם שולטים בנושאים הבאים מהקורס הבסיסי:

  • סקריפטים בצד הלקוח - XSS (Reflected, Stored, DOM-based)
  • זיוף בקשות צד לקוח - CSRF
  • הזרקת SQL - SQL Injection (Union, Blind, Error-based)
  • הזרקת פקודות - Command Injection
  • העלאת קבצים - File Upload Vulnerabilities
  • מעבר נתיב - Path Traversal / LFI
  • זיוף בקשות צד שרת - SSRF
  • דה-סריאליזציה בסיסית - Insecure Deserialization
  • ישויות חיצוניות - XXE (XML External Entities)
  • שימוש בסיסי ב-Burp Suite (Proxy, Repeater, Intruder)

ידע טכני כללי

מעבר לידע באבטחת אפליקציות ווב, נדרש ידע בתחומים הבאים:

היכרות עם לינוקס:
- עבודה בסיסית בטרמינל
- ניהול קבצים וספריות
- התקנת כלים באמצעות מנהלי חבילות
- עבודה עם שירותי רשת בסיסיים

תכנות בסיסי:
- פייתון - כתיבת סקריפטים, עבודה עם ספריות כמו requests
- ג'אווהסקריפט - הבנת קוד צד לקוח, DOM, אירועים
- שפת PHP - קריאת קוד שרת בסיסי

# דוגמה - סקריפט פייתון פשוט לבדיקת נקודות קצה
import requests

target = "https://example.com"
endpoints = ["/api/v1/users", "/api/v2/users", "/api/admin", "/swagger.json"]

for endpoint in endpoints:
    url = f"{target}{endpoint}"
    response = requests.get(url, verify=False)
    print(f"[{response.status_code}] {url}")

הבנת פרוטוקולים:
- פרוטוקול HTTP/HTTPS לעומק (כותרות, שיטות, קודי תגובה)
- מבנה בקשות ותגובות
- עוגיות וניהול סשן
- הבנה בסיסית של DNS


מה הופך את הקורס הזה לשונה מהקורס הבסיסי

גישה שונה

קורס בסיסי קורס מתקדם
חולשה בודדת בכל פעם שרשור חולשות מרובות
סביבות מעבדה פשוטות סביבות מציאותיות עם הגנות
ניצול ישיר וברור עקיפת מנגנוני הגנה (WAF, CSP, SameSite)
הבנה תיאורטית פרקטיקה מוכוונת באג באונטי
כלים בסיסיים אוטומציה וכלים מתקדמים
חולשות נפוצות חולשות נדירות ומורכבות

מבנה הקורס

הקורס בנוי מ-10 חלקים, כל אחד מתמקד בתחום שונה:

חלק 0 - הקדמה

  • דרישות קדם ומבנה הקורס (שיעור זה)
  • סביבת עבודה מתקדמת - הקמת מעבדות עם Docker
  • כלים מתקדמים ב-Burp Suite - תוספים, מאקרוים, וסקריפטים

חלק 1 - סריקות וחקירה מתקדמת

  • ניתוח JavaScript סטטי
  • סאבדומיין ו-Subdomain Takeover
  • מיפוי משטח תקיפה
  • חקירת API ומיפוי
  • אתגר CTF משולב

חלק 2 - תקיפת אותנטיקציה מתקדמת

  • תקיפת JWT מתקדמת (algorithm confusion, key injection)
  • עקיפת OAuth ו-SSO
  • תקיפת MFA ו-2FA
  • תקיפת סשן מתקדמת

חלק 3 - הזרקות מתקדמות

  • הזרקת SQL מתקדמת (second-order, out-of-band)
  • הזרקת NoSQL
  • הזרקת תבניות צד שרת - SSTI
  • הזרקת LDAP, XPath, ו-Header

חלק 4 - תקיפות צד לקוח מתקדמות

  • מתקפות XSS מתקדמות (mutation XSS, polyglot payloads)
  • עקיפת CSP (Content Security Policy)
  • תקיפת DOM מתקדמת (DOM clobbering, prototype pollution)
  • שיטות חדשות ב-CSRF ועקיפת SameSite

חלק 5 - תקיפות פרוטוקול HTTP

  • הברחת בקשות - HTTP Request Smuggling
  • מתקפות Cache Poisoning
  • מתקפות Host Header
  • הבדלי פרסור - HTTP Desync

חלק 6 - תנאי מרוץ ולוגיקה עסקית

  • מתקפות Race Condition
  • באגים בלוגיקה עסקית
  • תקיפות TOCTOU
  • ניצול מנגנוני תשלום ומלאי

חלק 7 - תקיפות צד שרת מתקדמות

  • דה-סריאליזציה מתקדמת (Java, PHP, Python, .NET)
  • SSRF מתקדם (עקיפת פילטרים, cloud metadata)
  • XXE מתקדם (out-of-band, blind)
  • פגיעויות בתצורת שרת

חלק 8 - עקיפת WAF

  • הבנת מנגנוני WAF
  • טכניקות עקיפה נפוצות
  • קידוד ופיצול מטענים
  • בניית מטענים מותאמים אישית

חלק 9 - שרשור חולשות ועולם אמיתי

  • מתודולוגיית שרשור חולשות
  • ניתוח דוחות באג באונטי אמיתיים
  • כתיבת דוחות מקצועיים
  • אתגר CTF מסכם

תוצאות מצופות

בסיום הקורס תוכלו:

  1. לזהות חולשות מורכבות שכלי סריקה אוטומטיים מפספסים
  2. לשרשר חולשות ברמת חומרה נמוכה לכדי תקיפה קריטית
  3. לעקוף מנגנוני הגנה כמו WAF, CSP, ו-SameSite cookies
  4. להשתתף בתוכניות באג באונטי ברמה מתקדמת
  5. לכתוב דוחות מקצועיים שמתארים חולשות בצורה ברורה ומלאה
  6. לבנות כלים מותאמים לבדיקות אבטחה ספציפיות
  7. להבין תקיפות ברמת פרוטוקול כמו הברחת בקשות ותנאי מרוץ

כלים נדרשים

כלים עיקריים

Burp Suite:
גרסת Community מספיקה לרוב השיעורים, אך גרסת Pro מומלצת מאוד עבור:
- Burp Collaborator (זיהוי out-of-band)
- סריקה אוטומטית
- שמירת פרויקטים
- ביצועים מהירים יותר ב-Intruder

Docker ו-Docker Compose:

# התקנת Docker ב-Ubuntu/Debian
sudo apt update
sudo apt install docker.io docker-compose-plugin
sudo usermod -aG docker $USER

פייתון 3 עם ספריות:

pip3 install requests beautifulsoup4 pwntools pycryptodome

כלי דפדפן:
- כלי הפיתוח של הדפדפן (F12)
- תוסף Wappalyzer לזיהוי טכנולוגיות
- תוסף FoxyProxy לניהול פרוקסי

כלים משניים

רשימת כלים נוספים שנתקין ונשתמש בהם במהלך הקורס:
- ffuf - סריקת תוכן ופרמטרים
- amass - מיפוי סאבדומיינים
- subfinder - גילוי סאבדומיינים
- nuclei - סריקת חולשות מבוססת תבניות
- sqlmap - ניצול SQLi אוטומטי (גרסה מתקדמת)
- httpx - בדיקת שרתי HTTP מרובים


פלטפורמות תרגול

PortSwigger Web Security Academy

הפלטפורמה המומלצת ביותר לתרגול. מכילה מעבדות אינטראקטיביות לכל נושא בקורס, מחולקות לרמות:
- Practitioner - רמה מתקדמת
- Expert - רמת מומחה

כתובת: https://portswigger.net/web-security

לאורך הקורס נפנה למעבדות רלוונטיות בכל נושא.

HackTheBox

פלטפורמה עם מכונות מלאות לתרגול. מכונות בקטגוריית Web מתאימות במיוחד לקורס:
- מכונות בדרגת קושי Medium ו-Hard
- אתגרי Web ייעודיים
- מרחב תרגול (Pwnbox) מוכן לשימוש

כתובת: https://www.hackthebox.com

TryHackMe

פלטפורמה עם מסלולי למידה מובנים. מסלולים רלוונטיים:
- Web Fundamentals (חזרה)
- Advanced Web Hacking
- Bug Bounty Path

כתובת: https://tryhackme.com

מעבדות מקומיות

נקים מעבדות מקומיות באמצעות Docker - נפרט על כך בשיעור הבא.


טיפים להצלחה בקורס

  1. תרגלו הרבה - כל שיעור מלווה בתרגילים. אל תדלגו עליהם
  2. קראו דוחות באג באונטי - אתר HackerOne Hacktivity הוא מקור מצוין ללמידה מהעולם האמיתי
  3. בנו מעבדה מקומית - הקימו סביבת תרגול עם Docker שתוכלו לחזור אליה
  4. תעדו הכל - רשמו פתקים על טכניקות שעובדות, מטענים שימושיים, וטריקים שגיליתם
  5. היו סבלניים - תקיפות מתקדמות דורשות זמן, חשיבה יצירתית, וניסוי וטעייה