برامج كمبيوترتعليمتقنية

فحص الشبكات باستخدام nmap – الأساسيات


لكي نبدأ بشرح كيفية تطبيق التعامل مع أداة nmap بشكل عملي، سأقوم بتشغيل نظام Kali Linux و metasploitable في مختبر الخاص بنا.

أقوم بتشغيل Terminal، أكتب nmap وأحدد الهدف الذي أريد فحصه، فمثلاً يمكننا أن نقوم بكتابة الهدف وحده: nmap 10.0.2.14 ويعني أني أطلب من nmap أن تفحص الجهاز الذي عنوانه في  الإنترنت 10.0.2.14 وهو جهاز metasploitable.

أجد أن nmap سيظهر لي النتائج دفعة واحدة، وأنه فحص ألف منفذ، وليس الألف الأولى. أي ليست المنافذ من 1 إلى رقم ألف، بل سيفحص أشهر ألف منفذ مستخدم.

وهي منافذ خدمات ftp، ssh، telnet، وغيرها. والنتيجة تظهر أن المنفذ مفتوح أو مغلق أو مفتوح ومفلتر أو مغلق ومفلتر.

ويعني المفلتر بأنه محمي بالغالب بجدار ناري، بالإضافة إلى إظهار إسم الخدمة التي تعمل على هذا المنفذ.

وتفيدني nmap بمعرفة المنافذ المفتوحة والخدمات التي تعمل على هذه المنافذ.

إذا أردنا فحص أكثر من IP يمكننا أن نقوم بكتابة الأمر التالي:

nmap 10.02.14 10.2.1 10.0.2.3

الطريقة الأولى

وهذه طريقة أخرى لفحص IP متعددة أو أهداف متعددة دفعة واحدة من خلال nmap وهناك عدة طرق يمكننا من خلالها التعامل مع nmap.

الآن فحص nmap ثلاثة أجهزة ووجدها جميعها تعمل والتي هي  IP Address التي طلبتها منه قبل قليل.

الجهاز الأول الذي IP Address نهايته 14  هو metasploitable تعمل عليه هذه المنافذ

الجهاز الثاني هناك فقط منفذ الدومين DNS لأنه هو الراوتر لدي في المختبر.

الجهاز الثالث يعمل ولكن المنافذ عليها فلترة

جميع المنافذ الفورت أجهزة فعالة

الطريقة الثانية

إذا كان لدينا Range من IPs يمكن أن أكتب: nmap 10.0.2.1.255 وهذا كل الRange .

أو من: nmap 10.0.2.1.30,50.90 وهذا يعني أنه يفحص IPs 10.2.0.1 حتى 10.2.0.32 ومن ثم يفحص لي في نفس الوقت 10.0.2.50 إلى 10.0.2.90

أيضاً يمكننا أن نقوم بفحص الأجهزة البطالريقة التالية إن كان لدس Range كامل أو Network كاملة بالشكل التالي:

Nmap 10.0.2.0/24 أي افحص جميع IPs الموجودة في هذه الشبكة التي تبدأ 10.0.2.0 ثم 1و2و3و4 إلى 255.

ويمكن أن نضع أسماء الدومين الذين نريد فحصهم، فأكتب: nmap scanme.nmap.org

هذا الدومين من الدومينات الخاصة ب nmap عليه خدمة مخصصة لعملية الفحص، فيمكن أن تقوموا بعملية الفحص، ولكن أؤكد أن لا تقوموا بفحص لأي دومين أو IP Address غير مصرح لكم القيام بفحصها.

هذا الدوميين مصرح ومخصص ل nmap لإجراء فحص لها واستخدامها وغيرها من أدوات لإجراء الفحص.

لو فرضنا أني كتبت: nmap 10.0.2.1-50.60-100 قبل أن أبدأ بعملية الفحص أريد أن أعرف من هي IP Addresses أو من الأهداف التي سأقوم بعمل فحص لها.

List Scan

فعندي نوع من انواع الفحص يدعى List Scan وهو ليس لتقوم nmap بعملية الفحص وإنما لتعرض لي Ip Addresses أو الأهداف التي ساقوم بفحص عليها.

فلو وضعت: nmap 10.0.2.1-50.60-100 scanme.nmap.org google.com yahoo.com

سيعرض جميع عناوين الإنترنت الخاصة بالأهداف التي سأقوم بعملية فحص عليهم.

وألاحظ أن أخذ وقتاً طويلاً لأنه يحاول أن يقوم ب DNS Resolutionلأني أعطيته IPs ودومينات فهو يحاول حل هذه الأسماء.

ويحاول معرفة ما هو الدومين المرتبط ب IPs .

إحدى الأمور التي يمكن أن أتبعها لأسرع من عملية الفحص، إن كان لا يهمني DNS Resolutionكثيراً يمكن أن أضع قبل سطر الأمور –n وهي أن لا تقم بDNS Resolution.

فهذا يسرع من العملية ولاحظت أنه عندما أضفت –n أخذ بضعة أجزاء من الثانية بل فقط أظهر ما هي عناوين الإنترنت ومن الأهداف التي سيقوم بفحص لها.

هذا هو List Scan.

Mass Scan

الآن هناك نوع من أنواع الفحص

لدي الآن مجموعة من IPs والدومين جمعتهم عن طريق المرحلة الأولى والتي هي الاستطلاع.

لكن لا أريد إدخال هذه الابيز والدومين يدوياً إلى namp لأن عددها كبير. فأنا أريد أن أقوم بالفحص Mass Scan لأن لدي عدد كبير من الأهداف.

أي ليس IPs متتابعات وبنفس ال Netware ، بهذه الحالة في الاستطلاع أصدر IPs على شكل ملف نصي.

ساصنع ملف: cd Desktop/ أضغط Enter

Gedit ips.txt أضغط Enter

هذا الملف سأضع فيه مجموعة من IPs وأقوم بعملية محاكاة لعملية جمع المعلومات وأن هذا الملف الذي جمعته من عملية الاستطلاع.

أطلب من nmap  أن يأخذ جميع الأهداف الموجودة في الملف: nmap –il وتعني IPs التي سيفحصهم موجودة وأقرأهم من ملف نصي الذي أعطيه مساره كاملاً: nmap-n –il ips.txt

ألاحظ أنه يقوم بالفحص وأظهر لي أن هناك عنوان Ip واحد فقط  هو فقط مفعل.

أطلب منه : nmap-n -sl –il ips.txt ، لفحص List scan.

هذا الأمر يظهر لي قائمة عناوين IPs سيقوم بفحص عليها.

هذه الخيارات خاصة بالأهداف.

لدي exclude و Exclude File، إذا كان لدي range من IPs ولكن بعض منها أريد أن أقوم باستثناء له فأكتب: nmap –exclude وأكتب عنوان IP الذي أريد استثناءه من عملية الفحص.

Ping Scan

لدي في شبكتي : nmap –sn 10.0.2.0/24 أي جميع ال IPs الموجودة على شبكتي، قم بفحص Ping واستثني عملية DNS Resolution لتسريع الفحص.

ألاحظ الآن أنه ظهر لي أن فحص Ping أظهر عناوين Ips التي استطاع أن يقوم عليها الفحص، أو المفعل عليها المنفذ الخاص ب ICM Protocol أو Ping Scan.

وظهر لي IPs  الخاصة بالراوتر الخاص بال Virtualbox و metasploitable  و Kali Linux. وأن لدي خمسة أجهزة مفعلة.

لذلك يمكنني استخدام Ping Scan حتى أعرف ما هي عناوين IPs التي تقريباً مفعلة على شبكتي لكن باستخدام ICMP.

لكن يمكن أن يكون الجهاز شغال لكن ليس مفعل عليه ICMP أو شغال لكن مفعل عليه راوتر أوقفت عليه جميع المنافذ ومنها ICMP. ولكن يظهر لي أن جهازي مفعل.

تفعيل الفحص Verbus

يمكنني أن أضيف أمراً آخر سواء لفحص Ping أو غيره، وهو: -v وهو verbus ونحن لاحظنا قبل قليل أنه عندما نقوم بالفحص باستخدام nmap تأخذ وقتاً ثم تظهر لي النتائج دفعة واحدة.

فإن عملية الفحص قد تأخذ من 10 دقائق أو 20 دقيقة.

الآن سأقوم بفحص على شبكتي، ولكن سأجبر nmap  أن يظهر لي النتائج أولاً بأول، فأكتب:

nmap –sn –n -v 10.0.2.0/24 .

يعطيني بداية الأجهزة المفعلة، ثم يظهر لي المنافذ الخاصة بها، ثم يظهر أنه يفحص الجهاز الأول ثم الثاني والثالث وهكذا.

ويعطيني ما هي IPs التي فحصهم وما عددهم، وما عملهم، أولاً بأول.

ولكن لو أعطيته بدون –sn ألاحظ أنه يأخذ وقتاً أطول لأنه سيصبح Port Scan  وليس Ping Scan.

ويعطيني على الجهاز الفلاني أوجد المنافذ التالية والجهاز الآخر وجد المنافذ التالية، وايضاً أولاً بأول.

فهذا هو Verbus كي أجبر nmap  أن يظهر لي النتائج بالتدريج.

تقنيات nmap

أكتب: nmap –h لأرى المساعدة.

هناك مجموعة من تقنيات الفحص، وهي كثيرة جداً وتحتاج دورة متخصصة ب nmap، ولكن أهمها هو:

Stealth Scan

إذا كتبت –sS فهو للفحص التسلل الشامل. أكتب: nmap –sT –n –v 10.0.2.14 على هذا العنوان أو مجموعة عناوين أوملفات نصية أو غيرها. وأضغط Enter.

نرى نتائجه بالتدريج وقد فحص ألف منفذ ووجد بعضها مفتوحاً وحاول أن يرى كل واحد من هذه المنافذ المفتوحة ما هي الخدمات المفعلة عليه.

وهناك أنواع أخرى ويمكن إيجادهم بشكل مفصل في Help وتحدثت عنهم في الدرس السابق الذي أتحدث فيه عن تقنيات فحص الشبكات.

وكانت كل أنواع التقنيات تفحص لي المنافذ TCP Port ولكن إذا أرد أن أفحص UDP Port المفتوحات، هناك نوع واحد من الفحص وتقنية واحدة وهي UDP Scanning.

فستقوم بفحص منافذ UDP وتظهر لي من منها المفتوحات على هذا الجهاز. وفحص UDp يأخذ وقتاً أطول في الفحص لأنه أصلاً لا يصل من الهدف أن المنفذ مفتوح أم لا.

لذ عندما نقوم بهذا الفحص سنضطر أن ننتظر بعض الوقت لتظهر النتائج. وبسبب طبيعة عمل هذا البروتوكول يحتاج لوقت ليتأكد من المنافذ إن كانت مفتوحة او مغلقة.

وإن عمل بالسرعة التي يعمل بها TCP سيكون قليل الدقة. وأستطيع تسريعه لكن ستضعف دقته.

Nmap –sU –n –v –max –retries  ورقم المنفذ بعدها. سيأخذ وقتاً أقل.

فحص المنافذ

يمكنني كتابة –p إن أردت أن أحدد منافذ معينة، فلو فرضت أن كتبت: nmap –sT –p 1-1000 وهذه ليست المنافذ الأشهر بل المنافذ الألف الأولى.

وإن كتبت: nmap –sT –p 1-1000 –n –v 10.0.2.14

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

لو كتبت: –sT –p 20-100,150-1000 –n –v 10.0.2.14 أي افحص لي هذه المنافذ على هذا الجهاز المفتوحة والمغلقة.

لو أردت فحص كل المنافذ لدي طريقتان:

إما: –sT –p 1-65535 –n –v 10.0.2.14

أو: –sT –p- –n –v 10.0.2.14 أي افحص كل المنافذ . أي Full Port Scan.

ووجد TCP Scan فقط 65 منفذاً هم المفتوحين والباقي مغلقون.

Fast Mode

يفحص لي عدد منافذ أقل، فإن كتبت: –F –n –v 10.0.2.14

بهذه الحالة سيقلل عدد المنافذ التي يفحصها، وترك مائة مدخل للفحص، و –F لتسريع عملية الفحص كي نعلم هل الجهاز يعمل أم لا بشكل أسرع.

فقط في عملية تسريع الفحص.

هذه هي الأمور الأساسية وفي الدرس القادم سنكمل الشرح عن nmap.

محمد خريشة

مقالات ذات صلة

زر الذهاب إلى الأعلى