המצאת פרוטוקול הזדהות "על המקום"

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

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

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

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

בואו ננסה לעשות ניתוח של האיומים:

  1. יכול להיות שלמי שהתקשר אלי לא קוראים "אריאל".
  2. יכול להיות שמי שהתקשר אלי לא באמת עובד בנטויז'יון.
  3. יכול להיות שמי שהתקשרה אליו היא לא באמת מנהלת החשבונות שלי

התשובה לאיום הראשון היא "אז מה?"

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

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

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

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

שחר

מאת

שחר שמש

מייסד ומנכ"ל "לינגנו ייעוץ קוד פתוח בע"מ" חבר ועד בעמותת "המקור" וסתם פעיל קוד פתוח ולינוקס

9 thoughts on “המצאת פרוטוקול הזדהות "על המקום"”

  1. מה שאמרת לי מזכיר את הבדיקה שעושים לחיילי הש.ג. אצלנו – לפעמים מתקשרים אליהם ואומרים להם ש"XYZ מאושר לכניסה" אבל לפי הנהלים הש.ג. חייב לנתק ולחייג בעצמו למספר ידוע ולשאול אותם אם הם התקשרו (אחרת מישהו שיודע את המספר הירוק יכול לאשר לעצמו כניסה)

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

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

  4. העניין הוא שאת הסיסמה לרוב אי־אפשר סתם להעתיק משדה הסיסמה. לכן אם שדה הסיסמה מופיע פעמיים (ואתם לא חכמים מספיק ולא מעתיקים אותו ממקום אחר) כנראה שהקלדתם אותו פעמיים. הדבר הזה לפעמים מצליח לבלבל אנשים: http://bash.org/?244321

    יש סיכוי יותר נמוך שזה יחול על כתובת דואר.

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

    סה"כ פרוטוקול אימות נחמד להתקשר חזרה. פשוט מאוד 🙂

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

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

    נציגי שירות אוהבים במיוחד להסתמך על המילה שלהם.

    (סליחה על הפלאג העצמי)

סגור לתגובות.