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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
BlueTeam.Lab — مختبر كشف للفريق الأزرق تم إنشاؤه باستخدام Terraform و Ansible في Azure. | Kitploit
أدوات/GitHubGitHub/op7ic/blueteam.lab
أدوات دفاعيةتدقيق التكوينالتحاليل الرقمية الجنائيةاختبار الاختراقأمن السحابةكشف التسللالتعلم والتعليمالاستجابة للحوادثتحليل السجلاتمختبرات وتدريب عملي
GitHubop7ic/blueteam.lab

BlueTeam.Lab

18723منذ سنة واحدةتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

مختبر كشف للفريق الأزرق تم إنشاؤه باستخدام Terraform و Ansible في Azure.

عرض المستودع

BlueTeam.Lab

BlueTeam.Lab

الغرض

يحتوي هذا المشروع على مجموعة من نصوص Terraform و Ansible لإنشاء مختبر BlueTeam مُنسَّق. الهدف من هذا المشروع هو تزويد الفرق الحمراء والزرقاء بالقدرة على نشر مختبر كشف مؤقت لاختبار الهجمات المختلفة والأدلة الجنائية على أحدث بيئة Windows، ثم الحصول على عرض 'شبيه بـ SOC' للبيانات المُولَّدة.

ملاحظة: تم تصميم هذا المختبر ليكون غير آمن عمدًا. يُرجى عدم توصيل هذا النظام بأي شبكة تهتم بها.


تخطيط المختبر


المتطلبات الأساسية

يلزم تثبيت عدد من الميزات على نظامك لاستخدام هذا الإعداد.

root@kitploit:~
# Step 1 - Install Azure CLI. More details on https://docs.microsoft.com/en-us/cli/azure/install-azure-cli-linux?pivots=apt
curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash

# Step 2 - Install Terraform. More details on https://learn.hashicorp.com/tutorials/terraform/install-cli
sudo apt-get update && sudo apt-get install -y gnupg software-properties-common curl
curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add -
sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main"
sudo apt-get update && sudo apt-get install terraform

# Step 3 - Install Ansible. More details on https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html
sudo apt update
sudo apt install software-properties-common
sudo add-apt-repository --yes --update ppa:ansible/ansible
sudo apt update
sudo apt install ansible

# Step 4 - Finally install python and various packages needed for remote connections and other activities
sudo apt install python3 python3-pip
pip3 install pywinrm requests msrest msrestazure azure-cli
pip3 install -r https://raw.githubusercontent.com/ansible-collections/azure/refs/heads/dev/requirements.txt

بناء ونشر BlueTeam.Lab

بمجرد تثبيت جميع المتطلبات الأساسية، قم بتنفيذ الخطوات التالية:

root@kitploit:~
# Log in to Azure from command line to ensure that the access token is valid
az login

# Clone Repository and move to BlueTeam.Lab folder
git clone https://github.com/op7ic/BlueTeam.Lab.git && cd BlueTeam.Lab

# Initialize Terraform and begin planning
terraform init && terraform plan

# Create your lab using the following command. 
terraform apply -auto-approve

# Verify the layout of your environment using Ansible
cd ansible && ANSIBLE_CONFIG=./ansible.cfg ansible-inventory --graph -i inventory.azure_rm.yml -vvv && cd ../

# To see IPs of individual hosts and other setup details use the following command: 
cd ansible && ANSIBLE_CONFIG=./ansible.cfg ansible-inventory -i inventory.azure_rm.yml -vvv --list && cd ../

# Once done, destroy your lab using the following command:
terraform destroy -auto-approve

# If you would like to time the execution us following command:
start_time=`date +%s` && terraform apply -auto-approve && end_time=`date +%s` && echo execution time was `expr $end_time - $start_time` s

#NOTE: It will take about two hours to configure it all, depending on your selected hardware.

نشر إصدارات مختلفة من Windows

تحدد متغيرات Terraform أنواع أنظمة التشغيل المستخدمة في هذا النشر. يسمح تعديل بسيط لمتغيرات وقت التشغيل بتحديد نظام تشغيل مختلف لتشغيل Active Directory (AD) بأكمله. الخيار الافتراضي هو استخدام Windows 10 Enterprise لـ محطات العمل و Windows Server 2019 Datacenter لـ وحدة تحكم المجال. فيما يلي أمثلة لبعض خيارات التكوين الشائعة التي يمكن استخدامها لتعديل البيئة بأكملها لاستخدام إصدارات نظام تشغيل مختلفة:

root@kitploit:~
# Use Windows 10 Enterprise for Workstations and Server 2019 Datacenter for DC (default option)
terraform apply -auto-approve

# Use Windows 11 Enterprise for Workstations and Server 2019 Datacenter for DC
terraform apply -auto-approve  -var="workstation_os=Windows-11" -var="workstation_SKU=win11-21h2-ent" -var="workstations_vm_size=Standard_DC2s_v2" 

# Use Windows 11 Enterprise for Workstations and Server 2012 Datacenter for DC
terraform apply -auto-approve -var="workstation_os=Windows-11" -var="workstation_SKU=win11-21h2-ent" -var="workstations_vm_size=Standard_DC2s_v2" -var="dc_os=WindowsServer" -var="dc_SKU=2012-Datacenter"

# Use Windows 11 Enterprise for Workstations and Server 2016 Datacenter for DC
terraform apply -auto-approve -var="workstation_os=Windows-11" -var="workstation_SKU=win11-21h2-ent" -var="workstations_vm_size=Standard_DC2s_v2" -var="dc_os=WindowsServer" -var="dc_SKU=2016-Datacenter"

# Use Windows 10 Pro N for Workstations and Server 2012 Datacenter for DC
terraform apply -auto-approve -var="workstation_os=Windows-10" -var="workstation_SKU=21h1-pron" -var="dc_os=WindowsServer" -var="dc_SKU=2012-Datacenter"

يمكن استخدام الأمر az vm image list لتحديد إصدارات نظام تشغيل مختلفة للنشر.


الميزات

  • Active Directory لنظام Windows مع محطتي عمل متصلتين بمجال Windows في الإعداد الافتراضي.
  • ملف تكوين المجال مرن يسمح بإجراء تغييرات سهلة على التكوين الأساسي.
  • سياسات تدقيق تم تكوينها بناءً على دليل CIS لزيادة رؤية الأحداث عبر البنية التحتية لنظام Windows. تم استخدام Auditpol لتكوين إعدادات إضافية وتم تمكين سجلات PowerShell Transcript.
  • تم نشر Sysmon64 عبر البنية التحتية باستخدام أحدث تكوين SwiftOnSecurity لأجهزة Windows.
  • تم تكوين خادم Wazuh وتشغيله لجمع السجلات من الأجهزة.
  • تم تكوين وكلاء Wazuh عبر البنية التحتية وإرسال البيانات إلى خادم Wazuh.
  • تم تكوين جدار الحماية للسماح فقط بعنوان IP الخاص بك للوصول إلى الأنظمة المنشورة.
  • تم تثبيت OSQuery و FleetDM عبر البنية التحتية، باستخدام قوالب تكوين من Palantir.
  • تم تكوين خادم Velocidex Velociraptor وتشغيله.
  • تم تكوين وكلاء Velocidex Velociraptor عبر البنية التحتية وإرسال البيانات إلى خادم Velociraptor.
  • تم تكوين WinLogBeat لتسجيل البيانات في مثيل Elastic.
  • تم تكوين ماسح LokiToWinEventLog لتسجيل البيانات في سجل أحداث Windows كل 3 ساعات وإرسال البيانات إلى مثيل Elastic المثبت مع خادم Wazuh.
  • تم تكوين ماسح Pe-SieveToWinEventLog لتسجيل البيانات في سجل أحداث Windows كل 3 ساعات وإرسال البيانات إلى مثيل Elastic المثبت مع .

التوثيق

يصف القسم التالي المكونات المختلفة التي يتكون منها هذا المختبر بالإضافة إلى تفاصيل حول كيفية تغيير ملفات التكوين لتعديل الإعداد:

  • OSQuery وخادم Fleetdm
  • خادم Wazuh ووكيل Wazuh
  • Sysmon
  • WinLogBeat
  • خادم Velociraptor ووكيل Velociraptor
  • أعضاء المجال

بيانات الاعتماد

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

root@kitploit:~
Network Setup:

Domain Controller = xx.xx.xx.xx
Workstation DETECTION1: xx.xx.xx.xx
Workstation DETECTION2: xx.xx.xx.xx
Wazuh Server IP = xx.xx.xx.xx
Wazuh Web Interface = https://xx.xx.xx.xx:443/
Velociraptor Web Inteface: = https://xx.xx.xx.xx:10000/
FleetDM Web Interface: = https://xx.xx.xx.xx:9999/

Credentials:

Domain Admin:
    blueteam.lab\blueteam BlueTeamDetection0%%%
Local Admin on Workstations:
    blueteam BlueTeamDetection0%%%
Wazuh Server SSH Login:
    blueteam BlueTeamDetection0%%%
Wazuh Logins:
    wazuh  BlueTeamDetection0%%%
    admin  BlueTeamDetection0%%%
    kibanaserver  BlueTeamDetection0%%%
    kibanaro  BlueTeamDetection0%%%
    logstash  BlueTeamDetection0%%%
    readall  BlueTeamDetection0%%%
    snapshotrestore  BlueTeamDetection0%%%
    wazuh_admin  BlueTeamDetection0%%%
    wazuh_user  BlueTeamDetection0%%%
Velociraptor Web Inteface Login:
    blueteam BlueTeamDetection0%%%
FleetDM Web Inteface Login:
    [email protected] BlueTeamDetection0%%%

RDP to Domain Controller:
xfreerdp /v:xx.xx.xx.xx /u:blueteam.lab\\blueteam '/p:BlueTeamDetection0%%%' +clipboard /cert-ignore

RDP to Workstation DETECTION1: xx.xx.xx.xx
xfreerdp /v:xx.xx.xx.xx /u:blueteam '/p:BlueTeamDetection0%%%' +clipboard /cert-ignore

RDP to Workstation DETECTION2: xx.xx.xx.xx
xfreerdp /v:xx.xx.xx.xx /u:blueteam '/p:BlueTeamDetection0%%%' +clipboard /cert-ignore

تكوين جدار الحماية

يلخص الجدول التالي مجموعة قواعد جدار الحماية المطبقة عبر بيئة BlueTeamLab في التكوين الافتراضي. يُرجى تعديل ملف main.tf لإضافة قواعد جدار حماية جديدة حسب الحاجة في قسم إعداد قواعد جدار الحماية.

داخليًا، يتم استخدام عناوين IP الثابتة وأسماء المضيفين التالية في نطاق 10.0.0.0/16 لهذه البيئة في التكوين الافتراضي:


تكوين المستخدم

يتم إنشاء بيانات الاعتماد الافتراضية التالية أثناء التثبيت. سيتم عرض بيانات الاعتماد الفعلية التي تم تكوينها بعد اكتمال عملية النشر بالكامل.

لتعديل بيانات الاعتماد الافتراضية، قم بتغيير أسماء المستخدمين وكلمات المرور في ملف domain_setup.yml.

لقطات الشاشة

المساهمة

يمكن تقديم المساهمات والإصلاحات والتحسينات مباشرة لهذا المشروع كمشكلة GitHub أو طلب سحب.

هيكل الدليل

root@kitploit:~
| - ansible
|  | - ansible.cfg
|  | - domain-controller.yml
|  | - domain-member.yml
|  | - domain_setup.yml
|  | - group_vars
|  |  | - all
|  |  | - wazuh
|  | - inventory.azure_rm.yml
|  | - roles
|  |  | - domain-controller
|  |  |  | - tasks
|  |  |  |  | - main.yml
|  |  | - domain-member
|  |  |  | - tasks
|  |  |  |  | - main.yml
|  |  | - fleetserver
|  |  |  | - tasks
|  |  |  |  | - main.yml
|  |  |  | - templates
|  |  |  |  | - config.yml.j2
|  |  |  |  | - ssl.crt
|  |  |  |  | - ssl.key
|  |  |  |  | - systemd-fleetm.service.j2
|  |  | - monitor
|  |  |  | - tasks
|  |  |  |  | - main.yml
|  |  | - osqueryagent
|  |  |  | - tasks
|  |  |  |  | - main.yml
|  |  |  | - templates
|  |  |  |  | - osquery.conf
|  |  |  |  | - osquery.flags.j2
|  |  |  |  | - osquery.key.j2
|  |  |  |  | - ssl.crt
|  |  |  |  | - ssl.key
|  |  |  | - vars
|  |  |  |  | - main.yml
|  |  | - sysmon
|  |  |  | - handlers
|  |  |  |  | - main.yml
|  |  |  | - tasks
|  |  |  |  | - main.yml
|  |  |  | - vars
|  |  |  |  | - main.yml
|  |  | - velociraptorclient
|  |  |  | - tasks
|  |  |  |  | - main.yaml
|  |  |  | - templates
|  |  |  |  | - clientconfig.yml.j2
|  |  |  | - vars
|  |  |  |  | - main.yml
|  |  | - velociraptorserver
|  |  |  | - tasks
|  |  |  |  | - main.yaml
|  |  |  | - templates
|  |  |  |  | - serverconfig.yml.j2
|  |  |  |  | - systemd-velociraptor.service.j2
|  |  |  | - vars
|  |  |  |  | - main.yml
|  |  | - wazuhagent
|  |  |  | - tasks
|  |  |  |  | - main.yml
|  |  |  | - templates
|  |  |  |  | - ossec.conf.j2
|  |  |  | - vars
|  |  |  |  | - main.yml
|  |  | - wazuhserver
|  |  |  | - tasks
|  |  |  |  | - main.yaml
|  |  |  | - templates
|  |  |  |  | - sysmon_rules.xml
|  |  |  |  | - unattended-installation.sh
|  |  |  |  | - wazuh-passwords-tool.sh.j2
|  |  | - winlogbeat
|  |  |  | - tasks
|  |  |  |  | - main.yml
|  |  |  | - templates
|  |  |  |  | - config.yml.j2
|  |  |  | - vars
|  |  |  |  | - main.yml
|  | - wazuh-server.yml
| - documentation
|  | - osquery.md
|  | - pic
|  |  | - map.png
|  |  | - wazuh-logs.PNG
|  |  | - wazuh-pdc.PNG
|  |  | - winlogbeat.PNG
|  | - sysmon.md
|  | - velociraptor.md
|  | - wazuh.md
|  | - winlogbeat.md
|  | - winmember.md
| - main.tf
| - README.md
| - terraform.tfstate
| - terraform.tfstate.backup
| - variables.tf

الأسئلة الشائعة

  • أحصل على Disk wks-1-os-disk already exists in resource group BLUETEAM-LAB. Only CreateOption.Attach is supported. أو شيء مشابه لهذا الخطأ.

    • أعد تشغيل أوامر terraform terraform destroy -auto-approve && terraform apply -auto-approve لتدمير المختبر وإعادة إنشائه. يبدو أن هذا الخطأ يظهر عندما لا تقوم Azure بتنظيف جميع الأقراص بشكل صحيح، لذا توجد موارد متبقية بنفس الاسم.
  • أحصل على Operation 'startTenantUpdate' is not allowed on VM 'domain-controller' since the VM is marked for deletion. You can only retry the Delete operation (or wait for an ongoing one to complete). أو شيء مشابه لهذا الخطأ.

    • أعد تشغيل أوامر terraform terraform destroy -auto-approve && terraform apply -auto-approve لتدمير المختبر وإعادة إنشائه. يبدو أن هذا الخطأ يظهر عندما لا تقوم Azure بتنظيف جميع الموارد بشكل صحيح، لذا توجد موارد متبقية يجب تدميرها قبل إنشاء المختبر بسبب تعارض في الأسماء و/أو المواقع.
  • أحصل على Network security group windows-nsg cannot be deleted because old references for the following Nics أو شيء مشابه لهذا الخطأ.

    • أعد تشغيل أوامر terraform terraform destroy -auto-approve && terraform apply -auto-approve لتدمير المختبر وإعادة إنشائه. يبدو أن هذا الخطأ يظهر عندما لا تقوم Azure بتنظيف جميع الموارد بشكل صحيح، لذا توجد موارد متبقية يجب تدميرها قبل إنشاء المختبر بسبب تعارض في الأسماء و/أو المواقع.

مصادر الإلهام والشكر

تم استعارة وتكييف نسبة جيدة من هذا الكود من Christophe Tafani-Dereeper's Adaz. شكر كبير لبناء الأساس الذي سمح لي بتصميم بيئة المختبر هذه.

تنزيل الأداة
خادم Wazuh
اسم القاعدةمجموعة أمان الشبكةالمضيف المصدرالمنفذ المصدرالمضيف الهدفالمنفذ الهدف
Allow-RDPwindows-nsgعنوان IP العام الخاص بك*PDC-1, DETECTION1, DETECTION23389
Allow-WinRMwindows-nsgعنوان IP العام الخاص بك*PDC-1, DETECTION1, DETECTION25985
Allow-WinRM-securewindows-nsgعنوان IP العام الخاص بك*PDC-1, DETECTION1, DETECTION25986
Allow-SMBwindows-nsgعنوان IP العام الخاص بك*PDC-1, DETECTION1, DETECTION2445
Allow-SSHwazuh-nsgعنوان IP العام الخاص بك*Wazuh22
Allow-Wazuh-Managerwazuh-nsgعنوان IP العام الخاص بك*Wazuh1514-1516
Allow-Wazuh-Elasticsearchwazuh-nsgعنوان IP العام الخاص بك*Wazuh9200
Allow-Wazuh-APIwazuh-nsgعنوان IP العام الخاص بك*Wazuh55000
Allow-Elasticsearch-Clusterwazuh-nsgعنوان IP العام الخاص بك*Wazuh9300-9400
Allow-Wazuh-GUIwazuh-nsgعنوان IP العام الخاص بك*Wazuh443
Allow-Velociraptor-Client-Connectionswazuh-nsgعنوان IP العام الخاص بك*Wazuh8000
Allow-Velociraptor-GUIwazuh-nsgعنوان IP العام الخاص بك*Wazuh10000
Allow-Fleet-GUIwazuh-nsgعنوان IP العام الخاص بك*Wazuh9999
المضيفالدورIP الداخلي
PDC-1وحدة تحكم المجال الأساسية10.0.10.10
Wazuhخادم Wazuh، يستضيف أيضًا تثبيت Velocidex Velociraptor و FleetDM10.0.10.100
DETECTION1محطة عمل Windows 10 الأولى10.0.11.11
DETECTION2محطة عمل Windows 10 الثانية10.0.11.12
المضيفاسم المستخدمكلمة المرورالدور
PDC-1blueteam.lab\blueteamBlueTeamDetection0%%%مسؤول المجال لمجال blueteam.lab
DETECTION1localadministratorBlueTeamDetection0%%%المسؤول المحلي لمحطة عمل DETECTION1
DETECTION2localadministratorBlueTeamDetection0%%%المسؤول المحلي لمحطة عمل DETECTION2
WazuhblueteamBlueTeamDetection0%%%بيانات اعتماد SSH لخادم Wazuh
WazuhwazuhBlueTeamDetection0%%%مسؤول Wazuh
WazuhadminBlueTeamDetection0%%%مسؤول Wazuh
WazuhkibanaserverBlueTeamDetection0%%%حساب خدمة Wazuh
WazuhkibanaroBlueTeamDetection0%%%حساب خدمة Wazuh
WazuhlogstashBlueTeamDetection0%%%حساب خدمة Wazuh
WazuhreadallBlueTeamDetection0%%%حساب خدمة Wazuh
WazuhsnapshotrestoreBlueTeamDetection0%%%حساب خدمة Wazuh
Wazuhwazuh_adminBlueTeamDetection0%%%حساب خدمة Wazuh
Wazuhwazuh_userBlueTeamDetection0%%%حساب خدمة Wazuh
WazuhblueteamBlueTeamDetection0%%%تسجيل الدخول إلى بوابة Velociraptor
Wazuh[email protected]BlueTeamDetection0%%%تسجيل الدخول إلى بوابة FleetDM
  • لماذا Azure؟

    • الأرصدة المجانية متاحة مع الحساب التجريبي
  • كيف يمكنني تعديل قطاعات الشبكة أو حجم النشر أو المتغيرات الأخرى؟

    • قم بتعديل ملف متغيرات Terraform لتغيير الإعداد الخاص بك. بدلاً من ذلك، يمكن تغيير كل متغير أثناء وقت التشغيل عن طريق إضافة -var إلى terraform apply. على سبيل المثال، terraform apply --auto-approve -var="region=East US 2" سيغير المنطقة لتكون مختلفة عن الافتراضي المحدد في ملف المتغيرات. يمكن تغيير الإعداد بأكمله، بما في ذلك نطاقات الشبكة وأنظمة التشغيل وحجم VM، باستخدام سلسلة من معاملات -var.
  • كيف يمكن العثور على SKUs لنشر معين؟

    • استخدم أمر Azure az vm list-skus --location westeurope --all --output table للعثور على SKUs المتاحة للنشر الخاص بك.
  • أحصل على Max retries exceeded with url: /wsman ثم يتم رفض الاتصال عند بناء النظام.

    • للأسف، تعني قيود WinRM أنه في بعض الأحيان، سيتوقف WinRM عن العمل كما هو متوقع وبدلاً من ذلك ستتجمد الاتصالات. نتيجة لذلك، لن يعمل التنفيذ بشكل صحيح. أعد تشغيل terraform apply -auto-approve لإصلاح المضيف التالف.