دستورات Nmap
Nmap مخفف عبارت Network Mapper است . یک اسکنر رایگان و open source است که توسط Gordon lyon یا Fyodor vaskovich ساخته شده است .در مقاله های قبل درمورد اینکه Nmap چیست و چه قابلیت هایی دارد و همچنین آموزش نصب Nmap توضیحاتی خدمت عزیزان داده شد. در این مقاله دستورات Nmap را بررسی خواهیم کرد.
اسکن IP یا هاست با Nmap
ساده ترین و ابتدایی ترین روش اسکن IP با Nmap به صورت زیر است:
nmap 1.1.1.1
همانطور که در زیر میبینید . حالا اگر ما بخواهیم اسم هاست رو اسکن کنیم . به سادگی اسم “هاست” را با “IP” عوض می کنیم .
nmap google.com
یا
namp siraei.ir
این نوع اسکن های بیسیک یا پایه ای و اساسی در اولین مراحل هنگام شروع کار با Nmap مناسب هستند .
اسکن کردن پورت های خاص یا اسکن کردن تمامی رنج پورت روی یک سرور محلی ( لوکال) یا سرور از راه دور
در مثال زیر ما تمامی 65535 پورت برای لوکال هاست خودمان را اسکن میکنیم:
nmap -p 1-65535 localhost
Nmap قادر به اسکن تمامی پورت های “امکانپذیر” است . اما همچنین ما می توانیم پورت های خاصی را اسکن کنیم . که نتایج را سریعتر گزارش خواهد کرد .
مثلا به مثال زیر توجه کنید :
nmap -p 80,443 8.8.8.8
اسکن IP آدرس های متعدد
خب ما میخواهیم اسکن کردن چند IP آدرس را امتحان کنیم .
برای اینکار به نحو زیر عمل می کنیم :
nmap 1.1.1.1 8.8.8.8
همچنین ما می توانیم چند IP آدرس متوالی ( پیاپی ) را اسکن کنیم :
nmap -p 1.1.1.1,2,3,4
این دستور IP آدرس های مورد نظر زیر را اسکن می کند :
1.1.1.1 , 1.1.1.2 , 1.1.1.3 , 1.1.1.4
یک راز بزرگ درمورد 90 % هاستینگ های ایرانی، اورسل کردن بیش از حد است که باعث افت کیفیت سرورها میشود.
وان سرور با ارائه دسترسی های مختلف این امکان را به شما خواهد داد که تمامی منابع سرورتان را مدیریت و بررسی کنید و همچنین با ارائه گارانتی 100% برگشت وجه ریسک خرید شما را به %0 کاهش میدهد.
اسکن یک رنج IP
همچنین ما می توانیم از Nmap برای اسکن کردن کل یک رنج IP استفاده کنیم . برای مثال :
nmap -p 8.8.8.0/28
دستور بالا 14 تا از IP های متوالی را از 8.8.8.1 تا 8.8.8.14 اسکن می کند .
این مثال می تواند جایگزین ساده از این رنج باشد :
nmap 8.8.8.1-14
همچنین ما می توانیم از کارکتر های اختصاصی برای اسکن کردن کل کلای C رنج IP استفاده کنیم .
برای مثال :
nmap 8.8.8.*
این دستور بالا 256 آیپی آدرس را از 8.8.8.1 تا 8.8.8.256 را اسکن می کند .
هرموقع ما نیاز داشته باشیم که در اسکن کردن یک یا چند IP را از یک رنج IP آدرس حذف کنیم، میتوانیم از گزینه ” –exclude ” استفاده کنیم. همانطور که در زیر میبینید :
nmap -p 8.8.8.* --exclude 8.8.8.1
اسکن کردن پورت های محبوب
با استفاده از پارامتر “—topports” ودر امتداد آن با آوردن یک عدد خاص ما می توانیم X (چند) پورت متداول هاست را اسکن کنیم . همانطور که در زیر میبینید :
nmap --top-ports 20 192.168.1.106
با جایگزین کردن “20” با عدد دلخواه . نتایج زیر به دست می آید :
اسکن هاست ها و IP آدرس ها از طریق خواندن یک فایل متنی
در این مورد Nmap می تواند مفید واقع شود تا یک فایل متنی که حاوی هاست ها و IP آدرس ها است را بخواند .
خب ما فرض میکنیم یک فایل متنی به نام list.txt که حاوی خط های زیر است را ایجاد کرده ایم :
192.168.1.106
cloudflare.com
microsoft.com
siraei.ir
پارامتر “iL list.txt” به ما امکان خواندن فایل و اسکن کردن این هاست ها را می دهد :
nmap -iL list.txt
ذخیره کردن نتایج اسکن Nmap در یک فایل
از سوی دیگر . در مثال زیر ما قادر به دیدن نتایج نیستیم . اما نتایج را درون یک فایل تکست ( text) اکسپورت یا ذخیره می کنیم :
nmap –oN output.txt yahoo.com
Nmap قادر است تا خروجی را به صورت XML به خوبی اکسپورت کند . به مثال زیر توجه کنید :
nmap –oX output.xml yahoo.com
غیر فعال کردن DNS Name Resolution (تفکیک پذیری DNS)
اگر ما نیاز داشته باشیم کمی سرعت اسکن کردن مان را بالا ببریم . میتوتنیم انتخاب کنیم که DNS Name Resolution را برای تمامی اسکن ها غیر فعال کنیم . فقط با اضافه کردن پارامتر “-n” .
تفاوت را با DNS Name Resolution عادی را زمانی که فعال است مشاهده کنید :
اسکن به همراه تشخیص سیستم عامل و سرویس با اجرا سریع
استفاده از پارامتر –A” قادر می سازد تا ما تشخیص سیستم عامل و سرویس را انجام بدهیم ( اجرا کنیم ) و همزمان با ترکیب آن با “-T4” برای اجرای سریعتر . به مثال زیر توجه کنید :
nmap –A –T4 cloudflare.com
برای این مثال ما خروجی زیر را میبینیم :
تشخیص نسخه های سرویس
این کار با استفاده از پارامتر های -sV قابل انجام است :
Nmap –sV localhost
همانطور که مشاهده می کنید :
اسکن کردن با استفاده از پروتوکل های TCP و UDP
یکی از حقایقی که بیشتر در مورد Nmap دوست داریم این است که این نرم افزار با هر دو پروتوکل های TCP و UDP کار می کند . ما همچنین می توانیم مزیت های خوبی توسط اسکن کردن سرویس های UDP بیس بگیریم . حالا با هم چند مثال از این موضوع را ببینیم :
اسکن کردن TCP
Nmap –sT 192.168.1.1
اسکن UDP با استفاده از پارامتر “-sU”
Nmap –sU localhost
تشخیص ( کشف/ردیابی) با استفاده از Nmap
یکی از بزرگترین ویژگی های Nmap که مدیران شبکه و سیستم ها کمتر در باره آن اطلاع دارند . چیزی است به نام ” موتور اسکریپت Nmap ” ((معروف به NSE )). این موتور اسکریپت به کاربران این امکان را می دهد که از مجموعه ای از اسکرسپت های از پیش تعیین شده استفاده کنند . یا خودشان با استفاده از زبان برنامه نویسی “Lua” آن را بنویسند .
استفاده از NSE به منظور خودکار سازی سیستم و اسکن آسیب پذیری بسیار مهم است . برای مثال . اگر می خواهیم تست آسیب پذیری کامل را در برابر هدف یا تارگت خودمان اجرا کنیم . می توانیم از این پارامتر ها استفاده کنیم :
nmap –Pn –script vuLn 192.168.1.105
مثال خروجی :
همانطور که مشاهده می کنیم . در این آزمایش (تست) آسیب پذیری ما توانستیم یک CVE را تشخیص بدهیم .
راه اندازی DOS توسط Nmap
به نظر میرسد ویژگی های Nmap تمام نشدنی است . و به لطف NSE حتی به ما امکان می دهد تا حملات DOS را علیه شبکه خودمان آزمایش کنیم.
در مثال قبلی ما متوجه شدیم که هاست یا میزبان ما در برابر حمله slowloris آسیب پذیر است . اکنون ما سعی خواهیم کرد تا با راه اندازی یک حمله DOS یا همان (DOS Attack) در یک حلقه یا لوپ برای همیشه از این آسیب پذیری سوء استفاده کنیم :
nmap 192.168.1.105 -max-parallelism 800 -Pn --script http-slowloris --script-args http-slowloris.runforever=true
راه اندازی حملات بروت فورس
NSE واقعا جذابه ! . این برنامه شامل اسکریپت هایی است برای همه چیز هایی که ما میتوانیم تصور کنیم .
سه مثال بعدی را درباره ی BFA یا همان Brute Force Attack در برابر WordPress و MSSQL و FTP Server ببینیم :
وردپرس :
nmap -sV --script http-wordpress-brute --script-args 'userdb=users.txt,passdb=passwds.txt,http-wordpress-brute.hostname=domain.com, http-wordpress-brute.threads=3,brute.firstonly=true' 192.168.1.105
حمله بروت فورس در برابر MS-SQL :
nmap -p 1433 --script ms-sql-brute --script-args userdb=customuser.txt,passdb=custompass.txt 192.168.1.105
حمله بروت فورس FTP :
nmap --script ftp-brute -p 21 192.168.1.105
شناسایی کردن بدافزار های مخرب بر روی هاست ها از راه دور
Nmap با اجرا کردن تست ها و آزماش های وسیع و گسترده بر روی تعداد اندکی از سیستم عامل های محبوب مانند بر روی Identd . Proftpd . Vsftpd . IRC . SMB و SMTP . قادر است تا بد افزار ها و بک دور هر را شناسایی کند . همچنین دارای یک ماژول برای بررسی علائم بدافزار های محبوب در سرویس های از راه دور و همچنین ادغام پایگاه داده های ایمن Google و VirusTotal است .
اسکن بدافزار های رایج با استفاده از دستور زیر امکان پذیر است :
nmap -sV --script=http-malware-host 192.168.1.105
یا با استفاده از “بدافزارچک” گوگل :
nmap -p80 --script http-google-malware infectedsite.com
مثال خروجی :
Nmap یکی از کامل ترین و دقیق ترین پورت اسکنر هایی است که امروزه توسط متخصصان infosec مورد استفاده قرار میگیرد .
با آن میتوانیم وظایف یک پورت اسکنر ساده را انجام بدهیم یا با استفاده از آن موتور اسکریپتی قدرتمندی برای راه اندازی حملات DOS انجام بدهیم، بد افزار شناسایی کنیم یا تست بروت فورس را روی سرور های دور یا لوکال انجام بدهیم .
نتیجه گیری:
در این مقاله دستورات مهم و کاربردی Nmap را برای شما تشریح کردیم. لطفا در صورتی که سوال یا مشکلی دارید با ارسال کامنت آن را بیان کنید.
لطفا جهت بهبهود کیفیت آموزش های ارسالی، نظرات خود را از طریق کامنت و درج ستاره ارسال کنید
اولین نفر باشید که نظر ارسال میکنید