قم بتحليل شبكتك المحلية باستخدام Nmap و Wireshark خطوة بخطوة

  • يتيح لك برنامج Nmap اكتشاف المضيفين والمنافذ والخدمات المعروضة على الشبكة المحلية، بالإضافة إلى تحديد أنظمة التشغيل وإصداراتها.
  • تترك الأنواع المختلفة من عمليات المسح (TCP connect، SYN، NULL، Xmas...) أنماطًا مميزة يمكن اكتشافها باستخدام Wireshark والسجلات.
  • يوضح برنامج Bettercap بالاشتراك مع برنامج Wireshark كيف تكشف بروتوكولات النص العادي مثل Telnet و HTTP بيانات الاعتماد مقارنة ببروتوكولات SSH و HTTPS المشفرة.
  • تساعد عمليات التدقيق المنتظمة باستخدام Nmap و Wireshark والأدوات المماثلة في تقليل مساحة الهجوم وتعزيز أمن البنية التحتية.

نماب

تدقيق الشبكة المحلية باستخدام Nmap و Wireshark إنها إحدى أكثر الطرق فعالية لفهم ما يحدث فعليًا في بنيتك التحتية، واكتشاف الخدمات المعرضة للخطر، ومعرفة المعلومات التي قد يراها المهاجم في حال اختراقه لشبكتك. هاتان أداتان راسختان، يستخدمهما على نطاق واسع كل من مديري الأنظمة ومختبري الاختراق. وعند دمجهما بفعالية، فإنهما تتيحان لك الانتقال من مجرد لقطة سريعة للمنافذ المفتوحة إلى تحليل مفصل لكل حزمة بيانات أثناء مرورها.

سنجمع في هذا المقال بين كل ما تحتاجه لإعداد تدقيق كامل من الشبكة المحلية: بدءًا من مفاهيم مسح المنافذ، وعلامات TCP، وأنواع المسح في Nmap، وصولًا إلى التصفية المتقدمة باستخدام Wireshark لاكتشاف عمليات المسح هذه، وممارسة أساليب التهرب. ستشاهد أيضًا أمثلة على بيئات تعليمية باستخدام أجهزة افتراضية، وتمارين معملية نموذجية (مسح ping، ومسح SYN، ومسح NULL، وMITM باستخدام Bettercap)، والعديد من الأدوات الإضافية التي تُكمّل Nmap وWireshark.

ما هو فحص المنافذ ولماذا هو مهم في عملية التدقيق؟

فحص المنفذ هي عملية آلية ترسل حزم بيانات إلى جميع منافذ TCP/UDP البالغ عددها 65.535 منفذًا أو بعضها على جهاز كمبيوتر واحد أو أكثر، وذلك لمعرفة أيها يستجيب وكيف. ومن خلال هذه الاستجابات، يمكننا استنتاج الخدمات النشطة، ونظام التشغيل المستخدم، وحتى ما إذا كانت هناك جدران حماية تقوم بتصفية البيانات.

بالنسبة للمهاجم، يُعد فحص المنافذ الجيد هو السبيل إلى تحديد "نقاط الدخول" ونقاط الضعفيشمل ذلك الخدمات المُهيأة بشكل خاطئ، والإصدارات القديمة التي تحتوي على ثغرات أمنية معروفة، أو البروتوكولات المفتوحة مثل Telnet وFTP وHTTP. بالنسبة للمسؤول أو المدقق، يكشف الفحص نفسه عن الثغرات الأمنية، وما يجب إيقافه، وما يتطلب حماية أفضل.

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

بالإضافة إلى المخزون، من المهم استخدم جدران الحماية وأنظمة كشف التسلل والتي تقوم بتصفية الوصول غير المرغوب فيه وتسجيل محاولات الاتصال المشبوهة. وبالطبع، حافظ على تحديث الأنظمة وأجهزة التوجيه والخدمات لتقليل تأثير أي منافذ يجب عليك إبقاؤها مفتوحة لأسباب تجارية.

قم بتحليل الشبكة المحلية باستخدام Nmap و Wireshark

ما هو برنامج Nmap وماذا يمكنه أن يفعل على الشبكة المحلية؟

Nmap (مخطط الشبكة) هو برنامج مجاني مفتوح المصدر مصمم لاكتشاف الأجهزة على الشبكة، وتحليل المنافذ المفتوحة فيها، والخدمات التي تعمل في الخلفية. يعمل البرنامج عبر سطر الأوامر على أنظمة لينكس وويندوز وماك أو إس، وله واجهة رسومية اختيارية تُسمى Zenmap.

باستخدام Nmap يمكنك اكتشاف الأجهزة المضيفة على الشبكة المحلية وعبر الإنترنت: أجهزة الكمبيوتر، وأجهزة التوجيه، والمحولات، وأجهزة إنترنت الأشياء، والخوادم، وما إلى ذلك. بالإضافة إلى سرد المنافذ المفتوحة أو التي تم تصفيتها، يمكنه محاولة تحديد نظام التشغيل، وإصدار الخدمات، وتشغيل البرامج النصية الأمنية (NSE) التي تعمل على أتمتة اختبار الاختراق.

ومن بين أهم ميزاته دعمه لـ أنواع مختلفة من عمليات المسحيدعم هذا البرنامج بروتوكولات TCP (SYN، connect، FIN، NULL، Xmas...)، وUDP، وICMP، بالإضافة إلى بعض الطرق المتقدمة التي تحاول تجاوز بعض جدران الحماية. كما يتيح العمل مع IPv4 وIPv6، وفحص الأجهزة المضيفة الفردية، أو نطاقات عناوين IP، أو الشبكات الفرعية بأكملها.

إحدى نقاط قوة Nmap هي أن يسمح بمسح كميات كبيرة من الأهداف. بكفاءة عالية. فهو يتحكم بمستوى العدوانية، وسرعة نقل الحزم، ودرجة التوازي. وهذا مفيدٌ لكلٍّ من عمليات التدقيق المخططة لشبكات الشركات، ولعمليات المحاكاة في المختبرات التعليمية.

حالات المنافذ وأنواع المسح في Nmap

عندما ينتهي برنامج Nmap من عملية المسحيصنف هذا النظام كل ميناء إلى واحدة من عدة حالات من المهم فهمها، لأن تفسيرها أساسي لعملية التدقيق:

  • جاكيت يوجد تطبيق يقبل الاتصالات على هذا المنفذ (TCP أو UDP). وهذا يمثل ثغرة أمنية واضحة.
  • صندوق توظيف برأس مال محدودالمنفذ يستجيب، لكن لا توجد خدمة تستمع. المضيف يعمل، لكن هذا المنفذ تحديدًا لا يُرسل أي بيانات. من الأفضل أن يتم حظره بواسطة جدار الحماية.
  • مصفىيمنع جدار الحماية أو المرشح برنامج Nmap من تحديد ما إذا كان مفتوحًا أم مغلقًا (لا توجد إجابة واضحة).
  • مفتوح | مفلتر: ليس من الممكن معرفة ما إذا كان مفتوحًا أم مُصفّى، وهو أمر شائع في بعض عمليات المسح الخاصة ببروتوكول UDP أو TCP (FIN، NULL، Xmas).
  • مغلق | مفلتر: حالة غامضة تستخدم في تقنيات محددة للغاية مثل فحص IP الخامل.

في عملية التدقيق الحقيقية، نبدأ عادةً بـ مسح سريع للمنافذ الأكثر شيوعًا للحصول على أول صورة:

nmap 192.168.1.2

إذا أردنا بذل قصارى جهدنا، فمن الممكن إجراء فحص إجباري لجميع المنافذ البالغ عددها 65.535 منفذًا من المضيف:

nmap -p 1-65535 192.168.1.2

من الشائع أيضاً حصر النطاق بمنافذ أو كتل محددة تهمنا. على سبيل المثال، من 20 إلى 200:

nmap -p 20-200 192.168.1.2

بالإضافة إلى حالة المنفذ، يتيح لك Nmap القيام بما يلي: الكشف عن نظام التشغيل وإصدار الخدمة بأمر واحد، ولكن على حساب زيادة الضوضاء إلى حد ما:

nmap -A -v 192.168.1.2

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

علامات TCP، وأنواع المسح، وكيفية اكتشافها

يستفيد برنامج Nmap من علامات TCP المختلفة (SYN، ACK، FIN، RST، PSH، URG...) لإجراء عمليات مسح خفية بدرجات متفاوتة. في تحديات CTF، على سبيل المثال، من الشائع استخدام مسح SYN "خفي". في البيئات الدفاعية، من المفيد التعرف على هذه الأنماط في السجلات أو برنامج Wireshark.

لفهم نتائج الفحوصات، يجب أن تكون واضحًا بشأن مصافحة TCP الكلاسيكيةSYN → SYN/ACK → ACK. ومن هناك، يمكن تشغيل اختلافات ترسل أو لا ترسل علامات معينة وتقطع الاتصال بإعادة ضبط بدلاً من إنهاء الدورة بشكل طبيعي.

تُخصص العديد من التفسيرات قيمًا عددية لعلامات TCP بحيث يمكن جمعها وتصفيتها. على سبيل المثال:

رئيس بسالة
SYN 1
SYN/ACK 2
ACK 4
بيانات 8
FIN 16
RESET 32

باستخدام طريقة التشفير هذه، من الممكن، على سبيل المثال، استخدام الحقل في برنامج Wireshark tcp.completeness ويمكنك التصفية حسب مجموع العلامات التي تظهر في تدفق معين لتحديد أنماط المسح.

مصافحة TCP كاملة (فحص الاتصال)

في عملية مسح "كاملة" باستخدام Nmap (ما يُعرف باسم فحص اتصال TCP، اختيار -sT), يقوم العميل بإنشاء الاتصال الكامل مع الخادم: SYN → SYN/ACK → ACK وبعد تبادل بعض البيانات، يتم إغلاقه بـ RESET أو FIN عادي.

إذا قمت بالتقاط هذا التسلسل في برنامج Wireshark وجمعت قيم العلامات وفقًا للجدول أعلاه (على سبيل المثال SYN + SYN/ACK + ACK + RESET)، يمكنك التصفية باستخدام اكتمال بروتوكول TCP = 39 لتحديد الروابط التي تم إنشاؤها ثم قطعها تمامًا.

يُعد هذا النوع من المسح الأسهل في الكشف عنه، لأن يترك أثراً في سجلات الخدمة. (الويب، FTP، Telnet، IMAP، إلخ) وفي ملفات سجل النظام. في بيئة معملية نموذجية، إذا كان لديك rsyslog قيد التشغيل، فسترى رسائل في /var/log/syslog, /var/log/auth.log, /var/log/daemon.log والخدمات المماثلة عندما يُكمل Nmap عملية المصافحة مع خدمات مثل in.fingerd, inetd, telnetd, ftpd, dovecot o postfix/smtpd.

فحص "التخفي" لـ SYN

El فحص SYN أو فحص "الخفي" (خيار -sSهذه إحدى أكثر الطرق شيوعًا لسرعتها، ولأنها من حيث المبدأ أقل وضوحًا. في هذه الطريقة، يرسل برنامج Nmap إشارة SYN. ​​إذا كان المنفذ مفتوحًا، يستجيب الخادم بإشارة SYN/ACK، وبدلًا من الرد بإشارة ACK لإتمام الاتصال، يفصل الماسح الضوئي الاتصال بإشارة RESET.

من وجهة نظر برنامج Wireshark، سيكون التسلسل النموذجي لفتح منفذ هو SYN → SYN/ACK → RST، والتي سيكون مجموع علاماتها وفقًا للمخطط السابق (1 + 2 + 32) = 35. التصفية بناءً على هذه القيمة tcp.completeness من الممكن تحديد الاتصالات التي تبدو وكأنها عمليات مسح SYN بدون مصافحة كاملة.

على مستوى سجل التطبيق، تكون هذه الطريقة أكثر سرية لأن تفشل معظم الخدمات في تسجيل الجلسةومع ذلك، إذا كان النظام يحتوي على قواعد جدار الحماية التي تسجل حزم SYN لبدء الاتصال، فستظهر إدخالات محاولة الاتصال.

فحص NULL وفحوصات أخرى "غريبة".

ومن التقنيات الكلاسيكية الأخرى ما يلي: فحص فارغ (خيار -sNفي هذه الحالة، يرسل Nmap حزم TCP بدون أي علامات نشطة. على الرغم من أن الأمر قد يبدو غريبًا، إلا أن بعض بروتوكولات TCP تتفاعل بشكل مختلف مع المنافذ المفتوحة أو المغلقة، مما يسمح لـ Nmap باستنتاج حالة المنفذ.

في عملية مسح فارغة (NULL scan)، إذا تم إغلاق المنفذ، فإنه عادةً ما يُعيد إشارة RST.أما إذا كان الاتصال مفتوحًا أو خاضعًا للتصفية، فقد لا يستجيب. للكشف عن ذلك باستخدام Wireshark، يمكنك استخدام عوامل التصفية على... tcp.flags واترك فقط تلك الأجزاء التي تم ضبط جميع علاماتها على الصفر.

وعلى نفس المنوال، لدينا عمليات مسح مثل مسح ضوئي لعيد الميلاد (FIN + PSH + URG)، فحص FIN أو تركيبات مماثلة، والتي تحاول استغلال الفروق الدقيقة لمعيار TCP أو تطبيقات محددة لاكتشاف المنافذ دون اتباع أنماط المصافحة النموذجية.

التحكم في حجم النافذة كتلميح في Nmap

ومن الميزات الأخرى التي يمكن استخدامها للكشف عن عمليات المسح الضوئي ما يلي: حجم نافذة TCPحجم النافذة هو مقدار البيانات التي يعلن المضيف أنه يستطيع استقبالها. تستخدم بعض إصدارات Nmap قيمًا ثابتة لأنواع معينة من عمليات المسح.

على سبيل المثال، من الشائع في فحص Nmap SYN القياسي العثور على يبلغ حجم نافذة حزم SYN 1024 بايت، بينما في الاتصالات "العادية" لنظام معين يتم استخدام قيم مختلفة (مثل 64240 أو 65535، اعتمادًا على نظام التشغيل والتكوين).

في برنامج Wireshark، يمكنك تطبيق فلتر مثل tcp.window_size == 1024 بالإضافة إلى بعض العلامات لتحديد الأنماط المشبوهة. وبصفتك مهاجمًا أو مختبر اختراق، يتيح لك Nmap تعديل هذا السلوك باستخدام معلمات مثل --win لتجنب ترك مثل هذا التوقيع الواضح.

يريشارك

الكشف عن عمليات مسح Wireshark وتحليلها، بالإضافة إلى المنافذ "غير العادية".

يريشارك إنه محلل البروتوكولات بامتياز في عالم أمن الشبكات، يقوم هذا الجهاز بالتقاط الحزم، وفك تشفيرها طبقة تلو الأخرى (إيثرنت، IP، TCP/UDP، HTTP، TLS، إلخ)، ويتيح لك تطبيق مرشحات دقيقة للغاية للاحتفاظ فقط بحركة المرور التي تهتم بالتحقيق فيها.

إحدى الطرق العملية للغاية للكشف عن عمليات المسح هي التصفية حسب النشاط في موانئ غير معتادةإذا كان لديك خادم ويب شرعي، فمن الطبيعي أن ترى حركة مرور إلى المنافذ 80 أو 443. أما ما ليس طبيعياً فهو رؤية الكثير من المحاولات إلى منافذ عشوائية مثل 1234 أو 31337 أو 4444.

في شبكة الشركات، يمكنك إنشاء قائمة بـ المنافذ "المشبوهة" المرتبطة بأطر عمل خبيثة أو أدوات الهجوم الشائعة، ويمكنك تصفية هذه المنافذ في برنامج Wireshark للتحقق من وجود أي عمليات فحص أو اتصالات غير متوقعة. ويمكن الاستعانة بجداول بيانات عامة تجمع المنافذ المرتبطة بالبرمجيات الخبيثة وأطر الاستغلال.

من وجهة نظر دفاعية، يسمح برنامج Wireshark أيضًا تعرّف على كيفية عمل أنواع مختلفة من عمليات مسح Nmap أن تبدأ بنفسك في مختبرك، لتتعلم كيفية التعرف عليها: عدد الحزم لكل منفذ، والعلامات، والأوقات بين الحزم، واستجابات النظام، وما إلى ذلك.

دمج المرشحات مثل tcp.completeness, tcp.flagsيتيح لك عدد المنافذ المختلفة التي يتم لمسها في وقت قصير وأحجام النوافذ إنشاء قواعد يدوية أو الحصول على الإلهام لقواعد IDS/IPS.

مختبر نموذجي: المسح باستخدام Nmap والتقاط البيانات باستخدام Wireshark

في العديد من البيئات التعليمية، بيئة شبكة افتراضية باستخدام VirtualBox لممارسة فحص وتحليل حركة البيانات دون أي مخاطر. يتضمن مثال نموذجي ثلاثة أجهزة تعمل بنظام GNU/Linux على شبكة داخلية: interno1 (192.168.100.11) interno2 (192.168.100.22) Y observador (192.168.100.33)، كل منها بعنوان MAC ثابت.

عادةً ما تكون الخدمات التي تبقى قيد التشغيل افتراضيًا على هذه الأجهزة كثيرة: أباتشي 2، تيلنت، إس إس إتش، إف تي بي، فينجر، ماي إس كيو إل، إس إم تي بي (بوست فيكس)، بوب3 وإيماب (دوفكوت)، دي إن إس (بايند)... مثالي لبرنامج فحص مثل Nmap أن يكون لديه عدد كبير من المنافذ للعثور عليها.

الخطوة الأولى في ذلك المختبر عادة ما تكون قم بتفعيل rsyslog على internal1 لتسجيل كل ما يحدث: يتم تفعيله بواسطة systemctl enable rsyslog y systemctl start rsyslogوهكذا، تبدأ ملفات السجل بالامتلاء في /var/log كما syslog, auth.log, daemon.log o kernel.log.

من جهاز المراقبة، أ مسح بينغ استخدم Nmap لاكتشاف الأجهزة النشطة على شبكة 192.168.100.0/24:

nmap -sP 192.168.100.0/24

بمجرد تحديد المضيفين النشطين (باستثناء المراقب نفسه)، يتم إجراء عمليات مسح من النوع اتصال TCP قم بمقارنة كل منها لمعرفة المنافذ المفتوحة والخدمات التي تعمل:

nmap -sT -v -T4 192.168.100.11
nmap -sT -v -T4 192.168.100.22

ثم يتم تكرار ذلك مقابل internal1 مع إضافة نظام التشغيل والكشف عن الإصدار من الخدمات:

nmap -sT -O -sV -T4 192.168.100.11

بعد ذلك، يتم الرجوع إلى سجلات interno1، على سبيل المثال مع tail -200 /var/log/syslog | lessللتحقق كيف تم تسجيل تلك الفحوصات؟ في مختلف البرامج والخدمات، وتقدير الأثر الذي يتركه فحص اتصال TCP.

مقارنة عمليات المسح الصاخبة و"الخفية" مع جدران الحماية والسجلات

ولرؤية الفرق في التتبع بين تقنيات Nmap المختلفة، في نفس المختبر قاعدة iptables على internal1 والتي تسجل أي محاولة لبدء اتصال TCP (حزم SYN ذات حالة NEW) باستخدام بادئة يسهل التعرف عليها:

iptables -A INPUT -i enp0s3 -p tcp \
--tcp-flags SYN SYN -m state --state NEW \
-j LOG --log-prefix "INICIO CONEXION:"

أثناء مراقبة الملف /var/log/syslog مع tail -fمن وجهة نظر المراقب، يتم اختبار ثلاث عمليات مسح مختلفة مقابل internal1:

  • فحص اتصالات TCP (-sT). يقوم بإنشاء إدخالات "بدء الاتصال:"، بالإضافة إلى ذلك، يقوم بتسجيل الخدمات التي تكمل عملية المصافحة.
  • مسح SYN (-sS). ينتج هذا مدخلات "بدء الاتصال:"، لكن معظم الخدمات لا تسجل جلسة لأن الاتصال لم يكتمل.
  • فحص القيم الفارغة (-sNلا يُثير هذا الأمر علامة SYN، وبالتالي فهو لا يتطابق مع قاعدة جدار الحماية. لا يظهر البادئة في السجلاتمما يجعلها أكثر سرية في نظر تلك السياسة المحددة.

تساعدنا هذه المقارنة على فهم أن لا يتم الكشف عن جميع أنواع عمليات المسح باستخدام نفس القواعد. وبصفتنا مدافعين، يجب أن نتجاوز "التمريرات الصامتة فقط" إذا أردنا أن نرى المزيد من المحاولات المموهة.

من المسح الضوئي إلى هجمات الوسيط: Bettercap وWireshark والخدمات المشفرة

في الجزء الثاني من الممارسة، يتم استخدام جهاز المراقبة لـ تنفيذ هجمات تسميم ARP و MITM باستخدام Bettercap، ثم قم بتحليل حركة البيانات الملتقطة باستخدام Wireshark أو باستخدام الوحدة نفسها. net.sniff من Bettercap. الهدف هو مقارنة مدى تعرض البروتوكولات الواضحة (Telnet، HTTP) مقابل البدائل المشفرة (SSH، HTTPS).

قبل ذلك، يتم تفعيل دعم SSL في Apache على interno2، مما يؤدي إلى إنشاء شهادة موقعة ذاتيًا مع make-ssl-cert إلى /etc/apache2/ssl/apache.pem، تكوين default-ssl.conf لاستخدام هذا الملف كشهادة ومفتاح، قم بتفعيل وحدة SSL باستخدام a2enmod ssl وموقع SSL الافتراضي مع a2ensite default-sslوإعادة تشغيل أباتشي.

يتم إجراء الفحص الأول tshark في المراقب أثناء الاستماع على واجهة الشبكة الداخلية، يتم فتح جلسات Telnet وHTTP من internal1 إلى internal2. ولعدم وجود هجوم وسيط، يتدفق الترافيك مباشرةً بين internal1 وinternal2، ولا يرصد برنامج tshark أي جزء تقريبًا من هذا الترافيك. وهذا يُثبت أنه بدون حيل إضافية، لا يستطيع جهاز ثالث على نفس الشبكة دائمًا رصد الترافيك الخارجي.

إذا قمت بمراجعة جداول ARP الخاصة بـ internal1 و internal2 (arp -n)، يتم ملاحظة كيف يربط كل واحد عنوان IP الخاص بالآخر برمز MAC الحقيقي الخاص به، حيث يكون المراقب بالفعل مع عنوان IP الخاص به ورمز MAC الخاص به فقط، دون أي تداخل.

تسميم نظام ARP والتقاط حركة المرور

الخطوة التالية هي تشغيل برنامج Bettercap في وضع المراقبة وتفعيل الوحدات النمطية net.recon y net.probe لاكتشاف الأجهزة على الشبكة والتحقق من ظهور العناوين 192.168.100.11 و192.168.100.22 و192.168.100.33 مع عناوين MAC الخاصة بها. يمكن تفعيل واجهة Bettercap على الويب، وإن لم يكن ذلك ضروريًا للاستخدام العملي.

وبالتوازي مع ذلك، يتم إطلاقه مرة أخرى tshark في المراقب لمعرفة إطارات ARP التي تظهر. يتم تكوين أهداف الوحدة من وحدة تحكم Bettercap. arp.spoof (الداخلي 1 والداخلي 2) ويتم تفعيل الهجوم باستخدام:

set arp.spoof.internal true
set arp.spoof.targets 192.168.100.11,192.168.100.22
arp.spoof on

عند هذه النقطة، يبدأ Bettercap في الإرسال استجابات ARP خاطئة التأكد من أن عنوان IP الخاص بالمضيف الآخر (internal1 أو internal2) يتطابق مع عنوان MAC الخاص بالمراقب لكل جهاز. مع الأخذ في الاعتبار السؤال 1رسائل ARP المرسلة هي في الأساس ردود "مجانية" (غير مطلوبة) تُحدّث ذاكرة التخزين المؤقت لبروتوكول ARP لدى الضحايا. ونتيجةً لذلك، في جداول ARP الخاصة بالجهازين internal1 و internal2، يبدأ عنوان IP الخاص بالجهاز الآخر بالإشارة إلى عنوان MAC 08:00:27:33:33:33 (عنوان MAC الخاص بالمراقب)، مما يجعله فعليًا وسيطًا في عملية التلاعب.

مقارنة بين Telnet و SSH و HTTP و HTTPS في حالة هجوم الوسيط (MITM)

مع تفعيل هجوم الوسيط، يتم استخدام الوحدة النمطية net.sniff من Bettercap لتفريغ حركة البيانات بين internal1 و internal2 في ملفات .pcap مختلفة حسب الخدمة التي يتم اختبارها، باستثناء ARP باستخدام عامل تصفية:

set net.sniff.filter "not arp"
set net.sniff.output /tmp/telnet.pcap
net.sniff on

في هذه الأثناء، يتم فتح جلسة Telnet من الجهاز الداخلي 1 إلى الجهاز الداخلي 2 باستخدام اسم المستخدم "username" وكلمة المرور "username"، ويتم عرض قائمة الملفات، ثم تنتهي الجلسة. /tmp/telnet.pcap ثم يتم تحليلها باستخدام برنامج Wireshark، ومن السهل رؤية ذلك. بيانات الاعتماد والأوامر بنص عادي باتباع تدفق TCP المقابل.

تُكرر التجربة باستخدام SSH، ويتم حفظها في /tmp/ssh.pcapوهذه المرة، على الرغم من إمكانية ملاحظة إنشاء اتصال SSH وتبادل المفاتيح، يتم تشفير بيانات اسم المستخدم وكلمة المرور.لا يمكن رؤية بيانات الاعتماد في برنامج Wireshark، بل فقط الإطارات المشفرة.

وينطبق الأمر نفسه على HTTP مقابل HTTPS: مع قيام net.sniff بتفريغ البيانات إلى /tmp/http.pcap، نظام ملاحة باستخدام Lynx أو متصفح رسومي باتجاه http://interno2.ssi.net يجعل هذا الأمر طلبات واستجابات HTTP قابلة للقراءة بالكامل (العناوين، وملفات تعريف الارتباط، والمعلمات، وما إلى ذلك). ومع ذلك، عند تكرار ذلك مع https://interno2.ssi.net وتحليل /tmp/https.pcapلوحظ مصافحة TLS (ClientHello، ServerHello، الشهادات، إلخ.) ثم حركة المرور المشفرة فقط التي تحمل علامة TLS 1.3.

باستخدام الفلتر في يدك، يمكنك تركيز نظرك على tls في برنامج Wireshark، اتبع مسار TCP المقابل وتحقق من أنه على الرغم من مرور جميع حركة المرور عبر المهاجم، لا يمكنه الوصول إلى محتوى النص العادي إلا إذا تمكن من اختراق التشفير أو إساءة استخدامه بطريقة ما.

التخصيص، وNmap NSE، والتكامل مع الحلول الأخرى

أحد أسباب بقاء Nmap قويًا للغاية حتى اليوم هو درجته العالية من التخصيص والأتمتةعلى مستوى سطر الأوامر، يمكن تكوين كل شيء تقريبًا: منافذ محددة، مهلات، عدد المحاولات، درجة التوازي، مستوى التخفي (الملفات الشخصية من T0 إلى T5)، تجزئة الحزم، عنوان IP المصدر المزيف وعنوان MAC، إلخ.

بالإضافة إلى ذلك هناك محرك برمجة Nmap (NSE)تتيح لك هذه المجموعة من البرامج النصية تجاوز مجرد التحقق من "المنفذ مفتوح/مغلق". فهناك برامج نصية لاختراق SSH أو FTP، واكتشاف التكوينات غير الآمنة، والتحقق من الثغرات الأمنية المعروفة، والحصول على معلومات تفصيلية، والاختبار على خوادم الويب، وSamba، وDNS، وغير ذلك الكثير.

على سبيل المثال، لمحاولة شن هجوم تخمين كلمات المرور على منفذ SSH رقم 22 لمضيف معين باستخدام قاموسين، يمكنك استخدام ما يلي:

nmap -p 22 --script ssh-brute --script-args userdb=usuarios.txt,passdb=claves.txt,ssh-brute.timeout=4s 99.99.99.99

وبالمثل، للتحقق مما إذا كان خادم FTP يسمح بالوصول المجهول أو باختراق بيانات الاعتماد باستخدام أسلوب التجربة والخطأ، توجد برامج نصية مثل: ftp-anon o ftp-brute. يتم إطلاق هذه الأشياء وهي مربوطة بسلسلة إلى -sV -sC أو بشكل فردي حسب الاقتضاء.

ميزة أخرى هي أن يتكامل برنامج Nmap بشكل جيد للغاية مع الأدوات الأخرى. يمكن حفظ النتائج بصيغ متعددة (نص عادي، XML، صيغة متوافقة مع grep، بالإضافة إلى صيغة أخرى). -oA) ثم تغذية عمليات المعالجة اللاحقة، أو لوحات المعلومات، أو حتى أدوات مثل Metasploit، أو أنظمة المخزون، أو محركات ربط الأحداث.

على مستوى المؤسسة، يتضمن تطبيق Nmap كجزء من برنامج أمني تحديد سياسات الاستخدام، وتخطيط المسح، وتحليل النتائج، والتحديثات المستمرةإن المسح الضوئي مرة واحدة ووضعه في درج ليس مفيدًا للغاية؛ عليك أن تكرر العملية وتقارن وتتخذ إجراءً بناءً على النتائج.

إن استخدام Nmap و Wireshark معًا لتدقيق الشبكة المحلية، بالإضافة إلى أدوات أخرى، يوفر صورة كاملة للغاية عن كيفية عمل الخدمات، وما هو مكشوف بالفعل، وما هي المعلومات التي يمكن للمهاجم رؤيتها أو التلاعب بها، مما يوضح سبب جدوى الاستثمار في التشفير (SSH، HTTPS)، وإغلاق المنافذ غير الضرورية، وتكوين جدار الحماية بشكل جيد، والمراقبة المستمرة للسجلات وحركة مرور الشبكة.