ה-BankBot - סוס טרויאני הגונב פרטי כניסה לחשבונות בנק חזר לחנות Google Play
מאת:
מערכת Telecom News, 26.9.17, 14:54
הטרויאני, שתוקף מכשירי אנדרואיד וגונב פרטי כניסה לחשבונות בנק, עליו דווח בתחילת השנה, מצא את דרכו חזרה לחנות גוגל פליי, בצורה חמקנית יותר מאי פעם. איך זה עובד שלב אחר שלב? כיצד ניתן לנקות את המכשיר הנגוע? איך להישאר בטוחים?
הכירו את
BankBot: סוס טרויאני, שדולה פרטי כניסה לחשבונות בנק, שהתפתח לאורך השנה, והופיע מחדש בגרסאות שונות בתוך החנות של
Google Play ומחוצה לה. הגרסה, שזוהתה ע"י חברת האבטחה
ESET ב-
Google Play ב4.9.17 היא הראשונה מבין כולן, ששילבה בהצלחה את הצעדים האחרונים באבולוציה של
BankBot: טשטוש משופר של הקוד, פונקציונאליות מתוחכמת של הפעולה הזדונית במכשיר, ומנגנון הדבקה ערמומי המנצל לרעה את שירותי הנגישות (
Accessibility Service) של מערכת האנדרואיד.
שימוש לרעה בשירות הנגישות של מערכת האנדרואיד נצפה בעבר במספר טרויאנים שונים, רובם מחוץ לחנות
Google Play. ניתוחים, שבוצעו לאחרונה ע"י
SfyLabs ו-
Zscaler, אישרו את ההשערה, שהנוכלים המפיצים את וירוס ה-
,BankBot הצליחו להעלות ל-
Google Play אפליקציה עם פונקציונליות, שמנצלת את שירות הנגישות, אך ללא מטען של תוכנה זדונית לדליית פרטי בנק.
הגרסה הנוכחית, שכוללת מטען של נוזקה השואבת את פרטי הכניסה לחשבונות הבנק של הקורבן, הצליחה להתגנב לתוך
Google Play במסווה של משחק בשם
Jewels Star Classic (חשוב לציין, שהתוקפים עשו שימוש לרעה בשמה של סדרת משחקים פופולרית ולגיטימית בשם
Jewels Star, מבית מפתחת המשחקים
ITREEGAMER, ואין קשר בין מפתחת המשחקים לבין קמפיין זדוני זה).
חברת
ESET דיווחה לצוות האבטחה של
Google על האפליקציה הזדונית, שהותקנה ע"י קרוב ל-5,000 משתמשים והיא הוסרה מהחנות.
מהו BankBot?
זוהה ע"י
ESET ב- 26.12.16, ונותח לראשונה ע"י
Dr. Web.
BankBot הוא סוס טרויאני, שפעיל באנדרואיד וניתן לשליטה מרחוק, וביכולתו לאסוף פרטי בנק בעזרת טפסי התחברות מזויפים במספר אפליקציות, לשבש הודעות טקסט כדי לעקוף אימות דו-שלבי, ולהציג התראות דחיפה (
push notification) לא רצויות.
זמן קצר לאחר גילוי האפליקציות, שהפכו לטרויאניות עקב
BankBot בחנות האפליקציות
Google Play בתחילת 2017,
אומת, שמקורן של האפליקציות הזדוניות הוא בקוד מקור, שהפך ציבורי בפורומים מחתרתיים בדצמבר 2016. הזמינות הציבורית של הקוד הובילה לעלייה במספר ובתחכום של סוסים טרויאניים מתחום הבנקאות במכשירים סלולריים.
איך זה עובד?
ברגע שהמשתמש התמים מוריד את המשחק
Jewels Star Classic של מפתחת המשחקים
GameDevTony (תמונה 1), הוא מקבל משחק אנדרואיד כמו כל משחק, אך עם כמה תוספים חבויים - מטען של תוכנה זדונית לבנקאות, שאורב בתוך משאבי המשחק, ושירות זדוני הממתין להפעלה לאחר עיכוב קבוע מראש.
תמונה 1 - האפליקציה הזדונית כפי שהתגלתה ב-
Google Play
השירות הזדוני מופעל 20 דקות לאחר ההפעלה הראשונית של
Jewels Star Classic. המכשיר הנגוע מציג התראה המבקשת מהמשתמש לאפשר דבר הנקרא
"Google Service" (הערה: ההתראה הזדונית מופיעה ללא קשר לפעילותו של המשתמש באותו רגע, וללא קשר גלוי למשחק).
לאחר הלחיצה על מקש האישור, שהיא הדרך היחידה להעלים את ההתראה, המשתמש מועבר לתפריט הנגישות של האנדרואיד, שבו מנוהלים שירותים הכוללים אפשרויות נגישות. בקרב מספר שירותים לגיטימיים, מופיע שירות חדש בשם "
Google Service", שנוצר ע"י התוכנה הזדונית. לחיצה על השירות מציגה תיאור שנלקח מ
תנאי השירות המקוריים של
Google.
תמונה 2 - התראה המבקשת מהמשתמש לאפשר את השירות "
Google Service"
תמונה 3 - השירות "
Google Service" מופיע בקרב שירותי נגישות אנדרואיד.
תמונה 4 - תיאור לשירות הזדוני, שנלקח מתנאי השירות של
Google.
ברגע שהמשתמש מחליט להפעיל את השירות, תוצג בפניו רשימה של הרשאות נדרשות: לצפות בפעולות שלך, לאחזר תוכן חלונות, להפעיל חיפוש בעזרת מגע, להפעיל נגישות רשת משופרת ולבצע מחוות (תמונה 5).
לחיצה על אישור מעניקה את הרשאות הנגישות לשירות הנגישות של התכונה הזדונית. בהענקת הרשאות אלו, המשתמש נותן לתוכנית הזדונית יד חופשית, פשוטו כמשמעו, לבצע כל משימה, שתצטרך כדי להמשיך את פעילויותיה הזדוניות.
תמונה 5 - הרשאות הנדרשות להפעלת "
Google Service".
בפועל, לאחר אישור ההרשאות, המשתמש מאבד גישה למסך שלו לזמן קצר עקב "עדכון של
Google Service" - מיותר לציין, לא עדכון של
Google - שרץ ברקע (תמונה 6).
תמונה 6 – מסך המחביא פעילות זדונית
התוכנה הזדונית משתמשת במסך זה כדי להחביא את הצעדים הבאים שלה – ללחוץ מטעם המשתמש בעזרת הרשאות הנגישות, שהושגו קודם לכן. בזמן שהמשתמש ממתין לטעינת העדכון הפיקטיבי, התוכנה הזדונית מבצעת את המשימות הבאות:
- מאפשרת התקנה של אפליקציות ממקורות לא ידועים,
- מתקינה את BankBot מהנכסים (assets) ומפעילה אותו,
- מפעילה הגדרת מנהל מכשיר עבור 'BankBot
- מגדירה את BankBot בתור אפליקציית המסרונים ברירת המחדל,
- משיגה הרשאה להופיע מעל אפליקציות אחרות.
לאחר הביצוע המוצלח של משימות אלו, התוכנה הזדונית יכולה להתחיל לעבוד על היעד הבא שלה: גניבת פרטי כרטיס האשראי של הקורבן. בניגוד לגרסאות אחרות של
BankBot, בהן הטרויאני מתמקד על רשימה נרחבת של אפליקציות בנק מסוימות ומחקה את טפסי ההתחברות שלהן כדי לאסוף את פרטי ההתחברות שהוזנו, גרסה זו מתמקדת על
Google Play באופן בלעדי - אפליקציה שכל משתמש אנדרואיד התקין מראש במכשירו.
ברגע שהמשתמש מפעיל את האפליקציה של
Google Play, ה-
BankBot מצטרף ומופיע מעל האפליקציה הלגיטימית עם טופס מזויף המבקש את פרטי כרטיס האשראי של המשתמש המבקש (תמונה 7).
תמונה 7 - טופס מזויף שמבקש את פרטי כרטיס האשראי של המשתמש
במידה והמשתמש נופל בפח ומזין את פרטי כרטיס האשראי שלו בטופס המזויף, התוקפים ניצחו למעשה. עקב העובדה, ש-
BankBot הגדיר את עצמו בתור אפליקציית המסרונים ברירת המחדל, ביכולתו לשבש את כל תקשורת המסרונים העוברת במכשיר הנגוע. זה מאפשר לתוקפים לעקוף אימות דו-שלבי מבוסס-מסרונים בחשבון הבנק של הקורבן - המכשול הפוטנציאלי האחרון בינם לבין כספו של הקורבן.
מה הופך אותו למסוכן כל כך?
בקמפיין זה, הנוכלים הרכיבו ערכה של טכניקות, שהפכו יותר ויותר פופולריות בקרב מפתחי התוכנות הזדוניות לאנדרואיד - ניצול לרעה של שירות הנגישות של מערכת האנדרואיד, התחזות ל-
Google, וקביעת מד-זמן המעכב את תחילת הפעילות הזדונית כדי להתחמק מאמצעי האבטחה של
Google.
ביחד, הטכניקות מקשות על הקורבן לזהות את האיום בזמן. מכיוון שהתוכנה הזדונית מתחזה ל-
Google וממתינה 20 דקות לפני הצגת ההתראה הראשונה, לקורבן יש סיכוי קטן מאוד לחבר בין הפעילות שלו לבין אפליקציית
Jewel Star Classic, שאותה הוריד לאחרונה.
מעבר לכך, השמות השונים והרבים, שבהם משתמשת התוכנה הזדונית לאורך תהליך הזיהום מסבכים במידה משמעותית את המאמצים לאתר ולהסיר אותה ידנית.
כיצד ניתן לנקות את המכשיר הנגוע?
במידה ואתם מורידים אפליקציות שונות ורבות מחנות האפליקציות
Google Play וממקומות אחרים, ייתכן ותרצו לבדוק, שלא הושטתם את ידכם אל התוכנה הזדונית הזאת.
בדיקה, שהמשחק
Jewels Star Classic אינו קיים במכשיר איננה בדיקה מספקת, מכיוון שהתוקפים משנים לעיתים קרובות את האפליקציות המנוצלות לרעה לטובת ההפצה של
BankBot. כדי לבדוק אם המכשיר שלכם נפגע, מ ומלץ לבדוק את הסמנים הבאים:
- נוכחותה של אפליקציה בשם "Google Update" (מופיעה בתמונה 8 ונמצאת תחת Settings > Application manager/Apps > Google Update)
- מנהל מכשיר פעיל בשם "System Update" (מופיע בתמונה 9 ונמצא תחת Settings > Security > Device Administrators).
- הופעה חוזרת ונשנית של ההתראה "Google Service" (מופיעה בתמונה 2).
תמונה 8 - האפליקציות הזדוניות במנהל האפליקציות (
Application manager)
תמונה 9 -
BankBot מוסווה בתור
System update תחת מנהלי מכשיר פעילים
במידה ומצאתם אחד מהסמנים, שהוזכרו למעלה, ייתכן והמכשיר שלכם נגוע בגרסה זו של
BankBot.
כדי לנקות את המכשיר שלכם באופן ידני, תצטרכו תחילה להשבית את זכויות מנהל המכשיר עבור "
System update", ולאחר מכן להסיר את ההתקנה של
"Google Update" והאפליקציה הטרויאנית הנלווית.
עם זאת, מציאת האפליקציה הטרויאנית, שהתחילה את הזיהום (במקרה שלנו,
Jewels Star Classic) מוכיחה כמשימה בעייתית, עקב העיכוב באורך 20 דקות, שנקבע לפעילות הזדונית, וכמו כן עקב העובדה, שהאפליקציה עובדת בהתאם לציפיות. כדי לזהות ולהסיר את האיום, על כל רכיביו, מומלץ להשתמש בפתרון אבטחה סלולרית אמין.
איך להישאר בטוחים?
מלבד השימוש בפתרון אבטחה אמין למובייל, ישנם דברים אחרים, שניתן לעשות כדי לא לפול קורבן לתוכנות זדוניות באנדרואיד:
- תמיד יש להעדיף חנויות אפליקציות רשמיות. למרות שהיא מלווה בבעיות משלה, Google Play משתמשת במנגנוני אבטחה מתקדמים. זה לאו דווקא המקרה בחנויות חלופיות.
- במידה ויש ספק לגבי התקנת אפליקציה, בדקו את הפופולריות שלה לפי מספר התקנות, דירוגים ותוכן הביקורות.
- לאחר שהפעלתם כל אפליקציה, שהתקנתם במכשיר הסלולרי שלכם, שימו לב להרשאות, שהיא מבקשת מכם. במידה ואפליקציה מבקשת הרשאות פולשניות, על אחת כמה וכמה אם הן קשורות בנגישות, יש לעבור עליהן בקפידה ובזהירות ולהעניק אותן רק במידה ואתם בטוחים לחלוטין באמינותה של האפליקציה.