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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
sysmon-modular — مستودع لوحدات تكوين sysmon | Kitploit
أدوات/GitHubGitHub/olafhartong/sysmon-modular
أدوات دفاعيةالتحاليل الرقمية الجنائيةكشف التسللالاستجابة للحوادثتحليل السجلات
GitHubolafhartong/sysmon-modular

sysmon-modular

مستودع لوحدات تكوين sysmon

عرض المستودع
3.1k6538منذ 9 أيامتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

sysmon-modular | مستودع إعدادات Sysmon ليتمكن الجميع من تخصيصه

license Maintenance GitHub last commit Build Sysmon config with all modules Twitter Discord Shield

هذا مستودع إعدادات Microsoft Sysinternals Sysmon حمّله من هنا، صُمم بطريقة نمطية لتسهيل الصيانة وتوليد إعدادات محددة.

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

ملاحظة: للحصول على قيمة أكبر من حدث FileExecutable، فكّر في دمج النسخة الأحدث من إعداد LOLdrivers في الإعداد أيضًا. يمكنك القيام بذلك بسهولة عن طريق الحصول على الملف وإضافته إلى مجلد 29_file_execute_detected ثم توليد إعداد جديد.

يتم إنشاء sysmonconfig.xml داخل المستودع تلقائيًا بعد دمج ناجح بواسطة سكربت PowerShell وتحميل ناجح بواسطة Sysmon في تشغيل Azure Pipeline. مزيد من المعلومات حول كيفية توليد إعداد مخصص يتضمن وحداتك الخاصة هنا

إعدادات مولّدة مسبقًا


الفهرس

  • الإجراءات المطلوبة
    • التخصيص
    • توليد إعداد
      • PowerShell
    • توليد إعدادات مخصصة
  • الاستخدام
    • التثبيت
    • تحديث إعداد موجود
  • أداة التوليد بلغة Python
  • مجتمع Sysmon
  • المساهمة
  • مزيد من المعلومات

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

كيفية استخدام هذا المشروع


ملاحظة؛ Sysmon الأقل من 15 لن يكون متوافقًا تمامًا مع هذا الإعداد

الإصدارات الأقدم ما تزال متاحة في الفروع، لكنها ليست مكتملة مثل الفرع الحالي

  • V8.x >> هنا
  • V9.x >> هنا
  • V10.4 >> هنا
  • V12.x >> هنا
  • V13.x / 14.x >> هنا

لفهم الميزات المضافة في الإصدارات، ألقِ نظرة على تدوينتي القصيرة والمقالات الأحدث أو شاهد محاضرة DerbyCon

ملاحظة: أنصح باستخدام عدد محدود من الإعدادات داخل بيئتك لأسباب واضحة متعددة، مثل: الصيانة، وتوحد المخرجات، وسهولة الإدارة، وما إلى ذلك. لكن احرص على إنشاء إعدادات مخصصة لوحدات تحكم المجال والخوادم ومحطات العمل.


الإجراءات المطلوبة

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

التخصيص

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

توليد إعداد

PowerShell

root@kitploit:~
$> git clone https://github.com/olafhartong/sysmon-modular.git
$> cd sysmon modular
$> . .\Merge-SysmonXml.ps1
$> Merge-AllSysmonXml -Path ( Get-ChildItem '[0-9]*\*.xml') -AsString | Out-File sysmonconfig.xml

توليد إعدادات مخصصة

الدوال التالية بفضل كبير من mbmy

الدالة الجديدة: Find-RulesInBasePath - تأخذ مسارًا أساسيًا (أي C:\folder\sysmon-modular) وتعثر على جميع ملفات قواعد xml المرشحة بناءً على نمط regex

مثال: PS C:\Users\sysmon\sysmon-modular> Find-RulesInBasePath -BasePath C:\users\sysmon\sysmon-modular\ -OutputRules | Out-File available_rules.txt

معاملات Merge-AllSysmonXml الجديدة:

-BasePath - يعثر على جميع ملفات قواعد xml المرشحة من مسار معين بناءً على نمط regex ويدمجها

مثال: PS C:\Users\sysmon\sysmon-modular> Merge-AllSysmonXml -AsString -BasePath C:\Users\sysmon\sysmon-modular\

-ExcludeList - بالدمج مع -BasePath، يأخذ قائمة من القواعد ويستثنيها من القواعد التي تم العثور عليها قبل الدمج

مثال: PS C:\Users\sysmon\sysmon-modular> Merge-AllSysmonXml -AsString -BasePath C:\Users\sysmon\sysmon-modular\ -ExcludeList C:\users\sysmon\sysmon-modular\exclude_rules.txt

-IncludeList - بالدمج مع -BasePath، يعثر على جميع القواعد المتاحة من المسار الأساسي لكنه يدمج فقط تلك المحددة في قائمة

مثال: PS C:\Users\sysmon\sysmon-modular> Merge-AllSysmonXml -AsString -BasePath C:\Users\sysmon\sysmon-modular\ -IncludeList C:\users\sysmon\sysmon-modular\include_rules.txt

ملاحظة يجب أن يكون BasePath هو المسار الكامل إلى ملفات sysmon-modular (على سبيل المثال c:\tools\sysmon-modular)، وإلا فلن يتمكن PowerShell من تحديد موقعها، مما سينتج عنه إعداد افتراضي.

مثال على تنسيق قائمة التضمين/الاستبعاد:

root@kitploit:~
3_network_connection_initiated\include_native_windows_tools.xml
12_13_14_registry_event\exclude_internet_explorer_settings.xml
12_13_14_registry_event\exclude_webroot.xml
17_18_pipe_event\include_winreg.xml
19_20_21_wmi_event\include_wmi_create.xml
2_file_create_time\exclude_chrome.xml
3_network_connection_initiated\include_native_windows_tools.xml
3_network_connection_initiated\include_ports_proxies.xml
8_create_remote_thread\include_general_commment.xml
8_create_remote_thread\include_psinject.xml
9_raw_access_read\include_general_commment.xml

بناء إعداد يحتوي على جميع قواعد sysmon-modular لمعرّفات أحداث معينة (بتضمين مجلد كامل) ثم تعطيل جميع معرّفات الأحداث التي لا تحتوي على قواعد مستوردة

مثال:

root@kitploit:~
# generate the config
$sysmonconfig =  Merge-AllSysmonXml  -BasePath . -IncludeList $workingFolder\include.txt -VerboseLogging -PreserveComments

# flip off any rule groups where rules were not imported
foreach($rg in $sysmonconfig.SelectNodes("/Sysmon/EventFiltering/RuleGroup [*/@onmatch]"))
{
    $ruleNodes = $rg.SelectNodes("./* [@onmatch]")

    if(     $ruleNodes -eq $null `
        -or $ruleNodes.ChildNodes.count -gt 0)
    {
        # no rule nodes found (unlikely) or more than one rule found
        continue
    }

    # RuleGroup with only one rule node
    $ruleNode = $ruleNodes[0]

    if($ruleNode.onmatch -eq "exclude" -and $ruleNode.ChildNodes.count -eq 0 )
    {
        $message = "{0} {1} has no matching conditions.  Toggled to 'include' to limit output" -f $ruleNode.Name,$rg.Name
        Write-Warning $message

        $ruleNode.onmatch = "include"
        $comment = $sysmonconfig.CreateComment($message)
        $rg.AppendChild($comment) | Out-Null
    }
}

مثال على تنسيق قائمة التضمين/الاستبعاد (لأسر القواعد/الأحداث بأكملها):

root@kitploit:~
1_process_creation
5_process_ended
11_file_create
23_file_delete
7_image_load
17_18_pipe_event

الاستخدام

التثبيت

شغّل بصلاحيات المسؤول

root@kitploit:~
sysmon.exe -accepteula -i sysmonconfig.xml

تحديث إعداد موجود

شغّل بصلاحيات المسؤول

root@kitploit:~
sysmon.exe -c sysmonconfig.xml

أداة التوليد بلغة Python

هذه ميزة جديدة، أنشأها cnnrshd

فرز القواعد حسب الأولوية

  1. سكربت Python بسيط يمكنه الدمج استنادًا إلى تنسيق مشابه لقوائم التضمين الموجودة مسبقًا - والفرق الوحيد هو أنه يأخذ ملف CSV بعمودين: مسار الملف والأولوية
  2. إعداد منسق باستخدام ملف csv
  3. قالب بسيط
  4. إصدار المخطط (Schemaversion) ديناميكي ويعتمد على أعلى إصدار مخطط بين القواعد المقدمة.

الإعدادات المولدة باستخدام هذا السكربت تحتفظ بالتعليقات، مع فرض مسافات بادئة XML صحيحة، مما يزيد قابلية القراءة ويتيح إسنادًا ترافقيًا أسهل بين ملفات القواعد

مثال على الأمر:

root@kitploit:~
python merge_sysmon_configs.py config_lists/default_list/default_list.csv -f csv -b templates/sysmon_template.xml  -o test.xml

** هذه الطريقة في توليد المحتوى ما تزال جديدة وتجريبية. لا يوجد دعم حتى الآن للإصدارات المخصصة مثل إصدار MDE augment وإصدار exclude-only.


مجتمع Sysmon

توجد ثلاثة إعدادات رئيسية لـ Sysmon:

  • @SwiftOnSecurity: دليل تمهيدي رائع للكثير من الإعدادات. ابدأ بأمر واحد https://github.com/SwiftOnSecurity/sysmon-config/.

  • @cyb3rops: فرع من SwiftOnSecurity، يواكب أحدث المستجدات واستباقي. **https://github.com/Neo23x0/sysmon-config

  • @olafhartong: هذا المستودع، الذي يركز على سهولة الصيانة العالية مع ملاحظات قواعد مفصّلة للاستجابة الموجّهة وSIEM.

  • دليل مجتمعي ممتاز من @Carlos_Perez: https://github.com/trustedsec/SysmonCommunityGuide

المساهمة

طلبات السحب / تذاكر المشكلات والإضافات الجديدة ستكون موضع تقدير كبير!

مزيد من المعلومات

بدأت سلسلة من التدوينات تغطي هذا المستودع؛

  • قوى اكتشاف نقاط النهاية بتكلفة منخفضة - الجزء 1 - MITRE ATT&CK وSysmon وإعدادي النمطي

  • قوى اكتشاف نقاط النهاية بتكلفة منخفضة - الجزء 2 - النشر والصيانة

  • قوى اكتشاف نقاط النهاية بتكلفة منخفضة - الجزء 3 - العبث بـ Sysmon

  • مقارنة بين Sysmon وMicrosoft Defender for Endpoint

MITRE ATTACK

أسعى إلى ربط جميع الإعدادات بإطار ATT&CK كلما كان Sysmon قادرًا على اكتشاف ذلك. يرجى ملاحظة أن هذا إدخال سجل محتمل قد يؤدي إلى اكتشاف، وليس في جميع الحالات هو القياس (telemetry) الوحيد لتلك التقنية. بالإضافة إلى ذلك، قد تكون هناك تقنيات أخرى مرتبطة بتلك القاعدة، والتقنية المربوطة هي التي رأيتها الأكثر احتمالًا.

تنزيل الأداة
النوعالإعدادالوصف
defaultsysmonconfig.xmlهذا هو الإعداد المتوازن والأكثر استخدامًا، مزيد من المعلومات هنا
default+sysmonconfig-with-filedelete.xmlهذا هو الإعداد المتوازن والأكثر استخدامًا، مع معلومات إضافية بما في ذلك حفظ ملفات FileDelete
verbosesysmonconfig-excludes-only.xmlهذا إعداد مفصّل جدًا، حيث يتم تضمين جميع الأحداث، ولا تُطبَّق سوى وحدات الاستبعاد. لا ينبغي استخدامه في الإنتاج دون تحقق، لأنه سيولّد كمية كبيرة من البيانات وقد يؤثر على الأداء. مزيد من المعلومات هنا
super verbosesysmonconfig-research.xmlإعداد بتفصيل شديد. حجم السجلات المتوقع من هذا الملف مرتفع جدًا، لا تستخدمه في الإنتاج إطلاقًا! هذا الإعداد مخصص للبحث فقط، وسيستخدم المزيد من CPU/الذاكرة. فعّله فقط قبل تنفيذ التقنية التي تريد فحصها، وعند الانتهاء حمّل إعدادًا أخف.
MDE augmentsysmonconfig-mde-augmentation.xmlإعداد لتعزيز Defender for Endpoint، يهدف إلى تحسين المعلومات وتقليل التداخل قدر الإمكان. يعتمد هذا على الإعداد الافتراضي/المتوازن ولن يولّد جميع الأحداث لـ Sysmon، وتوجد تعليقات في الإعداد. لصالح الاستجابة للحوادث، فكّر في استخدام إعداد الاستبعادات فقط واستيعاب الأحداث المُثرية فقط. (سيتم نشر تدوينة بمزيد من الأسباب قريبًا)