🎯 أهداف المختبر

  • فهم كيف يكتشف Nmap المضيفين النشطين على الشبكة
  • تشغيل فحوصات TCP SYN و UDP والاتصال الكامل بالرايات المناسبة
  • تعداد الخدمات العاملة وأرقام إصداراتها بدقّة
  • تحديد بصمة نظام التشغيل لجهاز الهدف
  • استخدام سكربتات NSE (محرّك سكربتات Nmap) للفحوصات الآلية
  • حفظ نتائج الفحص بصيغ إخراج متعدّدة لإعداد التقارير

ما هو Nmap؟

‏Nmap‏ (اختصار لـ "Network Mapper") أداة مجانية مفتوحة المصدر لاكتشاف الشبكات وتدقيق الأمان. كتبها في الأصل Gordon "Fyodor" Lyon، وهي أول أداة يلجأ إليها أيّ مختبِر اختراق حين يريد فهم ما يعمل على شبكة الهدف.

يرسل Nmap حزمًا مُصمّمة بعناية إلى الهدف ويحلّل الاستجابات ليحدّد أيّ المضيفين نشِط، وأيّ المنافذ مفتوح، وأيّ الخدمات تعمل، وأيّ نظام تشغيل يعمل على الهدف.

⚠️
تحذير قانوني: لا تفحص إلا الأنظمة التي تملكها أو لديك إذن كتابي صريح باختبارها. الفحص غير المصرّح به مخالف للقانون في معظم الدول. استخدم مختبرًا منزليًا، أو مختبر VPN (مثل HackTheBox أو TryHackMe)، أو بيئة تدريب مخصّصة.

الخطوة ١ — اكتشاف المضيفين

قبل فحص المنافذ، تحتاج إلى معرفة أيّ المضيفين نشِط. يوفّر Nmap عدة تقنيات للاكتشاف.

1

مسح Ping (ICMP Echo)

افحص شبكة فرعية كاملة للعثور على المضيفين النشطين. الراية -sn تُعطّل فحص المنافذ — تتحقّق فقط ممّا إذا كان المضيف نشطًا.

bashاكتشاف المضيفين
# مسح Ping لشبكة فرعية ‎/24
nmap -sn 192.168.1.0/24

# عرض عناوين MAC أيضًا (يتطلّب صلاحيات الجذر)
sudo nmap -sn 192.168.1.0/24

# فحص ARP (أسرع، يعمل على الشبكة الفرعية المحلية فقط)
sudo nmap -PR -sn 192.168.1.0/24

# فحص نطاق من عناوين IP
nmap -sn 10.10.10.1-50

مثال على المخرجات:

Starting Nmap 7.94 ( https://nmap.org )
Nmap scan report for 192.168.1.1
Host is up (0.00023s latency).
MAC Address: AA:BB:CC:DD:EE:FF (Cisco)
Nmap scan report for 192.168.1.105
Host is up (0.0011s latency).
Nmap done: 256 IP addresses (3 hosts up) scanned in 2.41 seconds

الخطوة ٢ — فحص TCP SYN (الفحص الخفيّ)

فحص TCP SYN (-sS) هو الفحص الافتراضي لـ Nmap عند تشغيله بصلاحيات الجذر. يرسل حزمة SYN وينتظر الاستجابة — دون إتمام مصافحة TCP، ما يجعله أسرع وأقلّ ظهورًا في سجلّات التطبيقات.

2

شغّل فحص SYN

الراية -p- تفحص كل المنافذ الـ ٦٥٬٥٣٥. استخدم --min-rate لتسريع الفحوصات البطيئة.

# فحص SYN الافتراضي (أعلى 1000 منفذ)
sudo nmap -sS 10.10.10.1

# فحص كل المنافذ الـ 65535
sudo nmap -sS -p- 10.10.10.1

# فحص سريع — التسريع عبر تحديد المعدّل
sudo nmap -sS -p- --min-rate 5000 10.10.10.1

# فحص منافذ محدّدة
sudo nmap -sS -p 22,80,443,8080,8443 10.10.10.1
💡
حالات المنافذ: يُصنّف Nmap المنافذ كـ open (يقبل الاتصالات)، أو closed (يمكن الوصول إليه لكن لا شيء يستمع)، أو filtered (جدار ناري يُسقط الحِزَم، دون استجابة).

الخطوة ٣ — كشف الخدمة والإصدار

معرفة أنّ منفذًا مفتوح ليست إلا البداية. الراية -sV تفحص المنافذ المفتوحة لتحديد اسم الخدمة ورقم الإصدار بدقّة — أمر حاسم للعثور على ثغرات CVE المعروفة.

3

فحص كشف الإصدار

# كشف إصدار الخدمة
sudo nmap -sV 10.10.10.1

# زيادة شدّة الكشف (0-9، الافتراضي 7)
sudo nmap -sV --version-intensity 9 10.10.10.1

مثال على المخرجات:

PORT    STATE SERVICE  VERSION
22/tcp  open  ssh      OpenSSH 7.9p1 Debian 10+deb10u2 (protocol 2.0)
80/tcp  open  http     Apache httpd 2.4.38 ((Debian))
443/tcp open  ssl/http Apache httpd 2.4.38
3306/tcp open mysql    MySQL 5.7.32-0ubuntu0.18.04.1

الخطوة ٤ — كشف نظام التشغيل

يستطيع Nmap تحديد بصمة نظام تشغيل الهدف بتحليل كيفية استجابته لسلسلة من فحوصات TCP/IP المُصمّمة خصيصًا. يتطلّب ذلك منفذًا مفتوحًا وآخر مغلقًا على الأقل ليعمل بدقّة.

4

بصمة نظام التشغيل

# كشف نظام التشغيل (يتطلّب صلاحيات الجذر)
sudo nmap -O 10.10.10.1

# مجتمعًا: الإصدار + نظام التشغيل + السكربتات الافتراضية
sudo nmap -sC -sV -O 10.10.10.1
Running: Linux 4.X|5.X
OS CPE: cpe:/o:linux:linux_kernel:4 cpe:/o:linux:linux_kernel:5
OS details: Linux 4.15 - 5.6
Network Distance: 1 hop

الخطوة ٥ — فحص UDP

تعمل خدمات حرجة كثيرة عبر UDP — DNS (53) و SNMP (161) و DHCP (67/68) و NTP (123). كثيرًا ما تفوتها الفحوصات المقتصرة على TCP. فحص UDP أبطأ لعدم وجود مصافحة.

5

فحص UDP

# أعلى 100 منفذ UDP (أسرع بكثير)
sudo nmap -sU --top-ports 100 10.10.10.1

# خدمات UDP محدّدة للتحقّق منها
sudo nmap -sU -p 53,67,68,69,123,161,162,500 10.10.10.1

# فحص مشترك TCP + UDP
sudo nmap -sS -sU -p T:1-1000,U:53,161 10.10.10.1

الخطوة ٦ — سكربتات NSE

محرّك سكربتات Nmap (NSE) يوسّع Nmap بمئات السكربتات لكشف الثغرات وتعداد الخدمات واختبار المصادقة وغيرها. توجد السكربتات في /usr/share/nmap/scripts/.

6

شغّل سكربتات NSE

# تشغيل السكربتات الافتراضية (‎-sC اختصار لـ ‎--script=default)
sudo nmap -sC 10.10.10.1

# تشغيل سكربت محدّد
sudo nmap --script http-title 10.10.10.1

# تشغيل كل السكربتات المطابِقة لنمط
sudo nmap --script "http-*" 10.10.10.1

# التحقّق من ثغرات SMB ‏(MS17-010 / EternalBlue)
sudo nmap --script smb-vuln-ms17-010 -p 445 10.10.10.1

# تعداد مفاتيح مضيف SSH والخوارزميات
sudo nmap --script ssh-hostkey,ssh2-enum-algos -p 22 10.10.10.1

# سكربتات تعداد HTTP
sudo nmap --script http-enum,http-headers,http-methods -p 80,443 10.10.10.1
💡
فئات السكربتات: auth، broadcast، brute، default، discovery، dos، exploit، external، fuzzer، intrusive، malware، safe، version، vuln. شغّل كل سكربتات الثغرات بـ --script vuln.

الخطوة ٧ — الفحص العدواني

الراية -A تجمع كشف نظام التشغيل وكشف الإصدار وفحص السكربتات وتتبّع المسار في أمر واحد. إنه صاخب لكنه شامل — مثالي لمسابقات CTF أو المهام المصرّح بها.

7

تعداد عدواني كامل

# فحص "كل شيء" الكلاسيكي
sudo nmap -A 10.10.10.1

# اجمعه مع كل المنافذ لأقصى تغطية
sudo nmap -A -p- --min-rate 5000 10.10.10.1

# قوالب التوقيت: T0 (الأبطأ) إلى T5 (الأسرع/الأكثر ضجيجًا)
sudo nmap -A -T4 10.10.10.1

الخطوة ٨ — المخرجات والتقارير

يحفظ مختبِرو الاختراق الجيّدون نتائج فحوصهم دائمًا. يدعم Nmap عدة صيغ للمخرجات — احفظها كلها بـ -oA وستحصل على صيغ للبشر وأخرى لأدوات مثل Metasploit لاستيرادها.

8

احفظ مخرجات الفحص

# الحفظ بكل الصيغ في آن واحد (مُوصى به)
sudo nmap -sC -sV -oA scan_results 10.10.10.1
# يُنشئ: scan_results.nmap و scan_results.xml و scan_results.gnmap

# مخرجات نصية عادية
sudo nmap -sV -oN output.txt 10.10.10.1

# XML ‏(قابل للاستيراد في Metasploit)
sudo nmap -sV -oX output.xml 10.10.10.1

# صيغة قابلة للبحث بـ grep
sudo nmap -sV -oG output.gnmap 10.10.10.1

# البحث في المخرجات القابلة لـ grep عن المنافذ المفتوحة
grep "open" output.gnmap

📋 ورقة Nmap المرجعية

الرايةالوصفمثال
-snفحص Ping (بدون فحص منافذ)nmap -sn 192.168.1.0/24
-sSفحص TCP SYN (خفيّ)sudo nmap -sS target
-sTفحص TCP connect (بدون جذر)nmap -sT target
-sUفحص UDPsudo nmap -sU target
-sVكشف الخدمة/الإصدارnmap -sV target
-sCسكربتات NSE الافتراضيةnmap -sC target
-Oبصمة نظام التشغيلsudo nmap -O target
-Aعدواني (نظام+إصدار+سكربت+تتبّع)nmap -A target
-p-كل المنافذ الـ 65535nmap -p- target
-p 80,443منافذ محدّدةnmap -p 22,80 target
-T4قالب التوقيت (0-5)nmap -T4 target
-oAإخراج بكل الصيغnmap -oA out target
--scriptتشغيل سكربت NSEnmap --script vuln target
-v / -vvمخرجات مفصّلةnmap -v target
--min-rateأدنى معدّل للحِزَمnmap --min-rate 5000 target
اكتمل المختبر! أصبحت الآن تعرف كيف تستخدم Nmap للاستطلاع الكامل للشبكة. تاليًا، خذ هذه النتائج وأدخِلها إلى Metasploit لتبدأ البحث عن الثغرات.
التالي: أساسيات Metasploit ← → كل المختبرات
// الطرفية الموجّهة

جرّبها مباشرة

اكتب الأوامر من الخطوات أعلاه. تُحاكي الطرفية المخرجات المتوقّعة لهذا المختبر.

KaliRange ~ Terminal اكتب help لعرض الأوامر