חומר עזר של סכימת נרמול DNS של מודל אבטחה מתקדמת (ASIM)

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

לקבלת מידע נוסף, ראה נרמול ומודל מידע אבטחה מתקדם (ASIM).

מבט כולל על סכימה

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

הפעילות החשובה ביותר שדווחה על-ידי שרתי DNS היא שאילתת DNS, שעבורה EventType השדה מוגדר ל- Query.

השדות החשובים ביותר באירוע DNS הם:

  • DnsQuery, אשר מדווח על שם התחום שעבורו השאילתה הונפקה.

  • SrcIpAddr (כינוי ל- IpAddr), המייצג את כתובת ה- IP שממנה נוצרה הבקשה. שרתי DNS מספקים בדרך כלל את השדה SrcIpAddr, אך לעתים לקוחות DNS אינם מספקים שדה זה ומספקים רק את השדה SrcHostname .

  • EventResultDetails, אשר מדווח אם הבקשה הצליחה ואם לא, מדוע.

  • כאשר אפשרות זו זמינה, DnsResponseName, אשר מכיל את התשובה שסופקה על-ידי השרת לשאילתה. ASIM אינו דורש ניתוח מבנה טקסט של התגובה, והתבנית שלו משתנה בין מקורות.

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

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

הנחיות לאיסוף אירועי DNS

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

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

זרימת בקשות DNS פשוטה יותר.

מאחר שמקטעי בקשה ותגובה אינם מחוברים זה לזה ישירות בזרימת בקשת ה- DNS, רישום מלא עלול לגרום לשכפול משמעותי.

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

אם מקור הנתונים שלך תומך ברישום DNS מלא ובחרת לרשום מקטעים מרובים, התאם את השאילתות שלך כדי למנוע שכפול נתונים ב- Microsoft Sentinel.

לדוגמה, באפשרותך לשנות את השאילתה באמצעות הנורמלית הבאה:

_Im_Dns | where SrcIpAddr != "127.0.0.1" and EventSubType == "response"

מנתחי מבנה טקסט

לקבלת מידע נוסף אודות מנתחי ASIM, עיין במבט כולל על מנתחי ASIM.

מנתחים מוגנים

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

לקבלת רשימת מנתחי ה Microsoft Sentinel DNS המספקים את הטקסט שברצונך להשתמש בו, עיין ברשימה מנתחי ASIM.

הוספת מנתחים מנומולים משלך

בעת יישום מנתחים מותאמים אישית עבור מודל המידע של Dns, תן שם לפונקציות KQL בתבנית vimDns<vendor><Product>. עיין במאמר ניהול מנתחי ASIM כדי ללמוד כיצד להוסיף את המנתחים המותאמים אישית שלך למנתח אחדות ה- DNS.

סינון פרמטרים של מנתח

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

הפרמטרים הבאים לסינון זמינים:

Name סוג תיאור
זמן התחלה Datetime סנן רק שאילתות DNS שהפעלו בשעה זו או לאחר מכן. פרמטר TimeGenerated זה מסנן בשדה, שהוא המציין הסטנדרטי עבור מועד האירוע, ללא קשר למיפוי הספציפי למנתח של השדות EventStartTime ו- EventEndTime.
שעת סיום Datetime סנן רק שאילתות DNS שהפעלתן הסתיימה בשעה זו או לפניה. פרמטר TimeGenerated זה מסנן בשדה, שהוא המציין הסטנדרטי עבור מועד האירוע, ללא קשר למיפוי הספציפי למנתח של השדות EventStartTime ו- EventEndTime.
srcipaddr מחרוזת סנן רק שאילתות DNS מכתובת IP זו המהווה מקור.
domain_has_any דינאמי/מחרוזת סנן רק שאילתות DNS שבהן domain ל- (או query) יש אחד ממות התחומים הרשומים, כולל כחלק מתחום האירוע. אורך הרשימה מוגבל ל- 10,000 פריטים.
שם קוד תגובה מחרוזת סנן רק שאילתות DNS שעבורן שם קוד התגובה תואם לערך שסופק.
לדוגמה: NXDOMAIN
response_has_ipv4 מחרוזת סנן רק שאילתות DNS שבהן שדה התגובה כולל את הקידומת של כתובת ה- IP או כתובת ה- IP שסופקה. השתמש בפרמטר זה כאשר ברצונך לסנן לפי כתובת IP או קידומת בודדת.

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

השתמש בפרמטר זה כאשר ברצונך לסנן לפי רשימה של כתובות IP או קידומות.

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

לדוגמה, כדי לסנן רק שאילתות DNS מהיום האחרון שפענוח שם התחום נכשל, השתמש ב:

_Im_Dns (responsecodename = 'NXDOMAIN', starttime = ago(1d), endtime=now())

כדי לסנן רק שאילתות DNS עבור רשימה שצוינה של שמות תחומים, השתמש ב:

let torProxies=dynamic(["tor2web.org", "tor2web.com", "torlink.co"]);
_Im_Dns (domain_has_any = torProxies)

פרמטר מסוים יכול לקבל הן את רשימת הערכים מסוג והן dynamic ערך מחרוזת בודד. כדי להעביר רשימה מילולית לפרמטרים המצפים לערך דינאמי, השתמש באופן מפורש בליטרלי דינאמי. לדוגמה: dynamic(['192.168.','10.'])

תוכן מנורמה

לקבלת רשימה מלאה של כללי ניתוח המשתמשים באירועי DNS מנומולים, ראה תוכן אבטחה של שאילתת DNS.

פרטי סכימה

מודל מידע ה- DNS מיושר עם סכימת ישות ה- DNS של OSSEM.

לקבלת מידע נוסף, עיין בהפניה לפרמטר DNS של רשות המספרים שהוקצו לאינטרנט (IANA).

שדות ASIM נפוצים

חשוב

שדות המשותפים לכל הסכימות מתוארים בפירוט במאמר שדות משותפים של ASIM .

שדות משותפים עם קווים מנחים ספציפיים

הרשימה הבאה מציינת שדות הכוללים קווים מנחים ספציפיים עבור אירועי DNS:

שדה מחלקה סוג תיאור
סוג אירוע חובה ספירה מציין את הפעולה שדווחה על-ידי הרשומה.

עבור רשומות DNS, ערך זה יהיה קוד Op של DNS.

דוגמהQuery
סוג אירוע אופציונלי ספירה responseאו request .

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

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

דוגמהNXDOMAIN
לוח אירועים חובה SchemaVersion (מחרוזת) גירסת הסכימה התהמסמכים כאן היא 0.1.7.
מסת אירוע חובה ספירה שם הסכימה התהמסמכים כאן הוא Dns.
שדות Dvc - - עבור אירועי DNS, שדות מכשירים מתייחסים למערכת המדוחות על אירוע ה- DNS.

כל השדות המשותפים

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

מחלקה שדות
חובה - מספר אירועים
- EventStartTime
- EventEndTime
- סוג אירוע
- EventResult
- EventProduct
- אירועים ודור
- מסת אירוע
- לוח אירועים
- Dvc (Dvc)
מומלץ - EventResultDetails
- תם האירוע
- EventUid
- DvcIpAddr
- DvcHostname
- DvcDomain
- סוג DvcDomain
- DvcFQDN
- מזהה DvcId
- סוג DvcId
- DvcAction
אופציונלי - הודעת אירוע
- סוג אירוע
- EventOriginalUid
- סוג אירועאוריגינאלי
- EventOriginalSubType
- EventOriginalResultDetails
- EventOriginalSeverity
- EventProductVersion
- EventReportUrl
- לוח אירועים
- DvcZone
- DvcMacAddr
- DvcOs
- DvcOsVersion
- DvcOriginalAction
- DvcInterface
- שדות נוספים
- DvcDescription
- DvcScopeId
- DvcScope

שדות מערכת מקור

שדה מחלקה סוג תיאור
Src כינוי מחרוזת מזהה ייחודי של התקן המקור.

שדה זה יכול להשתמש בכינוי בשדות SrcDvcId, SrcHostname או SrcIpAddr .

דוגמה192.168.12.1
SrcIpAddr מומלץ כתובת IP כתובת ה- IP של הלקוח ששלח את בקשת ה- DNS. עבור בקשת DNS רקורסיבית, ערך זה יהיה בדרך כלל התקן הדיווח, וברוב המקרים הוא מוגדר כ- 127.0.0.1.

דוגמה192.168.12.1
SrcPortNumber אופציונלי מספר שלם יציאת המקור של שאילתת ה- DNS.

דוגמה54312
IpAddr כינוי כינוי ל - SrcIpAddr
SrcGeoCountry אופציונלי המדינה המדינה/אזור המשויכים לכתובת ה- IP של המקור.

דוגמהUSA
SrcGeoRegion אופציונלי אזור האזור המשויך לכתובת ה- IP של המקור.

דוגמהVermont
SrcGeoCity אופציונלי עיר העיר המשויכת לכתובת ה- IP של המקור.

דוגמהBurlington
הכרת תודה אופציונלי Latitude קו הרוחב של הקואורדינטות הגיאוגרפיות המשויכות לכתובת ה- IP של המקור.

דוגמה44.475833
SrcGeoLongitude אופציונלי קו אורך קו האורך של הקואורדינטה הגיאוגרפית המשויכת לכתובת ה- IP של המקור.

דוגמה73.211944
SrcRiskLevel אופציונלי מספר שלם רמת הסיכון המשויכת למקור. יש להתאים את הערך לטווח של ל- 0100, עם 0 לב טוב ובסיכון 100 גבוה.

דוגמה90
SrcOriginalRiskLevel אופציונלי מחרוזת רמת הסיכון המשויכת למקור, כפי שדווח על-ידי התקן הדיווח.

דוגמהSuspicious
שם SrcHost מומלץ שם מחשב מארח (מחרוזת) שם המחשב המארח של התקן המקור, לא כולל פרטי תחום.

דוגמהDESKTOP-1282V4D
Hostname כינוי כינוי ל - SrcHostname
SrcDomain מומלץ תחום (מחרוזת) התחום של התקן המקור.

דוגמהContoso
SrcDomainType מותנה ספירה הסוג של SrcDomain, אם הוא ידוע. ערכים אפשריים כוללים:
- Windows (כגון: contoso)
- FQDN (כגון: microsoft.com)

נדרש אם SrcDomain נמצא בשימוש.
SrcFQDN אופציונלי FQDN (מחרוזת) שם המחשב המארח של התקן המקור, כולל פרטי תחום כאשר הוא זמין.

הערה: שדה זה תומך הן בתבנית FQDN מסורתית והן בתבנית Windows domain\hostname. השדה SrcDomainType משקף את התבנית שבה נעשה שימוש.

דוגמהContoso\DESKTOP-1282V4D
SrcDvcId אופציונלי מחרוזת המזהה של התקן המקור כפי שדווח ברשומה.

לדוגמה: ac7e9755-8eae-4ffc-8a02-50ed7a2216c3
SrcDvcScopeId אופציונלי מחרוזת מזהה הטווח של פלטפורמת הענן שהמכשיר שייך אליו. SrcDvcScopeId ממופה למזהה מנוי ב- Azure ומזהה חשבון ב- AWS.
SrcDvcScope אופציונלי מחרוזת היקף פלטפורמת הענן שהמכשיר שייך אליו. SrcDvcScope ממופה למזהה מנוי ב- Azure ומזהה חשבון ב- AWS.
SrcDvcIdType מותנה ספירה הסוג של SrcDvcId, אם הוא ידוע. ערכים אפשריים כוללים:
- AzureResourceId
- MDEid

אם קיימים מספר זהים זמינים, השתמש בפריט הראשון מהרשימה ואחסן את האחרים ב- SrcDvcAzureResourceIdוב- SrcDvcMDEid, בהתאמה.

הערה: שדה זה נדרש אם SrcDvcId נמצא בשימוש.
SrcDeviceType אופציונלי ספירה סוג התקן המקור. ערכים אפשריים כוללים:
- Computer
- Mobile Device
- IOT Device
- Other
SrcDescription אופציונלי מחרוזת טקסט תיאורי המשויך למכשיר. לדוגמה: Primary Domain Controller.

שדות משתמש מקור

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

דוגמהS-1-12-1-4141952679-1282074057-627758481-2916039507
SrcUserScope אופציונלי מחרוזת הטווח, כגון דייר Microsoft Entra, שבו הוגדרו SrcUserId ו- SrcUsername. או מידע נוסף ורשימה של ערכים מותרים, ראה UserScope במאמר מבט כולל על הסכימה.
SrcUserScopeId אופציונלי מחרוזת מזהה הטווח, כגון Microsoft Entra Directory, שבו הוגדרו SrcUserIdו- SrcUsername. לקבלת מידע נוסף ורשימה של ערכים מותרים, ראה UserScopeId במאמר סקירת סכימה.
SrcUserIdType מותנה סוג משתמש סוג המזהה המאוחסן בשדה SrcUserId . לקבלת מידע נוסף ורשימה של ערכים מותרים, ראה UserIdType במאמר סקירת סכימה.
שם SrcUsername אופציונלי שם משתמש (מחרוזת) שם המשתמש של המקור, כולל פרטי תחום כאשר הוא זמין. לקבלת מידע נוסף, ראה ישות המשתמש.

דוגמהAlbertE
SrcUsernameType מותנה סוג שם משתמש מציין את סוג שם המשתמש המאוחסן בשדה SrcUsername . לקבלת מידע נוסף ורשימה של ערכים מותרים, ראה UsernameType במאמר מבט כולל על סכימה.

דוגמהWindows
משתמש כינוי כינוי ל - SrcUsername
SrcUserType אופציונלי סוג משתמש סוג משתמש המקור. לקבלת מידע נוסף ורשימה של ערכים מותרים, ראה UserType במאמר מבט כולל על סכימה.

לדוגמה: Guest
SrcUserSessionId אופציונלי מחרוזת המזהה הייחודי של הפעלת הכניסה של המעויר.

דוגמה102pTUgC3p8RIqHvzxLCHnFlg
SrcOriginalUserType אופציונלי מחרוזת סוג המשתמש המקורי המשמש כמקור, אם סופק על-ידי המקור.

שדות תהליך מקור

שדה מחלקה סוג תיאור
SrcProcessName אופציונלי מחרוזת שם הקובץ של התהליך שהתחל את בקשת ה- DNS. שם זה נחשב בדרך כלל לשם התהליך.

דוגמהC:\Windows\explorer.exe
תהליך כינוי Alias to the SrcProcessName

דוגמהC:\Windows\System32\rundll32.exe
SrcProcessId אופציונלי מחרוזת מזהה התהליך (PID) של התהליך שהתחל את בקשת ה- DNS.

דוגמה48610176

הערה: הסוג מוגדר כמחרוזת לתמיכה במערכות משתנות, אך ב- Windows Linux ערך זה חייב להיות מספרי.

אם אתה משתמש במחשב Windows או Linux והשתמשו בסוג אחר, הקפד להמיר את הערכים. לדוגמה, אם השתמשת בערך הקסדצימאלי, המר אותו לערך עשרוני.
SrcProcessGuid אופציונלי GUID (מחרוזת) מזהה ייחודי (GUID) שנוצר של התהליך שהתחל את בקשת ה- DNS.

דוגמהEF3BD0BD-2B74-60C5-AF5C-010000001E00

שדות מערכת יעד

שדה מחלקה סוג תיאור
שעון הקיץ כינוי מחרוזת מזהה ייחודי של השרת שקיבל את בקשת ה- DNS.

שדה זה עשוי להוסיף כינוי לשדות DstDvcId, DstHostnameאו DstIpAddr .

דוגמה192.168.12.1
DstIpAddr אופציונלי כתובת IP כתובת ה- IP של השרת שקיבל את בקשת ה- DNS. עבור בקשת DNS רגילה, ערך זה יהיה בדרך כלל התקן הדיווח, וברוב המקרים הוא מוגדר כ- 127.0.0.1.

דוגמה127.0.0.1
DstGeoCountry אופציונלי המדינה המדינה/האזור המשויכים לכתובת ה- IP של היעד. לקבלת מידע נוסף, ראה סוגים לוגיים.

דוגמהUSA
DstGeoRegion אופציונלי אזור האזור, או המצב, המשויך לכתובת ה- IP של היעד. לקבלת מידע נוסף, ראה סוגים לוגיים.

דוגמהVermont
DstGeoCity אופציונלי עיר העיר המשויכת לכתובת ה- IP של היעד. לקבלת מידע נוסף, ראה סוגים לוגיים.

דוגמהBurlington
DstGeoLatitude אופציונלי Latitude קו הרוחב של הקואורדינטה הגיאוגרפית המשויכת לכתובת ה- IP של היעד. לקבלת מידע נוסף, ראה סוגים לוגיים.

דוגמה44.475833
DstGeoLongitude אופציונלי קו אורך קו האורך של הקואורדינטה הגיאוגרפית המשויכת לכתובת ה- IP של היעד. לקבלת מידע נוסף, ראה סוגים לוגיים.

דוגמה73.211944
DstRiskLevel אופציונלי מספר שלם רמת הסיכון המשויכת ליעד. יש להתאים את הערך לטווח של 0 עד 100, ש- 0 הוא חיובי ו- 100 מהותי בסיכון גבוה.

דוגמה90
DstOriginalRiskLevel אופציונלי מחרוזת רמת הסיכון המשויכת ליעד, כפי שדווח על-ידי התקן הדיווח.

דוגמהMalicious
DstPortNumber אופציונלי מספר שלם מספר יציאת יעד.

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

דוגמהDESKTOP-1282V4D

הערה: ערך זה הכרחי אם DstIpAddr מצוין.
DstDomain אופציונלי תחום (מחרוזת) התחום של התקן היעד.

דוגמהContoso
סוג DstDomain מותנה ספירה הסוג של DstDomain, אם הוא ידוע. ערכים אפשריים כוללים:
- Windows (contoso\mypc)
- FQDN (learn.microsoft.com)

נדרש אם נעשה שימוש ב- DstDomain .
DstFQDN אופציונלי FQDN (מחרוזת) שם המחשב המארח של התקן היעד, כולל פרטי תחום כאשר הוא זמין.

דוגמהContoso\DESKTOP-1282V4D

הערה: שדה זה תומך הן בתבנית FQDN מסורתית והן בתבנית Windows domain\hostname. ה - DstDomainType משקף את התבנית שבה נעשה שימוש.
DstDvcId אופציונלי מחרוזת המזהה של התקן היעד כפי שדווח ברשומה.

דוגמהac7e9755-8eae-4ffc-8a02-50ed7a2216c3
DstDvcScopeId אופציונלי מחרוזת מזהה הטווח של פלטפורמת הענן שהמכשיר שייך אליו. DstDvcScopeId ממופה למזהה מנוי ב- Azure ומזהה חשבון ב- AWS.
DstDvcScope אופציונלי מחרוזת היקף פלטפורמת הענן שהמכשיר שייך אליו. DstDvcScope ממופה למזהה מנוי ב- Azure ומזהה חשבון ב- AWS.
DstDvcIdType מותנה ספירה הסוג של DstDvcId, אם הוא ידוע. ערכים אפשריים כוללים:
- AzureResourceId
- MDEidIf

אם קיימים מספר זהים זמינים, השתמש בפריט הראשון מהרשימה לעיל, ואחסן את האחרים בשדות DstDvcAzureResourceId או DstDvcMDEid , בהתאמה.

נדרש אם נעשה שימוש ב- DstDeviceId .
סוג DstDevice אופציונלי ספירה סוג התקן היעד. ערכים אפשריים כוללים:
- Computer
- Mobile Device
- IOT Device
- Other
שעון הקיץ אופציונלי מחרוזת טקסט תיאורי המשויך למכשיר. לדוגמה: Primary Domain Controller.

שדות ספציפיים ל- DNS

שדה מחלקה סוג תיאור
שאילתת Dns חובה מחרוזת התחום שהבקשה מנסה לפתור.

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

דוגמהwww.malicious.com
תחום כינוי כינוי ל - DnsQuery.
DnsQueryType אופציונלי מספר שלם קודי סוג הרשומה של משאב ה- DNS.

דוגמה28
DnsQueryTypeName מומלץ ספירה שמות רשומת משאב ה- DNS.

הערות:
- IANA אינה מגדירה את הרישיות עבור הערכים, לכן ניתוחים חייבים לרמל את האירוע לפי הצורך.
- הערך נתמך ANY עבור קוד התגובה 255.
- הערך נתמך TYPExxxx עבור קודי תגובה לא ממופים, xxxx כאשר הוא הערך המספרי של קוד התגובה, כפי שדווח על-ידי שרת ה- DNS BIND.
-אם המקור מספק קוד סוג של שאילתה מספרית בלבד ולא שם של סוג שאילתה, המנתח חייב לכלול טבלת בדיקת מידע כדי להעשיר ערך זה.

דוגמהAAAA
DnsResponseName אופציונלי מחרוזת תוכן התגובה, כפי שכלול ברשומה.

נתוני תגובת ה- DNS לא עקביים בכל התקני הדיווח, מורכבים לניתוח מבנה טקסט, ויש בהם פחות ערך עבור ניתוח מקור-אגנוסטי. לכן מודל המידע אינו דורש ניתוח ונירמול, ומודל Microsoft Sentinel משתמש בפונקציית עזר כדי לספק מידע תגובה. לקבלת מידע נוסף, ראה טיפול בתשובת DNS.
DnsResponseCodeName כינוי כינוי ל- EventResultDetails
DnsResponseCode אופציונלי מספר שלם קוד התגובה המספרי של DNS.

דוגמה3
מזהה טרנזקציהHex מומלץ הקסדצימאלי (מחרוזת) המזהה הייחודי של שאילתת ה- DNS כפי שהוקצה על-ידי לקוח ה- DNS, בתבנית הקסדצימאלית. שים לב שערך זה מהווה חלק מפרוטוקול ה- DNS ושנו מ- DnsSessionId, מזהה ההפעלה של שכבת הרשת, שהוקצה בדרך כלל על-ידי התקן הדיווח.
NetworkProtocol אופציונלי ספירה פרוטוקול התעבורה המשמש את אירוע פתרון הרשת. הערך יכול להיות UDP אוTCP, והוא מוגדר בדרך כלל ל- UDP עבור DNS.

דוגמהUDP
NetworkProtocolVersion אופציונלי ספירה גירסת NetworkProtocol. בעת שימוש בה כדי להבחין בין גירסת IP, השתמש בערכים וב IPv4 - IPv6.
DnsQueryClass אופציונלי מספר שלם מזהה מחלקת ה- DNS.

בפועל, רק מחלקת IN (מזהה 1) משמשת ולכן שדה זה פחות חשוב.
DnsQueryClassName מומלץ DnsQueryClassName (מחרוזת) שם מחלקת ה- DNS.

בפועל, רק מחלקת IN (מזהה 1) משמשת ולכן שדה זה פחות חשוב.

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

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

דוגמה["DR"]
DnsNetworkDuration אופציונלי מספר שלם משך הזמן, באלפיות שניה, להשלמת בקשת DNS.

דוגמה1500
משך כינוי כינוי ל - DnsNetworkDuration
DnsFlagsAuthenticated אופציונלי בוליאני דגל ה- DNS AD , הקשור ל- DNSSEC, מציין בתגובה שכל הנתונים הכלולים במקטעי התשובה והסמכות של התגובה אומתו על-ידי השרת בהתאם למדיניות של שרת זה. לקבלת מידע נוסף, ראה RFC 3655 סעיף 6.1 לקבלת מידע נוסף.
DnsFlagsAuthoritative אופציונלי בוליאני דגל ה- DNS AA מציין אם התגובה מהשרת היתה מוסמכת
DnsFlagsCheckingDisabled אופציונלי בוליאני דגל ה- DNS CD , הקשור ל- DNSSEC, מציין בשאילתה שהנתונים שאינם מאומתים מקובלים על המערכת השולחת את השאילתה. לקבלת מידע נוסף, ראה RFC 3655 סעיף 6.1 לקבלת מידע נוסף.
DnsFlagsRecursionAvailable אופציונלי בוליאני דגל ה- DNS RA מציין בתגובה שהשרת תומך בשאילתות רקורסיביות.
DnsFlagsRecursionDesired אופציונלי בוליאני דגל ה- DNS RD מציין בבקשה שהלקוח מעוניין שהשרת ישתמש בשאילתות רקורסיביות.
DnsFlagsTruncated אופציונלי בוליאני דגל ה- DNS TC מציין שתגובה נחתכה מכיוון שהיא חרגה מגודל התגובה המרבי.
סמן Dns אופציונלי בוליאני דגל ה- DNS Z הוא דגל DNS ששימוש בו, שייתכן שמערכות DNS ישנות יותר מדווחות עליו.
מזהה DnsSession אופציונלי מחרוזת מזהה הפעלת ה- DNS כפי שדווח על-ידי התקן הדיווח. ערך זה שונה מ- TransactionIdHex, המזהה הייחודי של שאילתת ה- DNS כפי שהוקצה על-ידי לקוח ה- DNS.

דוגמהEB4BFA28-2EAD-4EF7-BC8A-51DF4FDF5B55
מזהה הפעלה כינוי כינוי ל - DnsSessionId
DnsResponseIpCountry אופציונלי המדינה המדינה/אזור המשויכים לאחת מכתובות ה- IP בתגובה ל- DNS. לקבלת מידע נוסף, ראה סוגים לוגיים.

דוגמהUSA
DnsResponseIpRegion אופציונלי אזור האזור, או המצב, המשויך לאחת מכתובות ה- IP בתגובה ל- DNS. לקבלת מידע נוסף, ראה סוגים לוגיים.

דוגמהVermont
DnsResponseIpCity אופציונלי עיר העיר המשויכת לאחת מכתובות ה- IP בתגובה ל- DNS. לקבלת מידע נוסף, ראה סוגים לוגיים.

דוגמהBurlington
DnsResponseIpLatitude אופציונלי Latitude קו הרוחב של הקואורדינטות הגיאוגרפיות המשויכות לאחת מכתובות ה- IP בתגובה ל- DNS. לקבלת מידע נוסף, ראה סוגים לוגיים.

דוגמה44.475833
DnsResponseIpLongitude אופציונלי קו אורך קו האורך של הקואורדינטות הגיאוגרפיות המשויכות לאחת מכתובות ה- IP בתגובה ל- DNS. לקבלת מידע נוסף, ראה סוגים לוגיים.

דוגמה73.211944

שדות בדיקה

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

שדה מחלקה סוג תיאור
קטגוריית כתובת URL אופציונלי מחרוזת מקור אירוע DNS עשוי גם לחפש את הקטגוריה של התחומים המבוקשים. השדה נקרא 'קטגוריית כתובת URL' כדי ליישר את Microsoft Sentinel של הרשת.

DomainCategory מתווספת ככינוי המתאים ל- DNS.

דוגמהEducational \\ Phishing
קטגוריית תחום כינוי כינוי לקטגוריה של כתובת URL.
שם כלל אופציונלי מחרוזת השם או המזהה של הכלל שזיהה את האיום.

דוגמהAnyAnyDrop
מספר כלל אופציונלי מספר שלם מספר הכלל שזיהה את האיום.

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

לדוגמה, 123456
שם כלל אופציונלי מחרוזת השם או המזהה של הכלל המשויך להתראה.

לדוגמה, Server PSEXEC Execution via Remote Access
מזהה איום אופציונלי מחרוזת המזהה של האיום או התוכנות הזדוניות המזוהות בהפעלת הרשת.

דוגמהTr.124
קטגוריית איום אופציונלי מחרוזת אם מקור אירוע DNS מספק גם אבטחת DNS, הוא עשוי גם להעריך את אירוע ה- DNS. לדוגמה, הוא יכול לחפש את כתובת ה- IP או התחום במסד נתונים של בינת איומים ולהקצות את התחום או כתובת ה- IP עם קטגוריית איום.
ThreatIpAddr אופציונלי כתובת IP כתובת IP שעבורה זוהה איום. השדה ThreatField מכיל את שם השדה ThreatIpAddr מייצג. אם מזוהה איום בשדה תחום , שדה זה אמור להיות ריק.
ThreatField מותנה ספירה השדה שעבורו זוהה איום. הערך הוא , SrcIpAddr, DstIpAddrDomainאו DnsResponseName.
שם איום אופציונלי מחרוזת שם האיום שזוהה, כפי שדווח על-ידי התקן הדיווח.
ThreatConfidence אופציונלי ConfidenceLevel (מספר שלם) רמת הביטחון של האיום שזוהה, מנורמה לערך בין 0 ל- 100.
ThreatOriginalConfidence אופציונלי מחרוזת רמת הביטחון המקורית של האיום שזוהה, כפי שדווח על-ידי התקן הדיווח.
ThreatRiskLevel אופציונלי RiskLevel (מספר שלם) רמת הסיכון המשויכת לאיום שזוהה, מנורמה לערך בין 0 ל- 100.
ThreatOriginalRiskLevel אופציונלי מחרוזת רמת הסיכון המקורית המשויכת לאיום שזוהה, כפי שדווח על-ידי התקן הדיווח.
איומיםאקטיביים אופציונלי בוליאני נכון אם האיום שזוהה נחשב לאיום פעיל.
ThreatFirstReportedTime אופציונלי Datetime בפעם הראשונה שבה כתובת ה- IP או התחום זוהו כאיום.
ThreatLastReportedTime אופציונלי Datetime הפעם האחרונה שבה כתובת ה- IP או התחום זוהו כאיום.

כינויים ושדות שהופחתו

השדות הבאים הם כינויים השמורים לצורך תאימות לאחור. הם הוסרו מהסכימה ב- 31 בדצמבר 2021.

  • Query (כינוי ל- DnsQuery)
  • QueryType (כינוי ל- DnsQueryType)
  • QueryTypeName (כינוי ל- DnsQueryTypeName)
  • ResponseName (כינוי ל- DnsResponseName)
  • ResponseCodeName (כינוי ל- DnsResponseCodeName)
  • ResponseCode (כינוי ל- DnsResponseCode)
  • QueryClass (כינוי ל- DnsQueryClass)
  • QueryClassName (כינוי ל- DnsQueryClassName)
  • Flags (כינוי ל- DnsFlags)
  • SrcUserDomain

עדכוני סכימה

השינויים בגירסה 0.1.2 של הסכימה הם:

  • נוסף השדה EventSchema.
  • שדה דגל ייעודי נוסף, המשך את שדה הדגלים המשולב:DnsFlagsAuthoritative, DnsFlagsCheckingDisabled, , DnsFlagsRecursionAvailable, DnsFlagsRecursionDesired, DnsFlagsTruncatedו- .DnsFlagsZ

השינויים בגירסה 0.1.3 של הסכימה הם:

  • כעת הסכימה תמסמכים במפורש Src*, Dst*, Process* ושדות User* .
  • נוספו Dvc* שדות נוספים כדי להתאים את הגדרת השדות המשותפים העדכנית ביותר.
  • נוסף Src ככינויים Dst למזהה מוביל עבור מערכות המקור והיעד.
  • נוסף לו DnsNetworkDuration כינוי Durationאופציונלי ו- , .
  • נוספו שדות אופציונליים של מיקום גיאוגרפי ורמת סיכון.

השינויים בגירסה 0.1.4 של הסכימה הם:

  • הוספת את השדות האופציונליים ThreatIpAddr, ThreatField, ThreatName, ThreatConfidence, ThreatOriginalConfidenceThreatOriginalRiskLevel, ThreatIsActive, ThreatFirstReportedTimeו- ThreatLastReportedTime.

השינויים בגירסה 0.1.5 של הסכימה הם:

  • הוספת את השדות SrcUserScope, SrcUserSessionId, SrcDvcScopeId, SrcDvcScope, DstDvcScopeId, DstDvcScope, DvcScopeIdו- DvcScope.

השינויים בגירסה 0.1.6 של הסכימה הם:

  • הוספת את השדות DnsResponseIpCountry, DnsResponseIpRegion, DnsResponseIpCity, DnsResponseIpLatitudeו- DnsResponseIpLongitude.

השינויים בגירסה 0.1.7 של הסכימה הם:

  • הוספת את השדות SrcDescription, SrcOriginalRiskLevel, DstDescription, DstOriginalRiskLevel, SrcUserScopeId, RuleNetworkProtocolVersion, RuleName, RuleNumberו- ThreatId.

אי התאמות ספציפיות למקור

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

הטבלה הבאה מפרטת אי התאמות ידועות:

Source אי התאמות
Microsoft DNS Server שנאסף באמצעות מחבר ה- DNS וסוכן ניתוח יומן הרישום המחבר אינו מספק את השדה ההכרחי DnsQuery עבור מזהה האירוע המקורי 264 (תגובה לעדכון דינאמי). הנתונים זמינים במקור, אך אינם מועברים על-ידי המחבר.
Corelight Zeek ייתכן ש- Corelight Zeek לא יספק את השדה ההכרחי DnsQuery. הבחנו באופן פעולה כזה במקרים מסוימים שבהם שם קוד תגובת ה- DNS הוא NXDOMAIN.

טיפול בתשובת DNS

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

באפשרותך גם לספק פונקציית KQL _imDNS<vendor>Response_נוספת הנקראת , אשר מקבלת את התגובה שאינה משווה כקלט ומחזירה ערך דינאמי עם המבנה הבא:

[
    {
        "part": "answer"
        "query": "yahoo.com."
        "TTL": 1782
        "Class": "IN"
        "Type": "A"
        "Response": "74.6.231.21"
    }
    {
        "part": "authority"
        "query": "yahoo.com."
        "TTL": 113066
        "Class": "IN"
        "Type": "NS"
        "Response": "ns5.yahoo.com"
    }
    ...
]

השדות בכל מילון בערך הדינאמי תואמים לשדות בכל תגובת DNS. הערך part צריך לכלול את answer, authority, או additional כדי לשקף את החלק בתגובה שהמילון שייך אליו.

עצה

כדי להבטיח ביצועים מיטביים, התקשר לפונקציה imDNS<vendor>Response רק בעת הצורך, ורק לאחר סינון ראשוני כדי להבטיח ביצועים טובים יותר.

טיפול בדגלים של DNS

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

באפשרותך גם לספק פונקציית KQL _imDNS<vendor>Flags_נוספת הנקראת , אשר לוקחת את התגובה שאינה משווה, או שדות דגל ייעודיים, כקלט ומחזירה רשימה דינאמית, עם ערכים בוליאניים המייצגים כל דגל בסדר הבא:

  • מאומת (AD)
  • סמכותי (AA)
  • בודק לא זמין (תקליטור)
  • רקורסיה זמינה (RA)
  • רקורסיה הרצויה (RD)
  • חתוך (TC)
  • Z

השלבים הבאים

לקבלת מידע נוסף, ראה: