פרטי הקורס
שיעור 1: מהי בדיקת חדירה ומדוע היא חשובה
0/1
שיעור 2: סוגי בדיקות חדירה
0/1
מבוא לבדיקות חדירה
פרטי השיעור

. הקדמה על סוגי בדיקות חדירה

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

2. בדיקות חיצוניות (External Penetration Testing)

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

2.1 טכניקות בבדיקות חיצוניות:
  • סריקות פורטים: שימוש בכלים כמו Nmap כדי לבדוק אילו פורטים פתוחים ברשת.
  • שימוש ב-SQL Injection: ניסיון להחדיר פקודות SQL ביישומי ווב לצורך השגת גישה לא מורשית או גניבת מידע.
דוגמה לקוד מתקפה פשוטה עם SQL Injection:

 

SELECT * FROM users WHERE username = 'admin' -- ' AND password = 'password';

 

הערה: על-מנת להגן על מערכת מפני התקפות מסוג זה, חשוב להשתמש בהכנסת נתונים מאובטחת (Prepared Statements) ובקרות גישה.

2.2 כלים לבדיקות חיצוניות:
  • OWASP ZAP: כלי לבדיקה של יישומי ווב וזיהוי פרצות.
  • Burp Suite: פלטפורמה רבת עוצמה לניתוח תעבורת HTTP ולניצול פרצות ווב.

3. בדיקות פנימיות (Internal Penetration Testing)

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

3.1 טכניקות בבדיקות פנימיות:
  • שימוש במתקפות על רשתות מקומיות (LAN): ניסיון לשבש את התקשורת בתוך הרשת הפנימית על-ידי שימוש בכלים כמו Ettercap להתקפות Man-in-the-Middle (MiTM).
  • ניתוח וניצול תעבורת רשת: שימוש בכלים כמו Wireshark לניתוח תעבורת הרשת.
דוגמה לסקריפט ב-Python לניתוח תעבורה:

 

import socket

def sniff_packets(interface="eth0"):
    sock = socket.socket(socket.AF_PACKET, socket.SOCK_RAW, socket.ntohs(0x0003))
    sock.bind((interface, 0))
    while True:
        raw_data, addr = sock.recvfrom(65535)
        print("Packet Received:", raw_data)

sniff_packets()

    • פתרון הגנה: שימוש ב-Prepared Statements וטכניקות לסינון קלט מהמשתמש.
  • תקיפת XSS (Cross-Site Scripting)
    • הסבר: תוקף מחדיר קוד JavaScript זדוני לדפדפן המשתמש דרך אתר ווב, מה שמאפשר גניבת קובצי Cookie או ביצוע פעולות בשמו של המשתמש.
    • דוגמה:
      
      
      <script>alert('XSS');</script>
      

 

    • הגנה: סינון ואימות קלטים, הצפנה והגנה על תכנים רגישים.
  • מתקפת פישינג
    • הסבר: מתקפה זו מנצלת אימיילים או הודעות כדי לגרום לקורבנות למסור מידע רגיש.
    • דוגמה לכלי: Social-Engineer Toolkit (SET) המאפשר יצירת קמפיינים לפישינג.
  • Brute Force על סיסמאות
    • הסבר: תוקף מנסה לנחש סיסמאות על ידי הפעלת מתקפה אוטומטית.
    • דוגמה לכלי Hydra:

hydra -l admin -P /path/to/passwords.txt example.com http-post-form "/login.php:user=^USER^&pass=^PASS^:F=incorrect"

    • הגנה: הגבלת ניסיונות כניסה ונעילת חשבונות לאחר מספר ניסיונות כושלים.

2. בדיקות פנימיות (Internal Penetration Testing)

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

2.1 דוגמאות למתקפות בבדיקות פנימיות:

  1. Man-in-the-Middle (MiTM) Attack
    • הסבר: תוקף מתמקם בין שני צדדים בתקשורת ומאזין לתעבורת הנתונים.
    • כלי מומלץ: Ettercap
    • דוגמה לקוד ב-Python:

from scapy.all import *
def mitm(pkt):
    if pkt.haslayer(TCP):
        print(pkt.show())
sniff(filter="tcp", prn=mitm)

 

  • DNS Spoofing
    • הסבר: תוקף משנה את תוצאות ה-DNS במטרה להפנות משתמשים לאתרים זדוניים.
    • כלי: Ettercap עם מודול DNS Spoofing
  • גישה ללא הרשאה לשיתוף קבצים (Unauthorized File Sharing Access)
    • הסבר: ניסיון גישה לשיתופים רגישים כדי לשאוב מידע.
  • תקיפות על שירותים פנימיים (Internal Services Exploitation)
    • דוגמה לכלי Metasploit:

use exploit/windows/smb/ms17_010_eternalblue
set RHOST <target-ip>
exploit

 

בדיקות ממוקדות (Targeted Penetration Testing)

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

3.1 דוגמאות למתקפות בבדיקות ממוקדות:

  1. תקיפת אפליקציות ווב ייחודיות
    • הסבר: הבדיקה מתמקדת באפליקציות ווב קריטיות שמותקנות בארגון.
    • דוגמה לכלי: Burp Suite
    • שימוש בכלי Burp Suite לניתוח בקשות HTTP:
      1. הפעלת המודול Intruder כדי לבדוק הזנה של נתונים רגישים.
      2. ניתוח הקוד התגובה והחזרת הפניות זדוניות.
  2. בדיקות על תשתיות IoT
    • כלי מומלץ: Shodan
    • הסבר: חיפוש וניתוח מכשירי IoT המחוברים לרשת הארגון, זיהוי גרסאות פגיעות וניצול חולשות.
    • דוגמה לחיפוש ב-Shodan:

 

    • תוצאה: איתור שרתים ומכשירים רגישים.
  • בדיקות אבטחת נתונים במערכות CRM
    • הסבר: בדיקות שנועדו לוודא את שלמות ואבטחת המידע ביישומים המנהלים נתוני לקוחות ומסחר.
    • כלי: שילוב של סריקות עם SQLmap לבדיקה של חדירות SQL.
  • בדיקות תשתיות קריטיות
    • דוגמה למתקפות על פרוטוקולים ישנים: בדיקות על פרוטוקול SMB (Server Message Block) המאפשרות ניצול פרצות ישנות.
    • שימוש ב-Metasploit:

use auxiliary/scanner/smb/smb_version
set RHOSTS 192.168.0.1-255
run

    • מטרת הבדיקה: זיהוי שרתים ישנים ורגישים.
  1. בדיקות ניהול גישה והרשאות
    • הסבר: ניסיון לעקוף בקרות גישה ולהגיע למידע רגיש על ידי התחברות עם הרשאות נמוכות.
    • כלי מתאים: [Burp Suite] עם מודול Authorization Analyzer לזיהוי גישות לא מורשות.

4. בדיקות Black Box

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

4.1 דוגמאות למתקפות בבדיקות Black Box:

  1. סריקות רשת אגרסיביות עם Nmap
    • שימוש בכלי Nmap עם אפשרויות סריקה מרובות:

nmap -A -T4 -v example.com

 

    • תוצאה: הצגת שירותים, גרסאות ומידע מפורט על כל שירות פועל.
  • תקיפות Brute Force
    • כלי מומלץ: Hydra
    • דוגמה להפעלת מתקפה:

hydra -l admin -P /path/to/passwords.txt example.com http-get /login

 

    • מטרה: ניסיונות חוזרים של כניסה עם סיסמאות.
  • ניצול פגיעויות Web Application
    • כלי: OWASP ZAP
    • תהליך: סריקת יישומי ווב, ניתוח חולשות וניצול פגיעויות כמו CSRF ו-XSS.
  • הנדסה חברתית ומתקפות פישינג
    • כלי מתאים: SET (Social Engineer Toolkit)
    • הסבר: שימוש בתקשורת בין-אישית כדי לגרום למשתמשים לחשוף מידע רגיש.
  • תקיפות DNS ו-Subdomain Enumeration
    • שימוש בכלי: Sublist3r להרחבת שמות דומיין ומציאת שירותים נוספים.
    • דוגמה להרצת כלי:

python sublist3r.py -d example.com

 

    • מטרת הבדיקה: איתור דומיינים משניים וכתובות זדוניות שניתן לנצל.

5. בדיקות White Box

מטרת הבדיקות: תוקף שמקבל גישה מלאה לתשתיות, קוד מקור ותצורת רשת. בדיקות אלו מאפשרות זיהוי חולשות עמוקות יותר ומקיפות את המערכת מזווית של ידע פנימי.

5.1 דוגמאות למתקפות בבדיקות White Box:

  1. בדיקות על קוד מקור עם Static Analysis Tools
    • כלי מומלץ: SonarQube
    • הסבר: ניתוח קוד לזיהוי חולשות כמו שימוש לא בטוח בקלטים.
  2. בדיקות אבטחת API
    • שימוש בכלים כמו Postman ו-Burp Suite לבדיקה של קריאות API זדוניות והחדרת פקודות.
  3. הנדסה הפוכה על אפליקציות דסקטופ
  4. בדיקות תשתיות ענן עם כלים מתקדמים
  5. בדיקות שילוב בקרות גישה ואימות
    • שימוש במתודות מתקדמות: ניתוח תצורת גישה במערכות ותהליכי אימות.

סיכום השיעור

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

 

צפיות מבקרים: 6