در دنیای امروز که حملات سایبری پیچیدهتر از همیشه شدهاند، مدیریت داراییها (Asset Management) و نقشهبرداری شبکه (Network Mapping) به اولین گام حیاتی در امنیت شبکه تبدیل شدهاند. یکی از مشهورترین و پرکاربردترین ابزارهای این حوزه، Nmap یا Network Mapper است که توسط متخصصان امنیت، هکرهای اخلاقی و مدیران سیستم در سراسر جهان استفاده میشود.
چرا Nmap برای امنیت شبکه ضروری است؟
Nmap یک ابزار متنباز و رایگان برای کشف شبکه و ممیزی امنیتی است که میتواند میزبانهای فعال، پورتهای باز، نسخه سرویسها و سیستمعاملها را شناسایی کند. این ابزار ابتدا توسط گوردون لیون (Fyodor) توسعه داده شد و به دلیل کارایی فوقالعاده، حتی در فیلمها و سریالهای معروفی مثل The Matrix و Mr. Robot حضور داشته است.
آنچه در ادامه میخوانید:
چرا متخصصان امنیت از Nmap استفاده میکنند؟
آموزش دستورات Nmap از پایه تا پیشرفته
تنظیمات سرعت اسکن (Nmap Timing Options)
رابط کاربری گرافیکی Nmap و ابزار Zenmap
نمایش جزئیات (Verbosity) و خروجی گرفتن از نتایج اسکن در Nmap
Nmap (Network Mapper) ابزاری برای اسکن پورتها و شناسایی دستگاهها و سرویسها در شبکه است. این ابزار با ارسال بستههای خاص به میزبان و تحلیل پاسخها، اطلاعات ارزشمندی برای امنیت شبکه فراهم میکند.
مزایای Nmap شامل:
۱. اسکن پورتهای پرکاربرد
nmap --top-ports 100
اسکن ۱۰۰ پورت پرترافیک برای شناسایی سرویسهای متداول.
۲. اسکن Ping برای شناسایی دستگاههای فعال
nmap -sp 192.168.1.1/24
نمایش لیست میزبانهای روشن در شبکه.
۳. اسکن کامل یک میزبان
nmap scanme.nmap.org
بررسی ۱۰۰۰ پورت رایج یک میزبان.
۴. اسکن نسخه سرویسها
nmap -sV scanme.nmap.org
تشخیص نسخه دقیق نرمافزار برای تحلیل آسیبپذیری.
۵. تشخیص سیستمعامل
nmap -O scanme.nmap.org
نمایش نوع و نسخه سیستمعامل هدف.
۶. اسکن تهاجمی (Aggressive Scan)
nmap -A scanme.nmap.org
ترکیب تشخیص سیستمعامل، نسخه سرویسها، اسکریپتهای NSE و مسیر شبکه.
۷. اسکن IPv6
nmap -6
پشتیبانی کامل از شبکههای مبتنی بر IPv6
فرآیند اسکن در Nmap میتواند با سرعتهای متفاوتی انجام شود. هرچه سرعت اسکن پایینتر باشد، احتمال شناسایی شدن آن توسط سیستمهای تشخیص نفوذ (IDS) کمتر است؛ اما در مقابل، سرعتهای بالاتر ممکن است باعث فشار بیش از حد به سیستم هدف شده یا باعث شناسایی سریع فعالیت شوند.
Nmap شش سطح زمانبندی (Timing Templates) از T0 تا T5 را پشتیبانی میکند که هر کدام برای سناریوهای خاصی مناسب هستند:
این حالت برای افرادی طراحی شده که نمیخواهند توسط IDS شناسایی شوند. سیستمهای تشخیص نفوذ معمولاً چندین درخواست را در یک بازه زمانی مشخص بررسی و ارتباط میان آنها را تحلیل میکنند. حالت Paranoid با ارسال تعداد بسیار کمی بسته در هر ثانیه، تلاش میکند این شناسایی را دور بزند.
در این حالت سرعت کمی بیشتر از T0 است، اما همچنان با هدف دور زدن IDS طراحی شده است. برای سناریوهایی که نیاز به دقت و احتیاط دارید، اما نمیخواهید بیش از حد کند پیش بروید، این گزینه مناسب است.
یک اسکن آهسته که سعی میکند کمترین فشار ممکن را بر روی سیستم هدف وارد کند. این حالت برای سرورهای حساس یا قدیمی که احتمال دارد با ترافیک بالا از کار بیفتند، کاربرد دارد.
حالت پیشفرض Nmap که تعادلی میان سرعت و دقت برقرار میکند. برای اغلب سناریوهای تست نفوذ، این گزینه کفایت میکند.
یک اسکن سریع که نتایج را در مدت کوتاهی ارائه میدهد. بیشتر سیستمهای مدرن میتوانند این سرعت را تحمل کنند و در عین حال، زمان اجرای تست را به میزان قابل توجهی کاهش میدهد.
در این حالت، Nmap با بالاترین ظرفیت ممکن بستهها را ارسال میکند. این روش برای سیستمهای بسیار قدرتمند و شبکههای پرسرعت مناسب است، اما احتمال شناسایی و حتی اختلال در سرویس بسیار بالا خواهد بود.
نکته: انتخاب سرعت مناسب اسکن به عوامل متعددی بستگی دارد، از جمله:
مقایسه حالتهای زمانبندی بهطور خلاصه در جدول زیر آمده است:
ابزار Nmap علاوه بر نسخه خط فرمان، یک رابط کاربری گرافیکی (GUI) نیز در کنار سایر ابزارهای جانبی خود ارائه میدهد. این رابط گرافیکی میتواند برای تصویرسازی شبکهها و مرور پورتهای باز در میزبانهای مختلف بسیار مفید باشد.
Zenmap رابط کاربری گرافیکی رسمی Nmap است که بهصورت رایگان و متنباز (Open Source) عرضه شده و به کاربران کمک میکند تا بهسرعت کار با Nmap را آغاز کنند. برخی قابلیتهای کلیدی Zenmap عبارتاند از:
در فرآیند تست نفوذ (Penetration Testing)، اجرای اسکنهای شبکه ممکن است چندین روز یا حتی چند هفته به طول بینجامد. برای جلوگیری از انجام کارهای تکراری و همچنین تسهیل در تهیه گزارشهای نهایی، ذخیره و خروجی گرفتن از نتایج اسکن در Nmap اهمیت بالایی دارد.
Nmap امکان ارائه خروجی در فرمتهای مختلف و همچنین نمایش جزئیات کامل فرآیند اسکن را فراهم میکند. این قابلیتها باعث میشوند که تحلیل دادهها سادهتر شده و بتوان نتایج را در ابزارهای دیگر نیز پردازش یا مستندسازی کرد.
خروجی متنی: برای ثبت نتایج اسکن به شکل متنی و آرشیو کردن آنها.
nmap -oN output.txt scanme.nmap.org
خروجی XML: فرمت XML، به دلیل ساختارمند بودن، در بسیاری از ابزارهای امنیتی و پلتفرمهای تحلیل نتایج پشتیبانی میشود.
nmap -oX output.xml scanme.nmap.org
خروجی Verbose: حالت Verbose اطلاعات بیشتری در مورد مراحل و جزئیات اسکن ارائه میدهد. این حالت بهویژه زمانی کاربردی است که شما یک شبکه مشتری یا سازمان را اسکن میکنید و نیاز دارید هر مرحله را دقیق مشاهده کنید.
nmap -v scanme.nmap.org
Nmap یک ابزار همهکاره در دنیای امنیت شبکه است که با یادگیری آن، میتوانید درک عمیقی از ساختار و وضعیت امنیتی شبکه خود پیدا کنید. این ابزار با قابلیتهای متنوع، از اسکن ساده پورتها گرفته تا تشخیص سیستمعامل و اجرای اسکریپتهای امنیتی، به شما کمک میکند قبل از مهاجمان، نقاط ضعف شبکه را شناسایی و برطرف کنید.
بله، استفاده از Nmap برای اسکن شبکههای شخصی یا با مجوز صاحب شبکه قانونی است. اما اسکن بدون اجازه، میتواند تخلف یا جرم محسوب شود.
در برخی موارد بله، به خصوص با تنظیمات خاص و استفاده از روشهای پیشرفته اسکن.
خیر، Nmap روی ویندوز، macOS و بسیاری از سیستمعاملهای دیگر نیز اجرا میشود.
Nmap CLI نسخه خط فرمان است و قدرت و انعطاف بالایی دارد، درحالیکه Zenmap رابط کاربری گرافیکی Nmap است که کار را برای تازهکارها سادهتر میکند.
اسکن پورت TCP و UDP، شناسایی سیستمعامل (OS Detection)، شناسایی نسخه سرویسها، اسکن شبکههای کامل، و حتی اجرای اسکریپتهای NSE برای تست امنیت.
بله، Nmap امکان ذخیره خروجی در فرمتهای مختلف مثل TXT ،XML و حتی HTML را دارد.
Nmap توسط Gordon Lyon ملقب به (Fyodor) و جامعه متنباز توسعه داده میشود.