Nmap أو Network Mapper هي أداة لفهم ما هو موجود داخل الشبكة: الأجهزة التي يمكن الوصول إليها، المنافذ التي تستجيب، والخدمات التي تعمل عليها، مع إمكانات إضافية لتقدير نظام التشغيل وتشغيل اختبارات آلية عبر Nmap Scripting Engine.
لهذا تُستخدم Nmap في إدارة الأصول، ومراجعة تعرض الأنظمة للشبكة، والتحقق من إعدادات الجدران النارية، واختبارات الأمن المصرح بها. لكنها لا تعني تلقائيًا "اختراق" الجهاز، كما أن ظهور منفذ مفتوح لا يثبت وجود ثغرة أمنية.
إذا كانت مفاهيم عنوان IP وTCP وUDP والمنافذ وCIDR جديدة عليك، فمن الأفضل فهم أساسيات الشبكات وعناوين IP والمنافذ أولًا، لأن نتائج Nmap تعتمد مباشرة على هذه المفاهيم.
ما هي Nmap بالضبط؟
يصف الدليل المرجعي الرسمي لـ Nmap الأداة بأنها مخصصة لاستكشاف الشبكات والتدقيق الأمني. فهي ترسل أنواعًا مختلفة من حزم الشبكة وتحلل الردود بهدف بناء صورة عن الهدف أو الشبكة التي يجري فحصها.
بحسب نوع الفحص والخيارات المستخدمة، يمكن لـ Nmap المساعدة في معرفة:
- ما الأجهزة التي تبدو متاحة على الشبكة.
- ما منافذ TCP أو UDP التي تستجيب.
- ما الخدمات التي يُحتمل أنها تعمل خلف تلك المنافذ.
- إصدار بعض الخدمات والتطبيقات عند استخدام Version Detection.
- تقدير نظام التشغيل ونوع الجهاز في ظروف مناسبة.
- وجود تصفية لحركة المرور قد تكون ناتجة عن Firewall أو قواعد شبكة أخرى.
- معلومات إضافية من خلال Nmap Scripting Engine أو NSE.
وهذا يجعل دور Nmap مختلفًا عن أدوات مراقبة الحزم أو منصات إدارة الثغرات. ويمكن وضعها ضمن الفئة الأوسع من أدوات الأمن السيبراني وتحليل الشبكات، بينما تركز هذه الصفحة تحديدًا على وظيفة Nmap وكيفية تفسير ما تعرضه.
كيف يعمل فحص الشبكة باستخدام Nmap؟
لا توجد عملية واحدة ثابتة تنفذها Nmap في جميع الحالات. ما يحدث يعتمد على الهدف والخيارات والصلاحيات ونوع الشبكة، لكن يمكن تبسيط سير العمل إلى عدة مراحل.
1. تحديد الهدف
يمكن أن يكون الهدف عنوان IP واحدًا أو اسم نطاق أو مجموعة عناوين مصرح لك بفحصها. وتدعم Nmap أيضًا تدوين CIDR للشبكات، مثل 192.168.1.0/24.
2. اكتشاف الأجهزة
في بعض أنواع الفحص تحاول Nmap أولًا تحديد المضيفين الذين يبدو أنهم متصلون ويمكن الوصول إليهم، بدل تنفيذ جميع الاختبارات على كل عنوان محتمل.
3. فحص المنافذ
ترسل الأداة طلبات مناسبة إلى المنافذ المستهدفة ثم تفسر الاستجابات أو عدم وصولها. والنتيجة ليست مجرد تقسيم ثنائي إلى "مفتوح" و"مغلق"، بل تستخدم Nmap عدة حالات تعكس ما استطاعت الأداة استنتاجه من نقطة الفحص الحالية.
4. تحليل الخدمات عند الطلب
عند تفعيل Service/Version Detection، لا تعتمد Nmap فقط على رقم المنفذ لتخمين الخدمة، بل تستطيع إرسال Probes إضافية وتحليل الاستجابات لتحديد التطبيق أو البروتوكول وربما الإصدار.
5. اختبارات إضافية
يمكن إجراء OS Detection أو تشغيل بعض NSE scripts لجمع معلومات إضافية. هذه المراحل ليست ضرورية لكل عملية مسح، كما أن بعضها يولد حركة مرور أكثر ويحتاج إلى نطاق اختبار مصرح به بوضوح.
ماذا تعني حالات المنافذ في Nmap؟
من أهم الأخطاء عند قراءة Nmap التعامل مع كل نتيجة لا تحتوي على كلمة open باعتبارها "مغلقة". يوضح توثيق Port Scanning الرسمي أن Nmap تميز بين ست حالات رئيسية.
| الحالة | ماذا تعني عمليًا؟ |
|---|---|
open |
هناك تطبيق يقبل اتصالات TCP أو حزم UDP/SCTP على المنفذ بحسب نوع الفحص. |
closed |
يمكن الوصول إلى الجهاز، لكن لا توجد خدمة تستمع على هذا المنفذ في وقت الفحص. |
filtered |
لم تستطع Nmap تحديد ما إذا كان المنفذ مفتوحًا، وغالبًا توجد تصفية للحزم في المسار أو على الجهاز. |
unfiltered |
يمكن الوصول إلى المنفذ، لكن نوع الفحص المستخدم لا يستطيع تحديد إن كان مفتوحًا أم مغلقًا. |
open|filtered |
لم تستطع الأداة التمييز بين حالتي open وfiltered. |
closed|filtered |
لم تستطع الأداة التمييز بين حالتي closed وfiltered. |
هذه الحالات تصف ما تراه Nmap من مكان تنفيذ المسح، وليست خاصية مطلقة للمنفذ. فقد يظهر المنفذ نفسه مفتوحًا عند الفحص من الشبكة المحلية، ومفلترًا عند فحصه من شبكة أخرى بسبب Firewall أو ACL أو بنية الشبكة.
أوامر Nmap أساسية لفحص شبكة تملكها أو لديك إذن لاختبارها
الأمثلة التالية مناسبة لفهم الوظائف الأساسية في مختبرك أو أجهزتك أو شبكة لديك تصريح واضح لفحصها. استبدل العناوين بالأهداف الموجودة ضمن نطاقك المصرح به.
فحص جهاز واحد
nmap 192.168.1.10
هذا هو الاستخدام الأبسط. ووفق إعدادات Nmap الافتراضية، يركز الفحص العادي على أشهر 1000 منفذ TCP بدل اختبار جميع المنافذ الممكنة البالغ عددها 65536.
اكتشاف الأجهزة في شبكة محلية دون Port Scan عادي
nmap -sn 192.168.1.0/24
الخيار -sn مناسب عندما يكون السؤال الأساسي: ما المضيفون الذين تبدو عليهم علامات النشاط؟ وهو مفيد لإنشاء جرد أولي للأجهزة قبل إجراء تحليل أكثر تحديدًا.
فحص منافذ محددة
nmap -p 22,80,443 192.168.1.10
بدل فحص مجموعة واسعة من المنافذ، يطلب هذا المثال التحقق من المنافذ 22 و80 و443 فقط. ويكون تحديد المنافذ مفيدًا عندما تبحث عن خدمة معينة أو تتحقق من قاعدة Firewall بعد تعديلها.
التعرف على الخدمات وإصداراتها
nmap -sV 192.168.1.10
يفعّل -sV ميزة Service and Version Detection. توضح وثائق Nmap الخاصة بالتعرف على الخدمات أن الأداة تستجوب المنافذ المكتشفة لمعرفة الخدمة الحقيقية بدل الاعتماد فقط على رقم المنفذ المتوقع.
قد تظهر نتيجة مثل:
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH ...
80/tcp open http Apache httpd ...
هذه البيانات مفيدة جدًا في جرد الأصول ومراجعة البرامج القديمة، لكن نتيجة Version Detection تبقى عملية تعرف عن بعد وقد تكون غير كاملة أو غير دقيقة في بعض الحالات. يجب التحقق من النظام نفسه قبل بناء قرار أمني حساس على رقم الإصدار وحده.
محاولة التعرف على نظام التشغيل
sudo nmap -O 192.168.1.10
يستخدم -O OS Detection. وفق التوثيق الرسمي تقارن Nmap خصائص ردود TCP/IP بقاعدة بصمات لأنظمة وأجهزة معروفة.
نتيجة OS Detection هي تقدير يعتمد على جودة البصمة وظروف الشبكة. وتكون عملية التعرف أكثر نجاحًا في ظروف معينة، منها العثور على منفذ TCP مفتوح وآخر مغلق، لذلك لا ينبغي اعتبار كل تخمين لنظام التشغيل حقيقة مؤكدة.
حفظ النتيجة في ملف نصي
nmap -oN nmap-result.txt 192.168.1.10
حفظ النتائج مهم في الفحوصات الدفاعية لأنه يسمح بمقارنة الوضع قبل تغيير الإعدادات وبعده، أو الاحتفاظ بسجل لما كان مكشوفًا في تاريخ محدد. وتدعم Nmap أيضًا تنسيقات أخرى، منها XML، كما توضحه وثائق إخراج نتائج Nmap.
ما الفرق بين اكتشاف منفذ مفتوح واكتشاف ثغرة؟
المنفذ المفتوح ليس ثغرة أمنية بحد ذاته. إذا وجدت Nmap أن المنفذ 443 مفتوح مثلًا، فهذا يعني عادة أن خدمة تستقبل اتصالات على ذلك المنفذ. لا يخبرك ذلك وحده إن كانت الخدمة آمنة أو تحتوي على CVE قابلة للاستغلال.
للوصول إلى تقييم أمني صحيح يجب فصل عدة أمور:
- Exposure: هل الخدمة متاحة أصلًا من الموقع الذي أجريت منه الفحص؟
- Service Identification: ما التطبيق أو البروتوكول الموجود؟
- Version: ما الإصدار المحتمل؟
- Configuration: هل الخدمة مضبوطة بطريقة آمنة؟
- Vulnerability: هل توجد نقطة ضعف مثبتة تنطبق على هذا الإصدار والإعداد؟
- Exploitability: هل يمكن استغلال الضعف فعليًا في هذه البيئة؟
لهذا لا ينبغي وصف Nmap وحدها بأنها بديل كامل لمنصة Vulnerability Management. فهي ممتازة في Network Discovery وPort Scanning وService Enumeration، ويمكن لـ NSE إجراء أنواع من اختبارات الكشف عن الثغرات، لكن إثبات أن نظامًا معرض لثغرة يحتاج غالبًا إلى تحقق إضافي.
ما هو Nmap Scripting Engine؟
يوسع Nmap Scripting Engine (NSE) وظائف Nmap من خلال Scripts مكتوبة بلغة Lua. وتوضح وثائق NSE الرسمية أن هذه السكربتات تستطيع تنفيذ مهام مثل Network Discovery وتحسين التعرف على الخدمات وإجراء بعض عمليات الكشف الأمني.
لكن كلمة "Script" لا تعني أن كل سكربت آمن للتشغيل على أي نظام. تصنف Nmap السكربتات في فئات مختلفة مثل safe وdiscovery وvuln، إلى جانب فئات قد تكون Intrusive أو مخصصة للاختبار الهجومي.
كما يحذر مشروع Nmap من أن NSE scripts لا تعمل داخل Sandbox، ولذلك يجب معرفة وظيفة السكربت ومراجعته قبل تشغيله، خصوصًا على أنظمة الإنتاج.
هل Nmap وWireshark يؤديان الوظيفة نفسها؟
لا. الأداتان تتعاملان مع الشبكات لكن من زاويتين مختلفتين.
| الأداة | السؤال الذي تجيب عنه غالبًا |
|---|---|
| Nmap | ما الأجهزة والمنافذ والخدمات التي يمكنني رؤيتها أو الوصول إليها؟ |
| Wireshark | ما الحزم التي تمر عبر واجهة الشبكة، وماذا يحدث داخل حركة الاتصال التي أستطيع التقاطها؟ |
| Vulnerability Scanner | ما نقاط الضعف أو الإعدادات الأمنية المعروفة التي قد تنطبق على الأصول المكتشفة؟ |
في بيئة دفاعية يمكن أن تكون الأدوات مكملة لبعضها: تستخدم Nmap لفهم سطح الشبكة والخدمات الظاهرة، ثم أدوات أخرى لتحليل الحركة أو التحقق من الثغرات أو مراقبة الأحداث.
كيف تستفيد فرق الدفاع من Nmap؟
القيمة الحقيقية للأداة ليست في الحصول على قائمة منافذ فقط، بل في مقارنة ما تكتشفه بما يجب أن يكون موجودًا.
يمكن تطبيق سير عمل دفاعي بسيط كالتالي:
- حدد نطاق الشبكة والأجهزة المصرح بفحصها.
- أنشئ جردًا للأجهزة التي يمكن رؤيتها.
- حدد الخدمات والمنافذ المكشوفة.
- قارن النتائج مع الـAsset Inventory والتصميم المتوقع للشبكة.
- حقق في أي خدمة غير معروفة أو منفذ لا توجد حاجة عمل لفتحه.
- تحقق من إصدارات الخدمات المهمة من المصدر نفسه.
- أغلق الخدمات غير الضرورية أو قيد الوصول إليها عبر Firewall أو Segmentation.
- حدّث الأنظمة التي تتطلب تصحيحات أمنية.
- كرر الفحص للتحقق من أن التغيير حقق النتيجة المقصودة.
يوصي مشروع Nmap نفسه بمفهوم الفحص الاستباقي للشبكات لمساعدة المدافعين على اكتشاف الخدمات المعرضة وإغلاق المنافذ غير الضرورية قبل أن تصبح جزءًا من سطح هجوم غير مقصود.
أخطاء شائعة عند تفسير نتائج Nmap
الخطأ الأول: كل منفذ مفتوح يعني وجود ثغرة
الصحيح أن المنفذ المفتوح يثبت وجود خدمة قابلة للوصول من نقطة الفحص. مستوى الخطورة يعتمد على الخدمة وإصدارها وإعداداتها ونطاق الوصول إليها.
الخطأ الثاني: filtered يعني أن المنفذ مغلق
filtered يعني أن Nmap لا تستطيع تحديد الحالة بسبب الطريقة التي تصل بها الردود أو لا تصل بها. قد يكون السبب Firewall أو Packet Filtering في مكان آخر من المسار.
الخطأ الثالث: عدم اكتشاف الجهاز يعني أنه غير متصل
يمكن لجهاز أو Firewall إسقاط Probes المستخدمة في Host Discovery. لذلك فعدم ظهور مضيف في نوع معين من الاكتشاف لا يثبت وحده أن الجهاز مطفأ.
الخطأ الرابع: اسم الخدمة المعروض دليل قطعي على التطبيق
عند عدم استخدام Version Detection يمكن أن يعتمد اسم الخدمة جزئيًا على ارتباطات المنافذ المعروفة. وحتى مع -sV يجب التعامل مع النتيجة كبصمة تقنية قابلة للتحقق، لا كحقيقة غير قابلة للخطأ.
الخطأ الخامس: OS Detection يحدد النظام دائمًا بدقة
نتائج -O تتأثر بالاستجابات المتاحة، وقواعد الجدار الناري، ونوع الجهاز، وجودة مطابقة البصمة. ولهذا قد تعرض Nmap احتمالات أو نسب ثقة بدل تحديد قطعي.
ما الجديد في Nmap في 2026؟
إذا كنت تعتمد على شرح قديم للأداة، فمن المهم معرفة أن المشروع ما زال نشطًا. وحتى 28 أغسطس 2026 تعرض صفحة التنزيل الرسمية الإصدار Nmap 7.991 كأحدث إصدار مستقر، وقد صدر في 6 أغسطس 2026. :contentReference[oaicite:1]{index=1}
وتظهر سجلات التغييرات الرسمية أن إصدار 7.991 ركز بدرجة كبيرة على الصيانة والأمان والاستقرار، بما في ذلك تحديث OpenSSL المضمن إلى 3.0.21 وإدخال إصلاحات أمنية لمكتبة libssh2 المضمنة، إلى جانب إصلاحات في Ncat وNSE وZenmap وأجزاء أخرى من المشروع. :contentReference[oaicite:2]{index=2}
وكان إصدار 7.99 في مارس 2026 قد أضاف أيضًا بصمات محدثة لأنظمة IPv4 وIPv6 والخدمات، وحسن بعض جوانب دعم VPN على Windows وأصلح مشكلات في DNS وZenmap وNSE. لذلك من الأفضل الاعتماد على الوثائق الحالية بدل نسخ أوامر أو توقعات مبنية على إصدار قديم. :contentReference[oaicite:3]{index=3}
هل فحص الشبكات باستخدام Nmap قانوني؟
لا توجد إجابة قانونية عالمية واحدة تنطبق على كل دولة وكل سيناريو، لذلك القاعدة العملية الأكثر أمانًا هي: لا تفحص نظامًا أو شبكة لا تملكها ولا يوجد لديك تصريح واضح لاختبارها.
يناقش مشروع Nmap نفسه المسألة في دليل القضايا القانونية المرتبطة بالمسح، كما توصي إشعاراته القانونية بطلب الإذن حتى قبل بعض عمليات الفحص الخفيفة للشبكات التي يديرها آخرون. :contentReference[oaicite:4]{index=4}
هناك أيضًا جانب تشغيلي بعيدًا عن القانون: بعض الأجهزة أو التطبيقات القديمة أو سيئة التصميم يمكن أن تتأثر بحركة مسح غير متوقعة. ولهذا لا ينبغي تنفيذ فحوصات واسعة أو خيارات غير مفهومة على أنظمة حساسة للإنتاج دون تخطيط وموافقة ومراقبة مناسبة.
كيف تبدأ مع Nmap بطريقة صحيحة؟
إذا كان هدفك تعلم الأداة، فلا تبدأ بحفظ عشرات الخيارات. ابدأ بمختبر صغير يحتوي على أجهزة تملكها أو آلات افتراضية، ثم حاول الإجابة عن أسئلة حقيقية بالترتيب:
- ما عنوان IP الخاص بالجهاز؟
- هل يمكن اكتشافه من الجهاز الذي يشغّل Nmap؟
- ما المنافذ التي تظهر مفتوحة؟
- ما التطبيقات التي تستمع عليها؟
- هل الخدمات الظاهرة مطلوبة أصلًا؟
- هل تغيرت النتائج بعد إيقاف خدمة أو تعديل Firewall؟
بهذه الطريقة تصبح Nmap وسيلة لفهم الشبكة بدل أن تتحول إلى مجموعة أوامر يتم نسخها دون معرفة ما ترسله أو كيف يجب تفسير مخرجاتها.
الخلاصة
Nmap أداة لاستكشاف الشبكات والتدقيق الأمني تساعد على اكتشاف الأجهزة والمنافذ والخدمات الظاهرة من نقطة فحص محددة، ويمكنها إضافة معلومات مثل Service Version Detection وOS Detection وNSE عند الحاجة.
أهم شيء عند استخدامها هو تفسير النتائج بشكل صحيح: open لا تعني Vulnerable، وfiltered لا تعني Closed، والتعرف على الإصدار أو نظام التشغيل ليس دائمًا قطعيًا. وفي العمل الدفاعي تصبح Nmap أكثر فائدة عندما تُستخدم ضمن جرد الأصول وإدارة سطح الهجوم والتحقق من أن الخدمات المكشوفة تتوافق فعلًا مع تصميم الشبكة وسياسة المؤسسة.