Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
alignment-cage-challenge-2 — تم تحديث بيئة CybORG CAGE 2 من أجل الورقة البحثية "Alignment of Autonomous Cyber Defense Agents via Adaptive Policy Shaping" | Kitploit
أدوات/GitHubGitHub/itm-kitware/alignment-cage-challenge-2
أدوات دفاعيةأمن الشبكاتاختبار الاختراقتعلم الآلةالأوراق والأبحاثالتعلم والتعليمالفريق الأحمرأمن الذكاء الاصطناعيمختبرات وتدريب عملي

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
GitHubitm-kitware/alignment-cage-challenge-2

alignment-cage-challenge-2

تم تحديث بيئة CybORG CAGE 2 من أجل الورقة البحثية "Alignment of Autonomous Cyber Defense Agents via Adaptive Policy Shaping"

عرض المستودع
11منذ 8 أياملم تتم المراجعة بعد
مشاركة

مواءمة وكلاء الدفاع السيبراني المستقلين عبر تشكيل السياسات التكيفي

شيفرة ورقتنا البحثية Alignment of Autonomous Cyber Defense Agents via Adaptive Policy Shaping. يوسّع هذا المستودع CybORG CAGE Challenge 2 لدراسة كيفية توجيه المدافعين المستقلين نحو الأولويات التشغيلية مع الحفاظ على قدرتهم على الدفاع عن الشبكة.

الاختلافات عن CybORG CAGE Challenge 2 الأصلي

يقيّم تحدّي CAGE 2 الأصلي المدافعين الزرق مقابل وكلاء حمر مدمجين باستخدام مكافأة CAGE. تضيف هذه النسخة المعدّلة أهدافًا تشغيلية، وسياسات مهاجم معدّلة، وأساليب مواءمة للمدافعين الزرق. يبقى المحاكي ونصوص التجارب ضمن تخطيط CybORG/. يحتفظ دليل CAGE 2 الأصلي بوصف التحدّي الأصلي.

السيناريو المعدّل ومقاييس المرونة

تتضمن الشبكة المعدّلة خوادم المصادقة (Auth) وقاعدة البيانات (Database) والواجهة الأمامية (Front) بالإضافة إلى مضيفي المستخدم والمؤسسة والعمليات والمدافع. تمثّل هذه الخوادم أولويات تشغيلية معبّرًا عنها عبر السرّية (C) والسلامة (I) والتوافر (A):

نوع الخادمالأولويات التشغيلية
المصادقة (Auth)السرّية، السلامة، التوافر
قاعدة البيانات (Database)السرّية، التوافر
الواجهة الأمامية (Front)السلامة، التوافر

تم اقتباس تقييم المرونة من Cadet et al. Quantitative Resilience Modeling for Autonomous Cyber Defense. يستند التنفيذ إلى شيفرة CyberResilience المرتبطة.

يسجّل مقياس المرونة لدينا انخفاضات CIA في كل خطوة ويدمجها في انخفاض مرونة مُعيّر، بأوزان افتراضية قدرها 0.6 للسرّية و0.2 للسلامة و0.2 للتوافر. كما يقيّم إجراءات زرقاء مرشّحة للسياسة القائمة على السمات وتحليل المواءمة. تُسنِد السيناريوهات المولّدة للخوادم الحرجة من حيث CIA قيم مكافأة مضيف CAGE عادية صفرية، مما يتيح تقييم المواءمة التشغيلية وأداء الدفاع العام عن الشبكة بشكل منفصل.

التغييرات الداخلية الإضافية التي أُجريت على قاعدة شيفرة CAGE 2 مفصّلة في README التجارب.

تعديلات وكيل CAGE 2 الأحمر

تم توسيع مهاجمي Meander وB-line الأصليين لاستهداف الخوادم التشغيلية المضافة ودعم أسماء المضيفين عبر أحجام الشبكة المولّدة. يستخدم التقييم خمسة خصوم:

خصم الورقةصنف Pythonأهداف التأثير
M-CIARedMeanderAgent_Combination_CIAخوادم Auth وDatabase وFront الحرجة من حيث CIA
M-CAGERedMeanderAgent_Combination_CAGEمضيفون مخترقون مؤهّلون آخرون يساهمون في أداء CAGE
Bline-CB_lineAgent_Resilience_Cخوادم Auth أو Database
Bline-IB_lineAgent_Resilience_Iخوادم Auth أو Front
Bline-AB_lineAgent_Resilience_Aخوادم Auth أو Database أو Front

يستخدم التدريب RedMeanderAgent_Combination، الذي يختار بين أهداف تأثير CIA وCAGE باحتمال متساوٍ عند كل قرار لاختيار التأثير. تختار متغيّرات B-line نوع خادم هدف واحدًا مرة واحدة لكل حلقة وتحدّد المضيفين المطابقين من الملاحظات. انظر Meander_Resilience.py وB_line_resilience.py.

التثبيت

استخدم Python 3.10 أو أحدث وثبّت uv. من جذر المستودع:

uv sync
cd CybORG

uv sync ينشئ بيئة المشروع ويثبّت CybORG واعتمادياته. شغّل السكربتات باستخدام uv run ... ومشغّلات shell باستخدام uv run bash ...؛ لا حاجة لتفعيل البيئة يدويًا.

سكربتات التجارب في المستودع

الموقعالمحتويات
CybORG/CybORG/المحاكي والوكلاء والمكافآت والمقاييس والسيناريوهات واختبارات المنبع
CybORG/experiment_configs/إعدادات التقييم لوقت الاختبار ووقت التدريب والتكيّف والتوسّع وتقييم الوكيل الأحمر
CybORG/train_agents.pyتدريب وكلاء أزرق أساسيين أو مشكّلين بالمكافأة
CybORG/test_experiment.pyتقييم السياسات الأساسية والثابتة والتكيّفية
CybORG/test_experiment_training_time.pyتقييم الوكلاء الذين تمت مواءمتهم أثناء التدريب
CybORG/alignment_analysis.pyحساب درجات المواءمة وتحليل مقايضات المكافأة
CybORG/CybORG/Shared/Scenarios/scenario_generation.pyتوليد السيناريوهات مع تجمّعات مضيفين قابلة للتهيئة وإعدادات المكافأة

التدريب

استخدم train_agents.py لتدريب مدافع PPO ضد المهاجم المتعرّج المختلط. يدرّب PPOAgent النموذج الأساسي؛ ويضيف AlignedPPOAgent حدًّا للمكافأة الخاص بسمة CIA المختارة. تُسمّى مكافأة وقت التدريب lambda في الورقة البحثية وalpha في واجهة سطر الأوامر فقط؛ وهي منفصلة عن وزن الاستيفاء الخاص بوقت الاختبار.

لتدريب نقطة تحقق أساسية واحدة لـ base:

uv run python train_agents.py \
  --scenario scalability_experiments/base \
  --agent_type PPOAgent \
  --red_agent RedMeanderAgent_Combination \
  --alpha 0 --seed 0 --game_steps 200 --training_iter 500000 \
  --agent_export checkpoints/PPO_base_0_seed0

لتدريب مدافع متوافق مع السرية مع مكافأة قدرها 1.5:

uv run python train_agents.py \
  --scenario scalability_experiments/base \
  --agent_type AlignedPPOAgent \
  --red_agent RedMeanderAgent_Combination \
  --alignment_attribute C --alpha 1.5 \
  --seed 0 --game_steps 200 --training_iter 500000 \
  --agent_export checkpoints/PPO_base_1.5_C_seed0

لجولات التدريب الكاملة:

uv run bash experiment_configs/train_agents/train_base.sh
uv run bash experiment_configs/train_agents/train_trainingtime_alignment.sh

تغطي أدوات التشغيل هذه base وhosts_2 وhosts_3 وhosts_4 مع بذور التدريب 0 1 2 3 4. تُحفظ نقاط التحقق تحت CybORG/checkpoints/ بصيغة PPO_{scenario}_0_seed{seed}.zip لخطوط الأساس وبصيغة PPO_{scenario}_{bonus}_{attribute}_seed{seed}.zip للوكلاء ذوي المكافأة المُشكَّلة. بعد حفظ نقطة تحقق، يشغّل train_agents.py أيضًا تقييمًا قصيرًا. التسجيل معطّل افتراضيًا؛ أضف --wandb إلى أمر تدريب Python لتمكينه.

التقييم والتحليل

تُحمّل سكربتات التقييم نقاط التحقق المدرَّبة وتشغّل الوكلاء ضد الخصم الأحمر المُهيَّأ. تستخدم التهيئات المرفقة 100 حلقة، وبذرة تقييم تبدأ من 42، وخمس بذور تدريب. آفاق الحلقات هي 200 و300 و400 و500 خطوة لـ base وhosts_2 وhosts_3 وhosts_4 على التوالي.

يقيّم test_experiment.py خطوط أساس Blue Monitor وPPO إلى جانب المواءمة الثابتة أو التكيفية في وقت الاختبار:

# Baselines and fixed test-time interpolation
uv run python test_experiment.py --config experiment_configs/base.yaml
uv run python alignment_analysis.py --config experiment_configs/base.yaml

# Adaptive test-time policy selection
uv run python test_experiment.py --config experiment_configs/adaptive_alpha_config/base/cia.yaml
uv run python alignment_analysis.py --config experiment_configs/adaptive_alpha_config/base/cia.yaml

test_experiment_training_time.py يقيّم نقاط التحقق المشكّلة بالمكافأة:

uv run python test_experiment_training_time.py --config experiment_configs/training_time_config/base.yaml
uv run python alignment_analysis.py --config experiment_configs/training_time_config/base.yaml

درّب جميع نقاط التحقق التي يطلبها ملف التكوين قبل تشغيله. لتشغيل مسحي التقييم والتحليل الكاملين:

uv run bash experiment_configs/run_all.sh
uv run bash experiment_configs/run_training_time_experiments.sh
uv run bash experiment_configs/export_alignment_analysis.sh

راجع دليل الإعداد للاطلاع على طريقة الإعداد وتكوين الخصم.

توليد السيناريوهات

تنزيل الأداة