كيفية تحليل المنافذ المفتوحة في Windows باستخدام PowerShell وNmap — دليل عملي لأمن الشبكات
تعلم خطوات فحص المنافذ المفتوحة على أجهزة Windows باستخدام PowerShell وNmap، تفسير النتائج، وإغلاق المنافذ غير الضرورية لحماية شبكتك من الاختراق. دليل عملي ومُحدّث خطوة بخطوة.

🔎 كيفية تحليل المنافذ المفتوحة في Windows باستخدام PowerShell وNmap — دليل عملي لحماية الشبكة
🔹 مقدّمة
من أعظم مصادر المخاطر في شبكات المؤسسات هي المنافذ المفتوحة (Open Ports) على الأجهزة والخوادم. كل منفذ مفتوح يمثل مدخلاً محتملاً للمخترق (Attacker) أو برمجية خبيثة، لذا فإن فحص المنافذ وتحليلها يُعدّ خطوة أساسية في أي خطة أمنية.
في هذا الدليل العملي ستتعلم كيف تكشف وتُحلّل المنافذ المفتوحة على أجهزة Windows باستخدام أدوات مدمجة مثل PowerShell، بالإضافة إلى أداة المسح القوية Nmap (Network Mapper)، وكيف تفسّر النتائج وتتخذ إجراءات إصلاحية (Remediation) عملية.
⚙️ أولًا: لماذا يجب فحص المنافذ؟ (لماذا هذا مهم)
- كشف نقاط الضعف: تطبيقات غير مُحدّثة أو خدمات غير مُطلوبة قد تفتح منافذ تعرض النظام للخطر.
- منع الانتشار العرضي للبرمجيات الضارة: برمجيات الفدية (Ransomware) والدود (Worms) تستغل المنافذ المفتوحة للانتشار داخل الشبكة.
- الامتثال والحوكمة (Compliance): العديد من سياسات الأمان تتطلب فحصًا دوريًا للمنافذ.
- تقليل سطح الهجوم (Attack Surface Reduction): كلما أغلقت منافذك غير الضرورية، قلّت فرص الاختراق.
🔍 ثانيًا: مفاهيم سريعة يجب أن تعرفها (شرح المصطلحات)
- Port (منفذ): نقطة اتصال لبرنامج على الجهاز تُستخدم للتواصل عبر الشبكة. عادةً ما يقترن بمنفذ رقمي مثل 80 أو 443.
- TCP (Transmission Control Protocol – بروتوكول التحكم في الإرسال): بروتوكول اتصالي موثوق يُستخدم لمعظم خدمات الويب.
- UDP (User Datagram Protocol – بروتوكول بيانات المستخدم): بروتوكول بسيط وغير متصل يُستخدم لخدمات مثل DNS أو VoIP.
- Listening (الاستماع): يعني أن خدمة ما على الجهاز تنتظر اتصالات واردة على منفذ معيّن.
- Nmap (Network Mapper): أداة مفتوحة المصدر شهيرة لمسح واستكشاف الشبكات والكشف عن المنافذ والخدمات ونظام التشغيل.
- Firewall (جدار ناري): آلية تحكم في الوصول تمنع أو تسمح بمرور الاتصالات عبر المنافذ.
🧰 ثالثًا: فحص المنافذ باستخدام PowerShell (الطريقة المحلية والسريعة)
1) فحص المنافذ المستمعة محليًا (Listening ports)
افتح PowerShell بصلاحية المدير (Run as Administrator) ونفّذ:
Get-NetTCPConnection -State Listen | Select-Object LocalAddress,LocalPort,OwningProcess
هذا الأمر يعرض لك منافذ TCP التي عليها خدمات تستمع للاتصالات مع رقم العملية (PID).
للحصول على اسم العملية (Process Name) بدل PID:
Get-NetTCPConnection -State Listen |
Select-Object LocalAddress,LocalPort,OwningProcess |
ForEach-Object {
$proc = Get-Process -Id $_.OwningProcess -ErrorAction SilentlyContinue
[PSCustomObject]@{
LocalAddress = $_.LocalAddress
LocalPort = $_.LocalPort
ProcessName = if ($proc) { $proc.ProcessName } else { 'Unknown' }
}
} | Format-Table -AutoSize
2) فحص منافذ UDP المستمعة
Get-NetUDPEndpoint | Select-Object LocalAddress,LocalPort,OwningProcess
3) فحص منافذ بعنونة بعيدة (Remote) عبر Test-NetConnection
لفحص منفذ على مضيف بعيد:
Test-NetConnection -ComputerName 10.0.0.5 -Port 3389
الناتج يخبرك إن كان الاتصال ناجحًا أم لا، ويعرض زمن الاستجابة (Ping) وبعض التفاصيل الإضافية.
⚠️ ملاحظة مهمة عن PowerShell:
PowerShell ممتاز للفحص المحلي والتشخيص السريع، لكنه ليس بديلاً كاملاً لأدوات المسح الشبكي المتقدمة مثل Nmap حين تحتاج لفحص نطاقات كبيرة أو لتعريف أنماط الخدمات التبعية أو اكتشاف نظم التشغيل.
🛰️ رابعًا: فحص الشبكة و المنافذ باستخدام Nmap (للفحص الخارجي والمتقدم)
1) تنصيب Nmap
- على Windows: نزّل Nmap for Windows من الموقع الرسمي أو استخدم حزمة nmap-win.
- بعد التثبيت، افتح Command Prompt أو PowerShell ثم شغّل أوامر Nmap.
2) فحص منافذ شائع (Quick scan)
لفحص منافذ شائعة (top 100):
nmap -F 10.0.0.5
3) فحص كامل للمنافذ (Full TCP scan)
nmap -p- 10.0.0.5
-p- يعني فحص كل المنافذ من 1 إلى 65535.
4) فحص TCP + اكتشاف الخدمة وإصدارها (Service & Version Detection)
nmap -sV 10.0.0.5
هذا يساعدك في معرفة أي خدمة تعمل على كل منفذ وإصدارها، وهو مهم للكشف عن نسخ ضعيفة أو عرضة لثغرات.
5) فحص UDP (يتطلب صلاحيات إدارية وقد يستغرق وقتًا)
nmap -sU 10.0.0.5
6) فحص مخفي أو ذكي (Stealth / SYN scan)
SYN scan فعال وسريع:
nmap -sS 10.0.0.5
7) فحص لنطاق شبكي كامل وحفظ النتائج
nmap -p 1-65535 -sV 10.0.0.0/24 -oA scan_results/siteA
-oA يحفظ المخرجات بصيغ متعددة (normal, xml, grepable).
🔎 خامسًا: تفسير نتائج الفحص وكيف تقرر الإجراء
قراءة النتائج الأساسية من Nmap أو PowerShell:
- PORT STATE SERVICE
open→ يعني منفذًا يستقبل الاتصالات؛ فإذا لم تكن تعرف الخدمة فهذا خطر.filtered→ جدار الحماية أو فلتر يمنع رؤية المنفذ؛ قد يكون آمنًا أو مخفيًا.closed→ المنفذ مغلق ولا يستمع؛ جيد إن لم يكن هناك حاجة له.
أمثلة على مخاطر شائعة:
- منفذ 445/TCP مفتوح (SMB) → خطر كبير إذا لم يتم تحديث النظام وSMBv1 مفعل.
- منفذ 3389/TCP مفتوح (RDP) → يحتاج إلى تشديد الوصول عبر VPN أو قواعد IP Whitelisting.
- منفذ 23/TCP مفتوح (Telnet) → بروتوكول قديم وغير مشفّر — يجب إغلاقه واستبداله بـ SSH.
القرارات العملية بعد الكشف:
- إذا المنفذ ضروري للخدمة: حدّث الخدمة، فعّل التشفير، قيد الوصول بواسطة جدار ناري أو VPN، وفعل تسجيل الدخول/مراقبة النشاط.
- إذا المنفذ غير ضروري: اغلق الخدمة وأزلها أو امنع المرور عبر جدار الحماية.
- إن لم تعرف العملية المالكة للمنفذ: استخدم
Get-Process -Id <PID>أوtasklist /svcلتحديد المصدر ثم اتخاذ قرار.
🛠️ سادسًا: خطوات إغلاق/حظر منفذ في Windows (أوامر عملية)
1) إغلاق الخدمة أو إيقاف العملية
مثلاً لإيقاف خدمة تستمع على منفذ:
Stop-Service -Name "ServiceName" -Force
2) حظر المنفذ عبر Windows Firewall
حظر منفذ وارد (Inbound):
New-NetFirewallRule -DisplayName "Block SMB Inbound" -Direction Inbound -LocalPort 445 -Protocol TCP -Action Block
سماح منفذ محدد من IP معين فقط:
New-NetFirewallRule -DisplayName "Allow RDP from Office" -Direction Inbound -LocalPort 3389 -Protocol TCP -RemoteAddress 203.0.113.10 -Action Allow
3) إغلاق منفذ عبر netsh (بديل)
netsh advfirewall firewall add rule name="Block-Telnet" dir=in action=block protocol=TCP localport=23
🔐 سابعًا: منهجية فحص دورية وتكامل مع أنظمة الأمان
- فحص دوري أسبوعي/شهري باستخدام Nmap لنطاقات الشبكة.
- أتمتة التقارير: حفظ نتائج Nmap بصيغة XML وتحليلها أو رفعها إلى SIEM (مثل Splunk أو Sentinel).
- متابعة التحديثات (Patch Management): ربط نتائج الفحص بقائمة التصحيحات المطلوبة.
- تنبيه فوري (Alerting) عند اكتشاف منفذ غير مصرح به.
- قاعدة بيانية للأصول (Asset Inventory): ربط كل جهاز بقائمة الخدمات المصرّح بها لتسهيل القرار.
💡 ثامنًا: أدوات مساعدة وممارسات جيدة
- Wireshark: لمراقبة الحزم إذا أردت فهم البروتوكول المار عبر منفذ معين.
- Sysinternals TCPView: عرض تفاعلي للمنافذ والاتصالات على Windows.
- تشغيل الفحوص من شبكة خارجية (External Scan): تأكد من فحص البنية من خارج شبكتك لمعرفة ما هو مكشوف للإنترنت.
- إدارة المفاتيح والشهادات: لتأمين الخدمات المشفّرة (HTTPS, LDAPS, SMTPS).
- تطبيق مبدأ الأقل صلاحية (Least Privilege) على الخدمات والحسابات التي تشغّل هذه الخدمات.
📋 الملخّص (نقاط سريعة)
- فحص المنافذ ضروري لتقليل سطح الهجوم.
- استخدم PowerShell للفحص المحلي السريع، وNmap لمسح احترافي للشبكة.
- ركّز على منافذ حسّاسة: 21 (FTP)، 22 (SSH)، 23 (Telnet)، 80/443 (HTTP/HTTPS)، 139/445 (NetBIOS/SMB)، 3389 (RDP)، 53 (DNS)، إلخ.
- بعد الكشف: حدّد ما إذا كانت الخدمة ضرورية → حدّثها أو قيّد الوصول → أبقِ السجلات والمراقبة مفعّلة.
- أتمتة الفحص ودمجه مع نظام الإنذارات (SIEM) يحسّن الاستجابة للحوادث.
🧭 الخاتمة
مع تزايد تعقيد الهجمات السيبرانية، يصبح الفحص والتحليل المنتظم للمنافذ المفتوحة من أهم مهام مسؤول النظام أو الأمن السيبراني. باتباع منهجية منظمة—استخدام PowerShell للمراجعات السريعة وNmap للفحص العميق—وتطبيق قواعد صارمة على جدار الحماية وتحديث الأنظمة، يمكنك تقليل احتمالات الاختراق وحماية بيانات مؤسستك بفاعلية.




