إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
في 3 أبريل 2025، قمنا بمعاينة جدولين جديدين بشكل عام لدعم مؤشر STIX (تعبير eXpression لمعلومات التهديد المنظمة) ومخططات الكائنات: ThreatIntelIndicators و ThreatIntelObjects. توفر هذه المقالة أمثلة حول كيفية دمج كائنات STIX في الاستعلامات لتحسين تتبع التهديدات، وكيفية الترحيل إلى مخطط مؤشر التهديد الجديد.
لمزيد من المعلومات حول التحليل الذكي للمخاطر في Microsoft Sentinel، راجع التحليل الذكي للمخاطر في Microsoft Sentinel.
Important
سيدخل Microsoft Sentinel جميع التحليل الذكي للمخاطر في الجداول والجداول ThreatIntelIndicators الجديدةThreatIntelObjects، مع الاستمرار في استيعاب نفس البيانات في الجدول القديم ThreatIntelligenceIndicator حتى 31 يوليو 2025.
تأكد من تحديث الاستعلامات المخصصة وقواعد التحليلات والكشف والمصنفات والأتمتة لاستخدام الجداول الجديدة بحلول 31 يوليو 2025. بعد هذا التاريخ، سيتوقف Microsoft Sentinel عن استيعاب البيانات في الجدول القديم ThreatIntelligenceIndicator . نحن نعمل على تحديث جميع حلول التحليل الذكي للمخاطر الجاهزة في مركز المحتوى للاستفادة من الجداول الجديدة.
قدمنا تحديثات مهمة لعمليات إعادة نشر البيانات.
- في السابق، تم تقسيم البيانات وإعادة نشرها في Log Analytics على مدار 12 يوما. الآن ، يتم إعادة نشر جميع البيانات كل 7-10 أيام. يمكنك تحديد هذه البيانات في الجدولين
ThreatIntelIndicatorsوThreatIntelObjectsعن طريق التحقق مما إذا كانLastUpdateMethodيساويLogARepublisher. - تدعم الجداول الجديدة الآن المزيد من الأعمدة، بما في ذلك العمود
Data، الذي يحتوي على كائن البيانات الكاملة (باستثناء السمات الموجودة بالفعل في الأعمدة الأخرى) المستخدمة في سيناريوهات التتبع المتقدمة. إذا لم تتوافق هذه الأعمدة مع السيناريو الخاص بك، فتعرف على المزيد حول تصفية الأعمدةوالصفوف قبل استيعابها في Log Analytics. - لتحسين الاستيعاب إلى Log Analytics، يتم استبعاد أزواج قيم المفاتيح التي لا تحتوي على بيانات. بالإضافة إلى ذلك، يتم اقتطاع بعض الحقول داخل
Dataالعمود - مثلdescriptionوpattern- إذا تجاوزت 1000 حرف. لمزيد من المعلومات حول المخطط المحدث وكيف يمكن أن يؤثر على استخدامك، راجع ThreatIntelIndicatorsوThreatIntelObjects.
تحديد جهات التهديد المرتبطة بمؤشرات تهديد محددة
هذا الاستعلام هو مثال على كيفية ربط مؤشرات التهديد، مثل عناوين IP، مع جهات التهديد:
let IndicatorsWithThatIP = (ThreatIntelIndicators
| extend tlId = tostring(Data.id)
| summarize arg_max(TimeGenerated,*) by Id
| where IsDeleted == false);
let ThreatActors = (ThreatIntelObjects
| where StixType == 'threat-actor'
| extend tlId = tostring(Data.id)
| extend ThreatActorName = Data.name
| extend ThreatActorSource = base64_decode_tostring(tostring(split(Id, '---')[0]))
| summarize arg_max(TimeGenerated,*) by Id
| where IsDeleted == false);
let AllRelationships = (ThreatIntelObjects
| where StixType == 'relationship'
| extend tlSourceRef = tostring(Data.source_ref)
| extend tlTargetRef = tostring(Data.target_ref)
| extend tlId = tostring(Data.id)
| summarize arg_max(TimeGenerated,*) by Id
| where IsDeleted == false);
let IndicatorAsSource = (IndicatorsWithThatIP
| join AllRelationships on $left.tlId == $right.tlSourceRef
| join ThreatActors on $left.tlTargetRef == $right.tlId);
let IndicatorAsTarget = (IndicatorsWithThatIP
| join AllRelationships on $left.tlId == $right.tlTargetRef
| join ThreatActors on $left.tlSourceRef == $right.tlId);
IndicatorAsSource
| union IndicatorAsTarget
| project ObservableValue, ThreatActorName
سرد بيانات التحليل الذكي للمخاطر المتعلقة بممثل تهديد معين
يوفر هذا الاستعلام رؤى حول التكتيكات والتقنيات والإجراءات (TTPs) لممثل التهديد (استبدل Sangria Tempest باسم ممثل التهديد الذي تريد التحقيق فيه):
let THREAT_ACTOR_NAME = 'Sangria Tempest';
let ThreatIntelObjectsPlus = (ThreatIntelObjects
| union (ThreatIntelIndicators
| extend StixType = 'indicator')
| extend tlId = tostring(Data.id)
| extend PlusStixTypes = StixType
| extend importantfield = case(StixType == "indicator", Data.pattern,
StixType == "attack-pattern", Data.name,
"Unkown")
| extend feedSource = base64_decode_tostring(tostring(split(Id, '---')[0]))
| summarize arg_max(TimeGenerated,*) by Id
| where IsDeleted == false);
let ThreatActorsWithThatName = (ThreatIntelObjects
| where StixType == 'threat-actor'
| where Data.name == THREAT_ACTOR_NAME
| extend tlId = tostring(Data.id)
| extend ActorName = tostring(Data.name)
| summarize arg_max(TimeGenerated,*) by Id
| where IsDeleted == false);
let AllRelationships = (ThreatIntelObjects
| where StixType == 'relationship'
| extend tlSourceRef = tostring(Data.source_ref)
| extend tlTargetRef = tostring(Data.target_ref)
| extend tlId = tostring(Data.id)
| summarize arg_max(TimeGenerated,*) by Id
| where IsDeleted == false);
let SourceRelationships = (ThreatActorsWithThatName
| join AllRelationships on $left.tlId == $right.tlSourceRef
| join ThreatIntelObjectsPlus on $left.tlTargetRef == $right.tlId);
let TargetRelationships = (ThreatActorsWithThatName
| join AllRelationships on $left.tlId == $right.tlTargetRef
| join ThreatIntelObjectsPlus on $left.tlSourceRef == $right.tlId);
SourceRelationships
| union TargetRelationships
| project ActorName, PlusStixTypes, ObservableValue, importantfield, Tags, feedSource
ترحيل الاستعلامات الموجودة إلى مخطط ThreatIntelIndicators الجديد
يوضح هذا المثال كيفية ترحيل الاستعلامات الموجودة من الجدول القديم ThreatIntelligenceIndicator إلى المخطط الجديد ThreatIntelIndicators . يستخدم extend الاستعلام عامل التشغيل لإعادة إنشاء أعمدة قديمة استنادا ObservableKey إلى العمودين و ObservableValue في الجدول الجديد.
ThreatIntelIndicators
| extend NetworkIP = iff(ObservableKey == 'ipv4-addr:value', ObservableValue, ''),
NetworkSourceIP = iff(ObservableKey == 'network-traffic:src_ref.value', ObservableValue, ''),
NetworkDestinationIP = iff(ObservableKey == 'network-traffic:dst_ref.value', ObservableValue, ''),
DomainName = iff(ObservableKey == 'domain-name:value', ObservableValue, ''),
EmailAddress = iff(ObservableKey == 'email-addr:value', ObservableValue, ''),
FileHashType = case(ObservableKey has 'MD5', 'MD5',
ObservableKey has 'SHA-1', 'SHA-1',
ObservableKey has 'SHA-256', 'SHA-256',
''),
FileHashValue = iff(ObservableKey has 'file:hashes', ObservableValue, ''),
Url = iff(ObservableKey == 'url:value', ObservableValue, ''),
x509Certificate = iff(ObservableKey has 'x509-certificate:hashes.', ObservableValue, ''),
x509Issuer = iff(ObservableKey has 'x509-certificate:issuer', ObservableValue, ''),
x509CertificateNumber = iff(ObservableKey == 'x509-certificate:serial_number', ObservableValue, ''),
Description = tostring(Data.description),
CreatedByRef = Data.created_by_ref,
Extensions = Data.extensions,
ExternalReferences = Data.references,
GranularMarkings = Data.granular_markings,
IndicatorId = tostring(Data.id),
ThreatType = tostring(Data.indicator_types[0]),
KillChainPhases = Data.kill_chain_phases,
Labels = Data.labels,
Lang = Data.lang,
Name = Data.name,
ObjectMarkingRefs = Data.object_marking_refs,
PatternType = Data.pattern_type,
PatternVersion = Data.pattern_version,
Revoked = Data.revoked,
SpecVersion = Data.spec_version
| project-reorder TimeGenerated, WorkspaceId, AzureTenantId, ThreatType, ObservableKey, ObservableValue, Confidence, Name, Description, LastUpdateMethod, SourceSystem, Created, Modified, ValidFrom, ValidUntil, IsDeleted, Tags, AdditionalFields, CreatedByRef, Extensions, ExternalReferences, GranularMarkings, IndicatorId, KillChainPhases, Labels, Lang, ObjectMarkingRefs, Pattern, PatternType, PatternVersion, Revoked, SpecVersion, NetworkIP, NetworkDestinationIP, NetworkSourceIP, DomainName, EmailAddress, FileHashType, FileHashValue, Url, x509Certificate, x509Issuer, x509CertificateNumber, Data
تحويل البيانات المرسلة إلى Log Analytics
تسمح لك التحويلات في Azure Monitor بتصفية البيانات الواردة أو تعديلها قبل تخزينها في مساحة عمل Log Analytics. يتم تنفيذها كبيان لغة استعلام Kusto (KQL) في قاعدة تجميع البيانات (DCR). تعرف على المزيد حول كيفية إنشاء تحويلات مساحة العملوتكلفة التحويلات.
تحويل الأعمدة المرسلة إلى Log Analytics
ThreatIntelIndicator تتضمن الجداول و ThreatIntelObjects عمودا Data يحتوي على كائن STIX الأصلي الكامل. إذا كان هذا العمود غير ذي صلة بحالة الاستخدام الخاصة بك، يمكنك تصفيته قبل الاستيعاب باستخدام عبارة KQL التالية:
source
| project-away Data
تحويل الصفوف المرسلة إلى Log Analytics
ThreatIntelIndicators يتلقى الجدول دائما صفا واحدا على الأقل لكل مؤشر غير منته. في بعض الحالات، لا يمكن تحليل نمط STIX في أزواج المفاتيح/القيم. عند حدوث ذلك، لا يزال يتم إرسال المؤشر إلى Log Analytics، ولكن يتم تضمين النمط البسيط غير المنقوش فقط - مما يسمح للمستخدمين بإنشاء تحليلات مخصصة إذا لزم الأمر. إذا لم تكن هذه الصفوف مفيدة للسيناريو الخاص بك، يمكنك تصفيتها قبل الاستيعاب باستخدام عبارة KQL التالية:
source
| where (ObservableKey != "" and isnotempty(ObservableKey))
or (ObservableValue != "" and isnotempty(ObservableValue))
المحتويات ذات الصلة
لمزيد من المعلومات، راجع المقالات التالية:
- التحليل الذكي للمخاطر في Microsoft Sentinel.
- توصيل Microsoft Sentinel بموجزات التحليل الذكي للمخاطر STIX/TAXII.
- تعرف على TIPs وموجزات TAXII والإثراء التي يمكن دمجها بسهولة مع Microsoft Sentinel.
لمزيد من المعلومات حول KQL، راجع نظرة عامة على لغة استعلام Kusto (KQL).
موارد أخرى: