
AutoPentest-DRL: اختبار الاختراق الآلي باستخدام التعلم المعزز العميق
AutoPentest-DRL هو إطار عمل لاختبار الاختراق الآلي يعتمد على تقنيات التعلم المعزز العميق (DRL). يمكن لـ AutoPentest-DRL تحديد مسار الهجوم الأكثر ملاءمة لشبكة منطقية معينة، ويمكن استخدامه أيضًا لتنفيذ هجوم اختبار اختراق على شبكة حقيقية عبر أدوات مثل Nmap وMetasploit. هذا الإطار مخصص للأغراض التعليمية، بحيث يمكن للمستخدمين دراسة آليات هجوم اختبار الاختراق. يتم تطوير AutoPentest-DRL من قبل كرسي Cyber Range Organization and Design (CROND) الممول من NEC في معهد اليابان المتقدم للعلوم والتكنولوجيا (JAIST) في إيشيكاوا، اليابان.
يظهر أدناه نظرة عامة على AutoPentest-DRL. يستقبل الإطار مدخلات المستخدم بخصوص شبكة الهدف المنطقية، بما في ذلك معلومات الثغرات؛ بدلاً من ذلك، يمكن للإطار استخدام Nmap لمسح الشبكة للعثور على ثغرات فعلية في شبكة هدف حقيقية ذات طوبولوجيا معروفة. ثم يتم استخدام مولد رسوم الهجوم MulVAL لتحديد أشجار الهجوم المحتملة، والتي يتم تغذيتها بشكل مبسط إلى محرك DRL. يمكن استخدام مسار الهجوم الناتج كخرج لدراسة آليات الهجوم على عدد كبير من الشبكات المنطقية. بدلاً من ذلك، يمكن للإطار استخدام مسار الهجوم مع أدوات اختبار الاختراق، مثل Metasploit، مما يتيح للمستخدم دراسة كيفية تنفيذ الهجوم على شبكة هدف حقيقية.

بعد ذلك نقدم معلومات موجزة حول كيفية إعداد واستخدام AutoPentest-DRL. للحصول على تفاصيل حول تشغيله، يرجى الرجوع إلى دليل المستخدم الذي نوفره أيضًا.
هناك عدة أدوات خارجية مطلوبة لاستخدام AutoPentest-DRL؛ للوظائف الأساسية المتعلقة بالشبكات المنطقية، ستحتاج إلى:
repos/mulval داخل مجلد AutoPentest-DRL. تحتاج أيضًا إلى تكوين ملف /etc/profile كما هو موضح هنا. في بعض الأنظمة، قد تحتاج أيضًا إلى تثبيت أداة epstopdf، على سبيل المثال باستخدام الأمر أدناه:
sudo apt install texlive-font-utils
إذا كنت تخطط لاستخدام AutoPentest-DRL مع شبكات حقيقية، فستحتاج أيضًا إلى:
nmap على Ubuntu موضح أدناه:
sudo apt install nmap
pymetasploit3 كواجهة برمجة تطبيقات RPC للتواصل مع Metasploit، ويجب تثبيت هذه الأداة في الدليل Penetration_tools/pymetasploit3 باتباع تعليمات مؤلفها.تم تطوير AutoPentest-DRL بشكل أساسي على نظام التشغيل Ubuntu 18.04 LTS؛ قد تعمل أنظمة تشغيل أخرى، ولكن لم يتم اختبارها. لإعداد AutoPentest-DRL، استخدم صفحة الإصدارات لتنزيل أحدث إصدار، وقم باستخراج أرشيف الكود المصدري إلى دليل من اختيارك (على سبيل المثال، دليل المستخدم الرئيسي) على المضيف الذي تنوي استخدامه عليه.
AutoPentest-DRL منفذ بلغة Python، ويتطلب عدة حزم للتشغيل. يمكن استخدام الملف requirements.txt المضمن مع التوزيعة لتثبيت الحزم الضرورية عبر الأمر التالي الذي يجب تشغيله من دليل AutoPentest-DRL/:
$ sudo -H pip install -r requirements.txt
يمكن استخدام AutoPentest-DRL فورًا على طوبولوجيا شبكة منطقية نموذجية عن طريق تشغيل الأمر التالي في الطرفية من دليل AutoPentest-DRL/:
$ python3 ./AutoPentest-DRL.py logical_attack
في وضع الهجوم المنطقي هذا، لا يتم تنفيذ هجوم فعلي، وسيقوم AutoPentest-DRL فقط بتحديد مسار الهجوم الأمثل لطوبولوجيا الشبكة المنطقية الموصوفة في الملف MulVAL_P/logical_attack_v1.P. من خلال مقارنة مسار الإخراج مع التصور المرئي لرسم الهجوم الذي يولده MulVAL في الملف mulval_results/AttackGraph.pdf، يمكنك دراسة خطوات الهجوم المنطقي بالتفصيل.
لمزيد من المعلومات حول تشغيل AutoPentest-DRL، بما في ذلك وضع الهجوم الحقيقي الذي سيتم استخدامه عند إجراء اختبار الاختراق على الشبكات الحقيقية، راجع دليل المستخدم الخاص بنا.
للحصول على قائمة المساهمين في هذا المشروع، راجع ملف CONTRIBUTORS المضمن في التوزيعة.