BLUEBORNE - תקיפה אלחוטית נגד ציוד עם ממשק Bluetooth
מאת:
מערכת Telecom News, 13.9.17, 19:10
לאחרונה פורסמו פרטים לגבי תקיפה נגד ממשק Bluetooth להלן"BT", ממשק פופולרי המשמש לתקשורת אלחוטית קצרת טווח במגוון רחב של ציוד קצה כגון מחשבים ניידים, סמארטפונים וטאבלטים ויחידות ייעודיות מסוגים שונים. מתאר כללי של התקיפה, סקירת הפרוטוקולים הפגיעים, תיאור 8 התקיפות השונות נגד אנדרואיד, אפל, חלונות, לינוקס והמלצות לפעולה.
גורמים שונים מעריכים את מספר פריטי הציוד הכוללים ממשק זה ב-5 עד 8 מיליארד פריטים בכל רחבי העולם.
התקיפה פועלת באמצעות תקשורת אלחוטית נגד מגוון רחב של התקנים ומערכות הפעלה, ואינה מחייבת צימוד (
Pairing) של הציוד המותקף עם הציוד התוקף, וכן אינה מחייבת, שהציוד המותקף יהיה במצב בו הוא ניתן לגילוי (
Discoverable). התקיפה גם אינה מצריכה כל פעולה מצד המשתמש בציוד המותקף.
לתקיפה מספר וריאנטים המאפשרים, כתלות במערכת ההפעלה המותקפת, החל מהרצת קוד מרחוק
RCE –
Remote Code Execution על הציוד המותקף, עבור לתקיפת
MITM -
Man In The Middle המאפשרת שליטה על התקשורת אל הציוד המותקף, וכלה בזליגת מידע.
הפתרון המיידי לתקיפה זו הוא עדכון מערכת ההפעלה. משתמש שברשותו ציוד הכולל מערכת הפעלה, שעבורה לא קיים עדיין עדכון, יכול להגביל חשיפתו כנגד תקיפה זו באמצעות שימוש מוגבל ומושכל בממשק
BT רק כאשר יש בו צורך, וכיבוי הממשק כאשר אינו בשימוש.
מתאר כללי של התקיפה
משתמשים רבים משאירים את ממשק ה-
BT בציוד שלהם מופעל תמידית, משום שהדבר מאפשר להם קישור קל ופשוט לסוגים רבים של ציוד הנמצא בשימוש באופן יומיומי כגון אוזניות, מקלדות וכד'.
ההנחה היא, שמאחר ובדרך כלל נדרש שלב של צימוד (
Pairing) בין 2 פרטי ציוד המתקשרים באמצעות
BT, ומאחר שבדרך כלל רק בשלב הצימוד הציוד נמצא במצב, שבו הוא ניתן לגילוי (
Discoverable), הרי שניתן להשאיר קישור זה פעיל באופן קבוע.
החוקרים מצאו, שהנחה זו אינה נכונה, ושניתן לבצע את התקיפה גם כאשר אין צימוד בין התוקף למותקף, וגם כאשר הציוד במצב
Non-Discoverable. עצם העובדה שהממשק פעיל עלולה לאפשר את תקיפתו.
נמצא, שאחד מאמצעי ההגנה של הפרוטוקול, חשאיותה של כתובת החומרה של הציוד (
BDADDR, המקבילה לכתובת
MAC), מוגבלת, וניתן בדרך כלל לזהותה. אם הציוד משדר, ניתן למצוא את הכתובת שלו ב-
Headers של ה-
Packets, שאינם מוצפנים. אם הציוד אינו משדר כלל, ניתן בדרך כלל לנחש את הכתובת של ממשק ה-
BT מתעבורת ה-
WiFi, שהוא משדר, משום שהיצרנים התרגלו ליישם כתובת זהה ל
-2 הממשקים, או כתובת השונה רק בביט האחרון (
+1).
זיהוי כתובת החומרה של הציוד המותקף מאפשר לתוקף לשגר מסר גישוש (
Probe) אל הציוד המותקף, לזהות את מערכת ההפעלה בה הוא עושה שימוש, ולעשות שימוש באחת משיטות ההתקפה המפורטות לעיל.
סקירת הפרוטוקולים הפגיעים
ממשק
BT הוא ממשק מורכב מאוד, שמיישם שכבות רבות של פרוטוקולי תקשורת, שכל אחד מהם חושף סוג שונה של פגיעות. הרמות הנמוכות ביותר, הרמה הפיזית ורמת ה-
LINK, מיושמות בחומרה של רכיב ה-
BT, בעוד שאר הרמות מיושמות בתוכנה במערכת ההפעלה. רמות אלו והפרוטוקולים שהן מיישמות הן היעד לתקיפה זו.
פרוטוקול
L2CAP משמש לערוץ תקשורת אמין בממשק
BT, וניתן להשוותו לפרוטוקול
TCP.
פרוטוקול
SDP משמש לזיהוי השירותים השונים הזמינים בציוד
BT מסוים.
פרוטוקול
SMP משמש למימוש אמצעי האבטחה השונים הקיימים בממשק התקשורת של
BT, כגון הזדהות, הרשאות וצימוד.
פרוטוקול
BNEP מאפשר לעטוף תעבורת תקשורת מפרוטוקולים מוכרים כגון
ETHERNET ולשדר אותם בממשק
BT.
פרוטוקול
PAN מאפשר להגדיר פרופיל רשת לציוד. לרוב בצימוד
BT אחד הרכיבים יוגדר בפרופיל כשרת, והרכיב השני, כלקוח.
פרוטוקול
LEAP הוא ייחודי ליישום של
BT ע"י חברת אפל, ומאפשר שידור אודיו מציוד בעל הספק נמוך.
התקיפות השונות
החוקרים מצאו ופרסמו נכון לתאריך כתיבת מסמך זה 8 פגיעויות שונות נגד מערכות הפעלה שונות.
להלן פרטי התקיפות השונות וגרסאות מערכת ההפעלה הפגיעות:
אנדרואיד (כל הגרסאות שלפני עדכון האבטחה של ספטמבר 2017):
Information Leak Vulnerability (CVE-2017-0785)
תקיפה המנצלת פגיעות ברכיב
SDP ומאפשרת משלוח בקשות ייעודיות לציוד המותקף. כך, שבתשובה יתקבלו ביטים שונים מתוך הזיכרון של הציוד, שמכילים מידע המקל על ביצוע התקיפות האחרות כנגד מערכת ההפעלה.
Remote Code Execution Vulnerability #1 (CVE-2017-0781)
תקיפה כנגד שכבת
BNEP, שמאפשרת השחתת הזיכרון בתהליך וקבלת שליטה מלאה על הציוד.
Remote Code Execution Vulnerability #2 (CVE-2017-0782)
תקיפה זו דומה לתקיפה הקודמת, אך מתבצעת ברכיב ה-
PAN. הצלחה בתקיפה מאפשרת שליטה מלאה ברכיב המותקף.
Man in The Middle Attack (CVE-2017-0783)
תקיפה כנגד רכיב ה-
PAN, המאפשר לתוקף להגדיר בציוד המותקף ממשק רשת ולנתב את כל התעבורה דרך ממשק זה. באופן זה התוקף מקבל שליטה מלאה על תעבורת המותקף ויכול לנטר אותה או לשנותה כרצונו.
Windows (כל הגרסאות החל מ- Vista):
Man in The Middle attack (CVE-2017-8628)
התקיפה זהה בעקרונותיה לתקיפת
MITM במערכת אנדרואיד, ומאפשרת יצירת ערוץ תקשורת הנשלט במלואו על ידי התוקף.
לינוקס:
Information leak vulnerability (CVE-2017-1000250) (כל הגרסאות של BlueZ)
תקיפה נגד לינוקס הדומה מאוד בעקרונותיה לתקיפה נגד אנדרואיד, מתקיימת נגד רכיב ה-
SDP, ומאפשרת לגנוב פרטי מידע מתוך זיכרון הציוד, שעלולים לאפשר תקיפה מתקדמת יותר נגד מערכת ההפעלה.
A stack overflow in BlueZ (CVE-2017-1000251) (כל גרסאות ה- KERNEL החל מ-3.3-rc1)
פגיעות בפרוטוקול
L2CAP מאפשרת השחתת הזיכרון של התהליך והשגת שליטה מלאה על הציוד.
אפל (כל הגרסאות של iOS מ- 9.3.5 ומטה, כל הגרסאות של AppleTV, מ- 7.2.2 ומטה):
RCE in Apple’s Low Energy Audio Protocol - CVE-2017-14315
פגיעות בפרוטוקול
LEAP הייחודי לחברת אפל, מאפשרת הרצת קוד עוין ושליטה מלאה על הציוד.
קישורים נוספים
פרטים נוספים על מאפייני התקיפה השונים, כולל סרטוני הדגמה -
כאן.
מסמך טכני מפורט על פרטי הפגיעויות השונות -
כאן.
סקירה תמציתית של
הפגיעויות.
המלצות
למשתמש, שברשותו מערכת הפעלה עבורה הוצא עדכון כנגד תקיפה זו, מומלץ לעדכן את מערכת ההפעלה בהקדם האפשרי.
אנדרואיד
https://source.android.com/security/bulletin/2017-09-01
משתמשי ציוד מתוצרת גוגל יכולים לעדכן מיד כשגוגל ישחררו את העדכון החודשי. משתמשי ציוד מתוצרת אחרת צריכים להמתין לקבלת עדכון מהיצרן.
Windows
https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2017-8628
כלול בעדכוני מערכת ההפעלה שיצאו בספטמבר 2017.
אפל
מכשירים ששודרגו לגרסה 10 של
iOS אינם חשופים לפגיעות זו.
לינוקס
יצרני ההפצות השונות של לינוקס אמורים להפיץ עדכונים לפגיעות זו. יש לבדוק את אתר היצרן.
למשתמש. שלציוד שברשותו טרם הוצא עדכון ע"י היצרן, מומלץ לשקול שימוש מושכל בציוד באמצעות הפעלת ממשק ה-
BT רק כאשר נעשה בו שימוש בפועל, וכיבויו בכל זמן אחר.