إضافة Social Protection و System Infection Class

مقدمة

يناقش هذا المستند إضافة معلومات حول التوقيعات التي تمت إضافتها في الإصدار 14.00.0 إلى بيانات التعريف.

المتطلبات

متطلبات هذه الميزة هي:

  • القدرة على عرض معلومات مختلفة للمستخدم في حال الهجمات المتعلقة بالشبكات الاجتماعية.

  • القدرة على تنفيذ أدوات مثل NPE (أو اقتراح القيام بهذا) في نظام يشغل توقيعات ما بعد الإصابة.

    أي تنفيذ فحص "الوضع المتقدم" في النظام.

التصميم

سوف يتم تنفيذ كلا المتطلبين: أعلاه عن طريق إجراء التغييرات التالية

Metadata XML (ملف su-cr.md)

إضافة المزيد من المعلومات إلى بيانات التعريف للتوقيع لكي تعكس ما إذا كان توقيع قائم على الحماية الاجتماعية أو توقيع ما بعد الإصابة. سوف يتم إضافتها في شكل نقطتي توصيل جديدتين كفروع لنقطة توصيل <Event>.

يحتوي ملف بيانات التعريف في التنسيق xml بضع نقاط توصيل يمكن استخدامها لتحديد هذه المعلومات نفسها.

على سبيل المثال نقطة التوصيل <Category> أو استخدم قناع البت لخصائص التوقيع الموجود ليحتوي على هذه المعلومات. ومع ذلك في هذه الفئة، كان بالفعل يتم استخدامه بطريقة تجعل من الممكن تعيين أكثر من نقطة توصيل <Category> لمشكلة/حدث.

لن يعمل هذا التصميم في مثال واحد فقط نقاط التوصيل مثل <Class> و<SubClass>. يستخدم قناع البت للإشارات لتحديد ترتيب التوقيع عند التشغيل، ولذلك اتُخذ قرار بعدم استخدامه لهذا الغرض.

ونظرًا لهذه الأسباب، اعتُبر من المناسب إنشاء مجموعة جديدة كليةً من نقاط التواصل.

نقاط التواصل الجديدة هذه هي <Class> و <SubClass>. سوف تحتوي <Class> الخاصة بالتوقيع على معلومات إن كان التوقيع "هجوم عبر الشبكة الاجتماعية" أو "نظام مصاب". سوف تحتوي <SubClass> الخاصة بالتوقيع على تصنيف إضافي للفئة الواحدة. على سبيل المثال، قد يكون في "Social Protection Attack" فئات فرعية "مثل "الخطف" الخ.

قد تكون نقاط التوصيل الحقيقية في نقطة التوصيل su-cr.md <Event> مشابهة لما يلي:

<Event><Modified>2011082301</Modified><UniqueID>24014</UniqueID><State>A</State><TYPE>ACTOR_HEURISTIC</TYPE><SUB_TYPE>CONFIRMED_MALICIOUS_ACTIVITY</SUB_TYPE><SUBMIT>TRUE</SUBMIT><MANUALREMEDIATION>FALSE</MANUALREMEDIATION><EVENTRESPONSE>BLOCK</EVENTRESPONSE>......<Class Id="3">SocialNetworkAttack</Class><SubClass Id="1">LikeJacking</SubClass>......</Event>

سوف تُسمى نقاط التوصيل <Class> و <SubClass>، وتحتوي كل نقطة توصيل على سمة المعرف والاسم.

سوف يتم تخزين قيمة المعرف فقط في ملف metadata.dat، يتم تجاهل قيمة الاسم، فهي جزء من xml لأغراض القراءة.

لا يمكن أن يكون هناك أكثر من مثال واحد لنقاط التوصيل هذه في كل نقطة توصيل <Event>.

نقطتا التوصيل اختياريتان، أي من الممكن أن تكونا موجودتان في بعض الحالات وليس في حالات أخرى.

لا يمكن أن تكون نقطة التوصيل <SubClass> موجودة إلا إذا كانت نقطة التوصيل <Class> موجودة.

تغييرات سير العمل

سيتطلب سير العمل واجهة مستخدم لتحديد الفئة والفئة الفرعية لكل توقيع. من الممكن أن يكون هذا منسدلاً ذو قيم معبئة مسبقًا وقابلة للتحرير أيضًا. سوف يتم تمثيل الفئة والفئة الفرعية بمعرف رقمي غير الصفر. يتم حفظ قيمة معرف 0 لتمثل "لم يتم التعيين". أي لم يتم تعيين الفئة أو الفئة الفرعية لأي توقيع. يرجى النظر إلى قسم القيم للحصول على فئة وفئة فرعية صالحتين ومعرفاتهما المعنيين لليوم. من المتوقع تعببن OPs لقيم الفئة والفئة الفرعية لجميع التوقيعات التي تنتمي للفئة "Social Protection" و"System Infected". من الممكن ترك التوقيعات الأخرى كما هي الآن. ومن المتوقع أيضًا أن تقوم OPs بتوسيع قائمة الفئات والفئات الفرعية هذه كما تبدو مناسبة، ومع ذلك، يجب عدم تغيير معرفات القائمة الحالية حيث إنها سوف تكون معرضة للمنتجات ولا يمكن تغييرها. لاحظ أيضًا أن ملف su-cr.md سوف يتطلب أن يحتوي على المعرف كسمة لنقاط التوصيل <Class> و <SubClass>.

معلومات التوقيع

سوف تحتوي معلومات التوقيع على خاصيتين إضافيتين، وهما PROPERTY_CLASSIDCLASSID و PROPERTY_SUBCLASSID. سوف تكون متوفرة للاستفسار عنها عبر واجهة SignatureInfo، أي "IIDSSignatureInfo".

من الممكن استخدام طريقة IIDSSignatureInfo::GetProperty() كما يلي للحصول على DWORD.

DWORD dwClassID = 0;DWORD dwSubClassID = 0;dwResult = poIDSSignatureInfo->GetProperty (PROPERTY_CLASSID, dwClassID);if (SYM_FAILED (dwResult)){ return;}dwResult = poIDSSignatureInfo->GetProperty (PROPERTY_SUBCLASSID, dwSubClassID);if (SYM_FAILED (dwResult)){ return;}

يرجى النظر إلى ملف IIDSSignatureInfo.h للحصول على مزيد من المعلومات.

تعتبر عينة الرمز المذكورة أعلاه مجرد طريقة واحدة للحصول على هذه القيم، يجب أن يحتوي المنتج على رمز بالفعل لاستخراج الأشياء من كائن معلومات التوقيع.

استخدام نفس المنطق ولكن مع قيم PROPERTY_CLASSID and PROPERTY_SUBCLASSID يجب أن يكون كافيًا.

حدث

سوف يتم تحديث حدث التنبيه الذي تم إرساله إلى المنتج ليحتوي على الثلاثة حقول التالية:

SigClassID سوف يصل المنتج إلى هذه القيمة ويقرر اتخاذ إجراء في حال كانت Social Protection أو System Infected. في الواقع تعني قيمة المعرف 0 أن هذه القيمة لم يتم تعيينها. عينة رمز لاستخراج القيمة من تنبيه:

DWORD dwClassID = 0; if((pData->GetValue(<Event_Key>, dwClassID))) { // Do Something with the ClassID. }

عندما يكون pData هو cc::IKeyValueCollectionConstPtr ويكون <Event_Key> أحد القيم التالية:

  • IDS_EV_ALERT_DETECTED_ATTACKER_IS_LOCAL_SigClassID

  • IDS_EV_ALERT_DETECTED_ATTACKER_IS_LOCAL_NO_PORT_SigClassID

  • IDS_EV_ALERT_DETECTED_ATTACKER_IS_REMOTE_SigClassID

  • IDS_EV_ALERT_DETECTED_ATTACKER_IS_REMOTE_NO_PORT_SigClassID

يرجى مراجعة IDSEvents.h للحصول على المزيد من المعلومات.

بعض قيم ClassID #معرفة في ملف IIDSSignatureInfo.h. هذه القيم هي:

#define SIG_CLASS_NOT_SET 0#define SIG_CLASS_SOCIAL_PROTECTION 3 // The product is expected to show a different UI (URL) when this class of signaure event is passed to it.#define SIG_CLASS_SYSTEM_INFECTED 4 // The product is expected to execute NPE when this class of signature event is passed to it.#define SIG_SUBCLASS_NOT_SET 0

يجب مقارنة المنتج مع SIG_CLASS_SOCIAL_PROTECTION و SIG_CLASS_SYSTEM_INFECTED.

شكرًا لك!

نشكرك على استخدام دعم Norton.

< رجوع

هل كانت هذه المعلومات مفيدة؟

DOCID: v97291096_retail_ar_ar
تاريخ آخر تعديل: 16/06/2014