Mockingjay מחליק על ידי כלי EDR עם טכניקת הזרקת תהליך

Mockingjay מחליק על ידי כלי EDR עם טכניקת הזרקת תהליך

Mockingjay מחליק על ידי כלי EDR עם טכניקת הזרקת תהליכים PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

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

אז חוקרים ב-Security Joes שבסיסה בישראל יצאו למצוא דרך אחרת להזרקת תהליכים הולמים מבלי להסתמך על ממשקי API בפיקוח EDR. התוצאה היא Mockingjay, שיטה חדשנית להזרקת תהליכים הממנפת ספריות קישורים דינמיות (DLL) עם הרשאות קריאה, כתיבה וביצוע ברירת מחדל (RWX) כדי לדחוף קוד למרחב הכתובות של תהליך פועל.

גישת Mockingjay

הגישה מפחיתה את הסבירות של מנגנון אבטחה של נקודות קצה שיזהה מאמץ של הזרקת תהליך זדוני ודורשת מספר קטן יותר של צעדים להשגה, אמר Security Joes בדו"ח השבוע. "המחקר שלנו כוון ל גלה שיטות חלופיות לביצוע דינמי של קוד בתוך שטח הזיכרון של תהליכי Windows, מבלי להסתמך על ממשקי ה-API של Windows המנוטרים", אמרה חברת האבטחה.

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

הזרקת תהליך היא טכניקה למניפולציה של הזיכרון של תהליך כדי להוסיף פונקציונליות חדשה או לשנות את ההתנהגות שלו. תוקפים בדרך כלל משתמשים בשיטה כדי להסתיר קוד זדוני ולהתחמק מזיהוי על מערכות שנפגעו. שיטות הזרקת תהליך נפוצות כוללות הזרקה עצמית כאשר תהליך המקבל את המטען המוזרק גם מבצע אותו; הזרקת DLL שבה נטען DLL זדוני למרחב הזיכרון של תהליך; והזרקת PE כאשר קובץ הפעלה נייד ממופה לזיכרון של תהליך פועל.

"כל אחת מטכניקות ההזרקה הללו דורשת קבוצה של ממשקי API ספציפיים של Windows, אשר מייצרים דפוסים אופייניים שניתן למנף אותם על ידי מגינים ותוכנות אבטחה למטרות זיהוי והפחתה", אמר Security Joes בדו"ח שלה. לדוגמה, ממשקי ה-API הנדרשים להזרקה עצמית הם VirtualAlloc, LocalAlloc, GlobalAlloc ו-Virtual Protect, אמרה החברה. באופן דומה, ממשקי ה-API המשמשים בהזרקת PE הם VirtualAllocEx, WriteProcessMemory ו-CreateRemoteThread. רוב מערכות ה-EDR מכוונות לנטר ממשקי API נפוצים בהתקפות הזרקת תהליכים ויכולות לזהות ביעילות פעילות זדונית הקשורה לשימוש בהן.

שימוש לרעה בקובצי DLL פגיעים

האסטרטגיה שבה השתמש Security Joes בפיתוח Mockingjay הייתה חיפוש שיטתי אחר DLLs בתוך מערכת ההפעלה של Windows שהכילו קטע RWX ברירת מחדל. חוקרים בחברה פיתחו כלי שחקר את כל מערכת הקבצים של Windows כדי לזהות קובצי DLL שיכולים לשמש כלי רכב פוטנציאליים להזרקת קוד מבלי להפעיל התראת EDR. החקירה הביאה לכך ש-Security Joes מצא DLL (msys-2.0.dll) עם 16KB של שטח RWX ב-Visual Studio 2022 Community שבו הם יכולים להשתמש להזרקה וביצוע קוד משלהם.

"לאחר זיהוי ה-DLL הפגיע שמכיל ברירת מחדל של קריאה-כתיבה-ביצוע (RWX) בדיסק, ערכנו מספר בדיקות כדי לחקור שתי שיטות שונות שיכולות למנף את התצורה השגויה הזו לביצוע קוד בזיכרון", אמר Security Joes.

שיטה אחת הייתה לטעון ישירות את ה-DLL הפגיע לתוך שטח הזיכרון של אפליקציה מותאמת אישית בשם nightmare.exe ש-Security Joes פיתחה. פעולה זו אפשרה לחוקרים להחדיר ולהפעיל קוד מעטפת משלהם למרחב הזיכרון של היישום מבלי למנף כל ממשק API של Windows. בין היתר, ה- shellcode גם הסיר את כל ה- EDR ללא הפעלת התראות. "הסרה מוחלטת זו של התלות בממשקי Windows API לא רק מפחיתה את הסבירות לזיהוי אלא גם משפרת את יעילות הטכניקה", אמרה החברה.

הטקטיקה השנייה של Security Joes לשימוש לרעה בקטע RWX ב-DLL הייתה לבצע הזרקת תהליכים בתהליך מרחוק. כדי להשיג זאת, הם זיהו תחילה קבצים בינאריים שהשתמשו ב-mysys-2.0.dll עבור הפעולות שלהם. רבים מהם היו קשורים לכלי עזר של GNU ויישומים אחרים הדורשים אמולציית POSIX. לצורך הוכחת הרעיון, החוקרים בחרו בתהליך ssh.exe ב-Visual Studio 2022 Community כיעד להזרקת הקוד שלהם. "חשוב לציין שבשיטת הזרקה זו, אין צורך ליצור חוט במפורש בתוך תהליך היעד, מכיוון שהתהליך מבצע אוטומטית את הקוד המוזרק", הסבירו בחברה.

לפי Security Joes, ה-DLL שהחוקרים שלו פיתחו את Mockingjay הוא רק אחד מני רבים אחרים שיכולים להיות מנוצלים באופן דומה למטרות הזרקת קוד. התמודדות עם האיום דורשת כלי אבטחה של נקודות קצה שלא רק עוקבים אחר ממשקי API ו-DLL ספציפיים, אלא גם משתמשים בניתוח התנהגותי וטכניקות למידת מכונה כדי לזהות הזרקת תהליכים.

בול זמן:

עוד מ קריאה אפלה