الأساسياتأساسي45mL02

Lab Setup — ابني الـ lab في 30 دقيقة

VirtualBox + Kali + AD معزول، من غير ما تحرق نفسك

#VirtualBox#Kali#Lab#Beginner

ليه لازم تبني المعمل قبل أي حاجة تانية؟

تخيل السيناريو ده. أنت قاعد بجهازك الشخصي، عايز تتعلم AD attacks. فتحت Kali، شغّلت nmap -sS على شبكة بيتك "علشان تجرّب". بعد ساعتين، الـ ISP بعتلك إيميل: "نشاط مشبوه على الـ line بتاعك". أو أسوأ: أنت قاعد على wifi الشغل، الـ SOC شافك، خرجت من الشغل ومعاك خطاب إنذار.

ليه حصل ده؟ علشان ما عندكش معمل.

المعمل = شوية VMs معزولة. ما بتلمسش الإنترنت، ما بتلمسش شبكة بيتك، ولا بتلمس أي حاجة بتاعة حد تاني. لو حاجة انفجرت جوّه، تنفجر هناك وتقف. snapshot، ارجع، كمّل.

كل درس في الكورس ده بيفترض إن المعمل ده موجود. مفيش "أنا هجرب بسرعة على الـ router بتاع البيت". لا.

اوعى تنسى السطر ده — مفيش استثناء
ما تنفّذش أي تقنية من الدروس على شبكة بيتك، ولا الشركة، ولا حتى wifi الكافيه. كل حاجة جوّه الـ VMs المعزولة. ولو عندك شك لحظة واحدة "هل ده عادي؟" — يبقى مش عادي.
حصلت فعلاً
زميل ليّا كان في فترة التعلم، شغّل responder على لابتوب الشغل في الـ break room "علشان يشوف هيطلع إيه". طلعت hashes للـ DC. الـ SOC قفل اللابتوب في 4 دقايق. اتحوّل لـ HR. فقد شغله.

التقنية مكنتش غلط. المكان كان غلط. المعمل بيحميك من نفسك قبل ما يحميك من القانون.

القصة كاملة — ابني المعمل في 30 دقيقة

هنمشي مع بعض دلوقتي خطوة بخطوة. الهدف: بعد نص ساعة يكون عندك Kali + Windows + Ubuntu، كلهم على شبكة معزولة، وكل واحد فيهم عليه snapshot نضيف ترجع له لما تخرّب حاجة (وهتخرّب).

  • الجهاز المضيف: 16GB RAM (الحد الأدنى 8GB، بس هتعاني)، 200GB قرص فاضي، CPU بيدعم virtualization. روح BIOS وفعّل VT-x/AMD-V — لو مش مفعّلة، الـ VMs هتزحف.
  • الـ Hypervisor: VirtualBox مجاني وكفاية للبداية. VMware Workstation أسرع شوية بس مدفوع. ما تبدأش بـ Hyper-V لو ما تعرفوش — بيتعارض مع VirtualBox على نفس الجهاز.
  • الـ ISOs اللي محتاجها: Kali Linux (image جاهزة من kali.org)، Windows 10/11 trial من Microsoft، Ubuntu 22.04 Server، و — لو هتلعب AD — Windows Server 2022 evaluation.
  • الإنترنت: محتاجه مرة واحدة بس — تنزّل الصور وخلاص. بعدها افصل الـ VMs.

بناء البيئة — خطوة بخطوة

01
تثبيت VirtualBox
$ # على Ubuntu/Debian:
$ sudo apt update && sudo apt install virtualbox virtualbox-ext-pack
$ # على Windows: حمّل من virtualbox.org و شغّل installer
$ # على macOS: brew install --cask virtualbox
02
إنشاء شبكة معزولة — أهم خطوة في الدنيا

بُص. لو عملت كل حاجة صح وفشلت في الخطوة دي، أنت لسه على شبكة بيتك. الـ VMs لازم يتكلموا مع بعض، بس ما يوصلوش للإنترنت ولا للراوتر بتاعك.

VirtualBox عنده 4 أنواع networking لازم تعرف الفرق بينهم:

  • NAT: الـ VM بيوصل للإنترنت من خلال الجهاز. آمن نسبياً، بس مش هينفع لو عايز VMs يكلموا بعض.
  • Bridged: الـ VM بياخد IP من الراوتر بتاعك مباشرة. كأنه جهاز تاني في بيتك. أي scan بتعمله بيظهر للـ ISP. ابعد عنه.
  • Host-only: شبكة معزولة تماماً بين الـ VMs والجهاز المضيف بس. مفيش إنترنت. ده اللي عايزينه.
  • Internal: VMs بيكلموا بعض بس، الجهاز المضيف نفسه مش شايفهم. للسيناريوهات الأكثر عزلاً.
$ # في VirtualBox: File → Host Network Manager → Create
$ # أعطها اسم vboxnet0 و subnet 10.10.10.0/24
$ # DHCP: enable
$ # أو من سطر الأوامر:
$ VBoxManage hostonlyif create
$ VBoxManage hostonlyif ipconfig vboxnet0 --ip 10.10.10.1 --netmask 255.255.255.0
03
VM 1 — Kali Linux (المهاجم)
  • حمّل image جاهزة من kali.org/get-kali — اختار "Virtual Machines" → VirtualBox. ما تنزّلش الـ ISO وتثبت من الأول، ضيعة وقت.
  • RAM: 4GB كافية. لو هتشغّل Burp Suite + Bloodhound مع بعض، خليها 6GB.
  • CPUs: 2 cores. أكتر من كده مش هيفرق إلا في الـ wordlist cracking.
  • Disk: 40GB dynamic. الصورة الأساسية 15GB، الباقي للـ tools اللي هتنزّلها.
  • Network: Host-only Adapter = vboxnet0. مش NAT. مش Bridged.
  • كلمة سر افتراضية: kali / kali. غيّرها أول حاجة.
  • Snapshot: بعد ما تخلّص setup وتعمل update — اسم الـ snapshot: kali-clean-base.
04
VM 2 — Windows 10 (الضحية)
  • نزّل الـ ISO من microsoft.com/software-download/windows10. trial 90 يوم — كفاية لكورس كامل.
  • RAM: 4GB. أقل من كده Windows هيخنق.
  • CPUs: 2. Disk: 60GB dynamic.
  • Network: Host-only = vboxnet0.
  • وقت التثبيت: اعمل local user، ما تدخلش بحساب Microsoft. ليه؟ علشان لو الـ VM اتصلت بالإنترنت بالغلط، Microsoft هيشوف نشاط غريب على الحساب.
  • Snapshot لازم بعد التثبيت مباشرة — قبل ما تعمل أي update، قبل ما تحط أي tool. اسمه: win10-clean-baseline. ده اللي هترجعله بعد كل تجربة.
  • Snapshot تاني بعد ما تثبّت .NET + Sysmon (لو هتدرس detection): win10-monitored.
استراتيجية الـ snapshots — حاجة محدش بيقولهالك
مفيش snapshot واحد بيكفي. خد 3 على الأقل لكل VM:
  1. baseline: بعد التثبيت ع طول، نضيفة تماماً.
  2. configured: بعد ما حطّيت tools + updates.
  3. pre-attack: قبل أي تجربة كبيرة. لو خرّبت الـ registry، ترجع للنقطة دي مش للـ baseline.
الـ snapshots بتاكل disk، بس disk أرخص من إنك تعيد التثبيت من الأول.
05
VM 3 — Ubuntu Server (هدف Linux)

صورة Ubuntu 22.04 Server. ثبّت Apache + MySQL + PHP لتدريب SQLi و LFI.

bash
sudo apt update
sudo apt install -y apache2 mysql-server php libapache2-mod-php php-mysql
sudo systemctl enable --now apache2 mysql
06
مختبر AD اختياري — للتدريب المتقدم

Windows Server 2022 evaluation + ترقيته إلى Domain Controller. الأسهل: مشروع GOAD (Game Of Active Directory) على GitHub — يبني بيئة AD متعددة الـ DCs بـ vulnerabilities متعمدة بـ command واحد.

$ git clone https://github.com/Orange-Cyberdefense/GOAD
$ cd GOAD && ./goad.sh -t install -l GOAD-Light -p virtualbox

الأخطاء اللي بيقع فيها كل المبتدئين

الغلطة رقم 1: شغّلت Kali على Bridged
فيه ناس بتفتح VirtualBox وتختار Bridged "علشان الإنترنت يشتغل". الـ VM دلوقتي على شبكة بيتك زي أي جهاز تاني. لما تشغّل nmap على 192.168.1.0/24، أنت بتمسح بيتك فعلاً. لو في wifi الشغل؟ الـ SOC شافك. لو في كافيه؟ ممكن تتحاسب على نشاط ضد شبكة بتاع حد تاني.

الحل: Host-only Adapter دايماً. لو محتاج إنترنت في الـ VM (مرحلياً للتنزيل)، ضيف adapter تاني NAT مؤقت، وبعد التنزيل اقفله.
الغلطة رقم 2: نسخ ملفات شخصية للـ VM
"هخليها VM للشغل العادي + الـ pentest". لا. ماينفعش. الـ VM بتاع المعمل بيتعرّض لـ malware اختياري. أي ملف شخصي جواه = ملف ممكن يتسرق أو يتشفّر. خلّيها نضيفة، ابعد عنها بحياتك الشخصية.
الغلطة رقم 3: ما تعملش snapshot قبل التجربة
"هجرّب بسرعة وأرجّع". بعد ساعتين، الـ Windows بايظ، الـ services مكسورة، ومش فاكر إنت غيّرت إيه. هتعيد تثبيت من الأول. ساعة ضايعة.

القاعدة: قبل أي amplifier، أي exploit، أي إعداد جديد — snapshot. اسمه واضح. التاريخ في الاسم. كده.

عادات لازم تمشي عليها في المعمل

  1. Snapshot قبل أي تجربة. اسم واضح وفيه التاريخ: win10-2024-05-pre-mimikatz. مش هتندم. وعد.
  2. وثّق اللي عملته في ملف نصي جوّه كل VM. ~/notes.md أو C:\notes.txt. النسيان عدو التعلم — هترجع بعد شهرين تسأل نفسك "أنا عملت ده إزاي؟"
  3. ما تخليش الـ VM على Bridged adapter أبداً. لو محتاج إنترنت لحظياً، شغّل NAT، نزّل، اقفل، رجّع Host-only.
  4. اعزل البيانات. ما تنسخش ملفاتك الشخصية جوّه أي VM. لو محتاج تنقل ملف، Shared Folder مؤقت، وبعدين شيله.
  5. قفل الـ VMs لما ما تكونش بتستخدمها. كل VM شغّالة = 4GB RAM + CPU بياكل بطارية على الفاضي.
  6. راجع الـ network adapter قبل ما تشغّل أي VM — خلي عندك tab مفتوح فيه تذكّر "Host-only فقط".

مختبرات جاهزة بديلة (إن لم تشأ بناء)

HackTheBox
منصة آلات اختراق متدرجة. الأشهر للتدرب الفعلي.
TryHackMe
للمبتدئين — مسارات مرتبة، شروحات مدمجة.
VulnHub
صور VM مجانية تحمّلها وتختبرها محلياً.
PortSwigger Web Academy
للويب فقط — مجاني، ممتاز.

الخطوة التالية

بعد ما تخلّص الدرس ده، روح:

  • linux-fundamentals — علشان تفهم Kali و Ubuntu أصلاً.
  • windows-fundamentals — Windows من زاوية الأمن، مش زاوية الـ end user.
  • networking-basics — قبل أي recon. مفيش غنى عنه.

الخلاصة الناشفة

اكتبها على الحيطة اللي في وش السرير، عايزك تصطبح عليها كل يوم:

  • المعمل = شبكة Host-only + 3 VMs على الأقل + snapshots لكل واحدة.
  • Bridged مش option. خلاص.
  • اوعى تجرّب من غير snapshot. اسمه فيه تاريخ وسبب.
  • اوعى تخلط حياتك الشخصية بالمعمل.
  • أي تقنية في الكورس ده، مكانها جوّه المعمل. بره المعمل = جريمة. بقوانين البشر، مش بس أخلاقياً.