BinaryVision

התקן שן כחולה כאסימון זהות

מאת בתאריך 10/09/11, תחת כללי

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

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

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

יתרונות:

  • קל לשימוש.
  • מאובטח\מורכב יותר.
  • ניתן להעברה\שימוש חוזר.
  • ניתן להסוואה.

חסרונות:

  • עלול להיגנב.
  • עלול להיות מועתק.
  • עלול להיהרס\להיאבד.

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

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

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

החל מפרוטוקול שן כחולה 2.1+EDR החלו להקשיח את מערך ההצפנה מה שהופך את הפרוטוקול למעט בטוח יותר מקודמו. תוספת האבטחה לפרוטוקול נקראת SSP – Secure Simple Pairing מה שמונע האזנה פסיבית לתקשורת או מתקפת האדם שבאמצע5 (MITM) אך עדיין מכילה כשלי אבטחה מולדים שעל-ידי הגדרה נכונה אפשר להימנע מהם. יש שימוש בצופן E0 שניתוח שלו הראה כי הוא ניתן לפריצה ב-238 חישובים (בעוד הוא באורך 2128). בסך הכל נראה שהפרוטוקול לא מציע מנגנון חזק דיו למנוע זיוף או העתקה של מידע סטטי.

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

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

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

  1. השתמשו במנהל שן כחולה שלכם על מנת להתאים את ההתקן למערכת (אני עושה שימוש ב-Blueman).
    Pairing with Blueman
  2. הורידו והתקינו את BlueProximity והתיאמו אליו את אותו התקן ממקודם (יש צורך רק בכתובת MAC וערוץ שאתם יודעים שהוא פתוח).
  3. עברו לטאב "Proximity Details" ובחנו את הנתונים, התאימו אותם לצרכים שלכם. הנתון "Measured atm" צריך להציג את המרחק נוכחי (לא במדוייק כמובן, קחו את ההצגה הנוכחית בחשבון בשביל לקבוע את הנתונים האחרים).
  4. עברו אל הטאב האחרון "Locking" והשתמשו ב-"User mode logging", הפנו לקובץ לוג מקומי, והתאימו את שינוי הפקודה לפיו. שנו את הפקודה של פתיחת המחשב "Unlocking command" לפקודה הבאה:
    echo "`date` Device in proximity (system will not auto unlock to it)" >> /home/itzhak/logs/blueproximity.log

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

הערת המחבר:

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

הערות שוליים:

1 בעברית מתורגם מ-Identity Token ולא מ-Security Token, האקדמיה ללשון העברית.
2 ניתן למצוא תוכנות דומות גם לחלונות, גוגל.
3 אני מוכרח לציין, מצאתי את עצמי כותב "לרוב" כאשר כתבתי את היתרונות והחסרונות, לכן היתרונות והחסרונות הם יחסיים בלבד.
4 פגיע להאזנה פסיבית ולמתקפת האדם שבאמצע7, הקוד PIN לרוב בנוי אך ורק מ-4 ספרות.
5 ישנו מאמר (התפרסם ב-2011) שטוען ש-SSP עדין פגיע למתקפת האדם שבאמצע.
6 האקרים לרוב לא אנשים פשוטים.
7 בכדי להצליח לבצע את מה שתואר במאמר של אבישי וול ויניב שקד, יש צורך בחומרה מיוחדת. יש לזכור בנוסף שניתן להגדיל את טווח הקליטה\שידור על-ידי אנטנה.

:, , , , , , , , , , , , , , , , , , , ,
8 תגובות:
  1. SV

    יש לך נוקיה,איזה דגם אני לא יודע.

    מצאתי בעזרת ההתחלה של כתובת הMAC שאומרת את היצרן של הפלאפון.

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

  2. iTK98

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

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

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

  3. Fate

    מאמר מצוין, נהנתי לקרוא.
    זיהוי לפי משהו ביומטרי נכלל תחת קטגוריה של Something You Have?
    כי אני מכיר זיהוי של Something You Know + Something You Have…
    שזה מסכם את כל ההזדהות של הSmart Cards למיניהם…
    אני לא יודע אם זה כולל ביומטרי, לדעתי זה קטגוריה אחרת…

  4. iTK98

    תודה.

    ולא, זיהוי ביומטרי שייך לקטגוריה של זיהוי על-פי מוטיב גופני שיחודי לך (ביו=חיים, מטריה=מדידה), בוויקיפדיה הם קראו לזה "inherence factors".

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

  5. אוהד

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

  6. iTK98

    כן רק חשוב לא לשכוח את הבלוטות' כבוי כשנכנסים לעבודה.

  7. אורח

    מאמר מעניין.
    לאיזה קטע הערה 4 מכוונת? זה נראה שהמקום שמפנה להערה 4 הלך לאיבוד.

  8. iTK98

    תודה על הפניית צומת לבי לטעות, תוקן.

השאר תגובה

מחפש משהו?

תשתמש בטופס למטה כדי לחפש באתר: