Lab Setup — ابني الـ lab في 30 دقيقة
VirtualBox + Kali + AD معزول، من غير ما تحرق نفسك
ليه لازم تبني المعمل قبل أي حاجة تانية؟
تخيل السيناريو ده. أنت قاعد بجهازك الشخصي، عايز تتعلم AD attacks. فتحت Kali، شغّلت nmap -sS على شبكة بيتك "علشان تجرّب". بعد ساعتين، الـ ISP بعتلك إيميل: "نشاط مشبوه على الـ line بتاعك". أو أسوأ: أنت قاعد على wifi الشغل، الـ SOC شافك، خرجت من الشغل ومعاك خطاب إنذار.
ليه حصل ده؟ علشان ما عندكش معمل.
المعمل = شوية VMs معزولة. ما بتلمسش الإنترنت، ما بتلمسش شبكة بيتك، ولا بتلمس أي حاجة بتاعة حد تاني. لو حاجة انفجرت جوّه، تنفجر هناك وتقف. snapshot، ارجع، كمّل.
كل درس في الكورس ده بيفترض إن المعمل ده موجود. مفيش "أنا هجرب بسرعة على الـ router بتاع البيت". لا.
التقنية مكنتش غلط. المكان كان غلط. المعمل بيحميك من نفسك قبل ما يحميك من القانون.
القصة كاملة — ابني المعمل في 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.
بناء البيئة — خطوة بخطوة
بُص. لو عملت كل حاجة صح وفشلت في الخطوة دي، أنت لسه على شبكة بيتك. الـ VMs لازم يتكلموا مع بعض، بس ما يوصلوش للإنترنت ولا للراوتر بتاعك.
VirtualBox عنده 4 أنواع networking لازم تعرف الفرق بينهم:
- NAT: الـ VM بيوصل للإنترنت من خلال الجهاز. آمن نسبياً، بس مش هينفع لو عايز VMs يكلموا بعض.
- Bridged: الـ VM بياخد IP من الراوتر بتاعك مباشرة. كأنه جهاز تاني في بيتك. أي scan بتعمله بيظهر للـ ISP. ابعد عنه.
- Host-only: شبكة معزولة تماماً بين الـ VMs والجهاز المضيف بس. مفيش إنترنت. ده اللي عايزينه.
- Internal: VMs بيكلموا بعض بس، الجهاز المضيف نفسه مش شايفهم. للسيناريوهات الأكثر عزلاً.
- حمّل 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.
- نزّل الـ 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.
- baseline: بعد التثبيت ع طول، نضيفة تماماً.
- configured: بعد ما حطّيت tools + updates.
- pre-attack: قبل أي تجربة كبيرة. لو خرّبت الـ registry، ترجع للنقطة دي مش للـ baseline.
صورة Ubuntu 22.04 Server. ثبّت Apache + MySQL + PHP لتدريب SQLi و LFI.
sudo apt update
sudo apt install -y apache2 mysql-server php libapache2-mod-php php-mysql
sudo systemctl enable --now apache2 mysqlWindows Server 2022 evaluation + ترقيته إلى Domain Controller. الأسهل: مشروع GOAD (Game Of Active Directory) على GitHub — يبني بيئة AD متعددة الـ DCs بـ vulnerabilities متعمدة بـ command واحد.
الأخطاء اللي بيقع فيها كل المبتدئين
الحل: Host-only Adapter دايماً. لو محتاج إنترنت في الـ VM (مرحلياً للتنزيل)، ضيف adapter تاني NAT مؤقت، وبعد التنزيل اقفله.
القاعدة: قبل أي amplifier، أي exploit، أي إعداد جديد — snapshot. اسمه واضح. التاريخ في الاسم. كده.
عادات لازم تمشي عليها في المعمل
- Snapshot قبل أي تجربة. اسم واضح وفيه التاريخ: win10-2024-05-pre-mimikatz. مش هتندم. وعد.
- وثّق اللي عملته في ملف نصي جوّه كل VM. ~/notes.md أو C:\notes.txt. النسيان عدو التعلم — هترجع بعد شهرين تسأل نفسك "أنا عملت ده إزاي؟"
- ما تخليش الـ VM على Bridged adapter أبداً. لو محتاج إنترنت لحظياً، شغّل NAT، نزّل، اقفل، رجّع Host-only.
- اعزل البيانات. ما تنسخش ملفاتك الشخصية جوّه أي VM. لو محتاج تنقل ملف، Shared Folder مؤقت، وبعدين شيله.
- قفل الـ VMs لما ما تكونش بتستخدمها. كل VM شغّالة = 4GB RAM + CPU بياكل بطارية على الفاضي.
- راجع الـ network adapter قبل ما تشغّل أي VM — خلي عندك tab مفتوح فيه تذكّر "Host-only فقط".
مختبرات جاهزة بديلة (إن لم تشأ بناء)
الخطوة التالية
بعد ما تخلّص الدرس ده، روح:
- linux-fundamentals — علشان تفهم Kali و Ubuntu أصلاً.
- windows-fundamentals — Windows من زاوية الأمن، مش زاوية الـ end user.
- networking-basics — قبل أي recon. مفيش غنى عنه.
الخلاصة الناشفة
اكتبها على الحيطة اللي في وش السرير، عايزك تصطبح عليها كل يوم:
- المعمل = شبكة Host-only + 3 VMs على الأقل + snapshots لكل واحدة.
- Bridged مش option. خلاص.
- اوعى تجرّب من غير snapshot. اسمه فيه تاريخ وسبب.
- اوعى تخلط حياتك الشخصية بالمعمل.
- أي تقنية في الكورس ده، مكانها جوّه المعمل. بره المعمل = جريمة. بقوانين البشر، مش بس أخلاقياً.