תתתת תתתתתתת תתתתתתתת תתתת תתת"ת תתתתת6 תתתת תתתתתת תתתתTCP/IP תתתתתת תת תתתתת
Jan 25, 2016
מתוכנתות במערכות הגנהתשס"ד חורף
6הרצאה
לרשתות מבואTCP/IPמודל
איומים על רשתות
הגנה - חורף תשס"ד - הרצאה 6 2
מבוא מחברות מספר האינטרנטרשתות גדולות דוגמת •
גדול של רשתות מקומיות.הרשתות המקומיות מבוססות על תשתיות פיסיות •
וכיו"ב.Ethernetשונות – קווי טלפון, רשתות gatewaysרשתות פיסיות שונות מקושרות בעזרת •
(routers). יש מספר ממשקים פיסיים.gatewayלכל •: למחשבים עם מספר ממשקים פיסיים הערה•
חייב gateway. כל multi-homed hostsקוראים .dual-homed hostלהיות לפחות
הגנה - חורף תשס"ד - הרצאה 6 3
השכבות מודלמחולק • הודעות לשליחת " ותהתוכניות תתי ל
שנקראות" תת. שכבותתוכניות מבצעת שכבה כל. משלה משימה
כל שכבה מקבלת שירותים מהשכבה שמתחתיה, •מספקת שירותים לשכבה שמעליה, ו"מדברת" עם
השכבה המקבילה במחשב השני.
: חלוקה לשכבות + TCP/IP בארכיטקטורת נתרכז•סט של פרוטוקולים לתקשורת בין מחשבים.
הגנה - חורף תשס"ד - הרצאה 6 4
של לשכבות TCP/IPהחלוקה
Media Access Control
Network Layer (IP)
Application Layer (telnet, ftp, emal,…)
Transport Layer (TCP,UDP)
הגנה - חורף תשס"ד - הרצאה 6 5
החבילה בשליחהעיבוד
ApplicationApplication Layer
ApplicationTCP/UDPIPMACMAC
ApplicationTCP/UDPIPInternet Layer
ApplicationTCP/UDPTransport Layer
הגנה - חורף תשס"ד - הרצאה 6 6
קבלה בהחבילהעיבוד
ApplicationApplication Layer
ApplicationTCP/UDPIPMACMAC
ApplicationTCP/UDPIPInternet Layer
ApplicationTCP/UDPTransport Layer
הגנה - חורף תשס"ד - הרצאה 6 7
Media Access Control (MAC)
. התפקיד• מקומית: רשת בתוך החבילה ניתובבחומרה הקשורים הפרטים בכל מטפלת השכבה
. הפיסית הרשת עם ובממשקסמך • על מתבצע ברשת )פיסית MACכתובת הניתוב
Ethernet 48בת ,) מחשב לכל ייחודית שהיא ביטים. המקומית הרשת בתוך
•. הפיסית ברשת ותלוי לרשת מרשת שונה הפרוטוקול•Gateways בד"כ מדברים מספר פרוטוקולי MAC.
הגנה - חורף תשס"ד - הרצאה 6 8
- ה Networkשכבתהע • המקור קרי:יהתפקיד ממחשב החבילה ניתוב
ברשתות ) נמצאים הם אם גם היעד למחשב.) שונות מקומיות
הניתוב בין רשתות פיסיות שונות מתבצע בעזרת •gateways.
קטע על מסלול החבילה ששייך לרשת פיסית אחת •. hop) נקרא gateways(למשל בין זוג
• , נתמקד אך זו לשכבה פרוטוקולים מספר קיימים. IP (Internet Protocol)ב-
הגנה - חורף תשס"ד - הרצאה 6 9
MAC
IP
MAC
IP
Gateway G2Gateway G1
MAC
IP
TCP UDP
Application
MAC
IP
TCP UDP
Application
Host A Host B
ברשתחבילה מעבר ה
הגנה - חורף תשס"ד - הרצאה 6 10
Internet Protocol
.IPכתובת הניתוב מתבצע על סמך •. סיביות32 באורך יאה IPכתובת – מספרים עשרוניים בצורה 4 מיצגים על ידי IPכתובת –
x.y.z.w.
unreliable מספק הנו IPהשירות ש-•.connectionlessו-
הגנה - חורף תשס"ד - הרצאה 6 11
- ה Transportשכבתמהשכבה: התפקיד• לאפליקציות תקשורת לספק
שמעליה.
• : עיקריים פרוטוקולים שני -UDP קיימים .TCPו –UDP (user datagram protocol) מספק שירות
connectionless, unreliable.–TCP (transport control protocol) מספק שירות
.reliable, connection-orientedשהוא
הגנה - חורף תשס"ד - הרצאה 6 12
לקוח- שרת•TCP-ו UDP שרת-לקוח הם פרוטוקולי..sessionבין השרת ללקוח מתנהל •התקשורת בין האפליקציות מתבצעת בעזרת •
.פורטים UDPבכל מחשב קיימות שתי סדרות של פורטים: •
. TCPו-בתוך כל חבילה כתובים פורט המקור ופורט היעד, •
והם מהווים חלק מכתובת המקור והיעד של החבילה ברמת האפליקציה.
הגנה - חורף תשס"ד - הרצאה 6 13
הפורט מושג. משלה פורט קיים סטנדרטית אפליקציה למשל: לכל
telnet – TCP 23, http – TCP 80.' וכו דוגמא:
:telnetעל-מנת לבצע של השרת, מתוך TCP 23הלקוח יפנה לפורט •
במחשב x>1023פורט פנוי כלשהו שמספרו הלקוח.
של הלקוח xהשרת ישלח תשובה לאותו פורט •(שמספרו מופיע בחבילה שהלקוח שלח).
הגנה - חורף תשס"ד - הרצאה 6 14
- ה socketמושג telnet sessions), כל ה-telnetבשרת (למשל •
מתנהלות מפורט אחד. על-מנת שניתן יהיה לנהל .sockets במקביל, משתמשים ב-sessionsמספר
בשרת ובלקוח.sockets מתאים זוג sessionלכל •
באופן חד-חד ערכי ע"י: sessionניתן לזהות כל • של המקור והיעד ומספרי הפורטים IPכתובת ה-
במקור וביעד.
הגנה - חורף תשס"ד - הרצאה 6 15
- ה המשך - socketמושג נפתח מתוך פורט חדש session: כל clientב-•
יחיד שמנהל socket. בכל פורט כזה יש 1023<.sessionאת ה-
על הפורט listenבשרת, האפליקציה מבצעת • sessionשלה. בכל פעם שמתקבלת בקשה ל-
זה.session חדש שינהל socketחדש, נוצר
הגנה - חורף תשס"ד - הרצאה 6 16
דוגמא•Client פותח 132.68.41.7 בכתובת telnet
session אל שרת telnet 49.41.89.3 בכתובת , socket. נוצר 1024מתוך פורט
(132.68.41.7,1024,49.41.89.3, 23) נוסף, מפורט telnet session פותח clientאותו •
socket. נוצר 1030)132.68.41.7,1030,49.41.89.3 ,23(
הגנה - חורף תשס"ד - הרצאה 6 17
האפליקציה שכבת
של המקור port ה-י, מספרIPת ה-וכתוב• מציינים )UDP או TCPוהיעד והפרוטוקול (
את האפליקציהדוגמאות :•
–FTP–HTTP–telnet–SMTP
הגנה - חורף תשס"ד - הרצאה 6 18
IP Datagramמבנה ה-Application DataTCP/UDP headerIP headerMAC header
•MAC header - מכיל .משתנה לפי המדיה הפיסיקלית .ואינפורמציה נוספת MACאת כתובת ה-
•IP header :תוכתוב מכיל IP המקבלוהשולח, של ,TTL) מספר הפרוטוקול הבא ,TCP/UDP (או אחר
•UDP/TCP header פורטים של מכיל מספרי את ה) ומספרים ack( מכיל בנוסף חווים TCP. מקבלהשולח וה
.סידוריים
איומים על רשתות מחשבים
הגנה - חורף תשס"ד - הרצאה 6 20
ובטיחות מחשבים רשתות
פוגעת בביטחון הרשת לאינטרנטהתחברות בין נוחות trade-offהמידע. קיים
המשתמש ברשת לבין בטיחות המידע.התחברות לרשת יוצרת נקודות תורפה, •
.שמיהן ניתן לפרוץ למערכת.ביזור נתונים ומשאבים•.שירותים רבים, מגוונים, ולא מוגנים•
הגנה - חורף תשס"ד - הרצאה 6 21
Internetworking Security Domains
external network
HUB
ServerServer
HUB
privatenetwork
HUB
Server
Server
Server
untrustednetwork
RouterRouter
RouterRouter
Internet
התקפות
IPהתקפות על
הגנה - חורף תשס"ד - הרצאה 6 23
IP spoofing : התחזות.מטרה••IP spoofing-הוא שינוי כתובת ה IP של host.במירב מערכות ההפעלה קל לשנות את כתובת •
.host של IPה- לשכנע את (A) יכול מתקיף IPע"י שנוי כתובת ה-•
המותקף שהחבילות שהוא שולח, מגיעות )Bממחשב אחר (
אבל – חבילות התשובה שהמחשב המותקף •שולח לא יגיעו אל המחשב המתחזה, אלא אל
.Bהמחשב
הגנה - חורף תשס"ד - הרצאה 6 24
IP spoofingלמה זה טוב –
IPלעיתים זיהוי משתמש מתבצע על סמך כתובת • ,rhost. עם הקבים rloginבלבד (
/etc/hosts.equiv.(
IPפעמים רבות תוקפים משנים את כתובות ה-•.שלהם בכדי שיהיה קשה להתחקות על עקבותיהם
הגנה - חורף תשס"ד - הרצאה 6 25
IP spoofing-ו cookies
– שימוש IP spoofingהגנה אפשרית נגד •.cookiesב-
מחרוזת session: נשלח ליוזם ה-הרעיון•בלתי ניתנת לחיזוי ונדרוש שיחזיר אותה.
הגנה - חורף תשס"ד - הרצאה 6 26
IP spoofingדו כיווני התחזות :מטרה••IP spoofing דו כיווני מאפשר למחשב מתחזה
שאיננה שלו, ואף IPלשלוח חבילות מכתובת לקבל אליה תשובה.
•IP spoofing דו כיווני הרבה יותר קשה לביצוע רגיל, מכיוון שהוא מצריך ביצוע IP spoofingמ-
של שינויים ברשת (בנתבים), ולא רק במחשב המתחזה.
•IP spoofing דו כיווני הינה התקפה שקשה מאוד להתגונן נגדה.
הגנה - חורף תשס"ד - הרצאה 6 27
UDP ועל TCPהתקפות על
הגנה - חורף תשס"ד - הרצאה 6 28
TCPהתקפות על חשופים להתקפות TCPשרתים שרצים מעל •
אינם UDPרבות, אליהן שרתים שרצים מעל חשופים. אנו נזכיר אחת מהן.
, מערכת TCP sessionהסיבה – כאשר מתחיל •ההפעלה מקצה משאבים.
TCPכל המשאבים נשארים מוקצים עד ש-• דקות במקרה של 2 סגור (Sessionמחליט שה-
TCP.(תקני רבים מדי יכולה TCP sessionsפתיחה של •
להפיל את המחשב.
הגנה - חורף תשס"ד - הרצאה 6 29
TCP - Three way hand shake
•TCP Session -מתחיל תמיד ב Three way hand shake.(לחיצת יד משולשת)
Synהלקוח שולח לשרת חבילה שבה סיבית ה-• Synדלוקה, השרת שולח חזרה חבילה שבה ה-
דלוקות, ובתגובה שולח הקליינט חבילה Ackוה- Ack דלוק. בהמשך, רק סיבית ה-Ackשבה ה-
תהיה דלוקה.מידע מתחיל לעבור רק החל מהחבילה הרביעית •
חדשים).TCP(או השלישית בתקני
הגנה - חורף תשס"ד - הרצאה 6 30
Syn AttackDoS (Denial of Service): מטרה• שולח המתקיף אל המותקף כמות Syn attackב-•
TCP sessionגדולה מאד של חבילות ראשונות ב- במטרה להפיל את המותקף.
sessions נגביל את מספר ה-:הגנה אפשרית• זהה.IPמורשים עם כתובת
.syn attack + IP spoofing :התקפה אפשרית•.cookies :הגנה אפשרית• Distributed DoS :התקפה אפשרית•)using zombies or victim machines(
הגנה - חורף תשס"ד - הרצאה 6 31
UDP ועל TCPהתקפות על
•UDP-חשוף יותר מה TCP להתקפות של IP spoofing חד כיווני. זאת משום
, המתקיף אינו יכול לסיים את TCPשב-.three way hand shakeה-
הגנה - חורף תשס"ד - הרצאה 6 32
התקפות על אפליקציותההתקפות תלויות באפליקציות. דוגמאות:
באגים.•).gets, scanfשימוש בפונקציות לא בטוחות (כמו •.debugשימוש במוד ••Session hijacking
עם זהות המשתמשsession keyפיתרון: לקשור –
•DoS •DDoS
הגנה - חורף תשס"ד - הרצאה 6 33
Cookie Poisoning) מאפשר httpפרוטוקול הגלישה ברשת (•
לשרת לשמור מידע אצל הלקוח דרך .cookiesמכניזם שנקרא
מאפשרת לשרת לשמור את cookiesה-•המצב של הגולש באתר (לדוגמא, סל
קניות) על הכונן הקשיח של המשתמש, כך שגם אם השרת נופל, או התקשורת
ניתקת, המידע עדיין קיים וזמין.
הגנה - חורף תשס"ד - הרצאה 6 34
Cookie Poisoning
יש לזכור כי העוגיות נשמרות •אצל המשתמש!
המשתמש יכול לשנות את •תוכנן וערכן של העוגיות.
Cookieלשינוי שכזה קוראים •Poisoning.
הגנה - חורף תשס"ד - הרצאה 6 35
SQL Injection•SQL הינה שפת תכנות למאגרי נתונים
)Databases.(בהרבה מקרים, שאילתות ברשת מועברות •
שמטפל בבקשה.SQLלמנגנון לא בודק SQLאם המכניזם שמפעיל את ה-•
שהשאילתא "תקינה" ניתן יהיה להעביר פקודות או הוראות.SQLל-
הגנה - חורף תשס"ד - הרצאה 6 36
Ping Flood IPפרוטוקול נוסף שקיים מעל שכבת ה-•
ICMP (Internetהינו פרוטוקול ה-Control Message Protocol) פרוטוקול .
, אך הוא נמצא מעט IPזה עוזר לשכבת ה-מעליה.
לשרת pingלדוגמא, כשאתם מריצים • מסוג ICMPמרוחק, אתם שולחים הודעות
ping אל השרת, ומחכים לתגובת pong ממנו.
הגנה - חורף תשס"ד - הרצאה 6 37
Ping Flood (המשך)
מערכות הפעלה רבות מקצות תורים •) נפרדים להודעות buffersוחוצצים (
ICMP כפי שהמערכת מפרידה בין הודעות TCP והודעות UDP.
בהרבה מקרים חוצצים אלה היו קטנים, • גרמו pingוע"י שליחת הרבה שאילתות
למילוי החוצצים, ולעיתים לקריסת מערכת ההפעלה שלו.