ESET שיתפה פעולה עם המשטרה הפדרלית של ברזיל בניסיון לשבש את רשת הבוט גרנדוריירו. ESET תרמה לפרויקט על ידי מתן ניתוח טכני, מידע סטטיסטי ושמות דומיינים וכתובות IP של שרתי פקודה ושליטה ידועים (C&C). בשל ליקוי עיצובי בפרוטוקול הרשת של גרנדוריירו, חוקרי ESET הצליחו גם לקבל הצצה אל הוויקטימולוגיה.
המערכות האוטומטיות של ESET עיבדו עשרות אלפי דוגמאות גרנדוריירו. אלגוריתם יצירת התחום (DGA) בו השתמשה התוכנה הזדונית מאז אוקטובר 2020, מייצר תחום עיקרי אחד, ואופציונלי מספר תחומים בטוחים לכשל, ביום. ה-DGA הוא הדרך היחידה שבה גרנדוריירו יודע לדווח לשרת C&C. מלבד התאריך הנוכחי, ה-DGA מקבל גם תצורה סטטית - צפינו ב-105 תצורות כאלה נכון לכתיבת שורות אלו.
המפעילים של Grandoreiro השתמשו לרעה בספקי ענן כמו Azure ו-AWS כדי לארח את תשתית הרשת שלהם. חוקרי ESET סיפקו נתונים חיוניים לזיהוי החשבונות האחראים להקמת שרתים אלה. חקירה נוספת שבוצעה על ידי המשטרה הפדרלית של ברזיל הובילה ל זיהוי ומעצר של האנשים השולטים בשרתים אלה. בפוסט זה בבלוג, אנו מסתכלים כיצד השגנו את הנתונים כדי לסייע לאכיפת החוק לבצע את פעולת ההפרעה הזו.
רקע
גרנדוריירו הוא אחד מני רבים טרויאנים בנקאיים באמריקה הלטינית. הוא פעיל לפחות מאז 2017 וחוקרי ESET עוקבים אחריו מקרוב מאז. גראנדוריירו מכוון לברזיל ומקסיקו, ומאז 2019 גם לספרד (ראה איור 1). בעוד שספרד הייתה המדינה הממוקדת ביותר בין 2020 ל-2022, בשנת 2023 ראינו מעבר ברור של מיקוד לכיוון מקסיקו וארגנטינה, כשהאחרונה הייתה חדשה בגראנדוריירו.
מבחינה פונקציונלית, גראנדוריירו לא השתנה מאוד מאז האחרון שלנו פוסט בבלוג בשנת 2020. אנו מציעים סקירה קצרה של התוכנה הזדונית בסעיף זה וצולל אל השינויים המעטים, בעיקר לוגיקה חדשה של DGA, מאוחר יותר.
כאשר טרויאני בנקאי באמריקה הלטינית מתפשר בהצלחה על מכונה, הוא בדרך כלל מוציא בקשת HTTP GET לשרת מרוחק, ושולח מידע בסיסי על המכונה שנפרצה. בעוד שבניינים ישנים יותר של Grandoreiro יישמו את התכונה הזו, עם הזמן, המפתחים החליטו לבטל אותה.
Grandoreiro עוקב מעת לעת אחר חלון החזית כדי למצוא אחד ששייך לתהליך של דפדפן אינטרנט. כאשר נמצא חלון כזה ושמו תואם לכל מחרוזת מתוך רשימה מקודדת של מחרוזות הקשורות לבנק, אז ורק אז התוכנה הזדונית יוזמת תקשורת עם שרת ה-C&C שלה, ושולחת בקשות לפחות פעם בשנייה עד לסיום.
המפעיל צריך לקיים אינטראקציה ידנית עם המכונה שנפרצה כדי לגנוב את הכסף של הקורבן. התוכנה הזדונית מאפשרת:
- חסימת מסך של הקורבן,
- רישום הקשות,
- הדמיית פעילות עכבר ומקלדת,
- שיתוף מסך הקורבן, ו
- הצגת חלונות קופצים מזויפים.
גראנדוריירו עובר התפתחות מהירה ומתמדת. מדי פעם, אפילו ראינו כמה מבנים חדשים בשבוע, מה שמקשה על המעקב. כדי להדגים, בפברואר 2022, המפעילים של גרנדוריירו הוסיפו מזהה גרסה לקבצים הבינאריים. באיור 2 אנו מראים באיזו מהירות השתנה מזהה הגרסה. בממוצע, זו הייתה גרסה חדשה כל ארבעה ימים בין פברואר 2022 ליוני 2022. בפער של חודש בין 24 במאיth, 2022 ו- June 22nd, 2022 המשכנו לראות דגימות חדשות עם זמני הידור מתקדמים של PE, אך חסר להם מזהה הגרסה. ב-27 ביוניth, 2022 מזהה הגרסה השתנה ל V37 ולא ראינו את זה משתנה מאז, מה שמשאיר אותנו להסיק שהתכונה הזו בוטלה.
טרויאנים בנקאיים באמריקה הלטינית חולקים הרבה מאפיינים משותפים. Grandoreiro דומה לסוסים טרויאניים בנקאיים אחרים באמריקה הלטינית, בעיקר בזכות פונקציונליות הליבה הברורה ובצירוף מורידים שלו בתוך מתקיני MSI. בעבר, ראינו כמה מקרים שבהם שותפו את הורדותיו מקוטיו ו ואדוקריסט, אם כי לא בשנתיים האחרונות. ההבחנה העיקרית של הטרויאני הבנקאי גרנדוריירו מהמשפחות האחרות הייתה מנגנון הריפוד הבינארי הייחודי שלו, שגוזל באופן מסיבי את קובץ ההפעלה הסופי (המתואר במאמר שלנו פוסט בבלוג בשנת 2020). עם הזמן, המפעילים של גרנדוריירו הוסיפו את טכניקת האנטי-אנליזה הזו גם למורדים שלה. להפתעתנו, ברבעון השלישי של שנת 3, תכונה זו נשמטה לחלוטין מהקבצים הבינאריים של הטרויאני הבנקאי וההורדה, ומאז לא צפינו בה.
מאז פברואר 2022, אנו עוקבים אחר א גרסה שנייה של גראנדוריירו ששונה משמעותית מהראשי. ראינו את זה, בקמפיינים קטנים, במרץ, מאי ויוני 2022. בהתבסס על הרוב המכריע של תחומי שרת ה-C&C שלו לא פתורים, תכונות הליבה שלו משתנות לעתים קרובות למדי, ופרוטוקול הרשת שלו אינו פועל כראוי, אנו מאמינים מאוד שזה עבודה בתהליך; לפיכך נתמקד בגרסה העיקרית בפוסט זה בבלוג.
גראנדוריירו מעקב לטווח ארוך
מערכות ESET המיועדות למעקב אוטומטי וארוך טווח של משפחות תוכנות זדוניות נבחרות עוקבות אחר Grandoreiro מאז סוף 2017, מחלצות מידע על גרסאות, שרתי C&C, יעדים ומאז סוף 2020, תצורות DGA.
מעקב DGA
תצורת ה-DGA מקודדת בקוד הקשה ב-Grandoreiro הבינארי. ניתן להתייחס לכל תצורה באמצעות מחרוזת שאנו קוראים לה dga_id. שימוש בתצורות שונות עבור DGA מניב תחומים שונים. אנו צוללים עמוק יותר לתוך מנגנון DGA בהמשך הטקסט.
ESET חילצה בסך הכל 105 שונים dga_ids מדגימות גרנדוריירו המוכרות לנו. 79 מהתצורות הללו יצרו לפחות פעם אחת תחום שהפך לכתובת IP פעילה של שרת C&C במהלך המעקב שלנו.
הדומיינים שנוצרו נרשמים באמצעות שירות ה-DNS הדינמי (DDNS) של No-IP. המפעילים של Grandoreiro מנצלים לרעה את השירות כדי לשנות תכופות את הדומיינים שלהם כדי להתכתב עם DGA וכדי לשנות כתובות IP כרצונם. הרוב המכריע של כתובות ה-IP שדומיינים אלה מחליטים להן מסופקים על ידי ספקי ענן, בעיקר AWS ו-Azure. טבלה 1 ממחישה כמה נתונים סטטיסטיים לגבי כתובות IP המשמשות עבור שרתי Grandoreiro C&C.
טבלה 1. מידע סטטיסטי על כתובות IP של Grandoreiro C&C מאז שהתחלנו במעקב
מֵידָע | מְמוּצָע | מינימום | מַקסִימוּם |
מספר כתובות IP חדשות של C&C ליום | 3 | 1 | 34 |
מספר כתובות IP פעילות של C&C ביום | 13 | 1 | 27 |
תוחלת החיים של כתובת IP C&C (בימים) | 5 | 1 | 425 |
זמן קצר מאוד לאחר שהתחלנו לעקוב אחר הדומיינים שנוצרו וכתובות ה-IP המשויכות להם, התחלנו לשים לב שדומיינים רבים שנוצרו על ידי DGAs עם תצורות שונות פונים לאותה כתובת IP (כמתואר באיור 3). זה אומר שביום נתון, קורבנות שנפגעו על ידי גראנדוריירו דגימות עם שונות dga_id כולם מחוברים לאותו שרת C&C. תופעה זו לא הייתה מקרית - צפינו בה כמעט על בסיס יומי במהלך המעקב שלנו.
בהזדמנויות הרבה יותר נדירות, ראינו גם כתובת IP בשימוש חוזר על ידי אחר dga_id מספר ימים לאחר מכן. רק שהפעם השתנו גם הפרמטרים שגרנדוריירו השתמש ליצירת קשר (הוסבר בהמשך הטקסט). המשמעות היא שבינתיים, צד שרת C&C חייב להיות מותקן מחדש או מוגדר מחדש.
ההנחה הראשונית שלנו הייתה שה dga_id הוא ייחודי עבור כל תצורת DGA. מאוחר יותר זה התברר כלא נכון - ראינו שתי קבוצות של תצורות שונות שחולקות את אותו הדבר dga_id. טבלה 2 מציגה את שניהם, "jjk" ו-"gh", כאשר "jjk" ו-"jjk(2)" תואמים לשתי תצורות DGA שונות, זהות ל-"gh" ו-"gh(2)".
טבלה 2 מציגה את האשכולות שהצלחנו לצפות בהם. כל תצורות ה-DGA ששיתפו לפחות כתובת IP אחת נמצאות באותו אשכול והמשויכות אליהן dga_ids רשומים. לא מתייחסים לאשכולות המהווים פחות מ-1% מכלל הקורבנות.
טבלה 2. אשכולות Grandoreiro DGA
מזהה אשכול |
dga_id רשימה |
גודל אשכול |
% מכל שרתי C&C |
% מכלל הקורבנות |
1 |
b, bbh, bbj, bbn, bhg, cfb, cm, cob, cwe, dee, dnv, dvg, dzr, E, eeo, eri, ess, fhg, fox, gh, gh(2), hjo, ika, jam , jjk, jjk(2), JKM, jpy, k, kcy, kWn, md7, md9, MRx, mtb, n, Nkk, nsw, nuu, occ, p, PCV, pif, rfg, rox3, s, sdd, sdg, sop, tkk, twr, tyj, u, ur4, vfg, vgy, vki, wtt, ykl, Z, zaf, zhf |
62 |
93.6% |
94% |
2 |
jl2, jly |
2 |
2.4% |
2.5% |
3 |
ibr |
1 |
0.8% |
1.6% |
4 |
JYY |
1 |
1.6% |
1.1% |
האשכול הגדול ביותר מכיל 78% מכלל הפעילים dga_idס. היא אחראית ל-93.6% מכל כתובות ה-IP של שרתי C&C ול-94% מכל הקורבנות שראינו. האשכול הנוסף היחיד המורכב מיותר מ-1 dga_id הוא אשכול 2.
כמה מקורות טוענים שגראנדוריירו פועל כשירות תוכנה זדונית (MaaS). הקצה האחורי של שרת Grandoreiro C&C אינו מאפשר פעילות בו-זמנית של יותר ממפעיל אחד בו-זמנית. בהתבסס על טבלה 2, ניתן לרכז את הרוב המכריע של כתובות IP שיוצרו ב-DGA ללא דפוס הפצה ברור. לבסוף, בהתחשב בדרישות רוחב הפס הכבד של פרוטוקול הרשת (אנחנו צוללים לזה בסוף הבלוג), אנו מאמינים ששרתי ה-C&C השונים משמשים כמערכת פרימיטיבית לאיזון עומסים וכי סביר יותר שגראנדוריירו מופעל על ידי קבוצה בודדת או על ידי כמה קבוצות בשיתוף פעולה הדוק זו עם זו.
מעקב C&C
ההטמעה של גרנדוריירו של פרוטוקול הרשת שלה אפשרה לחוקרי ESET להציץ מאחורי הווילון ולקבל הצצה על הקורבנות. שרתי Grandoreiro C&C מוסרים מידע על הקורבנות המחוברים בזמן הבקשה הראשונית לכל קורבן חדש שהתחבר. עם זאת, הנתונים מוטים לפי מספר הבקשות, המרווחים שלהן ותוקף הנתונים המסופקים על ידי שרתי C&C.
כל קורבן המחובר לשרת Grandoreiro C&C מזוהה על ידי א login_string - מחרוזת שגרנדוריירו בונה עם יצירת הקשר. מבנים שונים משתמשים בפורמטים שונים ופורמטים שונים מכילים מידע שונה. אנו מסכמים את המידע שניתן לקבל מ- login_string בטבלה 3. העמודה התרחשות מציגה אחוז מכל הפורמטים שראינו שמכילים את סוג המידע המתאים.
טבלה 3. סקירה כללית של מידע שניתן לקבל מקורבן גרנדוריירו login_string
מֵידָע |
התרחשות |
תיאור |
מערכת הפעלה |
100% |
מערכת ההפעלה של המכונה של הקורבן. |
שם מחשב |
100% |
שם המכונה של הקורבן. |
מדינה |
100% |
מדינה שאליה מתמקדת מדגם Grandoreiro (מקודד קשה בדגימת התוכנה הזדונית). |
גִרְסָה |
100% |
גרסה (version_string) של מדגם גרנדוריירו. |
שם קוד בנק |
92% |
שם הקוד של הבנק שהפעיל את חיבור C&C (הוקצו על ידי המפתחים של Grandoreiro). |
Uptime |
25% |
הזמן (בשעות) שהמכונה של הקורבן פעלה. |
רזולוציית מסך |
8% |
רזולוציית מסך של הצג הראשי של הקורבן. |
שם משתמש |
8% |
שם המשתמש של הקורבן. |
שלושה מהתחומים ראויים להסבר מקרוב יותר. מדינה היא מחרוזת מקודדת בקוד הבינארי של Grandoreiro ולא מידע שהושג באמצעות שירותים מתאימים. לכן, זה משרת יותר כמו התכוון המדינה של הקורבן.
שם קוד בנק הוא מחרוזת המפתחים של Grandoreiro הקשורה לבנק מסוים או למוסד פיננסי אחר. הקורבן ביקר באתר האינטרנט של הבנק, מה שהפעיל את חיבור ה-C&C.
השמיים version_string הוא מחרוזת המזהה מבנה גרנדוריירו ספציפי. הוא מקודד קשה בתוכנות הזדוניות ומחזיק מחרוזת שמזהה סדרת בנייה ספציפית, גרסה (שכבר דיברנו עליה בהקדמה) וחותמת זמן. טבלה 4 ממחישה את הפורמטים השונים ואת המידע שהם מחזיקים. שימו לב שחלק מהחותמות מכילות רק חודש ויום, בעוד שאחרות מכילות גם את השנה.
טבלה 4. רשימה של שונים version_string פורמטים וניתוחם
מחרוזת גרסה |
בנה מזהה |
גִרְסָה |
חותם זמן |
דנילו |
דנילו |
N / A |
N / A |
(V37)(P1X)1207 |
P1X |
V37 |
12/07 |
(MX)2006 |
MX |
N / A |
20/06 |
fox50.28102020 |
fox50 |
N / A |
28/10/2020 |
MADMX(RELOAD)EMAIL2607 |
MADMX(ReLOAD)EMAIL |
N / A |
26/07 |
אפשר להתפתות לומר שמזהה ה-Build בעצם מזהה את המפעיל. עם זאת, אנחנו לא חושבים שזה המצב. הפורמט של המחרוזת הוא מאוד כאוטי, לפעמים זה מתייחס רק לחודש שבו כנראה נבנה הבינארי (כמו (AGOSTO)2708). בנוסף, אנו מאוד מאמינים בכך P1X מתייחס לקונסולה המשמשת את המפעיל/ים של Grandoreiro שנקרא PIXLOGGER.
מעקב אחר שרתי C&C – ממצאים
בסעיף זה, אנו מתמקדים במה שמצאנו על ידי שאילתות על שרתי C&C. כל הנתונים הסטטיסטיים המפורטים בסעיף זה התקבלו ישירות משרתי Grandoreiro C&C, לא מהטלמטריה של ESET.
דגימות ישנות עדיין פעילות
כל אחד login_string שצפינו מכיל את version_string והרוב המכריע של אלה מכילים את מידע חותמת הזמן (ראה טבלה 3 וטבלה 4). בעוד שרבים מהם מכילים רק יום וחודש, כפי שנראה לבחירתו של המפתח מדי פעם, דוגמת התקשורת הישנה ביותר הוחתמה בזמן 15/09/2020 - כלומר מהזמן שה-DGA הזה הוצג לראשונה לגראנדוריירו. המדגם האחרון היה חותמת זמן 12/23/2023.
הפצת מערכת הפעלה
מאז כל ה login_string פורמטים מכילים מידע על מערכת ההפעלה, אנו יכולים לצייר תמונה מדויקת של אילו מערכות הפעלה נפלו קורבן, כפי שמוצג באיור 4.
(המיועדת) תפוצה במדינה
כבר הזכרנו ש-Grandoreiro משתמש בערך מקודד במקום לחפש שירות כדי להשיג את המדינה של הקורבן. איור 5 מציג את ההתפלגות שצפינו.
את ההפצה הזו יש לצפות מגראנדוריירו. מעניין שזה לא מתאם עם מפת החום המתוארת באיור 1. ההסבר ההגיוני ביותר הוא שהבניינים אינם מסומנים כראוי כדי להידמות למטרות המיועדות להם. למשל, העלייה במתקפות בארגנטינה אינה באה לידי ביטוי כלל בסימון המקודד. ברזיל מהווה כמעט 41% מכלל הקורבנות, אחריה מקסיקו עם 30% וספרד עם 28%. ארגנטינה, פורטוגל ופרו מהוות פחות מ-1%. מעניין לציין שראינו כמה (פחות מ-10) קורבנות מסומנים כ PM (סנט פייר ומיקלון), GR (יוון), או FR (צָרְפַת). אנו מאמינים שאלו שגיאות הקלדה או שיש להן משמעויות אחרות במקום לכוון לאותן מדינות.
שימו לב גם שבזמן גרנדוריירו הוסיף יעדים ממדינות רבות מחוץ לאמריקה הלטינית כבר בשנת 2020, צפינו בקמפיינים מעטים או לא הממוקדים לאותן מדינות ואיור 5 תומך בכך.
מספר הקורבנות
ראינו שמספר הקורבנות הממוצע המחוברים ביום הוא 563. עם זאת, מספר זה בהחלט מכיל כפילויות, מכיוון שאם קורבן נשאר מחובר במשך זמן רב, מה שראינו שהוא קורה לעתים קרובות, אז שרת Grandoreiro C&C ידווח על כך על מספר בקשות.
בניסיון לטפל בבעיה זו, הגדרנו א ייחודי הקורבן כאחד עם קבוצה ייחודית של מאפיינים מזהים (כמו שם מחשב, שם משתמש וכו') תוך השמטת אלו הנתונים לשינוי (כמו זמן פעילות). עם זה, סיימנו עם 551 ייחודי קורבנות מחוברים ביום בממוצע.
בהתחשב בכך שצפינו בקורבנות שהתחברו לשרתי C&C ללא הרף במשך יותר משנה, חישבנו מספר ממוצע של 114 חדש ייחודי קורבנות מתחברים לשרתי C&C בכל יום. הגענו למספר הזה בהתעלמות ייחודי קורבנות שכבר צפינו בהם בעבר.
פנימיות גרנדוריירו
הבה נתמקד, לעומק, בשני המאפיינים המכריעים ביותר של גרנדוריירו: ה-DGA ופרוטוקול הרשת.
DGA
המפעילים של Grandoreiro הטמיעו מספר סוגים של DGAs במהלך השנים, כאשר האחרון הופיע ביולי 2020. למרות ששמנו לב לכמה שינויים קלים, ליבת האלגוריתם לא השתנתה מאז.
ה-DGA משתמש בתצורה ספציפית המקודדת בקוד הבינארי, המאוחסנת כמחרוזות מרובות. איור 6 מציג תצורה אחת כזו (עם dga_id "bbj"), עוצב מחדש ב-JSON לקריאות טובה יותר.
ברוב המוחלט של המקרים, base_domain שדה freedynamicdns.org or zapto.org. כפי שכבר צוין, Grandoreiro משתמש ב-No-IP לרישום הדומיין שלו. ה base64_alpha השדה מתאים לאלפבית base64 המותאם אישית שבו משתמש DGA. ה חודש_החלפה משמש להחלפת תו של מספר חודש.
השמיים dga_table מהווה את החלק העיקרי של התצורה. הוא מורכב מ-12 מחרוזות, כל אחת עם 35 שדות מופרדים על ידי |. הכניסה הראשונה של כל שורה היא dga_id. הערך השני והאחרון מייצגים את החודש שאליו מיועד הקו. 32 השדות הנותרים מייצגים כל אחד ערך ליום אחר בחודש (משאיר לפחות שדה אחד ללא שימוש).
ההיגיון של ה-DGA מוצג באיור 7. האלגוריתם בוחר תחילה את השורה הנכונה ואת הערך הנכון ממנו, ומתייחס אליו כמפתח של ארבעה בתים. לאחר מכן הוא מעצב את התאריך הנוכחי למחרוזת ומצפין אותו עם המפתח באמצעות XOR פשוט. לאחר מכן הוא מקדים את dga_id לתוצאה, מקודד את התוצאה באמצעות base64 עם אלפבית מותאם אישית, ולאחר מכן מסיר כל תווי ריפוד =. התוצאה הסופית היא תת-הדומיין שביחד עם base_domain, ישמש כשרת C&C עבור היום הנוכחי. החלק המודגש באדום הוא מנגנון בטיחותי בכשל ואנחנו דנים בו בהמשך.
גראנדוריירו הטמיעה, בחלק מהגרסאות, מנגנון בטוח לכשל כאשר התחום הראשי לא מצליח לפתור. מנגנון זה אינו קיים בכל הבניינים והלוגיקה שלו השתנתה מספר פעמים, אך הרעיון הבסיסי מודגם באיור 7. הוא משתמש בתצורה שהיא קבועה בדגימות שניתחנו וניתן להפיק אותה על ידי הקוד הפשוט שמוצג באיור 8. כל ערך מורכב ממפתח, קידומת ותחום בסיס.
אלגוריתם ה-failsafe לוקח חלק מתת-הדומיין הראשי של C&C. לאחר מכן הוא חוזר על כל ערכי התצורה, מצפין אותו באמצעות XOR ומוסיף קידומת, בדומה לחלק האלגוריתם הראשי.
מאז ספטמבר 2022, התחלנו לצפות בדגימות המשתמשות ב-DGA שונה במקצת. האלגוריתם נשאר כמעט זהה, אבל במקום base64 שמקודד את תת-הדומיין בשלב הסופי, מוצמדת אליו קידומת מקודדת. בהתבסס על המעקב שלנו, שיטה זו הפכה לשולטת מאז יולי 2023 בערך.
פרוטוקול רשת
Grandoreiro משתמש ב-RTC Portal, קבוצה של רכיבי דלפי הבנויים על גבי RealThinClient SDK אשר בנוי על גבי HTTP(S). פורטל RTC היה הופסק בשנת 2017 וקוד המקור שלו פורסם ב GitHub. בעיקרו של דבר, פורטל RTC מאפשר לפקד אחד או יותר לגשת מרחוק למארח אחד או יותר. מארחים ופקדים מופרדים על ידי רכיב מתווך הנקרא Gateway.
מפעילי Grandoreiro משתמשים בקונסולה (המשמשת כשליטה) כדי להתחבר לשרת C&C (פועל כשער) וכדי לתקשר עם המכונות שנפגעו (הפועלות כמארחים). כדי להתחבר לשער, נדרשים שלושה פרמטרים: מפתח סודי, אורך המפתח וכניסה.
המפתח הסודי משמש להצפנת הבקשה הראשונית שנשלחה לשרת. לכן, השרת גם צריך לדעת את המפתח הסודי כדי לפענח את בקשת הלקוח הראשונית.
אורך המפתח קובע את אורך המפתחות להצפנת התעבורה, שנוצרה במהלך לחיצת היד. התעבורה מוצפנת באמצעות צופן זרם מותאם אישית. נוצרו שני מפתחות שונים - אחד לתנועה נכנסת ואחד לתנועה יוצאת.
הכניסה יכולה להיות כל מחרוזת. השער דורש שלכל רכיב מחובר תהיה כניסה ייחודית.
גרנדוריירו משתמש בשני שילובים שונים של ערכי מפתח סודי ואורך מפתח, תמיד מקודד קשה בבינארי, וכבר דיברנו על login_string המשמש ככניסה.
התיעוד של RTC קובע שהוא יכול להתמודד רק עם מספר מוגבל של חיבורים בבת אחת. בהתחשב בכך שכל מארח מחובר צריך לשלוח לפחות בקשה אחת בשנייה, אחרת החיבור שלו נותק, אנו מאמינים שהסיבה ש-Grandoreiro משתמש במספר שרתי C&C היא ניסיון לא להציף אף אחד מהם.
סיכום
בפוסט זה בבלוג, סיפקנו הצצה מאחורי המסך של המעקב ארוך הטווח שלנו אחר גרנדוריירו, שעזר לאפשר את פעולת ההפרעה הזו. תיארנו לעומק כיצד ה-DGA של גרנדוריירו פועל, כמה תצורות שונות קיימות בו-זמנית, וכיצד הצלחנו לזהות חפיפות רבות של כתובות IP ביניהן.
סיפקנו גם מידע סטטיסטי שהתקבל משרתי C&C. מידע זה מספק סקירה מצוינת של הקורבנות והמיקוד, תוך שהוא מאפשר לנו לראות את רמת ההשפעה בפועל.
מבצע השיבושים שהובילה המשטרה הפדרלית של ברזיל כוונה לאנשים שלדעתם נמצאים גבוה בהיררכיית המבצעים של גרנדוריירו. ESET תמשיך לעקוב טרויאנים בנקאיים אחרים באמריקה הלטינית תוך מעקב צמוד אחר כל פעילות גרנדוריירו בעקבות פעולת ההפרעה הזו.
לכל שאלה לגבי המחקר שלנו שפורסם ב-WeLiveSecurity, אנא צור איתנו קשר בכתובת threatintel@eset.com.
ESET Research מציע דוחות מודיעין פרטיים של APT והזנות נתונים. לכל שאלה לגבי שירות זה, בקר באתר ESET Threat Intelligence עמוד.
IoCs
קבצים
SHA-1 |
שם הקובץ |
איתור |
תיאור |
FB32344292AB36080F2D040294F17D39F8B4F3A8 |
Notif.FEL.RHKVYIIPFVBCGQJPOQÃ.msi |
Win32/Spy.Grandoreiro.DB |
הורדת MSI |
08C7453BD36DE1B9E0D921D45AEF6D393659FDF5 |
RYCB79H7B-7DVH76Y3-67DVHC6T20-CH377DFHVO-6264704.msi |
Win32/Spy.Grandoreiro.DB |
הורדת MSI |
A99A72D323AB5911ADA7762FBC725665AE01FDF9 |
pcre.dll |
Win32/Spy.Grandoreiro.BM |
גרנדוריירו |
4CDF7883C8A0A83EB381E935CD95A288505AA8B8 |
iconv.dll |
Win32/Spy.Grandoreiro.BM |
גראנדוריירו (עם ריפוד בינארי) |
רשת
IP |
תְחוּם |
ספק אירוח |
נראה לראשונה |
פרטים |
20.237.166[.]161 |
נוצר על ידי DGA |
תכלת |
2024-01-12 |
שרת C&C. |
20.120.249[.]43 |
נוצר על ידי DGA |
תכלת |
2024-01-16 |
שרת C&C. |
52.161.154[.]239 |
נוצר על ידי DGA |
תכלת |
2024-01-18 |
שרת C&C. |
167.114.138[.]249 |
נוצר על ידי DGA |
OVH |
2024-01-02 |
שרת C&C. |
66.70.160[.]251 |
נוצר על ידי DGA |
OVH |
2024-01-05 |
שרת C&C. |
167.114.4[.]175 |
נוצר על ידי DGA |
OVH |
2024-01-09 |
שרת C&C. |
18.215.238[.]53 |
נוצר על ידי DGA |
AWS |
2024-01-03 |
שרת C&C. |
54.219.169[.]167 |
נוצר על ידי DGA |
AWS |
2024-01-09 |
שרת C&C. |
3.144.135[.]247 |
נוצר על ידי DGA |
AWS |
2024-01-12 |
שרת C&C. |
77.246.96[.]204 |
נוצר על ידי DGA |
VDSina |
2024-01-11 |
שרת C&C. |
185.228.72[.]38 |
נוצר על ידי DGA |
מאסטר דה ווב |
2024-01-02 |
שרת C&C. |
62.84.100[.]225 |
N / A |
VDSina |
2024-01-18 |
שרת הפצה. |
20.151.89[.]252 |
N / A |
תכלת |
2024-01-10 |
שרת הפצה. |
טכניקות MITER ATT & CK
שולחן זה נבנה באמצעות גרסה 14 של מסגרת MITER ATT & CK.
טקטיקה |
ID |
שם |
תיאור |
פיתוח משאבים |
פיתוח יכולות: תוכנות זדוניות |
מפתחי Grandoreiro מפתחים הורדות מותאמות אישית משלהם. |
|
גישה ראשונית |
דיוג |
גראנדוריירו מתפשט באמצעות מיילים דיוגים. |
|
הוצאה לפועל |
ביצוע משתמש: קובץ זדוני |
גראנדוריירו לוחץ על הקורבנות לבצע באופן ידני את קובץ הדיוג המצורף. |
|
התמדה |
הפעלה אוטומטית של אתחול או כניסה: מפתחות הפעלה של הרישום / תיקיית אתחול |
Grandoreiro משתמש במיקומי ההפעלה האוטומטיים הסטנדרטיים לצורך התמדה. |
|
זרימת ביצוע חטיפה: חטיפת סדר חיפוש DLL |
Grandoreiro מבוצע על ידי פגיעה בסדר החיפוש של DLL. |
||
התחמקות הגנה |
בטל/פענח קבצים או מידע |
Grandoreiro מופץ לעתים קרובות בארכיוני ZIP המוגנים באמצעות סיסמה. |
|
קבצים או מידע מעורפלים: ריפוד בינארי |
EXEs של Grandoreiro פעם היו מוגדלים .rsrc קטעים עם תמונות BMP גדולות. |
||
ביצוע פרוקסי בינארי של מערכת: Msiexec |
הורדות Grandoreiro מצורפות בתוך מתקיני MSI. |
||
שנה את הרישום |
Grandoreiro מאחסן חלק מנתוני התצורה שלו ברישום של Windows. |
||
גילוי פערים |
גילוי חלון יישומים |
Grandoreiro מגלה אתרי בנקאות מקוונים המבוססים על שמות חלונות. |
|
תהליך גילוי |
Grandoreiro מגלה כלי אבטחה המבוססים על שמות תהליכים. |
||
גילוי תוכנה: גילוי תוכנות אבטחה |
Grandoreiro מזהה נוכחות של מוצרי הגנה בנקאיים. |
||
גילוי מידע מערכת |
גראנדוריירו אוסף מידע על המכונה של הקורבן, כגון %שם המחשב% ומערכת הפעלה. |
||
אוספים |
לכידת קלט: לכידת קלט GUI |
Grandoreiro יכול להציג חלונות קופצים מזויפים וללכוד טקסט שהוקלד בהם. |
|
לכידת קלט: רישום מקשים |
Grandoreiro מסוגל ללכוד הקשות. |
||
איסוף דוא"ל: איסוף דוא"ל מקומי |
המפעילים של Grandoreiro פיתחו כלי לחילוץ כתובות דואר אלקטרוני מ-Outlook. |
||
פיקוד ובקרה |
קידוד נתונים: קידוד לא סטנדרטי |
Grandoreiro משתמש ב-RTC, שמצפין נתונים באמצעות צופן זרם מותאם אישית. |
|
רזולוציה דינמית: אלגוריתמים ליצירת דומיין |
Grandoreiro מסתמך אך ורק על DGA כדי להשיג כתובות של שרת C&C. |
||
ערוץ מוצפן: קריפטוגרפיה סימטרית |
ב-RTC, ההצפנה והפענוח נעשים באמצעות אותו מפתח. |
||
נמל לא סטנדרטי |
Grandoreiro משתמש לעתים קרובות ביציאות לא סטנדרטיות להפצה. |
||
פרוטוקול שכבת יישומים |
RTC בנוי על גבי HTTP(S). |
||
exfiltration |
סינון מעל ערוץ C2 |
Grandoreiro מוציא נתונים לשרת C&C שלה. |
|
פְּגִיעָה |
כיבוי מערכת/אתחול מחדש |
Grandoreiro יכול לאלץ אתחול המערכת. |
- הפצת תוכן ויחסי ציבור מופעל על ידי SEO. קבל הגברה היום.
- PlatoData.Network Vertical Generative Ai. העצים את עצמך. גישה כאן.
- PlatoAiStream. Web3 Intelligence. הידע מוגבר. גישה כאן.
- PlatoESG. פחמן, קלינטק, אנרגיה, סביבה, שמש, ניהול פסולת. גישה כאן.
- PlatoHealth. מודיעין ביוטכנולוגיה וניסויים קליניים. גישה כאן.
- מקור: https://www.welivesecurity.com/en/eset-research/eset-takes-part-global-operation-disrupt-grandoreiro-banking-trojan/
- :יש ל
- :הוא
- :לֹא
- :איפה
- ][עמ'
- $ למעלה
- 1
- 10
- 114
- 12
- 120
- 160
- 179
- 180
- 2017
- 2019
- 2020
- 2022
- 2023
- 237
- 32
- 35%
- 40
- 7
- 70
- 8
- 84
- 89
- 97
- a
- יכול
- אודות
- התעללות
- מקבל
- גישה
- חֶשְׁבּוֹן
- חשבונות
- מדויק
- משחק
- פעיל
- פעילות
- ממשי
- למעשה
- הוסיף
- בנוסף
- כתובת
- כתובות
- לאחר
- מכוון
- מכוון
- אַלגוֹרִיתְם
- תעשיות
- להתיר
- מותר
- מאפשר
- מאפשר
- כמעט
- אלפבית
- כְּבָר
- גם
- תמיד
- אֲמֶרִיקָאִי
- בין
- an
- אנליזה
- מְנוּתָח
- ו
- אחר
- כל
- מופיע
- מתאים
- בערך
- APT
- ארכיון
- ארכיון
- ARE
- ארגנטינה
- סביב
- AS
- שהוקצה
- לעזור
- המשויך
- הנחה
- At
- המתקפות
- ניסיון
- אוטומטי
- מְמוּצָע
- רָחוֹק
- AWS
- תכלת
- קצה אחורי
- רוחב פס
- בנק
- בנקאות
- בסיס
- מבוסס
- בסיסי
- בסיס
- BE
- כי
- להיות
- היה
- לפני
- החל
- מאחור
- להיות
- תאמינו
- האמין
- שייך
- מלבד
- מוטב
- בֵּין
- bhg
- מְשׁוּחָד
- הגדול ביותר
- שניהם
- בוטנט
- ברזיל
- דפדפן
- לִבנוֹת
- בונה
- נבנה
- ארוז
- אבל
- by
- מחושב
- שיחה
- נקרא
- הגיע
- קמפיינים
- CAN
- יכולות
- מסוגל
- ללכוד
- לכידה
- מקרה
- מקרים
- מסוים
- בהחלט
- שינוי
- השתנה
- שינויים
- משתנה
- ערוץ
- אופי
- מאפיינים
- תווים
- בחירה
- צופן
- לטעון
- ברור
- לקוחות
- מקרוב
- קרוב יותר
- ענן
- אשכול
- קוד
- קודים
- יד מקרה
- שיתף פעולה
- אוסף
- טור
- COM
- שילובים
- להעביר
- תקשורת
- תקשורת
- לחלוטין
- רְכִיב
- רכיבים
- התפשר
- מתפשר
- חישוב
- המחשב
- מסכם
- תְצוּרָה
- לְחַבֵּר
- מחובר
- מקשר
- הקשר
- חיבורי
- בהתחשב
- מורכב
- מורכב
- קונסול
- קבוע
- תמיד
- בונה
- צור קשר
- להכיל
- מכיל
- להמשיך
- נמשך
- תרם
- לִשְׁלוֹט
- בקרות
- שיתוף פעולה
- ליבה
- לתקן
- תוֹאֵם
- מתכתב
- מדינות
- מדינה
- קורס
- מכריע
- נוֹכְחִי
- וִילוֹן
- מנהג
- da
- יומי
- נתונים
- תַאֲרִיך
- יְוֹם
- ימים
- dDNS
- החליט
- פענוח
- עמוק יותר
- מוגדר
- להפגין
- עומק
- מְתוּאָר
- מגיע
- עיצוב
- מעוצב
- איתור
- קובע
- לפתח
- מפותח
- מפתחים
- צעצועי התפתחות
- אחר
- קשה
- ישירות
- מגלה
- תגלית
- לדון
- נָדוֹן
- לְהַצִיג
- מציג
- מתעלם
- לשבש
- התפוררות
- הבחנה
- מופץ
- הפצה
- צלילה
- DNS
- תיעוד
- עושה
- תחום
- שמות דומיינים
- תחומים
- דומיננטי
- עשה
- לא
- ירידה
- ירד
- ראוי
- כפילויות
- בְּמַהֲלָך
- דינמי
- e
- כל אחד
- מוקדם
- או
- אחר
- אמייל
- מיילים
- הַצפָּנָה
- להצפין
- מוצפן
- הצף
- סוף
- הסתיים
- אַכִיפָה
- כניסה
- למעשה
- להקים
- נוסד
- מקימים
- וכו '
- אֲפִילוּ
- אי פעם
- כל
- דוגמה
- מצוין
- לבצע
- יצא לפועל
- הוצאת להורג
- להתקיים
- צפוי
- מוסבר
- הסבר
- תמצית
- נכשל
- מְזוּיָף
- משפחות
- מאפיין
- תכונות
- פבואר
- פדרלי
- המשטרה הפדרלית
- מעטים
- פחות
- שדה
- שדות
- תרשים
- קבצים
- סופי
- בסופו של דבר
- כספי
- מוסד פיננסי
- ראשון
- פגם
- תזרים
- להתמקד
- בעקבות
- הבא
- בעד
- להכריח
- פוּרמָט
- צורות
- מצא
- ארבע
- שועל
- מסגרת
- צרפת
- בתדירות גבוהה
- החל מ-
- פונקציונלי
- תִפקוּד
- נוסף
- פער
- שער כניסה
- נוצר
- דור
- גנרטור
- לקבל
- לתת
- נתן
- הצצה
- גלוֹבָּלִי
- יון
- קְבוּצָה
- קבוצה
- היה
- לטפל
- יש
- כבד
- עזר
- ומכאן
- היררכיה
- גָבוֹהַ
- מודגש
- היסטוריה
- להחזיק
- מחזיק
- המארח
- מארחים
- שעות
- איך
- איך
- אולם
- http
- HTTPS
- ID
- רעיון
- זהה
- מזוהה
- מזהה
- מזהה
- זיהוי
- if
- מדגים
- תמונה
- תמונות
- פְּגִיעָה
- הפעלה
- יושם
- in
- לא נכון
- להגדיל
- אנשים
- מידע
- תשתית
- בתחילה
- יוזם
- קלט
- פניות
- בתוך
- במקום
- מוסד
- מוֹדִיעִין
- התכוון
- אינטראקציה
- אל תוך
- הציג
- מבוא
- חקירה
- IP
- כתובת IP
- כתובות IP
- סוגיה
- בעיות
- IT
- שֶׁלָה
- יָנוּאָר
- JPY
- ג'סון
- יולי
- יוני
- שמור
- מפתח
- מפתחות
- סוג
- סוגים
- לדעת
- ידוע
- יודע
- גָדוֹל
- אחרון
- מאוחר יותר
- הלטינית
- אמריקה הלטינית
- חוק
- אכיפת החוק
- שכבה
- הכי פחות
- עזיבה
- הוביל
- אורך
- פחות
- רמה
- כמו
- סביר
- מוגבל
- קו
- רשימה
- ברשימה
- מקומי
- מקומות
- הגיון
- הגיוני
- התחבר
- ארוך
- הרבה זמן
- לטווח ארוך
- נראה
- מגרש
- מכונה
- מכונה
- ראשי
- בעיקר
- הרוב
- לעשות
- עשייה
- זדוני
- תוכנות זדוניות
- תוכנה זדונית כשירות (MaaS)
- באופן ידני
- רב
- צעדה
- מסומן
- סימון
- באופן מאסיבי
- גפרורים
- מאי..
- משמעויות
- אומר
- בינתיים
- מנגנון
- מוּזְכָּר
- שיטה
- MEXICO
- קטין
- שונים
- כסף
- צג
- ניטור
- צגים
- חוֹדֶשׁ
- יותר
- רוב
- MSI
- הרבה
- מספר
- צריך
- MX
- שם
- שמות
- צרכי
- רשת
- חדש
- חדש
- הבא
- לא
- הערות
- הודעה..
- מספר
- להתבונן
- להשיג
- מושג
- ברור
- OCC
- הזדמנויות
- הִתרַחֲשׁוּת
- אוֹקְטוֹבֶּר
- of
- הַצָעָה
- המיוחדות שלנו
- לעתים קרובות
- מבוגר
- הוותיק ביותר
- on
- פעם
- ONE
- באינטרנט
- בנקאות מקוונת
- רק
- מופעל
- פועל
- פועל
- מערכת הפעלה
- מערכות הפעלה
- מבצע
- מפעיל
- מפעילי
- or
- להזמין
- OS
- אחר
- אחרים
- שלנו
- Outlook
- בחוץ
- יותר
- סקירה
- שֶׁלוֹ
- פ
- עמוד
- פרמטרים
- חלק
- עבר
- תבנית
- עבור
- אחוזים
- ביצעתי
- תקופה
- התמדה
- פרו
- תופעה
- דיוג
- תמונה
- פייר
- אפלטון
- מודיעין אפלטון
- אפלטון נתונים
- אנא
- מִשׁטָרָה
- מוקפץ
- כניסה
- יציאות
- פורטוגל
- אפשרי
- נוכחות
- להציג
- לחצים
- פרימיטיבי
- פְּרָטִי
- כנראה
- תהליך
- מעובד
- ייצור
- מוצרים
- התקדמות
- מתקדם
- פּרוֹיֶקט
- כמו שצריך
- .
- פרוטוקול
- פרוטוקולים
- הוכיח
- ובלבד
- ספקים
- מספק
- מתן
- פרוקסי
- לאור
- פיתון
- Q3
- מהירות
- דַי
- מהיר
- ציון
- במקום
- טעם
- לאחרונה
- Red
- מכונה
- מתייחס
- משתקף
- רשום
- הַרשָׁמָה
- רישום
- נותר
- שְׂרִידִים
- מרחוק
- מרחוק
- מסיר
- לדווח
- דוחות לדוגמא
- לייצג
- לבקש
- בקשות
- נדרש
- דרישות
- דורש
- מחקר
- חוקרים
- החלטה
- לפתור
- נפתרה
- פתרון
- אחראי
- תוצאה
- הפעלה
- ריצה
- s
- אמר
- SAINT
- אותו
- ראה
- לומר
- מסך
- חיפוש
- שְׁנִיָה
- סוד
- סעיף
- סעיפים
- אבטחה
- לִרְאוֹת
- נראה
- לראות
- נבחר
- לשלוח
- שליחה
- נשלח
- סֶפּטֶמבֶּר
- סדרה
- שרת
- שרתים
- משמש
- שרות
- שירותים
- סט
- סטים
- הצבה
- כמה
- משותף
- שיתוף
- לְהַצִיג
- הראה
- הופעות
- צד
- באופן משמעותי
- דומה
- פָּשׁוּט
- בו זמנית
- since
- יחיד
- קטן
- So
- תוכנה
- אך ורק
- כמה
- לפעמים
- בקרוב
- מָקוֹר
- קוד מקור
- ספרד
- ספציפי
- מסחרי
- ממרחים
- תֶקֶן
- החל
- סטארט - אפ
- הברית
- סטטי
- סטטיסטי
- סטטיסטיקה
- שלב
- עוד
- מאוחסן
- חנויות
- זרם
- מחרוזת
- בְּתוֹקֶף
- נושא
- בהצלחה
- כזה
- לסכם
- תומך
- הפתעה
- מתג
- מערכת
- מערכות
- שולחן
- לקחת
- לוקח
- ממוקד
- מיקוד
- מטרות
- טכני
- ניתוח טכני
- טכניקה
- עשרות
- טֶקסט
- מֵאֲשֶׁר
- זֶה
- השמיים
- המידע
- השורה
- שֶׁלָהֶם
- אותם
- אז
- לכן
- אלה
- הֵם
- לחשוב
- זֶה
- אלה
- אם כי?
- אלפים
- איום
- שְׁלוֹשָׁה
- דרך
- זמן
- פִּי
- חותם
- כותרת
- ל
- יַחַד
- כלי
- כלים
- חלק עליון
- סה"כ
- לקראת
- לעקוב
- מעקב
- תְנוּעָה
- בטיפול
- מופעל
- טרויאני
- שתיים
- עוברת
- ייחודי
- עד
- לא בשימוש
- על
- זמן פעולה תקין
- us
- להשתמש
- מְשׁוּמָשׁ
- שימושים
- באמצעות
- בְּדֶרֶך כְּלַל
- לנצל
- מנצל
- ערך
- ערכים
- גִרְסָה אַחֶרֶת
- Vast
- גרסה
- מידע על הגרסה
- מאוד
- באמצעות
- קרבן
- קורבנות
- לְבַקֵר
- ביקר
- היה
- דֶרֶך..
- we
- אינטרנט
- דפדפן אינטרנט
- אתר
- אתרים
- שבוע
- טוֹב
- היו
- מה
- מתי
- אשר
- בזמן
- מי
- רוחב
- יצטרך
- חלון
- חלונות
- עם
- בתוך
- תיק עבודות
- עובד
- כתיבה
- שנה
- שנים
- תשואות
- זפירנט
- רוכסן