مرجع مخطط تسوية DNS لنموذج معلومات الأمان المتقدم (ASIM) (معاينة عامة)
يستخدم نموذج معلومات DNS لوصف الأحداث التي تم الإبلاغ عنها بواسطة خادم DNS أو نظام أمان DNS، كما يستخدم من قبل Microsoft Azure Sentinel لتمكين التحليلات حيادية المصدر.
لمزيد من المعلومات، راجع التسوية ونموذج معلومات الأمان المتقدم (ASIM).
هام
مخطط تسوية DNS قيد المعاينة حالياً. تُوفّر هذه الميزة دون الحاجة إلى اتفاقية مستوى الخدمة، ولا يوصى بها لأحمال العمل الخاصة بالإنتاج.
تتضمن الشروط التكميلية لمعاينة Azure شروطا قانونية إضافية تنطبق على ميزات Azure الموجودة في الإصدار التجريبي أو المعاينة أو التي لم يتم إصدارها بعد في التوفر العام.
نظرة عامة على المخطط
يمثل مخطط ASIM DNS نشاط بروتوكول 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، يمكن أن يؤدي التسجيل الكامل إلى تكرار كبير.
الشريحة الأكثر قيمة للتسجيل هو الاستجابة للعميل. توفر الاستجابة استعلامات اسم المجال، ونتيجة البحث، وعنوان IP للعميل. بينما تقوم العديد من أنظمة DNS بتسجيل هذه الشريحة فحسب، هناك قيمة في تسجيل الأجزاء الأخرى. على سبيل المثال، غالباً ما يستفيد هجوم تسمم ذاكرة التخزين المؤقت DNS من الاستجابات المزيفة من خادم المراحل التمهيدية.
إذا كان مصدر البيانات يدعم تسجيل DNS الكامل وقد اخترت تسجيل شرائح متعددة، فقم بتعديل استعلاماتك لمنع تكرار البيانات في Microsoft Azure Sentinel.
على سبيل المثال، يمكنك تعديل الاستعلام الخاص بك بالتسوية التالية:
_Im_Dns | where SrcIpAddr != "127.0.0.1" and EventSubType == "response"
المُحللات
لمزيد من المعلومات حول مُحللات ASIM، راجع نظرة عامة على مُحللات ASIM.
محللات خارج الصندوق
لاستخدام المحللات التي تعمل على توحيد جميع محللات ASIM الجاهزة، والتأكد من تشغيل التحليل عبر جميع المصادر المكونة، استخدم محلل _Im_Dns
التوحيد كاسم الجدول في الاستعلام الخاص بك.
للحصول على قائمة محللات DNS يوفر Microsoft Sentinel خارج الصندوق الرجوع إلى قائمة محللات ASIM.
أضف المحلل اللغوي المعياري الخاص بك
عند تنفيذ محللات مخصصة لنموذج معلومات Dns، قم بتسمية وظائف KQL باستخدام التنسيق vimDns<vendor><Product>
. راجع المقالة إدارة محللات ASIM لمعرفة كيفية إضافة محللات مخصصة إلى محلل DNS الموحد.
تصفية معلمات المُحلل
تدعم محللات DNS معلمات التصفية. في حين أن هذه المعلمات اختيارية، فإنها يمكن أن تحسن أداء الاستعلام الخاص بك.
تتوفّر معلمات التصفية التالية:
Name | كتابة | الوصف |
---|---|---|
starttime | datetime | تصفية استعلامات DNS التي تم تشغيلها في هذا الوقت أو بعده فحسب. |
endtime | datetime | تصفية استعلامات DNS التي انتهت تشغيلها في هذا الوقت أو قبله فحسب. |
srcipaddr | سلسلة | تصفية استعلامات DNS فقط من عنوان IP المصدر هذا. |
domain_has_any | ديناميكي/سلسلة | تصفية استعلامات DNS فقط التي يحتوي فيها domain (أو query ) على أي من أسماء المجالات المدرجة، بما في ذلك كجزء من مجال الحدث. طول القائمة محدد بـ 10000 عنصر. |
responsecodename | سلسلة | تصفية استعلامات DNS فقط التي يتطابق فيها اسم التعليمة البرمجية للاستجابة مع القيمة المتوفرة. على سبيل المثال: NXDOMAIN |
response_has_ipv4 | سلسلة | تصفية استعلامات DNS فقط التي ينطوي حقل الاستجابة فيها على عنوان IP المتوفر أو بادئة عنوان IP. استخدم هذه المعلمة عندما ترغب في التصفية على عنوان IP واحد أو بادئة واحدة. لا يتم إرجاع النتائج للمصادر التي لا توفر استجابة. |
response_has_any_prefix | ديناميكي | تصفية استعلامات DNS فقط التي يتضمن فيها حقل الاستجابة أياً من عناوين IP المدرجة أو بادئات عناوين IP. يجب أن تنتهي البادئات بـ . ، على سبيل المثال: 10.0. . استخدم هذه المعلمة عندما ترغب في التصفية على قائمة عناوين IP أو البادئات. لا يتم إرجاع النتائج للمصادر التي لا توفر استجابة. طول القائمة محدد بـ 10000 عنصر. |
eventtype | سلسلة | تصفية استعلامات 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 مع مخطط كيان OSSEM DNS.
لمزيد من المعلومات، راجع مرجع معلمة DNS لمرجع الأرقام المعينة عبر الإنترنت (IANA).
حقول ASIM المشتركة
هام
توصف الحقول المشتركة لكافة المخططات بالتفصيل في مقالة الحقول المشتركة لـ ASIM.
الحقول المشتركة مع وجود إرشادات محددة
تشير القائمة التالية إلى الحقول التي تحتوي على إرشادات محددة لأحداث DNS:
ميدان | فصل | النوع | الوصف |
---|---|---|---|
EventType | إلزامي | Enumerated | يشير إلى العملية التي أبلغ عنها السجل. بالنسبة لسجلات DNS، ستكون هذه القيمة هي تعليمة برمجية لـ DNS. مثال: Query |
EventSubType | اختياري | Enumerated | إما request أو response . بالنسبة لمعظم المصادر، يتم تسجيل الاستجابات فقط، وبالتالي فإن القيمة غالباً ما تكون استجابة. |
EventResultDetails | إلزامي | Enumerated | بالنسبة لأحداث DNS، يوفر هذا الحقل تعليمة برمجية لاستجابة DNS. ملاحظات: - لا تحدد IANA حالة القيم، لذلك يجب أن تقوم التحليلات بتسوية الحالة. - إذا كان المصدر يوفر رمز استجابة رقمياً فقط وليس اسم تعليمة برمجية للاستجابة، يجب أن ينطوي المحلل على جدول بحث للإثراء بهذه القيمة. - إذا كان هذا السجل يمثل طلباً وليس استجابة، فعيّنه إلى لا ينطبق. مثال: NXDOMAIN |
EventSchemaVersion | إلزامي | السلسلة | إصدار المخطط الموثق هنا هو 0.1.7. |
EventSchema | إلزامي | السلسلة | اسم المخطط الموثق هنا هو Dns. |
حقول Dvc | - | - | بالنسبة لأحداث DNS، تشير حقول الجهاز إلى النظام الذي يبلغ عن حدث DNS. |
جميع الحقول الشائعة
تُعد الحقول التي تظهر في الجدول أدناه مشتركة في جميع مخططات ASIM. أية مبادئ توجيهية محددة أعلاه تلغي الإرشادات العامة للحقل. على سبيل المثال، قد يكون الحقل اختياريًا بشكل عام، لكنه إلزامي لمخطط معين. لمزيد من التفاصيل حول كل حقل، راجع مقالة الحقول المشتركة ASIM.
فصل | الحقول |
---|---|
إلزامي | - EventCount - EventStartTime - EventEndTime - EventType - EventResult - EventProduct - EventVendor - EventSchema - EventSchemaVersion - Dvc |
مستحسن | - EventResultDetails - EventSeverity - EventUid - DvcIpAddr - DvcHostname - DvcDomain - DvcDomainType - DvcFQDN - DvcId - DvcIdType - DvcAction |
اختياري | - EventMessage - EventSubType - EventOriginalUid - EventOriginalType - EventOriginalSubType - EventOriginalResultDetails - EventOriginalSeverity - EventProductVersion - EventReportUrl - مالك الحدث - DvcZone - DvcMacAddr - DvcOs - DvcOsVersion - DvcOriginalAction - DvcInterface - AdditionalFields - 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 |
SrcGeoLatitude | اختياري | Latitude | خط عرض الإحداثيات الجغرافية المقترنة بعنوان IP المصدر. مثال: 44.475833 |
SrcGeoLongitude | اختياري | Longitude | خط طول الإحداثيات الجغرافية المقترنة بعنوان IP المصدر. مثال: 73.211944 |
SrcRiskLevel | اختياري | رقم صحيح | مستوى المخاطر المقترن بالمصدر. يجب تعديل القيمة إلى نطاق من 0 إلى 100 ، مع 0 لغير ضارة و100 لخطر كبير.مثال: 90 |
SrcOriginalRiskLevel | اختياري | رقم صحيح | مستوى المخاطر المقترن بالمصدر، كما تم الإبلاغ عنه بواسطة جهاز التقارير. مثال: Suspicious |
SrcHostname | مستحسن | السلسلة | اسم مضيف الجهاز المصدر، باستثناء معلومات المجال. مثال: DESKTOP-1282V4D |
اسم المضيف | الاسم المستعار | الاسم المستعار لـ SrcHostname | |
SrcDomain | مستحسن | السلسلة | مجال الجهاز المصدر. مثال: Contoso |
SrcDomainType | شرطي | Enumerated | نوع SrcDomain، إذا كان معروفًا. تشمل القيم المتاحة ما يلي: - Windows (مثل: contoso )- FQDN (مثل: microsoft.com )مطلوب في حال استخدام SrcDomain. |
SrcFQDN | اختياري | السلسلة | اسم مضيف الجهاز المصدر، بما يشمل معلومات المجال عند توفرها. ملاحظة: يدعم هذا الحقل كلًا من تنسيق FQDN التقليدي وتنسيق Windows domain \ hostname. يعكس الحقل SrcDomainType التنسيق المُستخدم. مثال: Contoso\DESKTOP-1282V4D |
SrcDvcId | اختياري | السلسلة | معرّف الجهاز المصدر كما تم الإبلاغ به في السجل. على سبيل المثال: ac7e9755-8eae-4ffc-8a02-50ed7a2216c3 |
SrcDvcScopeId | اختياري | السلسلة | معرف نطاق النظام الأساسي السحابي الذي ينتمي إليه الجهاز. مخطط SrcDvcScopeId إلى معرف اشتراك على Azure ومعرف حساب على AWS. |
SrcDvcScope | اختياري | السلسلة | نطاق النظام الأساسي السحابي الذي ينتمي إليه الجهاز. مخطط SrcDvcScope إلى معرف اشتراك على Azure وإلى معرف حساب على AWS. |
SrcDvcIdType | شرطي | Enumerated | نوع SrcDvcId، إذا كان معروفًا. تشمل القيم المتاحة ما يلي: - AzureResourceId - MDEid في حالة توفر معرفات متعددة، فاستخدم المعرف الأول من القائمة، وقم بتخزين المعرفات الأخرى في SrcDvcAzureResourceId وSrcDvcMDEid، على الترتيب. ملاحظة: هذا الحقل مطلوب في حال استخدام SrcDvcId. |
SrcDeviceType | اختياري | Enumerated | نوع الجهاز المصدر. تشمل القيم المتاحة ما يلي: - 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، حيث يتم تعريف SrcUserId وSrcUsername. لمزيد من المعلومات وقائمة بالقيم المسموح بها، راجع UserScopeId في مقالة نظرة عامة على المخطط. |
SrcUserIdType | شرطي | UserIdType | نوع المعرف المخزن في حقل SrcUserId. لمزيد من المعلومات وقائمة القيم المسموح بها، راجع UserIdType في مقالة نظرة عامة على المخطط. |
SrcUsername | اختياري | اسم مستخدم | اسم مستخدم المصدر، بما في ذلك معلومات المجال عند توفرها. لمزيد من المعلومات، راجع كيان المستخدم. مثال: AlbertE |
SrcUsernameType | شرطي | UsernameType | يحدد نوع اسم المستخدم المخزن في حقل SrcUsername . لمزيد من المعلومات، وقائمة القيم المسموح بها، راجع نوع اسم المستخدم في مقالة نظرة عامة على المخطط. مثال: Windows |
User | الاسم المستعار | الاسم المستعار لـ SrcUsername | |
SrcUserType | اختياري | UserType | نوع المستخدم المصدر. لمزيد من المعلومات، وقائمة القيم المسموح بها، راجع نوع المستخدم في مقالة نظرة عامة على المخطط. على سبيل المثال: Guest |
SrcUserSessionId | اختياري | السلسلة | المعرّف الفريد لجلسة تسجيل دخول المستخدم. مثال: 102pTUgC3p8RIqHvzxLCHnFlg |
SrcOriginalUserType | اختياري | السلسلة | نوع مستخدم المصدر الأصلي، إذا قدمه المصدر. |
حقول معالجة المصدر
الحقل | الفصل | النوع | الوصف |
---|---|---|---|
SrcProcessName | اختياري | السلسلة | اسم ملف العملية التي بدأت طلب DNS. يعتبر هذا الاسم عادةً اسم العملية. مثال: C:\Windows\explorer.exe |
العملية | الاسم المستعار | الاسم المستعار لـ SrcProcessName مثال: C:\Windows\System32\rundll32.exe |
|
SrcProcessId | اختياري | السلسلة | معرف العملية (PID) للعملية التي بدأت طلب DNS. مثال: 48610176 ملاحظة: يتم تعريف النوع على أنه سلسلة لدعم الأنظمة المختلفة، ولكن في نظامي التشغيل Windows وLinux، يجب أن تكون هذه القيمة رقمية. إذا كنت تستخدم جهازاً يعمل بنظام Windows أو Linux وتستخدم نوعاً مختلفاً، فتأكد من تحويل القيم. على سبيل المثال، إذا استخدمت قيمة سداسية عشرية، فحولها إلى قيمة عشرية. |
SrcProcessGuid | اختياري | السلسلة | معرف فريد تم إنشاؤه (GUID) للعملية التي بدأت طلب DNS. مثال: EF3BD0BD-2B74-60C5-AF5C-010000001E00 |
حقول نظام الوجهة
الحقل | الفصل | النوع | الوصف |
---|---|---|---|
Dst | الاسم المستعار | السلسلة | معرف فريد للخادم الذي تلقى طلب 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 | اختياري | Longitude | خط طول الإحداثيات الجغرافية المقترنة بعنوان IP للوجهة. للمزيد من المعلومات، راجع الأنواع المنطقية. مثال: 73.211944 |
DstRiskLevel | اختياري | رقم صحيح | مستوى المخاطر المقترن بالوجهة. يجب تعديل القيمة إلى نطاق يتراوح من 0 إلى 100، والتي تكون 0 غير ضارة و100 تشكل خطراً كبيراً. مثال: 90 |
DstOriginalRiskLevel | اختياري | رقم صحيح | مستوى المخاطر المقترن بالوجهة، كما تم الإبلاغ عنه بواسطة جهاز التقارير. مثال: Malicious |
DstPortNumber | اختياري | رقم صحيح | رقم منفذ الوجهة. مثال: 53 |
DstHostname | اختياري | السلسلة | اسم مضيف جهاز الوجهة، باستثناء معلومات المجال. إذا لم يتوفر اسم الجهاز، فخزن عنوان IP ذا الصلة في هذا الحقل. مثال: DESKTOP-1282V4D ملاحظة: هذه القيمة إلزامية إذا تم تحديد DstIpAddr. |
DstDomain | اختياري | السلسلة | مجال جهاز الوجهة. مثال: Contoso |
DstDomainType | شرطي | Enumerated | نوع DstDomain، إذا كان معروفاً. تشمل القيم المتاحة ما يلي: - Windows (contoso\mypc) - FQDN (learn.microsoft.com) يكون مطلوبًا في حالة استخدام DstDomain. |
DstFQDN | اختياري | السلسلة | اسم مضيف جهاز الوجهة، بما في ذلك معلومات المجال عند توفره. مثال: Contoso\DESKTOP-1282V4D ملاحظة: يدعم هذا الحقل كلًا من تنسيق FQDN التقليدي وتنسيق Windows domain \ hostname. يوضح DstDomainType التنسيق المستخدم. |
DstDvcId | اختياري | السلسلة | معرف جهاز الوجهة كما تم الإبلاغ عنه في السجل. مثال: ac7e9755-8eae-4ffc-8a02-50ed7a2216c3 |
DstDvcScopeId | اختياري | السلسلة | معرف نطاق النظام الأساسي السحابي الذي ينتمي إليه الجهاز. مخطط DstDvcScopeId إلى معرف اشتراك على Azure وإلى معرف حساب على AWS. |
DstDvcScope | اختياري | السلسلة | نطاق النظام الأساسي السحابي الذي ينتمي إليه الجهاز. مخطط DstDvcScope إلى معرف اشتراك على Azure ومعرف حساب على AWS. |
DstDvcIdType | شرطي | Enumerated | نوع DstDvcId، إذا كان معروفاً. تشمل القيم المتاحة ما يلي: - AzureResourceId - MDEidIf في حالة توفر معرفات متعددة، فاستخدم المعرف الأول من القائمة أعلاه، وقم بتخزين المعرفات الأخرى في الحقول DstDvcAzureResourceId أو DstDvcMDEid، على الترتيب. يكون مطلوباً في حالة استخدام DstDeviceId. |
DstDeviceType | اختياري | Enumerated | نوع جهاز الوجهة. تشمل القيم المتاحة ما يلي: - Computer - Mobile Device - IOT Device - Other |
وصف DstDescription | اختياري | السلسلة | نص وصفي مرتبط بالجهاز. على سبيل المثال: Primary Domain Controller . |
حقول محددة ل DNS
الحقل | الفصل | النوع | الوصف |
---|---|---|---|
DnsQuery | إلزامي | السلسلة | المجال الذي يحاول الطلب حله. ملاحظات: - ترسل بعض المصادر استعلامات FQDN صالحة بتنسيق مختلف. على سبيل المثال، في بروتوكول DNS نفسه، يتضمن الاستعلام نقطة (.) في النهاية، والتي يجب إزالتها. - بينما يحد بروتوكول DNS من نوع القيمة في هذا الحقل إلى FQDN، فإن معظم خوادم DNS تسمح بأي قيمة، وبالتالي لا يقتصر هذا الحقل على قيم FQDN فحسب. وعلى وجه الخصوص، قد تستخدم هجمات نفق DNS قيم FQDN غير صالحة في حقل الاستعلام. - بينما يسمح بروتوكول DNS باستفسارات متعددة في طلب واحد، فإن هذا السيناريو نادر، إذا تم العثور عليه على الإطلاق. إذا كان الطلب يحتوي على استعلامات متعددة، فخزن الاستعلام الأول في هذا الحقل، ثم احتفظ بالباقي اختيارياً في حقل AdditionalFields. مثال: www.malicious.com |
المجال | الاسم المستعار | الاسم المستعار لـ DnsQuery. | |
DnsQueryType | اختياري | رقم صحيح | رموز نوع سجل مورد DNS. مثال: 28 |
DnsQueryTypeName | مستحسن | Enumerated | أسماء نوع سجل مورد DNS. ملاحظات: - لا تحدد IANA حالة القيم، لذلك يجب أن تقوم التحليلات بتسوية الحالة حسب الحاجة. - القيمة ANY مدعومة لرمز الاستجابة 255.- يتم دعم القيمة TYPExxxx لرمز الاستجابة غير المعين، حيث xxxx تكون القيمة الرقمية للتعليمات البرمجية للاستجابة، كما تم الإبلاغ عنها بواسطة خادم BIND DNS.-في حالة توفير المصدر لرمز نوع استعلام رقمي فحسب وليس اسم نوع استعلام، يجب أن ينطوي المحلل على جدول بحث للإثراء بهذه القيمة. مثال: AAAA |
DnsResponseName | اختياري | السلسلة | محتوى الاستجابة، كما هو مضمن في السجل. بيانات استجابة DNS غير متناسقة عبر أجهزة إعداد التقارير، ومعقدة لتحليلها، ولها قيمة أقل للتحليليات غير حيادية المصدر. لذلك لا يتطلب نموذج المعلومات التحليل والتسوية، ويستخدم Microsoft Azure Sentinel دالة مساعدة لتوفير معلومات الاستجابة. لمزيد من المعلومات، راجع معالجة استجابة DNS. |
DnsResponseCodeName | الاسم المستعار | الاسم المستعار لـ EventResultDetails | |
DnsResponseCode | اختياري | رقم صحيح | التعليمة البرمجية للاستجابة الرقمية DNS. مثال: 3 |
TransactionIdHex | مستحسن | السلسلة | معرف استعلام DNS الفريد كما تم تعيينه بواسطة عميل DNS، بتنسيق سداسي عشري. لاحظ أن هذه القيمة هي جزء من بروتوكول DNS وتختلف عن DnsSessionId، معرف جلسة طبقة الشبكة، الذي يعينه جهاز إعداد التقارير عادةً. |
NetworkProtocol | اختياري | Enumerated | بروتوكول النقل المستخدم من قبل حدث تحليل الشبكة. يمكن أن تكون القيمة UDP أو TCP، ويتم تعيينها بشكل شائع إلى UDP لـ DNS. مثال: UDP |
NetworkProtocolVersion | اختياري | Enumerated | إصدار NetworkProtocol. عند استخدامه للتمييز بين إصدار IP، استخدم القيم IPv4 وIPv6 . |
DnsQueryClass | اختياري | رقم صحيح | معرف فئة DNS. في الممارسة العملية، يتم استخدام فئة IN (المعرف 1) فحسب، وبالتالي فإن هذا الحقل أقل قيمة. |
DnsQueryClassName | اختياري | السلسلة | اسم فئة DNS. في الممارسة العملية، يتم استخدام فئة IN (المعرف 1) فحسب، وبالتالي فإن هذا الحقل أقل قيمة. مثال: IN |
DnsFlags | اختياري | السلسلة | حقل العلامات، كما هو مقدم من جهاز إعداد التقارير. في حالة توفير معلومات العلامة في حقول متعددة، فقم بتسلسلها بفاصلة كفاصل. نظراً لأن علامات DNS معقدة لتحليلها وغالباً ما تستخدمها التحليلات، فإن التحليل والتسوية غير مطلوبين. يمكن لـ Microsoft Azure Sentinel استخدام دالة مساعدة لتوفير معلومات العلامات. لمزيد من المعلومات، راجع معالجة استجابة DNS. مثال: ["DR"] |
DnsNetworkDuration | اختياري | رقم صحيح | مقدار الوقت، بالملّي ثانية، لإكمال طلب DNS. مثال: 1500 |
المدة | الاسم المستعار | الاسم المستعار لـ DnsNetworkDuration | |
DnsFlagsAuthenticated | اختياري | Boolean | تشير علامة DNS AD ، التي ترتبط بـ DNSSEC، في استجابة إلى أنه تم التحقق من جميع البيانات المضمنة في قسمي الإجابة والهيئة للاستجابة من قبل الخادم وفقاً لسياسات ذلك الخادم. لمزيد من المعلومات، راجع RFC 3655 القسم 6.1 لمزيد من المعلومات. |
DnsFlagsAuthoritative | اختياري | Boolean | تشير علامة DNS AA إلى ما إذا كانت الاستجابة من الخادم موثوقة |
DnsFlagsCheckingDisabled | اختياري | Boolean | تشير علامة DNS CD ، التي ترتبط بـ DNSSEC، في استعلام إلى أن البيانات غير المتحقق منها مقبولة للنظام الذي يرسل الاستعلام. لمزيد من المعلومات، راجع RFC 3655 القسم 6.1 لمزيد من المعلومات. |
DnsFlagsRecursionAvailable | اختياري | Boolean | تشير علامة DNS RA في إحدى الاستجابات إلى أن هذا الخادم يدعم الاستعلامات المتكررة. |
DnsFlagsRecursionDesired | اختياري | Boolean | تشير علامة DNS RD في أحد الطلبات إلى أن هذا العميل يرغب في أن يستخدم الخادم استعلامات متكررة. |
DnsFlagsTruncated | اختياري | Boolean | تشير علامة DNS TC إلى أنه تم اقتطاع إحدى الاستجابات لأنها تجاوزت الحد الأقصى لحجم الاستجابة. |
DnsFlagsZ | اختياري | Boolean | علامة DNS Z هي علامة DNS مهملة، والتي قد يتم الإبلاغ عنها بواسطة أنظمة DNS القديمة. |
DnsSessionId | اختياري | سلسلة | معرف جلسة 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 | اختياري | Longitude | خط طول الإحداثيات الجغرافية المرتبطة بأحد عناوين IP في استجابة DNS. للمزيد من المعلومات، راجع الأنواع المنطقية. مثال: 73.211944 |
حقول الفحص
يتم استخدام الحقول التالية لتمثيل فحص، الذي قام به جهاز أمان DNS. تمثل الحقول المتعلقة بالتهديد تهديدا واحدا مقترنا بعنوان المصدر أو عنوان الوجهة أو أحد عناوين IP في الاستجابة أو مجال استعلام DNS. إذا تم تحديد أكثر من تهديد واحد كتهديد، يمكن تخزين معلومات حول عناوين IP الأخرى في الحقل AdditionalFields
.
الحقل | الفصل | النوع | الوصف |
---|---|---|---|
UrlCategory | اختياري | السلسلة | قد يبحث مصدر حدث DNS أيضاً عن فئة المجالات المطلوبة. يسمى الحقل UrlCategory للتوافق مع مخطط شبكة Microsoft Azure Sentinel. تضاف DomainCategory كاسم مستعار يتناسب مع DNS. مثال: Educational \\ Phishing |
DomainCategory | الاسم المستعار | الاسم المستعار لـ UrlCategory. | |
NetworkRuleName | اختياري | السلسلة | اسم القاعدة التي حددت التهديد أو معرفها. مثال: AnyAnyDrop |
NetworkRuleNumber | اختياري | رقم صحيح | عدد القاعدة التي حددت التهديد. مثال: 23 |
حكم | الاسم المستعار | السلسلة | إما قيمة NetworkRuleName أو قيمة NetworkRuleNumber. إذا تم استخدام قيمة NetworkRuleNumber، يجب تحويل النوع إلى سلسلة. |
ThreatId | اختياري | السلسلة | معرف التهديد أو البرامج الضارة المحددة في جلسة الشبكة. مثال: Tr.124 |
ThreatCategory | اختياري | السلسلة | في حالة توفير مصدر حدث DNS أيضاً لأمان DNS، فقد يقوم أيضاً بتقييم حدث DNS. على سبيل المثال، يمكنه البحث عن عنوان IP أو المجال في قاعدة بيانات التحليل الذكي للمخاطر، وتعيين المجال أو عنوان IP مع فئة التهديد. |
ThreatIpAddr | اختياري | عنوان IP | عنوان IP تم تحديد تهديد له. يحتوي الحقل ThreatField على اسم الحقل ThreatIpAddr الذي يمثله. إذا تم تحديد تهديد في حقل المجال، يجب أن يكون هذا الحقل فارغا. |
ThreatField | شرطي | Enumerated | الحقل الذي تم تحديد تهديد له. القيمة هي إما SrcIpAddr ، DstIpAddr ، Domain أو DnsResponseName . |
ThreatName | اختياري | السلسلة | اسم التهديد الذي تم تحديده، كما تم الإبلاغ عنه من قبل جهاز الإبلاغ. |
ThreatConfidence | اختياري | رقم صحيح | مستوى ثقة التهديد المحدد، الذي تمت تسويته إلى قيمة بين 0 و100. |
ThreatOriginalConfidence | اختياري | السلسلة | مستوى الثقة الأصلي للتهديد المحدد، كما تم الإبلاغ عنه من قبل جهاز الإبلاغ. |
ThreatRiskLevel | اختياري | رقم صحيح | مستوى المخاطر المرتبط بالتهديد المحدد، تم تسويته إلى قيمة بين 0 و100. |
ThreatOriginalRiskLevel | اختياري | السلسلة | مستوى المخاطر الأصلي المرتبط بالتهديد المحدد، كما تم الإبلاغ عنه بواسطة جهاز إعداد التقارير. |
ThreatIsActive | اختياري | Boolean | صحيح إذا كان التهديد المحدد يعتبر تهديدا نشطا. |
ThreatFirstReportedTime | اختياري | datetime | في المرة الأولى التي تم فيها تحديد عنوان IP أو المجال كتهديد. |
ThreatLastReportedTime | اختياري | datetime | في المرة الأخيرة التي تم فيها تحديد عنوان IP أو المجال كتهديد. |
الأسماء المستعارة والحقول المهملة
الحقول التالية هي أسماء مستعارة يتم الاحتفاظ بها للتوافق مع الإصدارات السابقة. تمت إزالتهم من المخطط في 31 ديسمبر 2021.
Query
(الاسم المستعار إلىDnsQuery
)QueryType
(الاسم المستعار إلىDnsQueryType
)QueryTypeName
(الاسم المستعار إلىDnsQueryTypeName
)ResponseName
(الاسم المستعار إلىDnsReasponseName
)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
وThreatOriginalConfidence
و.ThreatOriginalRiskLevel
ThreatLastReportedTime
ThreatIsActive
ThreatFirstReportedTime
التغييرات في الإصدار 0.1.5 من المخطط هي:
- تمت إضافة الحقول
SrcUserScope
وSrcDvcScopeId
SrcUserSessionId
وSrcDvcScope
وDvcScopeId
DstDvcScopeId
DstDvcScope
.DvcScope
التغييرات في الإصدار 0.1.6 من المخطط هي:
- تمت إضافة الحقول
DnsResponseIpCountry
وDnsResponseIpRegion
DnsResponseIpCity
DnsResponseIpLatitude
DnsResponseIpLongitude
.
التغييرات في الإصدار 0.1.7 من المخطط هي:
- تمت إضافة الحقول
SrcDescription
وSrcOriginalRiskLevel
وDstDescription
وSrcUserScopeId
DstOriginalRiskLevel
وRuleNumber
NetworkProtocolVersion
Rule
RuleName
.ThreatId
الاختلافات الخاصة بالمصدر
الهدف من التسوية هو التأكد من أن جميع المصادر توفر بيانات تتبع الاستخدام متسقة. لا يمكن تسوية المصدر الذي لا يوفر بيانات تتبع الاستخدام المطلوبة، مثل حقول المخطط الإلزامية. ومع ذلك، يمكن تسوية المصادر التي توفر عادةً جميع بيانات تتبع الاستخدام المطلوبة، حتى لو كانت هناك بعض الاختلافات. قد تؤثر الاختلافات على اكتمال نتائج الاستعلام.
يذكر الجدول التالي الاختلافات المعروفة:
المصدر | الاختلافات |
---|---|
خادم Microsoft DNS الذي تم تجميعه باستخدام موصل DNS وعامل Log Analytics | لا يوفر الموصل حقل 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)
- التحقق من المعطل (CD)
- الإعادة المتاحة (RA)
- الإعادة المطلوبة (RD)
- تم اقتطاعه (TC)
- Z
الخطوات التالية
لمزيد من المعلومات، راجع: