قراءة نتائج Nmap: ماذا تعني المنافذ المفتوحة والمفلترة فعلًا؟
ظهور منفذ مفتوح ما يعني أنك اكتشفت ثغرة. وظهور معظم المنافذ بحالة «مفلتر» ما يعني أن الجهاز بلا خدمات. قيمة فحص الشبكة في تفسير ما قسته: من أي نقطة؟ بأي نوع فحص؟ وعلى أي منافذ؟ إذا تجاهلت هذه الأسئلة، ممكن تطلع باستنتاج أكبر بكثير من الأدلة المتاحة.
ابدأ من حدود الفحص قبل جدول النتائج
Nmap
احتفظ بعنوان الهدف المصرح، ووقت التنفيذ، ومصدر الفحص، والخيارات المستخدمة، ونطاق المنافذ. فحص مجموعة صغيرة لا يسمح بالحكم على كل منافذ الجهاز، وفحص بروتوكول النقل المعتاد لا يغطي تلقائيًا خدمات بروتوكول آخر. كذلك قد تختلف الرؤية من شبكة داخلية عن الرؤية من الإنترنت.
إذا قال الفحص إن المضيف غير متاح، اسأل هل هذه نتيجة طريقة اكتشاف المضيف أم تأكيد توقف الجهاز؟ لا توسع الفحص تلقائيًا. تحقق من إعداد المختبر والاتصال والتفويض أولًا، ثم اختر طريقة تحقق تناسب السؤال. اختلاف النتيجة قد يكون من طريق الشبكة أو الضوابط، وليس من تغير الخدمة نفسها.
افهم الحالة قبل أن تفسر اسم الخدمة
open
تعني أن تطبيقًا يقبل اتصالات أو رزمًا على المنفذ بحسب نوع الفحص. وجود مستمع لا يخبرك وحده إن كان استخدامه غير آمن.
closed
تعني أن المنفذ يمكن الوصول إليه لكنه لا يظهر مستمعًا في لحظة القياس. هذه نتيجة زمنية، وليست وعدًا بأنه سيبقى مغلقًا.
filtered
تعني أن الأداة لا تستطيع حسم كونه مفتوحًا أو مغلقًا بسبب ترشيح أو عائق شبكي.
open|filtered
تعني أن النتيجة لم تسمح بالتمييز بين الاحتمالين؛ فلا تختصرها في تقريرك إلى «مفتوح». هذه الفروق موضحة في دليل الأداة الرسمي، وهي سبب كافٍ لقراءة الحالة كاملة بدل الاكتفاء برقم المنفذ.
اسم الخدمة قد يكون تخمينًا من رقم المنفذ
قد تعرض الأداة اسم خدمة متعارفًا عليه لذلك الرقم، من دون إثبات أن الخدمة الفعلية مطابقة. كشف الخدمة والإصدار يرسل مجسات إضافية للتعرف على ما يستجيب، وقد ينتج اسم منتج أو إصدارًا أو معلومات جزئية. هذه محاولة تعريف مبنية على الاستجابة وليست وصولًا إلى سجل حزم الخادم.
حتى لو ظهر إصدار، لا تربطه بثغرة معروفة فورًا. راجع شروط التأثر والتكوين والتصحيحات المحتملة. بعض التوزيعات تنقل إصلاحات أمنية إلى حزم تحتفظ برقم إصدار أساسي قديم، وبعض الوسطاء يغيرون الترويسات. اكتب «بصمة تشير إلى...» عندما تكون هذه درجة الدليل، بدل الجزم بوجود ثغرة.
مثال محدود داخل مختبر تملكه
لنفترض أن جهازك التجريبي عنوانه كما في المثال، وأنك مصرح بفحص خدمات الويب والإدارة عليه. يمكن أن تبدأ بفحص اتصال محدد مع تعرف خفيف على الخدمات:
nmap -sT -sV --version-light -p 22,80,443 192.168.56.10
العنوان مثال لشبكة مختبر خاصة؛ استخدمه فقط إذا كان هو جهازك المقصود. الخيار الأول يستخدم اتصالًا عبر نظام التشغيل، والثاني يحاول التعرف على الخدمة، والخيار الخفيف يقلل مجموعة مجسات الإصدار، وتحديد المنافذ يحصر السؤال. لا توجد هنا عبارة «آمن دائمًا»؛ حتى المجسات المحدودة تحتاج مراعاة حساسية الخدمة.
كيف تختار الخطوة التالية؟
إذا ظهر منفذ ويب مفتوحًا، فالخطوة المفيدة هي فهم التطبيق وشهادته وتوجيهاته ووظائفه داخل النطاق، لا افتراض وجود ثغرة في الخادم. وإذا ظهرت خدمة إدارة مكشوفة، قارن ذلك بتصميم الوصول المتوقع، ثم راجع إعداداتها بالطريقة المصرح بها.
أما المنفذ المفلتر، فسجل عدم اليقين وناقش نقطة الاختبار عند الحاجة. لا تعتبر محاولة تجاوز الترشيح جزءًا تلقائيًا من الفحص. وتجنب تشغيل مجموعات نصوص برمجية لمجرد اسمها؛ راجع وظيفة كل فحص وما إذا كان يغير حالة النظام أو يرفع الحمل.
اكتب النتيجة بطريقة يستطيع غيرك تقييمها
بدل «الخادم ضعيف لأن فيه ثلاثة منافذ»، اكتب ما شوهد، ومن أين، وبأي طريقة، وما الدليل الإضافي المطلوب لتحديد الأثر. يمكنك إرفاق المخرجات الخام المنقحة، لكن اربطها باستنتاج محدود وواضح.
مراجع حالات المنافذ والتعرف على الخدمة:
https://nmap.org/book/man-port-scanning-basics.html
https://nmap.org/book/man-version-detection.html
ولتحويل الخدمات المكتشفة إلى خطة اختبار، راجع مقال التعداد:
https://courses.cyberpts.com/community/11/altadad-fy-akhtbar-alakhtraq-kyf-thwl-alkhdmat-walwzayf-ala-khryth-akhtbar