مقدمه
“nmap” یک ابزار قدرتمند برای اسکن شبکه است که میتواند به کاربران کمک کند تا سیستمهای مختلفی که در یک شبکه قرار دارند را شناسایی کنند. این ابزار در اختیار کاربران قرار میگیرد تا بتوانند به سادگی به دنبال دستگاههایی بگردند که به شبکه متصل هستند. سپس بررسی کنند که آیا آن دستگاهها در دسترس هستند؟ و اگر هستند، چه خدمات و سرویسهایی را ارائه میدهند؟
این ابزار قابلیتهای متعددی دارد که از جمله آنها میتوان به تشخیص پورتهای باز و بسته شده، شناسایی سیستمعاملها و نسخههای آنها، شناسایی سرویسها و خدمات مختلف، تست نفوذ و بسیاری از امکانات دیگر اشاره کرد. با استفاده از این ابزار، کاربران میتوانند امنیت شبکه خود را بهبود بخشند و آسیبپذیریهای موجود را شناسایی کرده و رفع کنند.
sS – TCP SYN scan
اسکن TCP SYN یا -sS در ابزار nmap یکی از متد های اسکن پورت در سیستم های شبکه است. در این روش، ابزار nmap ابتدا یک درخواست SYN به سرور مورد نظر ارسال می کند. اگر پورت باز باشد و سرور آن را قبول کند، پاسخ SYN/ACK از سرور به مسیریاب و سپس به ابزار nmap ارسال می شود. سپس ابزار nmap یک پیام RST می فرستد تا اینکه کانکشن قطع شود.
اگر پورت بسته باشد، سرور درخواست SYN را رد می کند و پاسخی ارسال نمی کند. اگر پورت فیلتر شده باشد، سرور پاسخ SYN/ACK را به مسیریاب ارسال نمی کند و در نتیجه ابزار nmap متوجه می شود که پورت فیلتر شده است.
اسکن TCP SYN بسیار سریع و دقیق است و اغلب برای بررسی سرورهایی با پورت های بسیار زیاد، استفاده می شود. با استفاده از این روش، می توانید از تعداد کمتری پیام برای کشف پورت های باز استفاده کنید. همچنین این متد برای شناسایی فایروال هایی که SYN پاسخ نمی دهند و یا به درخواست SYN پاسخ می دهند اما به درخواست ACK پاسخ نمی دهند، بسیار مفید است.
همچنین باید توجه داشت از آنجا که این روش برای شناسایی پورت های باز استفاده می شود، برخی از فایروال های پیشرفته می توانند با تشخیص این نوع از اسکن، از شناسایی و پاسخ به درخواست SYN پرهیز کنند:
nmap -ss 192.168.1.100
این دستور از پارامتر -ss استفاده میکند تا به صورت stealth scan پورتهای سرور را اسکن کند و اطلاعات مربوط به پورتها را در خروجی نمایش دهد.
sT – TCP connect scan
در این روش ابتدا سعی میشود تا ارتباط با پورتهای مورد نظر برقرار شود. برای این کار، یک درخواست اتصال (connect) به پورت مورد نظر ارسال میشود. اگر پورت باز باشد و پاسخ مناسبی داده شود، به این معنی است که سرور در دسترس و پورت در حال گوش دادن به درخواستها است. در این صورت، نرمافزار nmap پورت را به عنوان باز شناسایی میکند.
استفاده از این روش به دلیل اینکه از درخواستهای connect استفاده میکند، ممکن است نیاز به دسترسی روت نداشته باشد و به راحتی قابل استفاده باشد. از طرفی، این روش نسبت به روشهای دیگر کندتر است، زیرا نیاز به برقراری ارتباط با هر پورت دارد.
به طور خلاصه، استفاده از -sT در nmap، باعث برقراری ارتباط با پورتهای مورد نظر و تشخیص باز بودن آنها میشود:
nmap -sT 192.168.1.100
این دستور از پارامتر -sT استفاده میکند تا به صورت TCP scan پورتهای سرور را اسکن کند و اطلاعات مربوط به پورتها را در خروجی نمایش دهد.
همچنین مطالعه کنید : نقد و بررسی دوره آموزش گرامر | اکسیر آکادمی
sU – UDP scan
اسکن UDP یکی از روش های تشخیص پورت های باز برای پروتکل UDP می باشد که با استفاده از ابزار Nmap قابل اجراست. در روش UDP scan، یک درخواست برای برقراری ارتباط با یک پورت مشخص، از طریق ارسال یک پیام به مقصد ارسال می شود. اگر پورت باز باشد، سرور به درخواست پاسخ می دهد. در غیر این صورت پاسخی دریافت نمی شود. بنابراین، این روش به دلیل اینکه به صورت سریع و با دقت بالا، پورت های باز را تشخیص می دهد، مورد استفاده قرار می گیرد.
در اینجا، روش UDP scan از ابزار Nmap با پارامتر -sU توضیح داده شده است. برای استفاده از این پارامتر، کافی است دستور زیر را در محیط ترمینال وارد کنید:
nmap -sU [target]
nmap -sU 192.168.1.100
در اینجا، target به آدرس IP یا DNS نام هدف اشاره دارد. همچنین، این روش نیازمند دسترسی root به سیستم است.
در روش UDP scan، برای تشخیص پورت های باز، یک پیام از نوع UDP به مقصد ارسال می شود. در صورتی که پورت باز باشد، پاسخی دریافت می شود. غیر این صورت، به دلیل عدم پشتیبانی از پروتکل TCP، پاسخی دریافت نمی شود.
استفاده از روش UDP scan به دلیل سرعت بالا و تشخیص دقیق پورت های باز، بسیار مورد استفاده قرار می گیرد. با این حال، به دلیل اینکه UDP از پروتکل TCP پیچیده تر است، در برخی از موارد ممکن است با مشکلاتی مواجه شود. همچنین، در برخی از سیستم ها، پیام های UDP ممکن است به صورت بسته های ICMP بازگشت داده شوند که به ما اجازه تشخیص پورت باز را نمی دهد.
sN – TCP Null scan
این پوشش متعلق به نوع دیگری از اسکن TCP با نام “اسکن TCP بدون فلگ” است. در این نوع از اسکن، فلگ های SYN، FIN و ACK توسط nmap ارسال نمی شوند و برای هدف هایی با پاسخگویی غیراستاندارد از جمله برخی فایروال ها و سیستم های محافظتی استفاده می شود. در این نوع از اسکن، اگر پورت باز باشد و هیچ فلگی برای آن ارسال نشود، تنها پاسخ مربوط به RST برگشت داده می شود. اگر پورت بسته باشد، هیچ پاسخی ارسال نمی شود و nmap تشخیص می دهد که پورت بسته است.
این نوع از اسکن را باید با احتیاط انجام داد زیرا ممکن است باعث ایجاد نویز و مشکلات در شبکه شود. همچنین، برخی سیستم های محافظتی می توانند با تشخیص این نوع اسکن، سیستم های مورد حمله را شناسایی کنند و جلوی آنها را بگیرند. در نتیجه، بهتر است از این نوع اسکن تنها در شرایط خاص و با مجوز کارشناسان امنیتی استفاده کرد.
شما میتوانید از تکنیک TCP Null Scan برای بررسی پورتهای باز سیستمها استفاده کنید. در این روش، پکت ارسالی از هیچ یک از پرچمهای SYN، RST یا FIN استفاده نمیکند و در نتیجه پکتهای Null فرستاده میشوند.
اگر سیستم پاسخگو باشد و درگاه باز باشد، سیستم پاسخ گویی منفی (RST) خواهد داد. اما اگر پورت بسته باشد، پاسخ نمیدهد. با استفاده از تکنیک Null Scan، شما میتوانید پورتهای باز سیستمها را شناسایی کنید. مثال :
nmap -sN 192.168.1.100
sF – TCP FIN scan
اسکن TCP FIN یک روش دیگر برای بررسی درگاههای باز در شبکه است. این روش در nmap با استفاده از پارامتر -sF انجام میشود. در این روش، بسته TCP با پرچم FIN به سرور ارسال میشود. اگر درگاه بسته باشد، سرور پاسخی برگشت خواهد داد. در صورتی که درگاه باز باشد، سرور هیچ پاسخی برگشت نخواهد داد.
استفاده از این روش، باعث میشود سرور به نظر بیشتر مانند یک اسکنر پورتها (port scanner) بیاید و بررسیهای بیشتری انجام دهد. با این حال، این روش به دلیل مشکلات پیشآمده در تحلیل دادههای برگشتی، کمتر استفاده میشود.
در کل، این روش در بررسی سرورهای با سطح امنیتی کمتر مورد استفاده قرار می گیرد:
nmap -sF 192.168.1.100
sX – TCP Xmas scan
این روش اسکن با نام Xmas scan یا Christmas tree scan هم شناخته میشود.
در این روش، بسته های فرستاده شده توسط این اسکنر تنها برای تست بسته ها با پرچم FIN ، PSH و URG ارسال میشوند. این پرچم ها به ترتیب نشان دهنده پایان ارتباط، فشار برای دریافت پاسخ و فشار برای اولویت بالای بسته های ارسالی هستند. در این روش اسکن کاربردی، پرچم های SYN و RST درخواست نمیشوند.
یکی از مزایای استفاده از این روش اسکن، این است که به ندرت شناسایی میشود و در بسیاری از موارد قابل استفاده است. با این حال، تعداد بسیار کمی از دستگاه ها این نوع بسته ها را پذیرفته و پردازش میکنند. بنابراین این روش اسکن به تنهایی برای شناسایی در مورد سیستم هدف قابل استفاده نیست و بهتر است با روش های دیگری همراه شود:
nmap -sX 192.168.1.100
sP – Ping scan
در اسکن پینگ با استفاده از پارامتر -sP در ابزار nmap، نرمافزار نسخه بسیار سادهای از پروتکل ICMP را برای ارسال به دستگاههای مورد نظر استفاده میکند. در این روش، فقط تعداد کمی بسته ICMP ارسال شده و به عنوان پاسخ، تعدادی پاسخ ICMP دریافت میشود. این روش به دلیل سرعت بالای اجرا و کم بودن تأثیرات بر روی شبکه، یکی از روشهای محبوب برای سکونت شبکه است. با این حال، این روش تنها برای پیدا کردن دستگاههای آنلاین در شبکه استفاده میشود و قادر به تعیین وضعیت پورتها و سرویسهای در دسترس بر روی دستگاهها نیست:
nmap -sP 192.168.1.100
O – Operating system detection
این ابزار به کاربران اجازه میدهد تا نوع سیستمعامل هدف را شناسایی کنند. با استفاده از این قابلیت، کاربران میتوانند اطلاعات بیشتری درباره دستگاههای هدف دریافت کنند و مجموعه اطلاعات بهتری برای ارزیابی امنیتی آنها داشته باشند.
با استفاده از این دستور در Nmap، یک پویش برای شناسایی نوع سیستم عامل دستگاه هدف انجام میشود. این دستور ابتدا تلاش میکند تا نوع سیستم عامل را با استفاده از تکنیکهای مختلفی همچون بررسی پورتها، بررسی نسخه سرویسهای در حال اجرا و نیز بررسی اطلاعات پروتکلهای شبکه مثل TTL، میزان Window و میزان Delay پیدا کند. در نهایت اطلاعات جمعآوری شده توسط این دستور در یک دیتابیس از سیستمهای عامل ثبت میشوند.سپس با استفاده از یک الگوریتم تحلیل دادهها و مقایسه اطلاعات جمعآوری شده، سیستم عامل دستگاه هدف شناسایی میشود.
استفاده از این دستور به کاربران اجازه میدهد تا با دانستن سیستمعامل هدف، به سرعت بتوانند شناسایی و شناخت کنترل شدهتری بر روی دستگاههای مورد نظر خود اعمال کنند. همچنین، با شناسایی نوع سیستمعامل، کاربران میتوانند از نرمافزارهایی که بهینهتر و قابل اعتمادتر برای سیستمعامل هدف هستند استفاده کنند:
nmap -O 192.168.1.100
A – Aggressive scan
اسکن تند و تیز (Aggressive Scan) یکی از روشهای امنیتی در انمپ (Nmap) است که با استفاده از آن، کاربر میتواند اطلاعات بیشتری درباره دستگاههایی که در شبکه متصل هستند به دست آورد. در این روش، بیشترین حجم از پکتها ارسال میشود تا اطلاعات بیشتری جمع آوری شود. همچنین با شامل بودن اجرای سریع تر و پویا تر بودن اسکنها، شناسایی پورت های باز آسان است.
برای اجرای اسکن تند و تیز در انمپ، کافی است از پارامتر -A استفاده کنید. این پارامتر شامل سایر پارامترهایی مانند -O، -sV، -T4 و -F میشود. در واقع، با استفاده از پارامتر -A، انمپ تمامی پارامترهای لازم برای انجام اسکن تند و تیز را به طور خودکار فعال میکند.
با این حال، میتوانید با استفاده از پارامترهای مختلف، تنظیمات اسکن را تغییر دهید و نوع اسکن را براساس نیاز خود بهینه کنید. به عنوان مثال، با استفاده از پارامتر -T4، میتوانید سرعت اسکن را افزایش دهید و با استفاده از پارامتر -F، میتوانید فقط پورتهای باز را اسکن کنید:
nmap –A 192.168.1.100
v – Verbose output
پارامتر -v یکی از پارامترهای مورد استفاده در اسکن شبکه با استفاده از ابزار nmap میباشد. با فعال کردن این پارامتر، اطلاعات بیشتری در خروجی نمایش داده میشود و از جزئیات بیشتری درباره فعالیتهای انجام شده توسط nmap در طول اسکن شبکه، در اختیار قرار میدهد.
در صورتی که از پارامتر -v استفاده شود، میتوان از لحاظ تصویری و صوتی همزمان با اسکن شبکه بهروزرسانیهای انجام شده توسط nmap را مشاهده کرد. به این ترتیب میتوانید اطلاعات دقیقی از تعداد پورتهای باز و بسته، اسکن شده توسط nmap در دسترس داشته باشید.
همچنین پارامتر -v به شما کمک میکند تا در تحلیل خروجیهای nmap و شناسایی خطاهای موجود در نتایج اسکن، بهتر عمل کنید. با فعال کردن این پارامتر، میتوانید خطاهای اسکن را با دقت بیشتری تشخیص دهید و سرعت پاسخدهی را افزایش دهید:
nmap -A -v 192.168.1.1
این مقاله ادامه دارد : 1/10