Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
ossem-power-up — أداة لتقييم جودة البيانات، مبنية على أساس OSSEM الرائع. | Kitploit
أدوات/GitHubGitHub/hxnoyd/ossem-power-up
استخبارات التهديداتالتعلم والتعليمموارد منسقةتحليل السجلات
GitHubhxnoyd/ossem-power-up

ossem-power-up

أداة لتقييم جودة البيانات، مبنية على أساس OSSEM الرائع.

عرض المستودع
7911منذ شهر واحدتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

OSSEM

أداة لتقييم جودة البيانات، مبنية على مشروع OSSEM الرائع.

المهمة

  • الإجابة على السؤال: أريد البدء في صيد تقنيات ATT&CK، ما هي مصادر الأحداث والسجلات الأكثر ملاءمة؟
  • خلق شفافية حول نقاط القوة والضعف في مصادر السجلات الخاصة بك
  • توفير طريقة سهلة لتقييم سجلاتك

نظرة عامة على Power-up في OSSEM

يستخدم Power-up نموذج بيانات الكشف (DDM) من OSSEM كأساس لتقييم جودة البيانات. السبب الرئيسي لذلك هو أنه يوفر طريقة منظمة لربط مصادر بيانات ATT&CK، كيانات نموذج المعلومات المشتركة (CIM)، و قواميس البيانات (الأحداث) مع بعضها البعض.

لغير الملمين بهيكل DDM، إليك نموذج:

كما ترى، كل إدخال في DDM يحدد مصدر بيانات فرعي (نطاق) باستخدام كيانات مجردة مثل process، user، file، إلخ. يحتوي كل إدخال أيضاً على معرف الحدث (EventID) الذي ينطبق عليه النطاق. يمكنك قراءة المزيد عن هذه الكيانات هنا.

باختصار، تلعب إدخالات DDM دوراً رئيسياً في إزالة تعقيد الأحداث الخام، من خلال توفير نطاق يحدد كيف يمكن استهلاك مصدر السجل (قنوات البيانات).

أبعاد جودة البيانات

يقوم Power-up بتقييم درجة جودة البيانات وفقاً لخمسة أبعاد متميزة:

يتم تقييم كل بعد بدرجة تتراوح بين 0 (لا شيء) و5 (ممتاز).

التغطية والتوقيت المناسب والاحتفاظ

ترتبط هذه الأبعاد بقنوات البيانات، وتنتشر إلى جميع الأحداث التي توفرها.

نظراً لطبيعة هذه الأبعاد، يجب تقييمها يدوياً، وفقاً لخصائص قنوات البيانات.

يستخدم Power-up ملف resources/dcs.yml لتحديد قناة البيانات وتقييم الأبعاد:

root@kitploit:~
data channel: sysmon
description: مراقبة sysmon
coverage: 2
timeliness: 5
retention: 2
---
data channel: security
description: تدقيق أمان ويندوز
coverage: 5
timeliness: 5
retention: 2

الهيكل

لحساب مدى اكتمال هيكل الحدث، يقارن power-up بين الأسماء القياسية في قاموس البيانات وحقول الكيانات (CIM) المشار إليها في إدخال DDM (المصدر والوجهة).

نظراً لأن جميع حقول الكيان ليست ذات صلة (يعتمد على السياق)، يستخدم power-up مفهوم الملفات الشخصية (profiles) لاختيار الحقول التي يجب أن تطابق الأسماء القياسية لقاموس البيانات. على سبيل المثال:

root@kitploit:~
# ملف تعريف CIM لـ OSSEM
process:
    - process_name
    - process_path
    - process_command_line

ملاحظة: يوجد ملف تعريف مثال في profiles/default.yml يمكنك التجربة به.

يتم حساب درجة الهيكل باستخدام الصيغة التالية:

SCORE_PERCENT = (MATCHED_FIELDS / TOTAL_RELEVANT_FIELDS) * 100

لتوضيح الأمر، إليك مثال لكيفية حساب درجة الهيكل:

ملاحظة: نظراً لأن قاموس بيانات Sysmon Event Id 1 يطابق 100% من حقول الكيان ذات الصلة، فسيتم تقييم درجة الهيكل بـ 5 (ممتاز).

يتم تحويل درجة الهيكل إلى مقياس 0-5 بالطريقة التالية:

PercentageScore

ملاحظة: اعتماداً على حالة الاستخدام (SIEM، صيد التهديدات، التحقيق الرقمي)، يمكنك تحديد ملفات تعريف مختلفة لتقييم سجلاتك بشكل مختلف.

الاتساق

لحساب الاتساق، يقوم power-up ببساطة بحساب النسبة المئوية للحقول التي تحتوي على اسم قياسي في قاموس البيانات. قواميس البيانات ذات العدد الكبير من الحقول المعينة لاسم قياسي هي أكثر عرضة للارتباط مع كيانات CIM.

يتم حساب درجة الاتساق باستخدام الصيغة التالية:

SCORE_PERCENT = (STANDARD_NAME_FIELDS / TOTAL_FIELDS) * 100

يتم تحويل درجة الاتساق إلى مقياس 0-5 بالطريقة التالية:

PercentageScore
00
1 إلى 501
51 إلى 993
1005

كيفية الاستخدام

قبل البدء

  • Power-up هو سكربت بايثون، تأكد من تنفيذ pip install -r requirements.txt
  • تأكد من وجود نسخة محلية من مستودع OSSEM

تشغيل power-up

root@kitploit:~
$> python3 powerup.py --help
  _____ _____ _____ _____ _____    _____ _____ _ _ _ _____ _____     _____ _____ __
 |     |   __|   __|   __|     |  |  _  |     | | | |   __| __  |___|  |  |  _  |  |
 |  |  |__   |__   |   __| | | |  |   __|  |  | | | |   __|    -|___|  |  |   __|__|
 |_____|_____|_____|_____|_|_|_|  |__|  |_____|_____|_____|__|__|   |_____|__|  |__|

usage: powerup.py [-h] [-o OSSEM] [-y OSSEM_YAML] [-p PROFILE] [--excel]
                  [--elastic] [--yaml]

أداة لتقييم تغطية مصادر بيانات ATT&CK، مبنية على OSSEM الرائع.

optional arguments:
  -h, --help            show this help message and exit
  -o OSSEM, --ossem OSSEM
                        path to import OSSEM markdown
  -y OSSEM_YAML, --ossem-yaml OSSEM_YAML
                        path to import OSSEM yaml
  -p PROFILE, --profile PROFILE
                        path to CIM profile
  --excel               export OSSEM DDM to excel
  --elastic             export OSSEM data models to elastic
  --yaml                export OSSEM data models to yaml
  --layer               export OSSEM data models to navigator layer

كما ترى، يمكن لـ power-up استهلاك بيانات OSSEM من صيغتين مختلفتين:

  • OSSEM markdown - الصيغة الأصلية لـ OSSEM عند استنساخه من git.
  • OSSEM yaml - صيغة مختصرة لـ OSSEM، تحتوي فقط على حقول البيانات وبعض البيانات الوصفية. يمكنك استخدام power-up لتحويل OSSEM markdown إلى yaml.

حالياً، يقوم Power-up بتصدير مخرجات OSSEM إلى:

  • Yaml - إنشاء هياكل OSSEM بصيغة yaml، في مجلد output/
  • Excel - إنشاء جدول DDM لـ OSSEM، معززاً بدرجات جودة البيانات، في مجلد ouput/
  • Elastic - إنشاء هيكل OSSEM في elastic، وفهارسه كما يلي:
    • ossem.ddm - جدول DDM لـ OSSEM، معززاً بدرجات جودة البيانات
    • ossem.cim - إدخالات CIM لـ OSSEM
    • ossem.dds - قواميس بيانات OSSEM
    • ossem.dcs - قنوات بيانات OSSEM

ملاحظة: إذا لم يتم تحديد مسار ملف تعريف، يستخدم power-up profiles/default.yml كافتراضي.

التصدير إلى YAML

root@kitploit:~
$> python3 powerup.py -o ../OSSEM --yaml
  _____ _____ _____ _____ _____    _____ _____ _ _ _ _____ _____     _____ _____ __
 |     |   __|   __|   __|     |  |  _  |     | | | |   __| __  |___|  |  |  _  |  |
 |  |  |__   |__   |   __| | | |  |   __|  |  | | | |   __|    -|___|  |  |   __|__|
 |_____|_____|_____|_____|_|_|_|  |__|  |_____|_____|_____|__|__|   |_____|__|  |__|

[*] Profile path: profiles/default.yml
[*] Parsing OSSEM from markdown
[*] Exporting OSSEM to YAML
[*] Created output/ddm_20191114_160246.yml
[*] Created output/cim_20191114_160246.yml
[*] Created output/dds_20191114_160246.yml

الهدف من التصدير/الاستيراد من/إلى YAML هو تسهيل تخصيص OSSEM. من المحتمل أن أول شيء ستفعله هو إنشاء قواميس بيانات خاصة بك، ثم إضافة إدخالات DDM جديدة، لذا فإن YAML سيجعل التحديثات أسهل.

ملاحظة 1: قم بتعديل resources/config.yml لإرشاد power-up حول أسماء الملفات للهياكل الصحيحة. ثم تحتاج فقط إلى وضعها في مجلد وتمريرها إلى وسيط OSSEM_YAML.

ملاحظة 2: لا يقوم power-up بتحليل كامل كائنات OSSEM إلى YAML، فقط حقول البيانات وبعض البيانات الوصفية (مثال: description). والسبب في ذلك هو أنني أردت إبقاء كائن YAML بسيطاً قدر الإمكان، فقط مع البيانات التي تحتاجها لتقييم جودة البيانات.

التصدير إلى EXCEL

root@kitploit:~
$> python3 powerup.py -o ../OSSEM --excel
  _____ _____ _____ _____ _____    _____ _____ _ _ _ _____ _____     _____ _____ __
 |     |   __|   __|   __|     |  |  _  |     | | | |   __| __  |___|  |  |  _  |  |
 |  |  |__   |__   |   __| | | |  |   __|  |  | | | |   __|    -|___|  |  |   __|__|
 |_____|_____|_____|_____|_|_|_|  |__|  |_____|_____|_____|__|__|   |_____|__|  |__|

[*] Profile path: profiles/default.yml
[*] Parsing OSSEM from markdown
[*] Exporting OSSEM DDM to Excel
[*] Saved Excel to output/ddm_enriched_20191114_160041.xlsx

عند التصدير إلى Excel، سيقوم power-up بإنشاء DDM جذاب بصرياً، مع أبعاد جودة البيانات الخاصة بكل إدخال:

التصدير إلى ELASTIC

root@kitploit:~
$> python3 powerup.py -o ../OSSEM --elastic
  _____ _____ _____ _____ _____    _____ _____ _ _ _ _____ _____     _____ _____ __
 |     |   __|   __|   __|     |  |  _  |     | | | |   __| __  |___|  |  |  _  |  |
 |  |  |__   |__   |   __| | | |  |   __|  |  | | | |   __|    -|___|  |  |   __|__|
 |_____|_____|_____|_____|_|_|_|  |__|  |_____|_____|_____|__|__|   |_____|__|  |__|

[*] Profile path: profiles/default.yml
[*] Parsing OSSEM from markdown
[*] Exporting OSSEM to Elastic
[*] Creating elastic index ossem.ddm
[*] Creating elastic index ossem.cim
[*] Creating elastic index ossem.dds
[*] Creating elastic index ossem.dcs

عند التصدير إلى Elastic، سيقوم power-up بتخزين جميع بيانات OSSEM في elastic. نظراً لأن DDM معزز أيضاً بأبعاد جودة البيانات الخاصة به، فستتمكن من إنشاء لوحات تحكم مثل هذه:

التصدير إلى ATT&CK Navigator

root@kitploit:~
$> python3 powerup.py -o ../OSSEM --layer
  _____ _____ _____ _____ _____    _____ _____ _ _ _ _____ _____     _____ _____ __
 |     |   __|   __|   __|     |  |  _  |     | | | |   __| __  |___|  |  |  _  |  |
 |  |  |__   |__   |   __| | | |  |   __|  |  | | | |   __|    -|___|  |  |   __|__|
 |_____|_____|_____|_____|_|_|_|  |__|  |_____|_____|_____|__|__|   |_____|__|  |__|

[*] Profile path: profiles/default.yml
[*] Parsing OSSEM from markdown
[*] Exporting OSSEM to Naviagator Layer
[*] Pulling ATT&CK data
[*] Generating data source quality layer
[*] Created output/ds_layer_20191119_220141.json

عند التصدير إلى طبقة، سيقوم power-up بإنشاء ملف JSON لطبقة Attack Navigator، مع أبعاد جودة البيانات الخاصة بكل تقنية:

ملاحظة: يتم اشتقاق درجات التقنيات من متوسط درجات مصادر البيانات في DDM.

الشكر والتقدير

  • روبرتو رودريغيز @Cyb3rWard0g، خوسيه لويس رودريغيز @Cyb3rPandaH، وجميع أعضاء المجتمع لدعم OSSEM.
  • ماركوس باكر @bakk3rm وروبن بومان @rubenb_2 للإلهام حول أبعاد جودة البيانات من DeTTECT.

المهام المتبقية

  • إنشاء وثائق إضافية
  • التصدير إلى ATT&CK Navigator Layer
  • التعامل بشكل صحيح مع قواميس البيانات التي تشترك في نفس قناة البيانات ولكن لها مخطط مختلف اعتماداً على نظام التشغيل
  • توفير كائنات Kibana (تصورات ولوحات تحكم)
تنزيل الأداة
ATT&CK Data SourceSub Data SourceSource Data ObjectRelationshipDestination Data ObjectEventID
مراقبة العملياتإنشاء عمليةprocesscreatedprocess4688
مراقبة العملياتإنشاء عمليةprocesscreatedprocess1
مراقبة العملياتإنهاء عمليةprocessterminated-4689
مراقبة العملياتإنهاء عمليةprocessterminated-5
DimensionTypeDescription
التغطيةقناة بياناتعدد الأجهزة أو شرائح الشبكة التي تغطيها قناة البيانات
التوقيت المناسبقناة بياناتالمدة التي يستغرقها الحدث ليصبح متاحاً
الاحتفاظقناة بياناتالمدة التي يظل فيها الحدث متاحاً
الهيكلحدثمدى اكتمال الحدث، وما إذا كانت الحقول ذات الصلة متاحة
الاتساقحدثمدى توحيد حقول الحدث، وما إذا تم تطبيع الحقول
00
1 إلى 251
26 إلى 502
51 إلى 753
76 إلى 994
1005