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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
SecGen — إنشاء أجهزة افتراضية غير آمنة عشوائياً | Kitploit
أدوات/GitHubGitHub/cliffe/secgen
ماسحات الثغرات الأمنيةالمحاكاة الافتراضية للأمانCTFاختبار الاختراقالتعلم والتعليممختبرات وتدريب عملي
GitHubcliffe/secgen

SecGen

إنشاء أجهزة افتراضية غير آمنة عشوائياً

عرض المستودع
2.8k32621منذ 6 أيامتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

مولد سيناريوهات الأمان (SecGen)

ملخص

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

أجهزة مثل Metasploitable2 هي دائمًا نفس الشيء، يستخدم هذا المشروع Vagrant وPuppet وRuby لإنشاء أجهزة افتراضية ضعيفة بشكل عشوائي يمكن استخدامها للتعلم أو لاستضافة أحداث CTF.

أحدث إصدار متاح على: http://github.com/cliffe/SecGen/

يرجى إكمال استبيان قصير لإخبارنا كيف تستخدم SecGen.

للحصول على حل مستضاف، قم بزيارة: https://hacktivity.co.uk/

مقدمة

يستفيد طلاب أمن الحاسوب من المشاركة في تحديات الاختراق. تعد الأعمال المعملية العملية وتحديات الاختراق المكوّنة مسبقًا ممارسة شائعة في تعليم الأمن وكذلك كهواية للأفراد المهتمين بالأمن. أصبحت تحديات الاختراق التنافسية، مثل مسابقات capture the flag (CTF)، عنصرًا أساسيًا في المؤتمرات الصناعية وتركيزًا لمجتمعات كبيرة عبر الإنترنت. توفر الأجهزة الافتراضية (VMs) وسيلة فعالة لمشاركة أهداف الاختراق، ويمكن تصميمها لاختبار مهارات المهاجم. تستضيف مواقع مثل Vulnhub أجهزة افتراضية لتحديات الاختراق المكوّنة مسبقًا وتعتبر مصدرًا قيمًا لمن يتعلمون ويطوّرون مهاراتهم في أمن الحاسوب. ومع ذلك، فإن تطوير تحديات الاختراق هذه يستغرق وقتًا طويلاً، وبمجرد إنشائها، تكون ثابتة بشكل أساسي. أي، بمجرد "حل" التحدي، لا يتبقى تحدٍ للطالب، وإذا تم إنشاء التحدي لمسابقة أو تقييم، لا يمكن إعادة استخدام التحدي دون خطر الانتحال والتواطؤ.

يقوم Security Scenario Generator (SecGen) بإنشاء أنظمة ضعيفة عشوائية. يتم إنشاء الأجهزة الافتراضية بناءً على مواصفات سيناريو، تصف القيود والخصائص للأجهزة الافتراضية المراد إنشاؤها. على سبيل المثال، يمكن أن يحدد سيناريو إنشاء نظام به ثغرة قابلة للاستغلال عن بعد تؤدي إلى اختراق على مستوى المستخدم، وعيب قابل للاستغلال محليًا يؤدي إلى اختراق على مستوى الجذر. سيتطلب ذلك من المهاجم اكتشاف واستغلال كلا الثغرتين المختارتين عشوائيًا للحصول على وصول الجذر إلى النظام. بدلاً من ذلك، يمكن أن يكون السيناريو المحدد أكثر تحديدًا، مع تحديد أنواع معينة من الخدمات (مثل FTP أو SMB) أو حتى ثغرات محددة (بواسطة CVE).

SecGen هو تطبيق Ruby، مع لغة تكوين XML. يقرأ SecGen تكوينه، بما في ذلك الثغرات المتاحة والخدمات والشبكات والمستخدمين والمحتوى، ويقرأ تعريف السيناريو المطلوب، ويطبق منطقًا لعشوائية السيناريو، ويستخدم Puppet وVagrant لتوفير الأجهزة الافتراضية المطلوبة.

الترخيص

SecGen هو برنامج مجاني: يمكنك إعادة توزيعه و/أو تعديله بموجب شروط رخصة GNU العامة كما نشرتها مؤسسة البرمجيات الحرة، إما الإصدار 3 من الرخصة، أو (حسب اختيارك) أي إصدار لاحق.

يحتوي SecGen على وحدات، تقوم بتثبيت حزم برمجية مختلفة. قد تحتوي كل وحدة SecGen على برامج أو مصدرها عن بُعد، وتحدد كل وحدة ترخيصها الخاص في ملف secgen_metadata.xml المرفق.

التثبيت

يتم تطوير واختبار SecGen على Ubuntu Linux. من الناحية النظرية، يجب أن يعمل SecGen على Mac أو Windows، إذا كان لديك جميع البرامج المطلوبة مثبتة.

ستحتاج إلى تثبيت ما يلي:

  • Ruby (التطوير): https://www.ruby-lang.org/en/
  • Vagrant: http://www.vagrantup.com/
  • Virtual Box: https://www.virtualbox.org/
  • Puppet: http://puppet.com/
  • Packer: https://www.packer.io/
  • ImageMagick: https://www.imagemagick.org/
  • وأحجار Ruby المطلوبة (بما في ذلك Nokogiri وLibrarian-puppet)

تم تكييف هذا المشروع للعمل مع إصدار Ubuntu (20.04) بسبب اقتراب نهاية عمر الإصدار (16.04) اعتبارًا من أبريل 2021، على الرغم من أنه سيظل يعمل على هذا الإصدار، إلا أنه ليس مضمونًا لدعم تحديثات الأمان اللازمة لبيئة التطوير الخاصة بك.

على Ubuntu (20.04) ستجعلك هذه الأوامر قيد التشغيل

تأكد من تحديث Ubuntu باستخدام الأوامر التالية:```bash sudo apt update sudo apt upgrade

قم بتثبيت إصدار حديث من vagrant:```bash
wget https://releases.hashicorp.com/vagrant/2.2.9/vagrant_2.2.9_x86_64.deb
sudo apt install ./vagrant_2.2.9_x86_64.deb

تثبيت الحزم الإضافية المطلوبة:```bash sudo apt-get install ruby-dev zlib1g-dev liblzma-dev build-essential patch virtualbox ruby-bundler imagemagick libmagickwand-dev exiftool libpq-dev libcurl4-openssl-dev libxml2-dev graphviz graphviz-dev libpcap0.8-dev git

استنسخ مستودع SecGen باستخدام الأمر التالي.بشكل افتراضي سيكون هذا هو /home/username/SecGen، غيره حسب الحاجة:```bash
git clone https://github.com/cliffe/SecGen.git

قم بتثبيت gems باستخدام الأوامر التالية:```bash #Step In to the file directory

cd /home/username/SecGen

bundle update --bundler

تحديث gems:```bash
bundle update

على Ubuntu (16.04) هذه الأوامر ستساعدك على البدء

قم بتثبيت جميع الحزم المطلوبة:```bash

install a recent version of vagrant

wget https://releases.hashicorp.com/vagrant/1.9.8/vagrant_1.9.8_x86_64.deb sudo apt install ./vagrant_1.9.8_x86_64.deb

install other required packages via repos

sudo apt-get install ruby-dev zlib1g-dev liblzma-dev build-essential patch virtualbox ruby-bundler imagemagick libmagickwand-dev exiftool libpq-dev libcurl4-openssl-dev libxml2-dev graphviz graphviz-dev libpcap0.8-dev git

انسخ SecGen إلى دليل من اختيارك، مثل */home/user/bin/SecGen*

ثم قم بتثبيت الجواهر (gems):```bash
cd /home/user/bin/SecGen
bundle install

لاستخدام Windows basesboxes، ستحتاج إلى تثبيت Packer. استخدم الأمر التالي:```bash curl -SL https://releases.hashicorp.com/packer/1.3.2/packer_1.3.2_linux_amd64.zip -o packer_1.3.2_linux_amd64.zip unzip packer_1.3.2_linux_amd64.zip sudo mv packer /usr/local/ sudo bash -c 'echo "export PATH="$PATH:/usr/local/"" >> /etc/environment' sudo vagrant plugin install winrm sudo vagrant plugin install winrm-fs

## الاستخدام
الاستخدام الأساسي:```bash
ruby secgen.rb run

سيستخدم هذا السيناريو الافتراضي لإنشاء جهاز (أجهزة) افتراضية بشكل عشوائي. مثال متحرك مثال متحرك

يقبل SecGen وسائط (arguments) لتغيير طريقة عمله، والوسائط المنفذة حالياً هي:```bash ruby secgen.rb [--options] OPTIONS: --scenario [xml file], -s [xml file]: Set the scenario to use (defaults to /home/secgen/SecGen/scenarios/default_scenario.xml) --project [output dir], -p [output dir]: Directory for the generated project (output will default to /home/secgen/SecGen/projects/SecGen20200313_094915) --shutdown: Shutdown VMs after provisioning (vagrant halt) --network-ranges: Override network ranges within the scenario, use a comma-separated list --forensic-image-type [image type]: Forensic image format of generated image (raw, ewf) --read-options [conf path]: Reads options stored in file as arguments (see example.conf) --memory-per-vm: Allocate generated VMs memory in MB (e.g. --memory-per-vm 1024) --total-memory: Allocate total VM memory for the scenario, split evenly across all VMs. --cpu-cores: Number of virtual CPUs for generated VMs --help, -h: Shows this usage information --system, -y [system_name]: Only build this system_name from the scenario --snapshot: Creates a snapshot of VMs once built --no-tests: Prevent post-provisioning tests from running.

  VIRTUALBOX OPTIONS:
  --gui-output, -g: Show the running VM (not headless)
  --nopae: Disable PAE support
  --hwvirtex: Enable HW virtex support
  --vtxvpid: Enable VTX support
  --max-cpu-usage [1-100]: Controls how much cpu time a virtual CPU can use
    (e.g. 50 implies a single virtual CPU can use up to 50% of a single host CPU)

  OVIRT OPTIONS:
  --ovirtuser [ovirt_username]
  --ovirtpass [ovirt_password]
  --ovirt-url [ovirt_api_url]
  --ovirtauthz [ovirt authz]
  --ovirt-cluster [ovirt_cluster]
  --ovirt-network [ovirt_network_name]
  --ovirt-affinity-group [ovirt_affinity_group_name]
تنزيل الأداة