נוזקות ופורנזיקה
Hashes של קבצים ב-DFIR והאתיקה של העלאה ל-VirusTotal
איך hashes מזהים קבצים, למה SHA-256 החליף את MD5, איך NSRL מסנן תוכנות מוכרות, ולמה העלאת קובץ ל-VirusTotal היא שיתוף שלו.
triage סטטי ב-sandbox שלעולם לא מריץ את הדגימה, ומודל שמסביר ומוביל ל-ATT&CK בלי לסרב. הדטונציה נשארת במעבדה שלכם.
ל-triage של דגימה חשודה יש שני צרכים שמושכים לכיוונים מנוגדים: קריאה מהירה של מה היא, ומודל שבאמת ידון בה. עוזר כללי מסרב לשני ברגע שהמילה malware מופיעה. פלטפורמה משותפת לא נותנת את הראשון בבטחה, כי להריץ את הדגימה זה הדבר היחיד שאתם לא רוצים שהיא תעשה. NotHoly מטפלת בצד הסטטי ובהסבר, ולעולם לא מריצה את הדגימה. הדטונציה נשארת במעבדה המבודדת שלכם. מקרה השימוש של detection engineering מכסה את החוקות שאתם בונים ממנה.
צרפו דגימה בצ׳אט או הריצו notholy analyze, וה-parser מחלץ תמונה ראשונה בלי להריץ כלום. ל-PE או ELF אתם מקבלים את ה-SHA-256, הגודל, האנטרופיה, הפורמט, ה-entry point, ה-sections וה-imports. אתם מקבלים את ה-strings ותצוגה מקדימה של disassembly מתחילת הקובץ. ארכיון נותן את העץ שלו, מסמך נותן את הטקסט שלו בלי להריץ מאקרו או סקריפט, ו-pickle של Python מפורק, לעולם לא נטען. תבנית של מפתח או token מעלה אזהרת credentials_detected, ו-zip bomb נעצר מוקדם עם הודעה. כל קובץ נפרסר ב-sandbox חד-פעמי בלי רשת ועם שורש לקריאה בלבד, כי קובץ שנשלח נחשב עוין. מדריך הקבצים מכיל את הסוגים והמגבלות.
notholy analyze ./sample.exeעם העובדות הסטטיות ביד, המודל קורא אותן בלי להיתקע על השאלה אם הניתוח מותר, כי הניתוח הוא העבודה. הוא מסביר מה section או import מרמזים, מקבץ strings למה שנראה C2, persistence או anti-analysis, וממפה התנהגות ל-MITRE ATT&CK, שנמצא בבסיס הידע עם הייחוס ש-MITRE דורשת. בקשו חוקת YARA או Sigma והוא מנסח אחת מהאינדיקטורים שאישרתם. string של גרסה או מוצר יכול ללכת ל-lookup של CVE, שמדווח אם ה-CVE ב-CISA KEV ואם יש לו שימוש ידוע ב-ransomware. גם בסיס הידע וגם נתוני ה-CVE נקראים דרך ה-CLI ודרך ה-API, אז אצווה של דגימות עוברת triage מסקריפט. כשהמסמך הוא הדגימה, ה-parser מושך את הטקסט בלי להריץ מאקרו, אז קובץ office או PDF זדוני מוסר את הסקריפט המוטמע ואת ה-URLs כדי שהמודל יקרא, לא יריץ. התוצאה היא קריאה שאפשר לשים מול עמית, עם הטכניקה נקובה ומקור בכל טענה.
strings -n 8 ./sample.exe | notholy "group these by C2, persistence and anti-analysis, then draft a YARA rule"שום דבר שאתם מעלים לא מורץ, ואין ניתוח דינמי, אז הדגימה לעולם לא רצה אצלנו ולא מגיעה למטרה. קובץ שאתם שולחים לניתוח נשמר מוצפן, עם תוקף של שעה שנרשם. מחיקה אוטומטית עדיין לא פעילה, אז כתבו ל[email protected] כדי להסיר אחד. אינפרנס ה-API לא שומר prompt ולא תשובה, רק מטא-דאטה, אז ניתוח שאתם מריצים דרך ה-API לא נשמר. בסיס הידע והמודל נושאים טכניקה ותיעוד, לא malware שעובד, אז זה מקום להבין דגימה, לא מקום להשיג אחת.
זה triage סטטי, לא תא דטונציה. אין ניתוח דינמי, אין לכידת רשת ואין unpacking בזמן ריצה, אז דגימה ארוזה או מודעת-sandbox מוסרת את ההתנהגות האמיתית שלה רק במעבדה שלכם. אין decompiler ואין גרף זרימת בקרה, והתצוגה המקדימה של disassembly היא רק תחילת הקובץ. המודל יכול לנקוב במשפחה הלא נכונה, לפספס אינדיקטור או להמציא אחד, אז אשרו כל IOC לפני שהוא נכנס לדוח או לרשימת חסימה. תמונות נותנות רק מידות, בלי OCR עדיין.
השאירו את הדטונציה במעבדה שלכם, ותנו ל-NotHoly לעשות triage ולהסביר. שימו יתרה קטנה בתמחור ושלחו את הדגימה הראשונה.
נוזקות ופורנזיקה
איך hashes מזהים קבצים, למה SHA-256 החליף את MD5, איך NSRL מסנן תוכנות מוכרות, ולמה העלאת קובץ ל-VirusTotal היא שיתוף שלו.
נוזקות ופורנזיקה
לכתוב חוק YARA ראשון, להתאים לקובץ בדיקה לא מזיק אחד ולא לאחר, ולהבין למה כל חוק צריך בדיקות חיוביות ושליליות.