מתקפת “האיש שבאמצע”

מיהו האיש באמצע? ומה הוא רוצה ממכם? חגי יעקובסון מסביר מהן תקיפות Man in the Middle ואיך להתגונן מפניהן

קיימות דרכים רבות לפרוץ למערכת. בעוד חלקן מסתמכות על אמצעים טכניים, אחרות סומכות על הנדסה חברתית (social engineering), מתקפת Man in the Middle, “האיש שבאמצע” מסתמכת בדרך על כלל צירוף של השניים.

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

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

האיש באמצע לא מבצע מניפולצית על המידע אבל רושם הכל:

אבי – (כביכול מדבר עם גיא אבל בפועל מדבר עם בוב) מה המצב?

בוב – (המתחזה לאבי – מדבר ישירות עם גיא) מה המצב?

גיא – (כביכול מדבר עם אבי אבל בפועל מדבר עם בוב) הכל סבבה

בוב – מעביר את ההודעה של גיא לאבי.

אבי – (שוב, מדבר עם בוב) תעשה טובה ותיכנס למייל שלי  guy@mailserver.comהסיסמה היא Oif28$1dG# ותעביר למוטי בשמי את המצגת שעבדנו עליה.

בוב – מעביר לגיא את ההודעה של אבי בשלמותה.

גיא – סבבה ביי.

בוב – מעביר לאבי את הפרידה של גיא.

-סיום השיחה.

מה שהתרחש בפועל הוא שבידי בוב מידע חשוב ורגיש – המייל והסיסמה של גיא.

וריאציה אחרת של המתקפה היא יותר חמורה – מניפולציה על המידע,  נניח וגיא צריך להעביר למישהו כסף, השיחה תתנהל כך:

אבי – (כביכול מדבר עם גיא אבל בפועל מדבר עם בוב) הי, תרשום את החשבון שלי ותעביר לתוכו את השכר דירה בבקשה, החשבון הוא 123456 בבנק 99.

בוב – (המתחזה לאבי – מדבר ישירות עם גיא) מעביר לגיא את תוכן ההודעה אבל משנה את מספר החשבון למספר שלו, כך שההודעה שגיא יקבל היא:

הי, תרשום את החשבון שלי ותעביר לתוכו את השכר דירה בבקשה, החשבון הוא 212121 בבנק 77.

גיא מקבל את ההודעה מבוב לאחר המניפולציה ומבצע את הפעולה.

גיא – סבבה, העברתי את הכסף לחשבון 212121 בבנק 77.

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

גיא – סבבה, העברתי את הכסף לחשבון 123456 בבנק 99.

-סיום השיחה.

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

בטוחים שזה באמת פייסבוק?

ועכשיו במחשבית

מתקפת האיש באמצע יכולה להתבצע על ידי השתלטות על שרת ה-DNS המקומי או המרוחק והכנסת הכתובת של בוב במקום הכתובת של השרת האמיתי (לדוגמא, אם בוב יחליף את הכתובת של Gmail בכתובת שלו ויבצע את ההעברה). חשוב לזכור שפריצה לשרתי DNS היא יחסית מסובכת ודרך הרבה יותר פשוטה היא לנצל פרצת אבטחה בדפדפן ולקבוע פרוקסי ללא ידיעת המשתמש, או לחלופין להשתמש בסוס טרויאני כדי לערוך את קובץ ה-hosts במחשב המקומי ולהכניס את הכתובת של בוב במקום כתובת היעד. אגב, בשיטה זו השתמשה ה-iPhone dev team כדי לרמות את בדיקת תקינות גרסת החומרה של הiPhone באחת מהפריצות שלהם.

דרכים לגילוי והתגוננות

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

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

סיכום

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

חגי יעקובסון

מגיל צעיר שובר דברים (ומשתדל להרכיבם מחדש מבלי להשאיר ברגים בחוץ) משחק במשחקי מחשב עוד מימי הויק-20 והסגה מסטר סיסטם, בימים אלו נראה חורש על האקסבוקס-360.

הגב

2 תגובות על "מתקפת “האיש שבאמצע”"

avatar
Photo and Image Files
 
 
 
Audio and Video Files
 
 
 
Other File Types
 
 
 

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

סידור לפי:   חדש | ישן | הכי מדורגים
אליהו
Guest

משפט לא תקין:
התחזות זו מבוצעת על ידי כך שהאיש באמצע מעמיד פנים למעשה לכל אחד

כתבה מצוינת, כמו תמיד

Trust no one.
Guest

Barricade yourselves in your bedroom and order out for pizza but for the love of Linux don’t give out your credit card number!!

wpDiscuz

תגיות לכתבה: