recent
أخبار ساخنة

تحليل فرعي - إطار تجميع وتجميع القطع الأثرية لتحليل البرامج الضارة

Home


تحليل فرعي - إطار تجميع وتجميع القطع الأثرية لتحليل البرامج الضارة


Subparse ، هو إطار معياري تم تطويره بواسطة Josh Strochein و Aaron Baker و Odin Bernstein. تم تصميم إطار العمل لتحليل وفهرسة ملفات البرامج الضارة وتقديم المعلومات التي تم العثور عليها أثناء التحليل في عارض ويب قابل للبحث.
 يعد إطار العمل معياريًا ، حيث يستخدم محرك التحليل الأساسي ، ووحدات التحليل ، ومجموعة متنوعة من عناصر الإثراء التي تضيف معلومات إضافية إلى فهارس البرامج الضارة.
 قيم الإدخال الرئيسية لإطار العمل هي أدلة ملفات البرامج الضارة ، والتي يوزعها محرك التحليل الأساسي أو محرك التحليل المحدد من قبل المستخدم قبل إضافة معلومات إضافية من أي محرك إثراء محدد بواسطة المستخدم قبل فهرسة المعلومات التي تم تحليلها في فهرس البحث المرن.
 يمكن بعد ذلك البحث عن المعلومات التي تم جمعها وعرضها عبر عارض الويب ، والذي يسمح أيضًا بالتصفية على أي قيمة تم جمعها من أي ملف.

بدء

متطلبات البرنامج

لبدء استخدام Subparse ، هناك عدد قليل من البرامج المطلوبة / الموصى بها والتي تحتاج إلى التثبيت والإعداد قبل محاولة العمل مع برنامجنا.

برمجةحالةحلقة الوصل
عامل ميناءمطلوبدليل التثبيت
Python 3.8.1مطلوبدليل التثبيت
بينفموصى بهدليل التثبيت

متطلبات إضافية

بعد تثبيت البرنامج المطلوب / الموصى به على نظامك ، هناك بعض الخطوات الأخرى التي يجب اتخاذها لتثبيت Subparse.


متطلبات
Python تتطلب Python تثبيت بعض الحزم الأخرى التي يعتمد عليها Subparse في عملياتها. للحصول على إعداد Python المكتمل ، انتقل إلى موقع تثبيت Subparse وانتقل إلى المجلد * parser *. الأوامر التالية التي ستحتاج إلى استخدامها لتثبيت متطلبات بايثون هي:
sudo get apt install build-essential
pip3 install -r ./requirements.txt

متطلبات Docker

نظرًا لأن Subparse يستخدم Docker لواجهة الويب والواجهة الخلفية الخاصة به ، يجب إكمال إعداد حاويات Docker قبل التمكن من استخدام البرنامج. للقيام بذلك ، انتقل إلى الدليل الجذر لموقع التثبيت الفرعي ، واستخدم الأمر التالي لإعداد مثيلات عامل الإرساء:
docker-compose up

ملاحظة: قد يستغرق هذا بعض الوقت بسبب تنزيل الصور وإعداد الحاويات التي سيحتاجها Subparse.

 

خطوات التثبيت


إستعمال

خيارات سطر الأوامر

خيارات سطر الأوامر المتوفرة لـ subparse / parser / subparse.py :

جدال حادلبديلمطلوبوصف
--يساعدلايظهر قائمة المساعدة
- د SAMPLES_DIR- دليل SAMPLES_DIRنعمدليل العينات لتحليلها
-E ENRICHER_MODULES- المخصبات ENRICHER_MODULESلاوحدات أكثر ثراءً لاستخدامها في التحليل الإضافي
-r--إعادة تعيينلاإعادة تعيين / حذف جميع البيانات في مجموعة Elasticsearch التي تم تكوينها
-الخامس- الإسرافلاعرض إخراج سطر أوامر مطول
- وضع الخدمةلايدخل في وضع الخدمة مما يسمح بإضافة عينات الوضع إلى SAMPLES_DIR أثناء المعالجة

نتائج المشاهدة

الحاوية في Docker وأنه لا توجد عملية أخرى تعمل على المنفذ 8080 قد تتسبب في عدم توفر الموقع.

 

تم جمع المعلومات العامة
قبل تنفيذ أي محلل ، يتم جمع معلومات عامة حول العينة بغض النظر عن نوع الملف الأساسي. تتضمن هذه المعلومات:

تجزئة MD5 للعينة
تجزئة SHA256 للعينة
اسم عينة
حجم العينة
تمديد العينة
اشتق تمديد العينة
وحدات محلل
يتم تنفيذ الموزعين فقط على العينات التي تطابق نوع الملف. على سبيل المثال ، سيتم افتراضيًا تنفيذ PEParser على ملفات PE نظرًا لنوع الملف المطابق لتلك الملفات التي يستطيع PEParser فحصها.

الوحدات الافتراضية

ELFParser
هذه هي وحدة التحليل الافتراضية التي سيتم تنفيذها على ملفات ELF. المعلومات التي يتم جمعها:
معلومات عامة
رؤوس البرامج
رؤوس الأقسام
ملاحظات
بيانات معمارية محددة
معلومات الإصدار
معلومات استرخاء الذراع
بيانات النقل
العلامات الديناميكية

OLEParser
هذه هي وحدة التحليل الافتراضية التي سيتم تنفيذها على ملفات بتنسيق OLE و RTF ، وهذا يستخدم حزمة OLETools للحصول على البيانات. المعلومات التي يتم جمعها:
البيانات الوصفية
MRaptor
RTF
مرات
المؤشرات
وحدات ماكرو VBA / VBA
كائنات OLE

PEParser
هذه هي وحدة التحليل الافتراضية التي سيتم تنفيذها على ملفات PE التي تطابق أو تتضمن أنواع الملفات: PE32 و MS-Dos. المعلومات التي يتم جمعها:
كود القسم والعد
نقطة الدخول
قاعدة الصورة
إمضاء
الواردات
صادرات
 

وحدات ثري
هذه الوحدات هي وحدات اختيارية لن يتم تنفيذها إلا إذا تم تحديدها عبر e | - علم الأثرياء على سطر الأوامر.

الوحدات الافتراضية

ABUSEEnricher
هذا الإثراء يستخدم [Abuse.ch] ( https://abuse.ch/ ) API و [Malware Bazaar] ( https://bazaar.abuse.ch ) لجمع المزيد من المعلومات حول العينة (العينات) التي يتم تحليلها ، ثم يتم تجميع المعلومات وتخزينها في قاعدة البيانات المرنة.
CAPEEnricher يستخدم
هذا الإثراء للتواصل مع مثيل CAPEv2 Sandbox ، لجمع المزيد من المعلومات حول العينة (العينات) من خلال التحليل الديناميكي ، ثم يتم تجميع المعلومات وتخزينها في قاعدة البيانات المرنة باستخدام خدمة المراسلة كافكا لمعالجة الخلفية.
STRING غيّر
هذا الثري هو أداة ذكية لتثري السلسلة ، من شأنها تحليل العينة للحصول على سلاسل مثيرة للاهتمام. تشمل فئات السلاسل التي يبحث عنها هذا المُثري: الصوت ، والصور ، والملفات القابلة للتنفيذ ، ومكالمات التعليمات البرمجية ، والملفات المضغوطة ، والعمل (مستندات Office.) ، وعناوين IP ، وعنوان IP + المنفذ ، وعناوين مواقع الويب ، وحجج سطر الأوامر .
YARAEnricher
هذا ericher يستخدم ملف yara مُجمَّع مسبقًا موجود في: parser / src / richers / yara_rules. يتضمن هذا الملف المجمع مسبقًا قواعد من VirusTotal و YaraRulesProject

تطوير موزعي ومثريين مخصصين

تم إنشاء عرض الويب الخاص بـ Subparse باستخدام Bootstrap لـ CSS الخاص به ، وهذا يسمح باستخدام أي ملف Bootstrap CSS مضمن عند تطوير ملفات Parser / Enricher Vue.js المخصصة الخاصة بك. لقد قدمنا ​​أيضًا مثالًا لكل منها للمساعدة في البدء وقمنا أيضًا بتنفيذ بعض الأدوات المصغّرة المخصصة لتسهيل عملية التطوير وتعزيز التوحيد القياسي في طريقة عرض المعلومات. تُستخدم جميع ملفات Vue.js لعرض المعلومات ديناميكيًا من المحلل اللغوي المخصص / Enricher وتُستخدم كقوالب للبيانات.

ملاحظة: يجب أن يتم التقيد بصرامة باتفاقيات التسمية مع كل من أسماء الفئات والملفات ، وهذا هو أول شيء يجب التحقق منه إذا واجهت مشكلات الآن في الحصول على Parser / Enricher المخصص ليتم تنفيذه. يجب أن يستخدم اصطلاح التسمية للمحلل اللغوي / المُثري نفس الاسم عبر جميع الملفات وأسماء الفئات.

تسجيل

كائن المسجل هو تنفيذ فردي لمسجل بايثون الافتراضي. للاستخدام المتعمق ، يرجى الرجوع إلى المستند الرسمي .

 بالنسبة إلى التحليل الفرعي ، فإن طرق التسجيل الوحيدة التي نوصي باستخدامها هي مستويات التسجيل للإخراج. وهذه هي:

  1. التصحيح
  2. تحذير
  3. خطأ
  4. حرج - انتقادي
  5. استثناء
  6. سجل
  7. معلومات

شكر وتقدير

  • تم دعم هذا البحث وجميع المؤلفين المشاركين من قبل NSA Grant H98230-20-1-0326.
google-playkhamsatmostaqltradent