מבוא: למה הנדסה הפוכה מלטware Matters

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

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

התפקיד הקריטי של Malware Analysis in Cybersecurity

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

  • לזהות את ההדבקה של קוד זדוני ומנגנון הקידום.
  • לחלץ כתובות URLs קשיחות, כתובות IP, מפתחות הצפנה ונתונים תצורה.
  • להבין כיצד התוכנה ממשיכה על מערכת, מעצימה זכויות יוצרים או מקדמה נתונים.
  • לפתח כללי זיהוי מותאם אישית עבור כלי זיהוי ותגובה (EDR)
  • • שיתוף איומים במודיעין עם הקהילה הרחבה יותר.

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

שלב 1: בניית סביבת ניתוח בטוחה ובודדת

לפני שאתם נוגעים בכל דגימה זדונית, עליכם ליצור סביבה מבוקרת המונעת זיהום מקרי של מערכות ייצור.הכלל החשוב ביותר:0.10.לעולם אל תנתח קוד זדוני על המכונה המארחת שלכם (VMs) באמצעות מכונות וירטואליות (VMs) עם בידוד רשת, תמונות וכלי ניתוח ייעודיים.

בחירת המכונה הווירטואלית הנכונה Hypervisor

(ה) אפשרויות פופולריות כוללות את FLT:0;VMware Workstation / PlayercioFLT ( 1:1, 2VirtualBoxFLT 3: ו-FLT:4Hyper-VFLT:5 עבור רוב האנליסטים, VMware מספקת יכולות צילום חזקות ושילוב חלק עם כלי טיהור.

רשת Isolation and Traffic Monitoring

(הופנה מהדף ה-VM) (FLT:0) ,Wal-RattureFLT) 1 או (FLT:2internal NetworkcioFLT 3 Fiter) , זה מונע את הקוד מפני תקשורת עם שרתי פיקוד חיצוניים ולשלוט, בעודו מאפשר לך לבדוק את כלי התנועה כגון FLT:4INetSimFimFirpleLT:5 (לינוקס) או LT6Fát חושב לאחר מכן.

תוכנה חיונית לניתוח VM

התקנת הכלים הבאים לפני הצגת כל מדגם. שמור את תמונת VM במצב "נקי" זה כך שתוכל לחזור לאחר כל ניתוח:

  • (ב) ,0) דרישות מעקב אחר LT:1 - עבור מערכת קבצים בזמן אמת, רישום, ותהליך / פעילות לקריאה.
  • (ב) ,0) תוצאות של אקספלורמבייט 1 (ה) – עבור תובנות עמוקות בתהליכים של ריצה, מטפלות ו- DLLs.
  • (ב) ,0) , רשם: 1 (ה) להשוואה בין צילומי הרישום לפני ואחרי ביצוע.
  • (ב) ויקרא י"א: ויקרא י"ד:
  • (FLT:0GhidraphigFLT:1) - כלי הנדסה לאחור קוד פתוח על ידי ה-NSA (שימוש בגרסה האחרונה).
  • (ב) ,0) ,IDA ProcioFLT:1 (אם מורשה) - מאגד התעשייה ו debugger.
  • (ב) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
  • (ב) [15] ,ב"ה, או "הלל" (ד') קל (ד') 1 - ניתוח סטטי של קבצי PE.
  • (FLT:0)FlossveFLT:1 (FireEye Labs Obfuscated String Solver) - כדי לחלץ חסמים מפוסקים לאחר ניתוח סטטי.
  • (ב) ,0) ,(ה) ,(ה) , כדי ליצור כללים מותאמים אישית המבוססים על דפוסים שאתה מגלה.

אפשרויות ל-Sandbox Alternatives

אם אתה צריך לבצע דגימות רבות במהירות, לשקול תיבות חול אוטומטיות כגון FLT:0 (Cuckoo SandboxearFLT:1 (כיום CAPE) או שירותים מבוססי ענן כגון FLT:2 כל.RunFLT 3: 3 ו-FLT:4 Joe SandboxFLT:5 עם זאת, הנדסה לאחור נשאר חיוני עבור חידוש או מובנים כבדים כי עלולים להחמיץ מדגם VMתמיד אוטומטי.

שלב 2: ניתוח סטטי - הראשון

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

טביעות אצבע ושנאה

(ה) נציין את הישבן של קובץ הקוד הזדוני באמצעות ההרחבה:0SHA-256Felo 1 (או MD5/SHA1 עבור מערכות מורשת) העלאה של היש לשירותים כמו FLT:2 ו-Virus TotalFLT 3: כדי לראות אם ספקים אחרים של אבטחה כבר שסו את זה.

מבחן Metadata and Structure

(ב) שימוש בכלים כמו:0) , (ד') , (ב) , (ב) ,ב) , (ב) , ויקרא:2PE-bearFLT 3, או FLT:4Exeinfo PEFLT:5 כדי לבדוק את מנהל ההתקן הנייד (PE) עבור Windows בינאריות.

  • (ב) ⁇ (ב) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
  • (ב) [15] ,0 (ב) ,ב"ד) , [15], ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
  • (ב) ויקרא י"א: ויקרא י"ד: ויקרא י"ד: ויקרא י"ד, ו"ה', ויקרא י"ד, ו"ה') , ו"ה'" (בראשית כ"ד)" (בראשית כ"ד).
  • (ב) ,0) מקורות מקורות סעיף 1 (מלוט) - לעתים קרובות מאטיס מאחסנת קבצים, מטענים מוצפנים, או חומרים מבוטחים כמשאבים.
  • (ב) ,5 ,5 , ).

מיצוי ומילוי

(הופנה מהדף ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇

זיהוי Packers

(ב) , ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇

שלב 3: ניתוח דינמי - שמירה על התנהגות בזמן אמת

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

המונחים: execution Baseline

לפני הפעלת הקוד הזדוני, קח תמונה רשומה עם FLT:0regigtureshotFLT 1 או FLT:2 regreg החל מצב מערכת הקבצים ותהליכי ריצה באמצעות כפל 4 (FLT:4 Process MonitorFLT:5 עם מסנן כדי למקם אירועים ב-VM רק להתחיל.

הוצאה להורג את הדגימה

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

  • (ב) [ה]ההבאה [ה]: האם היא מייצרת תהליכי ילדים?[דרוש מקור] לתהליכים לגיטימיים כמו חוקר.exe או svchost.exe?
  • (FLT:0) פעילות מערכתית של מערכת פילאר 1 (FLT:1) האם היא כותבת קבצים ל-Temp,%AppData% או System32?
  • (ב) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
  • (FLT:0Network ConnectionssFLT:1) - השתמש Wireshark כדי ללכוד שאילתות DNS, בקשות HTTP, או חבילות TCP/UDP גולמי לעתים קרובות צור קשר עם שרתי C2 לקבלת הוראות או הפצת נתונים.

ניתוח התנהגות אוטומטי עם כלים

בעוד שהתבוננות ידנית היא חיונית, כלים אוטומטיים יכולים להאיץ את זיהוי הדפוס:0 (Process MonitorFLT:1 ; ⁇ s) ניתן להציל ולנתח מאוחר יותר.עבור תעבורת רשת, לשלב בין 2WiresharkFLT 3FLT 3FLT עם FLT:4INetSimFLT:5 כדי ללכוד את כל החבילות המובנות, גם אם שרת C2 הוא בלתי אפשרי להתגלות, אם ניתן לשחזר את הפונקציונליות של קוד זדוני, אם ניתן לשחזר את ה-NetS.

אינדיקטורים של Compromise (IOCs) מניתוח דינמי

כל שינוי בלתי אפשרי ליצור רשימה של IOCs כגון:

  • כתובות IP או שמות דומיין יצרו קשר.
  • מסלולי קובץ שנכתבו או השתנו.
  • מפתחות רישום שנוצרו או השתנו.
  • לעבד שמות ואת הישבן שלהם.
  • שמות Mutex (לעתים קרובות משמשים למניעת זיהומים מרובים).

אלה IOCs להיות הבסיס של זיהוי כללים והזנת מודיעין איומים.

שלב 4: דיסמברלי ו- Code Analysis - Into the Assembly Trenches

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

בחירת מאגד: Ghidra vs. IDA Pro

(ה-FLT:0GhidraFLT:1) (חינם, קוד פתוח, מן ה-NSA) הוא נקודת התחלה מצוינת.הוא מציע מפולטר רב עוצמה, API מצופה פייתון ותמיכה באדריכלות רבות.FLT:2IDA ProdraFLT 3: 3 יש עקומת למידה תלולה יותר ועלות גבוהה, אבל המערכת האקולוגית המובילה שלה (למשל, עבור המהנדסים מקצועיים, הוא אנליסטים) הופכת את רוב האנליסט של האנליסט (Gi) ל-R.

ניתוח נקודת הכניסה ותפקודי המפתח

⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇

  • (ב) (ב) ,0) , (ב) , (ב) , (ב) , (ב) , (ב) , (ב) , ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
  • (ב) [ה]הדברים הנפוצים כוללים XOR, AES, או אלגוריתמים מותאמים אישית.זיהוי הלולאה, לחלץ את המפתח, ולרוץ תסריט כדי לפענח את כל המחרוזת.
  • (ב) ויקרא ויקרא ויקרא י"ד: "וַיְּאֶשׁ הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא הוּא
  • (FLT:0) זרם זרימה של obscatcation 1 (חפש קוד זבל, predicates , או שליטה זרימה שטוחה. השתמש ב decompiler כדי לפשט את ההיגיון.

קוד מצופה או ארוז

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

  • (ב) , עיין ב[[1924]], [[1924]], ב[[1924]], [[1924]], [[1924]], [[1924]], [[1924]]]], [[1924]]]]]], [[1924]]]]]]
  • (ב) ,0)x64dbgFLT:1 לדרוך דרך ה- unpacker עד שפגעת בקפיצה ל- OEP (נקודת הכניסה המקורית) ולאחר מכן לקחת את הזיכרון ולהציל מחדש את התמונה המוזרקה לתוך Ghidra.
  • עבור להקות פשוטות יותר, ללא אריזה אוטומטית בכלים כמו FLT:0PE-bearFLT 1 או FLT:2 קוויck UnpacktureFLT 3 עשוי לעבוד.

הסרת נתונים וידוי ו Embedded Payloads

ברגע שהקוד נקי, לחפש מבנים נתונים קשיחים. Ransomware מכיל לעתים קרובות מפתח RSA ציבורי. Botnets יש רשימות שטח C2. ⁇ מאחסנים את נתיב הגלים ותצורת הדואר האלקטרוני. השתמש עורך הנתונים של Ghidra כדי לעקוף מבנים.כתבי Python כדי לחלץ ולפרוס את בלוקים אלה באופן אוטומטי.

טכניקות מתקדמות: דיון, Binary Patching ו Emulation

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

עקבו אחרי x64dbg ו-WinDbg

הגדר נקודות על פונקציות מפתח. השתמש צעד-into כדי לעקוב אחר שיחות. Monitor רישומים וערימות שינויים. Modify זיכרון או רישום ערכים כדי לעקוף בדיקות מבוסס זמן או לולאות פעוט. עבור לינדל-מודל, לעבור ל-FLT:0WinDbggFLT:1 עם חיבור kernel debugger (re 2 VMs או התקנה פיזית).

Binary Patching for Anti-Analytic Bypass

אם הקוד הזדוני בודק מפתח מסוים של bugger או VM, אתה יכול ללטף את בינארי כדי לדלג על זה לבדוק.לדוגמה, לשנות את FLT:20 (jump אם לא אפס) ל-FLT:21 (לא לקפוץ מותני) להשתמש עורך hexadecimal כמו FLT:0HxDFalrpleve 1LT:1 או disa להרכיב עם יכולות תיקון תמיד.

תגית: Unicorn Engine

עבור קוד פגז מאוד מפוספס כי מתנגד ניתוח סטטי, השתמש ב- FLT:0Unicorn EngineFLT:1 כדי לחקות ביצוע ב- Python.זה מאפשר לך להפעיל את הקוד ללא מערכת ההפעלה מלאה, מעקב אחר כל הוראות ותבניות גישה לזיכרון הקלטה.זה אידיאלי לנתח קוד metamorphic או מתואם.

שלב 5: מסמך ודיווח - להפוך את הניתוח למודיעין

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

  • (ב) ,0) סיכום סיכום סיכום של קונסולת 1 (התיאור הקצר של משפחת הקוד הזדוני, החומרה וההשפעה הכוללת.
  • (ב) ,0) פרטים טכניים מפורטים (FLT:1) - האש, גודל הקובץ, המדור, הספינר, האדריכלות.
  • (FLT:0)התנהגותית ניתוח FLT:1 - מה עושה הקוד זדוני כאשר הוצא להורג ( טיפות, שינויים במרשם, שיחות רשת).
  • (FLT:0) ניתוח קוד סימול FLT:1 - פונקציות מפתח, שגרות פענוח, פרוטוקול C2 וכיצד לפענח תקשורת.
  • (ב) [15],9) ,1 (ב) , רשימת בעלים, IPs, דומיין, נתיבי קבצים, מפתחות הרישום ו- mutexes.
  • (ב) [ה]ה']: [ה'] [ה'], [ה'], [ה'], [ה'], [ה'], [ה']], [ה']'[ה']'[ה']'[ה']'[ה']'[ה']']'[ה']']'[ה']'[ה'[ה']']'[ה']']'[ה'[ה']']'[ה'[ה'[ה'[ה'[ה'[ה']']']'[ה'[ה'[ה'[ה']']']']']']']'[ה'[ה'[ה']']']']']']'[ה'[ה']']'[ה'[ה'[ה'[ה']'[ה'[ה']']'[ה'[ה'[ה']']']'[ה']']'[ה'[ה'[ה'[ה'[
  • (ב) ,0) המלצות הפחתה (FLT:1) - כיצד לחסום, לתווך או לזהות את האיום בסביבה חיה.

השתמש בתבנית סטנדרטית או כלי כמו FLT:0 [MISPIRLT:1] כדי לשתף IOCs בפורמט קריא מכונה.

מסקנה: להפוך את התיאוריה לפרקטיקה

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

(הופנה מהדף "אולי" (הופנה מהדף "הורד) או "התחילה" ( UPX-packed Dropper) - ועבד את דרכך למעלה.הצטרפות לקהילות מקוונות כמו FLT:0Malware UnicornFLT:1, The FLT:2ReconvinFLT 3:2Reconhaver: ALT 3) או the Realr of Your Defineeringer of Your Realr of Your Realr of Your Realr (Reverse) to learnddit to learn of Your Real) to learn to learn of Your Real Deficialddddded to learn to learn to learn to be a World) and a World, as Your Real Defer to learn to learn to be a World) to be a World, and a World, or a World, or a World, and the Dance of Your Real Defer, and the Dance of Your Real Reverse Security Index, or the World, or a World, or the World, or the Dance of Your Real Reverse Defer, or a World, as Your Real Reverse.

Further Reading & Resources:

  • (ב) ,0)Ghidra - הנדסה הפוכה NSA מסגרת ההרחבה 1
  • (ב) [15] , ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
  • (ב) ⁇ ⁇ ⁇ ⁇ ⁇
  • (ב) ,0) פרוטוקול רשת Wireshark Network Analyzerrovalph 1
  • (ב) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇