ברוכים הבאים לאזור הבלוגים הטכנולוגיים של ITsafe

קריאה מהנה

Telegram Account Takeover

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

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

באמצעות שיטת ההשתלטות שלנו היה ניתן לקבל גישה מלאה לחשבון ה-Telegram של המטרה וכך לגשת למידע האישי של המשתמש:

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


Technical part

ההשתלטות על הצ'ט של Telegram מעט שונה מההשתלטות על WhatsApp אותה פרסמנו בבלוג WhatsApp Account Takeover

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

שמנו לב שיש דו משמעות לקבצים שאנו מעלים ל-Telegram: בצ'ט אנו רואים את הקבצים לפי ה-header שלהם אך יחד עם זאת כאשר אנו פותחים אותם בלשונית נפרדת אנו רואים את הקובץ לפי ה-mime_type שלו.

כך שכאשר אנו מעלים קובץ אנו יכולים לראות את האובייקט t שנוצר לנו, אשר מכיל את כל הפרמטרים של הקובץ שהעלינו וביניהם:
mime_type
מה שנראה כך:
הפרמטר t
על מנת לבצע את אותה המתקפה שבצענו על whatsapp עלינו לגרום לקוד javascript שלנו לרוץ תחת ה-domain של telegram:
web.telegram.org
נעשה זאת על ידי לקיחת קובץ וידאו והוספת קוד ה-html שלנו תחתיו בצורה הבאה:
וידאו שמרונדר כקובץ html
כך בעצם הצ'ט של telegram יציג אותו כסרטון לכל דבר מכיוון שהוא מסתכל על ה-header של הקובץ:
וידיאו איך שהוא נראה ב-telegram עצמו
אך אם יפתחו את הסרטון בלשונית חדשה על ידי לחיצה ובחירה ב
open video in new tab
יתבצע קוד ה-html שלנו ובכך נגנוב את ה-localStorage שמכיל את מזהה החשבון בדיוק באותה הצורה כמו ב-whatsapp.

על מנת לגרום למישהו לפתוח את הסרטון/תמונה בחלון חדש ניתן פשוט להשתמש בטכניקות כגון הצגת חצי תמונה והטקסט:
Press on “open image in new tab” to see the full image
או להציג סרטון ולכתוב משהו כגון:
Press on “open video in new tab” to see the full video

לאחר שהמשתמש אכן יפתח את הקובץ שלנו בלשונית חדשה נקבל גישה מלאה לחשבון:
פריצה לחשבון משתמש

Share this post