הוזהר: למרות ההכרה בבעיה, OnePlus עדיין מדליף את ה-IMEI שלך כשאתה בודק אם יש עדכונים

טלפונים של OnePlus עם OxygenOS מדליפים את ה-IMEI של הטלפון שלך בכל פעם שהטלפון שלך מחפש עדכון. הטלפון משתמש בבקשת HTTP POST לא מאובטחת.

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

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

בזמנו, התחלנו ריר על השימוש של הטלפון ב-Snapdragon 801 עם צג 5.5 אינץ' 1080p, כמו גם על השותפות המפתה עם הסטארט-אפ החדש Cyanogen Inc. (מתוכם היו חובבי אנדרואיד מאוד מתרגש בגלל הפופולריות של CyanogenMod). ואז OnePlus הטילה את הפצצה הגדולה ביותר על כולנו - המחיר ההתחלתי של 299$. רק טלפון אחד אחר באמת הדהים אותי בגלל העלות-ביצועים שלו - ה-Nexus 5 - וה OnePlus One העיף אותו מהמים. אני זוכר שחובבי נקסוס רבים מתלבטים בין ביצוע שדרוג ל-OnePlus One או המתנה ליציאת הנקסוס הבא.

ה-OnePlus One תפס את תשומת הלב של מעריצי Nexus ששום טלפון אחר לא יכול היה לפתות

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


שני צעדים קדימה, צעד אחד אחורה

לזכותה של OnePlus ייאמר שהחברה הצליחה להצית מחדש את ההייפ מקיף את המוצרים שלה עם OnePlus 3. הפעם, OnePlus לא רק דאגה להתייחס לרבות מהתלונות שהיו לבודקים ולמשתמשים נגד ה-OnePlus 2, אלא אפילו עשתה מעל ומעבר בתחום טיפול בתלונות בדיקה מוקדמת ו שחרור קוד מקור למפתחי ROM מותאמים אישית. שוב, OnePlus יצרה מוצר משכנע מספיק כדי לגרום לי לשקול מחדש את ההמתנה לשחרור הטלפון הבא של Nexus, ולגרום לכמה מחברי הצוות שלנו לקנות אחד (או שתיים) לעצמם. אבל יש בעיה אחת שחלק מהצוות שלנו חוששים ממנה - התוכנה. אנחנו די מפוצלים לגבי האופן שבו אנו משתמשים בטלפונים שלנו - חלקנו חיים על הקצה המדמם ומבזקים ROM מותאמים אישית כמו Cyanogenmod 13 הלא רשמי של sultanxda עבור OnePlus 3, בעוד שאחרים מריצים רק את קושחת המניות במכשיר שלהם. בקרב הצוות שלנו, קיימת אי הסכמה לגבי איכות הגרסה שפורסמה לאחרונה בניית קהילה OxygenOS 3.5 (שאותו נחקור במאמר עתידי), אבל יש נושא אחד שכולנו מסכימים עליו: תמיהה מוחלטת על העובדה ש-OnePlus משתמש ב-HTTP כדי להעביר את ה-IMEI שלך תוך חיפוש עדכוני תוכנה.

שימו לב ל-IMEI (המתוקן) הכלול בגוף בקשת ה-HTTP POST

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

חבר צוות פורטל XDA ומנחה הפורום לשעבר, b1nny, גילה את הבעיה על ידי יירוט תנועת המכשיר שלו באמצעות מיטמפרוקסי ופרסמו על כך בפורומים של OnePlus בחזרה ב-4 ביולי. לאחר שנחפר עוד יותר במה שקורה כאשר ה-OnePlus 3 שלו חיפש עדכון, b1nny גילה ש-OnePlus אינו דורש IMEI חוקי להציע עדכון למשתמש. כדי להוכיח זאת, b1nny השתמש ב-a אפליקציית Chrome בשם Postman לשלוח בקשת HTTP POST לשרת העדכונים של OnePlus ולערוך את ה-IMEI שלו עם נתוני זבל. השרת עדיין החזיר את חבילת העדכון כצפוי. b1nny גילתה תגליות אחרות בנוגע לתהליך OTA (כגון העובדה ששרתי העדכונים משותפים עם Oppo), אבל החלק המדאיג ביותר היה העובדה שמזהה המכשיר הייחודי הזה הועבר HTTP.


אין עדיין תיקון באופק

לאחר שגילה את בעיית האבטחה, b1nny עשה את בדיקת הנאותות שלו וניסה ליצור קשר עם שניהם מנהלי פורומים של OnePlus ו נציגי שירות לקוחות שאולי יוכל להעביר את הנושא במעלה השרשרת לצוותים הרלוונטיים. מנחה אכן טען שההוצאה תועבר הלאה; עם זאת, הוא לא הצליח לקבל כל אישור שהנושא נבדק. כאשר הבעיה הובאה לראשונה לידיעת Redditors ב-/r/Android subreddit, רבים היו מודאגים אך היו בטוחים שהבעיה תיפתר במהירות. גם בפורטל XDA האמנו ששיטת ה-HTTP POST הלא מאובטחת המשמשת לפינג לשרת OTA לעדכון, תתוקן בסופו של דבר. הגילוי הראשוני של הבעיה היה ב-OxygenOS גרסה 3.2.1 של מערכת ההפעלה (אם כי זה יכול היה להתקיים בגרסאות קודמות כמו ובכן), אבל b1nny אישרה איתנו אתמול שהבעיה עדיין נמשכת בגרסה היציבה האחרונה של Oxygen OS: גרסה 3.2.4.

POST: 

User-agent: UA/ONEPLUS A3003/XXX/OnePlus3Oxygen_16.A.13_GLO_013_1608061823/V1.0.0_20150407

Content-Type: text/plain; charset=UTF-8

Host: i.ota.coloros.com

Connection: Keep-Alive

Accept-Encoding: gzip

Content-Length: 188

Raw

{"version":"1","mobile":"ONEPLUS A3003","ota_version":"OnePlus3Oxygen_16.A.13_GLO_013_1608061823","imei":"XXX","mode":"0","type":"1","language":"en","beta":"0","isOnePlus":"1"}

ANSWER:

Server: nginx

Date: Wed, 24 Aug 2016 18:20:24 GMT

Content-Type: application/json; charset=UTF-8

Connection: keep-alive

X-Server-ID: hz0231

No content

עם זאת, עם השחרור האחרון של בניית הקהילה OxygenOS 3.5, שוב היינו סקרנים לראות אם הבעיה נמשכת. פנינו ל-OnePlus בנוגע לנושא הזה ונאמר לנו על ידי דובר מהחברה שהנושא אכן תוקן. עם זאת, אחד מחברי הפורטל שלנו הבזיק את בניית הקהילה האחרונה והשתמש ב-mitmproxy כדי ליירט את תעבורת הרשת של OnePlus 3 שלו, ולהפתעתנו גילינו ש OxygenOS עדיין שלח IMEI בבקשת HTTP POST לשרת העדכונים.

POST http://i.ota.coloros.com/post/Query_Update HTTP/1.1. 

User-Agent: com.oneplus.opbackup/1.3.0

Cache-Control: no-cache

Content-Type: application/json; charset=utf-8

Host: i.ota.coloros.com

Connection: Keep-Alive

Accept-Encoding: gzip

Content-Length: 188

Raw

{"version":"1","mobile":"ONEPLUS A3000","ota_version":"OnePlus3Oxygen_16.X.01_GLO_001_1608221857","imei":"XXX","mode":"0","type":"0","language":"en","beta":"0","isOnePlus":"1"}

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


IMEI Leaks ואתה

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

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

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