GammaCyber

רשתות וסייבר: IP, TCP, HTTP, CIA Triad

יסודות המחשוב · 4–5 שעות

// סקירה

מה נלמד בשיעור הזה

אתה מקליד google.com ולוחץ Enter. בתוך פחות משנייה, עמוד אינטרנט מופיע. בפועל, מתרחשות עשרות פעולות מדויקות — פרוטוקולים, כתובות, חבילות נתונים, הצפנה. שיעור זה מלמד את הבסיס.

✓נושאי השיעור
  • מודל Client-Server — יוזם ומגיב
  • כתובות IPv4 ו-Subnetting (CIDR)
  • DNS — ספר הטלפונים של האינטרנט
  • מודל TCP/IP — 4 שכבות, Encapsulation
  • TCP לעומת UDP — אמינות מול מהירות
  • Ports ופרוטוקולים: HTTP, HTTPS, SSH
  • CIA Triad, Firewall, VPN, הצפנה
  • MAC Address ו-ARP Spoofing
מבחן הפרוטוקול המומצא בגאמא בוחן יכולת לנתח פרוטוקול חדש. מי שמבין TCP לעומק — יזהה דפוסים ויפתור מהר. כל שאלה ברשת מומצאת מבוססת על מה שנלמד כאן.
// פרק 1

מודל Client-Server

Client יוזם את הבקשה. Server ממתין לבקשות ועונה עליהן. זהו הבסיס של כל תקשורת רשת מודרנית — HTTP, DNS, SSH, FTP.

💡 אנלוגיה: מסעדה
אתה (Client) נכנס ויושב. המלצר (Server) ממתין לבקשות. אתה מבקש 'פיצה'. המלצר מביא. בקשה = Request. תשובה = Response. השרת לא יוזם — הוא רק מגיב.

מה קורה כשמקלידים google.com?

1. DNS Resolution → מה כתובת ה-IP של google.com? 2. TCP Handshake → לחיצת יד משולשת עם שרת Google (Port 443) 3. TLS Handshake → הצפנה, אימות Certificate 4. HTTP Request → GET / HTTP/1.1 5. Server Processing → Google מעבד ומכין תשובה 6. HTTP Response → HTML, CSS, JavaScript 7. Browser Rendering → בונה DOM ומציג
✏תרגול עצמי2 שאלות
שאלה א׳.1
מה הם Client ו-Server? מה ההבדל בתפקיד שלהם?
✓ תשובה: א) — Client יוזם (Browser, App, nslookup), Server מגיב (Apache, Nginx, DNS Server). כולם — HTTP, DNS, SSH — עובדים כך.
שאלה ב׳.7 [בינוני]
פקטת TCP. Flags=0x02. איזה Flag דלוק?
✓ תשובה: ב) SYN — TCP Flags: SYN=0x02(bit1), ACK=0x10(bit4), FIN=0x01(bit0), RST=0x04(bit2). 0x02 = SYN בלבד.
// פרק 2

כתובות IP: הכתובת הדואר של האינטרנט

כתובת IPv4 היא מספר 32 ביט, מוצג כ-4 מספרים מופרדים בנקודות. כל אוקטט = בייט אחד (0–255).

📝 דוגמה: 192.168.1.100
4 octets × 8 bits = 32 bits סה"כ. 2³² = כ-4.3 מיליארד כתובות אפשריות — כבר נגמרו! לכן IPv6.

Subnetting וCIDR

CIDRSubnet Maskכמה Hostsשימוש
/8255.0.0.016,777,214רשתות ענק
/16255.255.0.065,534רשתות גדולות
/24255.255.255.0254רשת ביתית טיפוסית
/25255.255.255.128126חצי רשת
/32255.255.255.2551 (host)כתובת ספציפית
✓כתובות חשובות לזכור
  • 127.0.0.1 = Loopback / localhost — 'המחשב עצמו'
  • 10.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12 = Private (RFC 1918)
  • 255.255.255.255 = Limited Broadcast
  • 8.8.8.8 = Google Public DNS
הרחבה חישוב Subnetting — דוגמאות ›
📝 רשת 192.168.1.0/24
Subnet Mask: 255.255.255.0. Host bits = 32-24 = 8. Hosts = 2⁸-2 = 254.
טווח: 192.168.1.1 – 192.168.1.254. Broadcast: 192.168.1.255
📝 192.168.10.150 / 255.255.255.128 (/25)
/25 → שני blocks: .0-.127 ו-.128-.255.
150 >= 128 → Network: 192.168.10.128. Hosts: .129-.254. Broadcast: .255.
האם 192.168.10.200 באותה רשת? כן! 200 ב-.129-.254.
✏תרגול עצמי3 שאלות
שאלה ב׳.1 [קל]
כמה ביטים יש בכתובת IPv4?
✓ תשובה: ב) 32 — IPv4 = 32 bits = 4 octets. 2³² = ~4.3 מיליארד כתובות. IPv6 = 128 bits.
שאלה ב׳.5 [קל]
מה ייתן 192.168.1.0/24? כמה Hosts?
✓ תשובה: ב) 254 — 2^(32-24)-2 = 256-2 = 254. פחות Network Address (192.168.1.0) ו-Broadcast (192.168.1.255).
שאלה א׳.3
מה המשמעות של /24 ב-CIDR? כמה Hosts אפשריים?
✓ תשובה: א) — /24 = 24 bits לNetwork, 8 bits לHost. 2⁸-2 = 254 Hosts (פחות Network Address ו-Broadcast).
// פרק 3

DNS: ספר הטלפונים של האינטרנט

DNS = Domain Name System — מערכת מבוזרת המתרגמת Domain Names לכתובות IP. בני אדם זוכרים שמות, מחשבים עובדים עם IP.

הרחבה תהליך DNS Resolution שלב אחרי שלב ›

כשהדפדפן צריך את ה-IP של google.com:

  1. בדיקת DNS Cache מקומי — אולי כבר יודע?
  2. שאילת Resolver (שרת DNS של ספק האינטרנט או 8.8.8.8)
  3. Resolver שואל Root DNS Server: 'מי אחראי על .com?'
  4. Root מפנה ל-TLD Server ל-.com
  5. .com TLD: 'google.com מנוהל על ידי שרתי DNS של Google'
  6. Resolver שואל שרתי Google: 'מה ה-IP של google.com?'
  7. תשובה: 142.250.185.14 — נשמרת ב-Cache לזמן TTL

סוגי DNS Records חשובים

Recordתפקידדוגמה
ADomain → IPv4google.com → 142.250.185.14
AAAADomain → IPv6google.com → 2607:f8b0:...
CNAMEAlias — שם → שם אחרwww.google.com → google.com
MXMail server לDomaingmail.com → aspmx.l.google.com
NSשרתי DNS אחראייםgoogle.com → ns1.google.com
PTRIP → Domain (Reverse)Reverse DNS lookup
! DNS Spoofing / Cache Poisoning ›

תוקף 'מרעיל' את DNS Cache עם תשובה שגויה → הקורבן מגיע לאתר מזויף (Phishing).

DNSSEC פותר: כל DNS Record חתום ב-Digital Signature. מרעיל Cache = חתימה לא תתאים.
✏תרגול עצמי3 שאלות
שאלה ב׳.4 [קל]
איזה פרוטוקול DNS משתמש בעיקרון?
✓ תשובה: ב) UDP port 53 — DNS = UDP port 53 לרוב (בקשה + תשובה קצרות). TCP port 53 = Zone Transfers ותשובות גדולות.
שאלה ב׳.8 [בינוני]
מה CNAME Record ב-DNS?
✓ תשובה: ד) CNAME = Canonical Name — www.example.com CNAME → example.com. ה-Resolver ממשיך לחפש עד A Record.
שאלה ב׳.10 [בינוני]
מה ה-TTL ב-DNS Record?
✓ תשובה: ג) Time To Live — TTL (שניות) = כמה זמן Resolver יכול לשמור ב-Cache. TTL=300 = 5 דקות. TTL=0 = אסור לCache!
🎯 דגש למבחן
DNS רץ מעל UDP — פרוטוקול חסר State: אין Handshake ואין אימות של הצד המשיב. לכן תוקף שמצליח לשלוח תשובה מזויפת עם ה-Transaction ID והפורט הנכונים לפני שרת ה-DNS האמיתי — "מרעיל" את המטמון (DNS Cache Poisoning), וכל הגולשים מופנים לשרת שלו. זו הסיבה שהוגרלו פורטי מקור אקראיים ופותח DNSSEC.
// פרק 4

TCP לעומת UDP: אמינות מול מהירות

TCP מבטיח שכל הנתונים יגיעו בסדר הנכון. UDP שולח ומשכח — מה שנאבד, נאבד. מתי בוחרים כל אחד?

Three-Way Handshake — לחיצת יד משולשת

Client Server │ │ │ ─── SYN (Seq=100) ──────► │ שלב 1: 'אני רוצה לתקשר' │ │ │ ◄── SYN-ACK (Seq=300, ── │ שלב 2: 'בסדר, אני מוכן' │ Ack=101) │ │ │ │ ─── ACK (Ack=301) ──────► │ שלב 3: 'מובן, מתחילים' │ │ │ ─── HTTP Request ────────► │ עכשיו שולחים נתונים!

TCP Flags — 6 הדגלים

Flagשםמשמעותמתי
SYNSynchronizeפתיחת ConnectionHandshake שלב 1 ו-2
ACKAcknowledgeאישור קבלהכמעט כל Segment לאחר Handshake
FINFinishסגירה מסודרתכשצד אחד מסיים
RSTResetסגירה פתאומיתConnection לא תקין, שגיאה
PSHPushשלח מיד לApplicationנתון שלא ממתין לBuffer
URGUrgentנתון דחוףנדיר בפועל
! SYN Flood Attack ›

תוקף שולח אלפי SYN packets ולא מסיים את ה-Handshake. השרת שומר State לכל SYN — נגמרים המשאבים → DoS.

Mitigation: SYN Cookies — שרת לא שומר State עד לACK.

מתי UDP עדיף?

מצבלמה UDP מנצחדוגמאות
Real-Time Video/Voiceאיבוד פקט אחד < עיכוב RetransmissionZoom, YouTube Live, VoIP
DNSבקשה קצרה + תשובה = 1 Datagramnslookup
GamingLatency קריטי יותר מאמינותCS:GO, Valorant
✏תרגול עצמי4 שאלות
שאלה א׳.5
מה ההבדל המרכזי בין TCP ל-UDP? מתי בוחרים כל אחד?
✓ תשובה: ב) — TCP: אמינות + סדר + Handshake. UDP: מהיר, בלי התחייבויות. ב-Zoom, עיכוב של 200ms גרוע מframe פגום — UDP מנצח.
שאלה ב׳.3 [קל]
מה ה-TCP Flag שנשלח ב-SYN Flood Attack?
✓ תשובה: ב) SYN — SYN Flood = שטיפת SYN packets ללא השלמת Handshake. ממלא את ה-Half-Open Connection Table.
שאלה ב׳.11 [בינוני]
UDP Header כולל:
✓ תשובה: ג) — UDP Header = 8 bytes. TCP Header = 20+ bytes. הפשטות של UDP היא מקור המהירות.
שאלה ב׳.16 [קשה]
Wireshark מציג TCP Segment: Seq=1000, Ack=5001, Len=200. מה ה-Ack הצפוי בתשובת השרת?
✓ תשובה: ב) 1200 — Client שלח Seq=1000, 200 bytes (בייטים 1000–1199). השרת מאמת קבלה: Ack = 1000+200 = 1200.
🎯 דגש למבחן
דגלי TCP (SYN, ACK, FIN, RST, PSH, URG) יושבים כביטים בודדים בבייט אחד בכותרת. בדיקה נעשית ב-AND ביטווייז: flags & 0x02 מזהה SYN, flags & 0x10 מזהה ACK, ו-flags & 0x12 == 0x12 מזהה SYN-ACK. הדלקת דגל נעשית ב-OR: flags |= 0x01. זו הדרך שבה סורקים כמו nmap מזהים פורט פתוח.
// פרק 5

Ports ופרוטוקולי שכבת האפליקציה

Port = מספר 16 ביט (0–65535). IP מזהה מחשב, Port מזהה שירות על המחשב. IP = כתובת בניין, Port = מספר דירה.

PortפרוטוקולTransportתיאור
22SSHTCPSecure Shell — גישה מאובטחת מרחוק
53DNSUDP (+TCP)Domain Name Resolution
80HTTPTCPWeb לא מוצפן
443HTTPSTCPWeb מוצפן (HTTP over TLS)
445SMBTCPFile Sharing ב-Windows (WannaCry!)
3389RDPTCPRemote Desktop ב-Windows

HTTP Methods ו-Status Codes

Methodמה עושהשימוש
GETמבקש משאבטעינת עמוד, חיפוש
POSTשולח נתונים לשרתLogin, Submit Form
PUTמחליף משאבעדכון מלא
DELETEמחיקת משאבמחיקה
קודמשמעותדוגמות
2xxהצלחה200 OK, 201 Created
3xxRedirect301 Moved Permanently, 302 Found
4xxשגיאת Client401 Unauthorized, 403 Forbidden, 404 Not Found
5xxשגיאת Server500 Internal Server Error

HTTPS ו-TLS

HTTPS = HTTP over TLS. TLS מספק: הצפנה (Encryption), אימות (Certificate) ושלמות (Integrity). HTTP שולח הכל כטקסט גלוי — כל Router בדרך יכול לקרוא!

✏תרגול עצמי4 שאלות
שאלה ב׳.2 [קל]
מה ה-Port של HTTPS?
✓ תשובה: א) 443 — HTTP=80, HTTPS=443, SSH=22, DNS=53. <1024 = Well-Known Ports.
שאלה ב׳.6 [בינוני]
מה HTTP Status Code 403 אומר?
✓ תשובה: א) 403 Forbidden — 401=Unauthorized (צריך Login), 403=Forbidden (מזוהה אבל חסום), 404=Not Found. ההבדל קריטי!
שאלה ב׳.12 [בינוני]
HTTPS מגן מפני:
✓ תשובה: ג) — HTTPS מצפין התעבורה. Router בדרך לא יכול לקרוא. עם Certificate תקין — גם לא ניתן להתחזות לשרת.
שאלה ב׳.20 [קשה]
HTTP Request: POST /login עם body username=admin&password=admin. מה הבעיה ב-HTTP (לא HTTPS)?
✓ תשובה: ג) — HTTP = Plain Text. POST body קריא לכל מי שיירט. זו הסיבה שLogin חייב HTTPS — ב-HTTPS הbody מוצפן.
// פרק 6

אבטחת מידע בסיסית: CIA Triad

לפני שמדברים על התקפות — צריך מסגרת מחשבתית. ה-CIA Triad היא המסגרת הנפוצה ביותר בתחום.

עיקרוןשםמשמעותדוגמה להפרההגנה
CConfidentiality (סודיות)מידע זמין רק למורשיםPassword Sniffing, Data Leakהצפנה, Access Control
IIntegrity (שלמות)מידע לא שונה ללא אישורMITM שמשנה נתוניםDigital Signatures, Hash
AAvailability (זמינות)שירות זמין כשנדרשDDoS AttackRedundancy, CDN

Firewall

Firewall מסנן תעבורת רשת לפי כללים. בודק כל Packet ומחליט: Allow או Block.

סוגשכבהמה בודק
Packet FilterNetwork (L3)IP src/dst, Port, Protocol
Stateful FirewallTransport (L4)State של Connection (SYN/ACK)
WAFApplication (L7)תוכן HTTP, SQL Injection, XSS
הרחבה הצפנה: Symmetric, Asymmetric, Hash ›
סוגכיצד עובדמפתחדוגמה
Symmetricאותו מפתח להצפנה ופענוח1 מפתח סודיAES
AsymmetricPublic להצפנה, Private לפענוחזוג מפתחותRSA, ECC
Hashפונקציה חד-כיווניתללא מפתחSHA-256, MD5
✏תרגול עצמי3 שאלות
שאלה ב׳.14 [בינוני]
Confidentiality מופרת כאשר:
✓ תשובה: א) — CIA: C=Confidentiality(סודיות), I=Integrity(שלמות), A=Availability(זמינות). Data Breach = C הופרה. שרת קורס = A הופרה.
שאלה ב׳.15 [בינוני]
מה TLS מספק בנוסף להצפנה?
✓ תשובה: ב) — TLS: Encryption + Authentication + Integrity. Certificate מאמת שהשרת הוא מי שהוא טוען להיות. HMAC מבטיח שלמות.
שאלה ב׳.17 [קשה]
nmap מציג: 80/tcp open, 443/tcp open, 22/tcp open. מה ניתן להסיק?
✓ תשובה: ב) — 80+443 = Web Server. 22 = SSH. Linux server. נחשוב: איזה גרסה? האם SSH מאובטח? אין root login?
// פרק 7

MAC Address ו-ARP Spoofing

MAC Address = כתובת חומרה ייחודית לכל כרטיס רשת — 48 ביט, 6 בייטים הקס. ARP מוצא MAC Address לפי IP.

ARP Request (Broadcast לכולם): 'מי יש לו IP 192.168.1.5?' → שלוח ל-FF:FF:FF:FF:FF:FF ARP Reply (Unicast): '192.168.1.5 כאן! MAC שלי: AA:BB:CC:11:22:33' ARP Table (Cache): המחשב שומר: 192.168.1.5 → AA:BB:CC:11:22:33
! ARP Spoofing = Man-in-the-Middle ›

תוקף שולח ARP Reply מזויף: 'אני 192.168.1.1 (ה-Router), ה-MAC שלי הוא XX:XX:XX'. הקורבן שומר ב-ARP Table. עכשיו כל תעבורה לRouter עוברת דרך התוקף.

HTTP — תוקף קורא הכל. HTTPS — מוצפן, תוקף רואה Domain בלבד.

SSLStrip: תוקף ב-MITM מוריד HTTPS ל-HTTP. Mitigation: HSTS — הדפדפן יודע מראש שsite תמיד HTTPS.
✏תרגול עצמי2 שאלות
שאלה ב׳.9 [בינוני]
ARP Spoofing מאפשר:
✓ תשובה: ד) MITM ברמת LAN — תוקף שולח ARP Reply מזויף → הקורבן שולח תעבורה לMAC של התוקף במקום לRouter. Man-in-the-Middle!
שאלה ז׳.8 [גאמא-סגנון]
ARP Table של מחשב מראה שתי רשומות שונות לאותו IP 192.168.1.1. מה חשוד?
✓ תשובה: ד) ARP Poisoning — ARP Table תקין: כל IP → MAC אחד. שתי רשומות לאותה IP = מישהו מזריק ARP Replies מזויפים. MITM!
// אתגר מעשי

אתגר מעשי — רשתות: כתובות IP

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

T1 · מתחיל 100 נק' ~10 דק' algorithmic
IPv4 → מספר 32-סיביות (עם ולידציה)
נתונה כתובת IPv4 כמחרוזת בפורמט dotted-quad. אם תקינה — החזר את ערכה כמספר שלם 32-סיביות (האוקטט השמאלי הוא הבייט המשמעותי ביותר). אם לא תקינה — החזר None. כתובת תקינה: בדיוק 4 אוקטטים, כל אחד ספרות עשרוניות בטווח 0–255, ללא אפסים מובילים (פרט ל-"0"), ללא רווחים או תווים זרים.
דוגמאות
ip_to_int('1.2.3.4') → 16909060
ip_to_int('255.255.255.255') → 4294967295
ip_to_int('256.0.0.1') → None
הפתרון נשמר מקומית ומשותף עם עמוד „כתיבת קוד”.
פתרון-ייחוס IPv4 → מספר 32-סיביות (עם ולידציה) ›
def ip_to_int(ip: str) -> int | None: parts = ip.split('.') if len(parts) != 4: return None val = 0 for p in parts: if not p.isdigit(): # תווים זרים / רווחים return None if len(p) > 1 and p[0] == '0': # אפסים מובילים return None n = int(p) if n > 255: return None val = (val << 8) | n return val
T2 · בסיסי 200 נק' ~18 דק' algorithmic
כתובת רשת ו-Broadcast מ-CIDR
נתונה נוטציית CIDR כמחרוזת "a.b.c.d/prefix" (למשל "192.168.1.10/24"). חשב והחזר צמד (network, broadcast) — כתובת הרשת וכתובת ה-broadcast, שתיהן כמחרוזות dotted-quad. ה-prefix בטווח 0–32. אם ה-CIDR פסול (IP לא תקין, prefix מחוץ לטווח, פורמט שגוי) — החזר None. רמז: mask = 32 סיביות שה-prefix העליונות בהן דלוקות; network = ip AND mask; broadcast = network OR (NOT mask).
דוגמאות
subnet('192.168.1.10/24') → ('192.168.1.0', '192.168.1.255')
subnet('1.2.3.4/32') → ('1.2.3.4', '1.2.3.4')
הפתרון נשמר מקומית ומשותף עם עמוד „כתיבת קוד”.
פתרון-ייחוס כתובת רשת ו-Broadcast מ-CIDR ›
def subnet(cidr: str) -> tuple[str, str] | None: if cidr.count('/') != 1: return None ip_s, pfx_s = cidr.split('/') if not pfx_s.isdigit(): return None pfx = int(pfx_s) if pfx > 32: return None ipv = ip_to_int(ip_s) # שימוש חוזר במשימה הקודמת if ipv is None: return None mask = ((0xFFFFFFFF << (32 - pfx)) & 0xFFFFFFFF) if pfx else 0 net = ipv & mask bc = net | (~mask & 0xFFFFFFFF) fmt = lambda v: '.'.join(str((v >> s) & 255) for s in (24, 16, 8, 0)) return (fmt(net), fmt(bc))
// סיכום

התמונה המלאה: מה קורה ב-google.com

1. BROWSER: מקלידים google.com 2. DNS: Browser → 8.8.8.8 → Root → .com TLD → ns.google.com תשובה: 142.250.185.14 (נשמר ב-Cache לTTL) 3. TCP HANDSHAKE (Port 443): Client → SYN → 142.250.185.14:443 Server → SYN-ACK → Client Client → ACK → Server 4. TLS HANDSHAKE: Exchange Certificates, Cipher Suite, Session Keys 5. HTTP REQUEST (מוצפן בTLS): GET / HTTP/1.1 | Host: www.google.com 6. HTTP RESPONSE: 200 OK | Content-Type: text/html | [HTML body] 7. TCP TEARDOWN: FIN → FIN-ACK → FIN → FIN-ACK 8. BROWSER: Parse HTML → DOM → Render
✓מה למדנו בשיעור 3
  • Client-Server: יוזם + מגיב. בסיס של HTTP, DNS, SSH
  • IPv4: 32 ביט, Dotted Decimal. CIDR /24 = 254 Hosts
  • DNS: שם → IP. Record types: A, CNAME, MX. TTL = Cache
  • TCP: אמין, Three-Way Handshake, Flags (SYN/ACK/FIN/RST)
  • UDP: מהיר, Header 8B, ללא אמינות — DNS, Video, Gaming
  • Ports: 22=SSH, 80=HTTP, 443=HTTPS, 53=DNS, 3389=RDP
  • HTTP: Methods (GET/POST), Status Codes (200/301/404/500)
  • HTTPS/TLS: הצפנה + אימות + Integrity
  • CIA Triad: Confidentiality + Integrity + Availability
  • ARP Spoofing = MITM ברמת LAN
🎯 חיבור לפרוטוקול המומצא בגאמא
פרוטוקול חדש שיינתן יכיל: Header עם Fields, Flags, Sequence Numbers, Acknowledgments. מי שמבין TCP — יזהה דפוסים מיד. SYN/ACK/FIN = Connection Management. Flags = bitwise AND לבדיקה. Checksum = בדוק חוקיות.
🎯 השיעור הבא
שיעור 4 — שפות תכנות: מ-Assembly ועד Python
✏תרגול סיום3 שאלות
שאלה ב׳.19 [קשה]
תוקף שולח חבילות עם Source IP=ה-IP של הקורבן לאתר גדול. מה הוא מנסה?
✓ תשובה: ג) IP Spoofing + Amplification — שלח UDP/DNS לשרת גדול עם src=Victim IP. שרת שולח תשובה גדולה לקורבן. תוקף שולח קטן, קורבן קולט גדול = DDoS Amplification.
שאלה ב׳.18 [קשה]
DNS Query לdomain עם TTL=0 משמעותו:
✓ תשובה: א) No Cache — TTL=0 = כל בקשה תגיע לDNS Server. שימוש: Geo-Load Balancing (תמיד IP עדכני לפי מיקום) או Security.
שאלה ז׳.9 [גאמא-סגנון]
Firewall Rule: DENY tcp 0.0.0.0/0 → 10.0.0.5:3389. מה כלל זה עושה?
✓ תשובה: א) — 3389 = RDP. DENY tcp ANY → 10.0.0.5:3389 = אסר RDP לשרת זה. הגנה מפני Brute Force על Remote Desktop.
שאלות תרגול ותשובות (7)

שאלה 1 · מה ההבדל בתפקיד בין Client לבין Server?

  • א. הלקוח יוזם את הבקשה והשרת מגיב
  • ב. השרת יוזם והלקוח מגיב
  • ג. שניהם יוזמים בו-זמנית
  • ד. הלקוח חזק יותר מבחינת מעבד
תשובה: א

Client יוזם (דפדפן, nslookup), Server ממתין ומגיב (Nginx, שרת DNS). כך פועלים HTTP, DNS ו-SSH.

שאלה 2 · מה עושה שרת DNS?

  • א. מצפין את התעבורה
  • ב. מתרגם שם דומיין לכתובת IP
  • ג. מחלק כתובות IP ברשת המקומית
  • ד. מנתב חבילות בין רשתות
תשובה: ב

DNS הוא "ספר הטלפונים" של האינטרנט וממיר שם כמו example.com לכתובת IP. חלוקת כתובות היא DHCP וניתוב הוא תפקיד הראוטר.

שאלה 3 · מדוע DNS פגיע ל-Cache Poisoning?

  • א. משום שהוא מוצפן ב-TLS
  • ב. משום שהוא רץ מעל UDP חסר State וללא אימות המשיב
  • ג. משום שהוא משתמש בפורט 443
  • ד. משום שהוא עובד רק ברשת מקומית
תשובה: ב

UDP אינו מקיים Handshake ואינו מאמת את הצד המשיב, ולכן תשובה מזויפת שמגיעה ראשונה עם ה-Transaction ID והפורט הנכונים נשמרת במטמון ומפנה גולשים לשרת של התוקף.

שאלה 4 · מהם שלושת שלבי ה-Three-Way Handshake ב-TCP?

  • א. SYN → SYN-ACK → ACK
  • ב. ACK → SYN → FIN
  • ג. SYN → FIN → RST
  • ד. PSH → ACK → URG
תשובה: א

הלקוח שולח SYN, השרת מחזיר SYN-ACK והלקוח מאשר ב-ACK. רק אז נפתח חיבור אמין. FIN ו-RST משמשים לסגירה.

שאלה 5 · כיצד בודקים בקוד אם דגל ה-ACK דלוק בבייט הדגלים של TCP?

  • א. flags == 0x10
  • ב. flags & 0x10
  • ג. flags | 0x10
  • ד. flags << 0x10
תשובה: ב

הדגלים הם ביטים בודדים באותו בייט, ולכן בודקים עם AND ביטווייז. השוואה ב-== תיכשל כשדגלים נוספים דלוקים, ו-OR דווקא מדליק את הביט.

שאלה 6 · מהם שלושת מרכיבי ה-CIA Triad?

  • א. Confidentiality, Integrity, Availability
  • ב. Control, Identity, Access
  • ג. Cipher, Integrity, Authentication
  • ד. Confidentiality, Isolation, Authorization
תשובה: א

סודיות (מי רשאי לראות), שלמות (שהמידע לא שונה) וזמינות (שהשירות פועל). מתקפת DDoS פוגעת בזמינות, דליפת מידע בסודיות.

שאלה 7 · מה תפקיד פרוטוקול ARP?

  • א. לתרגם שם דומיין ל-IP
  • ב. לתרגם כתובת IP לכתובת MAC ברשת המקומית
  • ג. להצפין תעבורת HTTP
  • ד. להקצות פורטים לתהליכים
תשובה: ב

ברשת המקומית המסירה נעשית לפי כתובת MAC, ולכן ARP מברר איזו כתובת פיזית מתאימה ל-IP. היעדר אימות ב-ARP מאפשר מתקפות ARP Spoofing.