خانه - راه اندازی روتر
اسکریپت های Nmap چگونه از Nmap برای اسکن شبکه خود استفاده کنید

در زیر 20 مورد اساسی را خواهید یافت نمونه هایی از استفاده از دستور Nmap.

شما یاد خواهید گرفت که چگونه از Nmap استفاده کنید خط فرماندر لینوکسبرای جستجوی میزبان های فعال در شبکه و اسکن پورت های باز.

خواهید دید که چگونه شناسایی از راه دور سیستم عاملاستفاده از اثر انگشت پشته TCP/IP و نحوه نسخه را پیدا کنید نرم افزار در حال اجرا بر روی یک سرور راه دور

من همچنین به شما نشان خواهم داد که چگونه این کار را با استفاده از Nmap انجام دهید اسکن مخفی، چگونه فایروال را تعریف کنیدو چطور آدرس مک را تغییر دهید.

1. یک هاست یا آدرس IP را اسکن کنید

اسکن کنید آدرس IP مجزا:

$nmap 192.168.1.1

اسکن سرور توسط نام میزبان:

$ nmap server.site

افزایش دادن سطح جزئیاتنتایج اسکن:

$ nmap -v سرور..سایت

2. اسکن چندین آدرس IP

اسکن کنید چندین آدرس IP:

$nmap 192.168.1.1 192.168.1.2 192.168.1.3 $namp 192.168.1.1،2،3

اسکن کنید زیر شبکه:

$ nmap 192.168.1.0/24 $ nmap 192.168.1.*

اسکن کنید محدوده آدرس IP (192.168.1.0 — 192.168.1.200):

$nmap 192.168.1.0-200

3. رایانه های فعال در شبکه را جستجو کنید

توصیه مفید:شبکه خود را تنها با یک دستور پینگ اسکن کنید! همه رایانه های فعال را پیدا کنید!

شبکه را برای جستجو اسکن کنید میزبان های فعال:

$ nmap -sn 192.168.1.0/24

4. لیست میزبان را از فایل اسکن کنید

اسکن لیستی از میزبان/شبکه ​​ها از فایل:

$ nmap -iL input.txt

فرمت فایل:

# ورودی‌ها می‌توانند در هر یک از قالب‌هایی باشند که Nmap با آن # از خط فرمان کار می‌کند (آدرس‌های IP، نام میزبان، CIDR، IPv6، یا محدوده # octet). ورودی ها باید با یک یا چند فاصله، تب # یا خط جدید از هم جدا شوند. $ cat input.txt server.site 192.168.1.0/24 192.168.2.1,2,3 192.168.3.0-200

5. مستثنی کردن IP/Host/شبکه ​​ها از اسکن

حذف اهدافاز اسکن Nmap:

$ nmap 192.168.1.0/24 --exclude 192.168.1.1 $ nmap 192.168.1.0/24 --exclude 192.168.1.1 192.168.1.5 nmap 192.168.1.5 $ nmap 192.168.121.2, 192.12.12, 192.121.2, 192.121.2, 192.121.2.

فهرست حذف شودهاست های برگرفته از فایل:

$ nmap 192.168.1.0/24 --excludefile exclude.txt

فرمت فایل با میزبان های حذف شده مشابه فرمت بالا است.

6. پورت های خاص را اسکن کنید

اسکن کنید یک بندر:

$ nmap -p 80 192.168.1.1

اسکن کنید پورت های متعدد:

$ nmap -p 80.443 192.168.1.1

اسکن کنید محدوده بندر:

$ nmap -p 80-1000 192.168.1.1

اسکن کنید همه پورت ها:

$ nmap -p "*" 192.168.1.1

چندین مورد از بیشتر را اسکن کنید پورت های مشترک:

$ nmap --top-ports 5 192.168.1.1 $ nmap --top-ports 10 192.168.1.1

7. تعیین پروتکل های IP پشتیبانی شده

تعیین کنید کدام پروتکل های IP(TCP، UDP، ICMP، و غیره) از میزبان اسکن شده پشتیبانی می کند:

$ nmap -sO 192.168.1.1

8. اسکن پورت TCP/UDP

اسکن کنید تمام پورت های TCP:

$ nmap -sT 192.168.1.1

اسکن کنید پورت های TCP خاص:

$ nmap -p T:80 192.168.1.1

اسکن کنید تمام پورت های UDP:

$ nmap -sU 192.168.1.1

اسکن کنید پورت های خاص UDP:

$ nmap -p U:53 192.168.1.1

ترکیب اسکن پورت های مختلف:

$ nmap -p U:53,79,113,T:21-25,80,443,8080 192.168.1.1

9. اسکن سریع

فعال کنید حالت سریعاسکن:

$ nmap -F 192.168.1.1

* پورت های کمتری را نسبت به اسکن معمولی اسکن می کند.

10. نمایش علت وضعیت بندر

نمایش دهید دلیل، که Nmap معتقد است که پورت در وضعیت خاصی است:

$ nmap --reason 192.168.1.1

11. نمایش فقط درگاه های باز

نمایش دهید فقط پورت ها را باز کنید(یا احتمالاً باز):

$ nmap -- باز 192.168.1.1

12. تعریف سیستم عامل

یکی از مشهورترین عملکرد Nmap یک تشخیص سیستم عامل از راه دور بر اساس تجزیه و تحلیل پشته TCP/IP است.

Nmap یک سری بسته های TCP و UDP را به آن ارسال می کند میزبان راه دورو پاسخ ها را مطالعه می کند.

Nmap پس از اجرای آزمایشات فراوان، نتایج را با پایگاه داده خود مقایسه می کند و در صورت یافتن مطابقت، اطلاعات مربوط به سیستم عامل را نمایش می دهد.

روشن کن تعریف سیستم عامل:

$ nmap -O 192.168.1.1

13. تعیین نسخه خدمات

روشن کن تعیین نسخه خدمات:

$ nmap -sV 192.168.1.1

* نسخه های برنامه های در حال اجرا بر روی سرور راه دور را تعیین می کند.

14. تشخیص فایروال

دریابید که آیا رایانه شما توسط هر یک محافظت می شود فیلترهای دسته اییا دیواره آتش:

$ nmap -sA 192.168.1.1

15. جایگزینی آدرس MAC

جایگزین آدرس مکآ:

$ nmap --spoof-mac 00:11:22:33:44:55 192.168.1.1

آدرس MAC را تغییر دهید MAC تصادفی:

$ nmap --spoof-mac 0 192.168.1.1

16. فایروال را برای آسیب پذیری ها اسکن کنید

این سه نوع اسکن از یک حفره ظریف در TCP RFC برای تمایز بین پورت های باز و بسته استفاده می کنند.

هنگام اسکن یک سیستم سازگار با RFC، هر بسته ای که مجموعه بیت SYN، RST یا ACK را ندارد، در صورت بسته بودن پورت، پاسخ RST یا در صورت باز بودن پورت، پاسخی به آن نمی دهد.

زیرا هیچ یک از این بیت ها تنظیم نشده است، سپس هر ترکیبی از سه مورد باقی مانده (FIN، PSH و URG) صحیح خواهد بود.

TCP Nullاسکن:

$ nmap -sN 192.168.1.1

* هیچ بیتی تنظیم نشده است (پرچم‌ها در هدر TCP 0).

TCP Finاسکن:

$ nmap -sF 192.168.1.1

* فقط بیت TCP FIN تنظیم شده است.

TCP کریسمساسکن:

$ nmap -sX 192.168.1.1

* پرچم‌های FIN، PSH و URG تنظیم شده‌اند (بسته مانند درخت کریسمس روشن می‌شود).

17. اسکن مخفی

توصیه مفید:هنگام اسکن پورت ها ناشناس بمانید! از Nmap + Tor + ProxyChains استفاده کنید! تست نفوذ ایمن و آسان!

TCP SYNاسکن:

$ nmap -sS 192.168.0.1

* به اسکن نیمه باز معروف است زیرا اتصالات TCP کامل را باز نمی کند.

18. غیرفعال کردن کشف میزبان (بدون پینگ)

قبل از اسکن کردن هاست پینگ نکنید:

$ nmap -Pn 192.168.1.1

19. غیرفعال کردن استفاده از DNS

توصیه مفید:آیا باید امنیت لینوکس خود را تقویت کنید؟ رمزگذاری کنید ترافیک DNSبرای محافظت در برابر جعل!

هرگز وضوح نام DNS را برای هر آدرس IP فعال کشف شده معکوس نکنید.

چهار نوع اسکریپت NSE وجود دارد که عبارتند از:

  • اسکریپت های پیش قاعده- اسکریپت هایی هستند که قبل از هر یک از عملیات اسکن Nmap اجرا می شوند، زمانی اجرا می شوند که Nmap هنوز اطلاعاتی در مورد یک هدف جمع آوری نکرده باشد.
  • اسکریپت های میزبان- اسکریپت هایی هستند که پس از اجرای Nmap عملیات عادی مانند کشف میزبان، اسکن پورت، تشخیص نسخه و تشخیص سیستم عامل در برابر میزبان هدف اجرا می شوند.
  • اسکریپت های سرویس- اسکریپت هایی هستند که در برابر سرویس های خاصی که روی میزبان هدف گوش می دهند اجرا می شوند.
  • اسکریپت های پستال– اسکریپت ها پس از اینکه Nmap تمام میزبان های هدف خود را اسکن کرد اجرا می شوند.

سپس این اسکریپت‌ها در دسته‌های مختلف از جمله آنهایی که برای احراز هویت گروه‌بندی می‌شوند ( اعتبار) کشف میزبان ها ( پخش)، حملات brute force برای حدس زدن اعتبار احراز هویت ( بی رحم، کشف بیشتر در مورد یک شبکه ( کشف، باعث انکار سرویس ( dos، سوء استفاده از برخی آسیب پذیری ها ( بهره برداری)، و غیره. تعدادی از اسکریپت ها به دسته پیش فرض تعلق دارند.

توجه داشته باشید: قبل از اینکه به ادامه مطلب برویم، باید به این نکات کلیدی توجه داشته باشید:

  • اسکریپت های اشخاص ثالث را بدون بررسی انتقادی از آنها یا فقط در صورتی که به نویسندگان اعتماد دارید اجرا نکنید. دلیلش این است که این اسکریپت ها نیستنددر sandbox اجرا شود و بنابراین می تواند به طور غیر منتظره یا مخرب به سیستم شما آسیب برساند یا به حریم خصوصی شما حمله کند.
  • ثانیا، بسیاری از این اسکریپت ها ممکن است به صورت a اجرا شوند پیش قاعدهیا پس از قانوناسکریپت با توجه به این موضوع، توصیه می‌شود از یک پیش‌قاعده به منظور سازگاری استفاده کنید.
  • Nmap از scripts/script.dbپایگاه داده برای کشف اسکریپت ها و دسته بندی های پیش فرض موجود.

برای دیدن مکان همه اسکریپت های NSE موجود، روی ترمینال مانند زیر اجرا کنید:

$ پیدا کنید *.nse/usr/share/nmap/scripts/acarsd-info.nse /usr/share/nmap/scripts/address-info.nse /usr/share/nmap/scripts/afp-brute.nse /usr/share/nmap/scripts /afp-ls.nse /usr/share/nmap/scripts/afp-path-vuln.nse /usr/share/nmap/scripts/afp-serverinfo.nse /usr/share/nmap/scripts/afp-showmount.nse /usr/share/nmap/scripts/ajp-auth.nse /usr/share/nmap/scripts/ajp-brute.nse /usr/share/nmap/scripts/ajp-headers.nse /usr/share/nmap/scripts /ajp-methods.nse /usr/share/nmap/scripts/ajp-request.nse /usr/share/nmap/scripts/allseeingeye-info.nse /usr/share/nmap/scripts/amqp-info.nse /usr /share/nmap/scripts/asn-query.nse ...

اسکریپت های NSE با استفاده از پرچم --script بارگذاری می شوند که به شما امکان اجرا را نیز می دهد مال خودتاسکریپت ها با ارائه دسته ها، نام فایل های اسکریپت، یا نام دایرکتوری هایی که اسکریپت های شما در آن قرار دارند.

سینتکس برای فعال کردن اسکریپت ها به شرح زیر است:

$ namp -sC target #بارگیری اسکریپت‌های پیش‌فرض یا $ nmap --نام فایل اسکریپت|دسته|دایرکتوری|عبارت،... هدف

با گزینه --script-help می توانید توضیحات یک اسکریپت را مشاهده کنید. علاوه بر این، می‌توانید از طریق گزینه‌های --script-args و --script-args-file، آرگومان‌هایی را به برخی از اسکریپت‌ها ارسال کنید، این گزینه برای ارائه یک نام فایل به جای خط فرمان arg استفاده می‌شود.

برای انجام اسکن با اکثر اسکریپت‌های پیش‌فرض، از پرچم -sC استفاده کنید یا مانند شکل از --script=default استفاده کنید.

$ nmap -sC scanme.nmap.org یا $ nmap --script=default scanme.nmap.org یا $ nmap --script default scanme.nmap.org

خروجی نمونه
شروع Nmap 7.01 (https://nmap.org) در 2017-11-15 10:36 IST گزارش اسکن Nmap برای scanme.nmap.org (45.33.32.156) میزبان به پایان است (تأخیر 0.0027 ثانیه). نشان داده نشده است: 999 پورت فیلتر شده PORT STATE SERVICE 80/tcp open http |_http-title: ادامه دهید و ScanMe! Nmap انجام شد: 1 آدرس IP (1 میزبان بالا) در 11.74 ثانیه اسکن شد

برای استفاده از یک اسکریپت برای هدف مناسب، ابتدا می توانید توضیح مختصری از آنچه که در واقع انجام می دهد، به عنوان مثال دریافت کنید. http-headers.

$ nmap --script-help http-headers scanme.nmap.org

خروجی نمونه
شروع Nmap 7.01 (https://nmap.org) در 2017-11-15 10:37 IST http-headers دسته‌ها: امن کشف https://nmap.org/nsedoc/scripts/http-headers.html درخواست HEAD را انجام می‌دهد برای پوشه ریشه ("/") یک وب سرور و هدرهای HTTP بازگشتی را نمایش می دهد.

بارگیری اسکریپت های NSE برای انجام اسکن Nmap

شما می توانید اسکریپت ها را برای انجام اسکن به روش های مختلفی که در زیر توضیح داده شده است انتخاب یا بارگیری کنید.

با استفاده از نام اسکریپت

هنگامی که بدانید یک اسکریپت چه کاری انجام می دهد، می توانید با استفاده از آن یک اسکن انجام دهید. می توانید از یک اسکریپت استفاده کنید یا فهرستی از نام اسکریپت ها را وارد کنید که با کاما جدا شده اند. دستور زیر شما را قادر می سازد تا سرصفحه های HTTP پیکربندی شده در وب سرور در میزبان مورد نظر را مشاهده کنید.

$ nmap --script http-headers scanme.nmap.org

هدرهای HTTP را اسکن کنید

شروع Nmap 7.01 (https://nmap.org) در 2017-11-15 10:39 IST گزارش اسکن Nmap برای scanme.nmap.org (45.33.32.156) میزبان فعال است (تأخیر 0.27 ثانیه). نشان داده نشده: 996 پورت بسته PORT STATE SERVICE 22/tcp open ssh 80/tcp open http | http-headers: | تاریخ: چهارشنبه, 15 نوامبر 2017 05:10:04 GMT | سرور: Apache/2.4.7 (Ubuntu) | محدوده پذیرش: بایت | متغیر: Accept-Encoding | اتصال: بستن | نوع محتوا: text/html | |_ (نوع درخواست: HEAD) 179/tcp فیلتر شده bgp 31337/tcp باز Elite Nmap انجام شد: 1 آدرس IP (1 میزبان به بالا) در 20.96 ثانیه اسکن شد

استفاده از دسته بندی ها

همچنین می‌توانید اسکریپت‌ها را از یک دسته یا از فهرست دسته‌های جدا شده با کاما بارگیری کنید. در این مثال، ما از تمام اسکریپت‌های دسته پیش‌فرض و پخش برای انجام اسکن روی هاست استفاده می‌کنیم 192.168.56.1 .

$ nmap --script پیش فرض،پخش 192.168.56.1

با استفاده از * Wildcard

این زمانی مفید است که می‌خواهید اسکریپت‌هایی را با یک الگوی نام مشخص انتخاب کنید. به عنوان مثال برای بارگیری همه اسکریپت ها با نام هایی که با شروع می شوند ssh، دستور زیر را در ترمینال اجرا کنید:

$ nmap --اسکریپت "ssh-*" 192.168.56.1

استفاده از عبارات بولی

شما همچنین می توانید اسکریپت هایی را با استفاده از عبارات بولی انتخاب کنید که می توانید با استفاده از آنها بسازید و, یا، و نهاپراتورها و نام‌ها در یک عبارت بولی ممکن است یک دسته باشند، یک نام فایل از script.db، یا همه

دستور زیر اسکریپت ها را از دسته های پیش فرض یا پخش بارگذاری می کند.

$ nmap --script "پیش فرض یا پخش" 192.168.56.10

که معادل است با:

$ nmap --script پیش فرض،پخش 192.168.56.10

برای بارگیری همه اسکریپت ها با حذف موارد موجود در vulnدسته، این دستور را در ترمینال اجرا کنید.

$ nmap --اسکریپت "not vuln" 192.168.56.10

دستور بعدی کمی پیچیده به نظر می‌رسد اما درک آن آسان است، اسکریپت‌ها را در دسته‌های پیش‌فرض یا پخش انتخاب می‌کند و آن‌هایی را که نامشان با ssh- شروع می‌شود کنار گذاشته می‌شود:

$ nmap --script "(پیش فرض یا پخش) و نه ssh-*" 192.168.56.10

نکته مهم، ترکیب دسته ها، نام اسکریپت ها، دایرکتوری حاوی اسکریپت های سفارشی شما یا یک عبارت بولی برای بارگیری اسکریپت ها، مانند این امکان پذیر است:

$ nmap -- اسکریپت پخش، vuln، ssh-auth-methods،/path/to/custom/scripts 192.168.56.10

انتقال آرگومان ها به اسکریپت های NSE

در زیر یک مثال نشان می دهد که چگونه آرگومان ها را به اسکریپت ها منتقل کنید --script-argsگزینه:

$ nmap --script mysql-audit --script-args "mysql-audit.username="root"، \ mysql-audit.password="password_here"، mysql-audit.filename="nselib/data/mysql-cis. حسابرسی""

برای ارسال شماره پورت، از گزینه nmap:

$ nmap -p 3306 --script mysql-audit --script-args "mysql-audit.username="root", \ mysql-audit.password="password_here", mysql-audit.filename="nselib/data/mysql" -cis.audit""

این دستور بالا یک ممیزی از پیکربندی امنیتی سرور پایگاه داده MySQL در برابر بخش هایی از سرور اجرا می کند CIS MySQL نسخه 1.0.2معیار. همچنین می توانید فایل های ممیزی سفارشی مفید خود را برای سایر ممیزی های MySQL ایجاد کنید.

فعلا همین. می توانید اطلاعات بیشتری را در صفحه مرد nmap بیابید یا استفاده از NSE را بررسی کنید.

برای شروع نوشتن اسکریپت های NSE خود، این راهنما را بررسی کنید: https://nmap.org/book/nse-tutorial.html

نتیجه

Nmapیک ابزار واقعا قدرتمند و مفید است که هر مدیر سیستم یا شبکه در زرادخانه امنیتی خود به آن نیاز دارد - NSEبه سادگی کارایی بیشتری به آن اضافه می کند.

در این مقاله شما را با موتور اسکریپت Nmap، و نحوه یافتن و استفاده از اسکریپت های مختلف موجود در دسته های مختلف را بررسی کرد. اگر سوالی دارید، دریغ نکنید از طریق فرم نظر زیر برای ما بنویسید.

Nmap یک اسکنر فرقه ای است که تقریباً هیچ هکری نمی تواند بدون آن کار کند، بنابراین فکر می کنم موضوع گسترش قابلیت های آن مورد علاقه بسیاری است. استفاده از ابزارهای دیگر همراه با Nmap معمول است. این مقاله در مورد چگونگی خودکارسازی آسان Nmap با ابزارهای مورد علاقه خود صحبت خواهد کرد. "فشردن یک دکمه" و به دست آوردن نتیجه راحت تر از انجام مداوم یک دنباله از اقدامات است. استفاده از اسکریپت‌ها در Nmap می‌تواند به هکرها کمک کند تا سیستم‌ها را به‌طور خودکار هک کنند، و مدیران سیستم سیستم‌ها را برای حفره‌های پیش‌فرض بررسی کرده و به موقع آن‌ها را برطرف کنند.

چند کلمه در مورد Nmap

من مطمئن هستم که اکثر خوانندگان مجله هکر می دانند Nmap چیست و احتمالاً بیش از یک بار از آن برای کاوش در شبکه و جمع آوری اطلاعات استفاده کرده اند. برای کسانی که فراموش کرده اند یا نمی دانند، در هر صورت به شما یادآوری می کنم:

  • Nmap یک ابزار بین پلتفرمی برای اسکن شبکه، بررسی امنیت آن، تعیین نسخه‌های سیستم‌عامل و سرویس‌های مختلف و موارد دیگر است. این یک ابزار بسیار منعطف و به راحتی قابل توسعه است و توسط موتور برنامه نویسی NSE ساخته شده است.
  • NSE (موتور اسکریپت Nmap) یک مؤلفه قدرتمند Nmap است که به کاربران امکان می دهد اسکریپت هایی را برای خودکارسازی طیف گسترده ای از وظایف شبکه بنویسند: تعامل انعطاف پذیرتر با قابلیت های Nmap موجود، شناسایی و بهره برداری از آسیب پذیری ها و موارد دیگر. NSE بر اساس یک مترجم زبان Lua است.
  • لوا- زبان برنامه نویسی، مشابه جاوا اسکریپت.

فرمول بندی مسئله

همانطور که قبلا ذکر شد، امروز ما با نوشتن اسکریپت های خود، عملکرد Nmap را گسترش خواهیم داد. هر هک/پن تست معمولاً با شناسایی و جمع آوری داده ها آغاز می شود. یکی از اولین مواردی که باید بررسی شود وجود پورت های باز روی هاست تحت مطالعه و شناسایی سرویس های در حال اجرا است. بهترین ابزاراحتمالاً هیچ راهی بهتر از Nmap برای جمع آوری چنین اطلاعاتی وجود ندارد. گام بعدی پس از اسکن معمولاً یا جستجوی یک اکسپلویت برای سرویس آسیب پذیر یافت شده، یا انتخاب یک جفت ورود: رمز عبور با استفاده از روش brute force است.

فرض کنید به طور فعال از THC-Hydra brute force برای حدس زدن رمزهای عبور برای چندین سرویس (به عنوان مثال HTTP-Basic، SSH، MySQL) استفاده می کنید. در این حالت، باید hydra را روی هر سرویس جداگانه تنظیم کنید؛ باید ویژگی های سرویس ها و پرچم های لازم برای راه اندازی hydra را به خاطر بسپارید. و اگر نیاز به brute بسیار بیشتر از پنج سرویس وجود دارد؟ چرا آن را خودکار نمی کنید؟

بنابراین بیایید یک اسکریپت ساده بنویسیم که فرآیند راه‌اندازی Hydra را برای انتخاب لاگین/گذرواژه برای یک سرویس (مثلا PostgreSQL) خودکار کند. برای این کار به ابزارهای زیر نیاز داریم:

اگر Nmap و/یا Hydra را نصب نکرده‌اید، فوراً این مشکل را برطرف کنید:

$ sudo apt-get install nmap hydra

خوب، بیایید شروع کنیم. اسکریپت های Nmap فایل های متنی معمولی با پسوند *.nse هستند. بنابراین ویرایشگر متن مورد علاقه خود را باز کنید و یک فایل جدید ایجاد کنید. من از Vim استفاده خواهم کرد:

$ vim hydra.nse

ساختار اسکریپت NSE

قبل از شروع نوشتن باید گفت که همه فیلمنامه ها ساختار خاصی دارند. علاوه بر خود کد، که اقدامات خاصی را خودکار می کند، حاوی توضیحاتی در مورد اسکریپت (برای چه چیزی و نحوه استفاده از آن است)، اطلاعاتی در مورد نویسنده، مجوزها، وابستگی به اسکریپت های دیگر، دسته هایی که اسکریپت به آن تعلق دارد، می باشد. ، و غیره. بیایید نگاهی دقیق تر به هر یک از این قسمت ها بیندازیم.

شرح فیلمنامه

این بخش شامل توضیحاتی در مورد اسکریپت، نظرات نویسنده، نمونه ای از نمایش نتیجه اسکریپت بر روی صفحه و ویژگی های اضافی است.

برای اسکریپت ما که لاگین/رمز عبور برای PostgeSQL را انتخاب می کند، توضیحات به این صورت خواهد بود:

توضیحات = [[ بی‌رحمانه تمام سرویس‌هایی که روی میزبان هدف اجرا می‌شوند. نتایج در جدولی با هر مسیر، روش شناسایی شده، ورود به سیستم و/یا رمز عبور بازگردانده می شوند. ]] --- -- @usage -- nmap --script hydra [--script-args "lpath= ، ppath= "] -- -- @output -- PORT STATE SERVICE -- 80/tcp open http -- | هیدرا: -- | روش مسیر ورود رمز عبور -- | 127.0.0.1/private/index.html مجوز ورود خلاصه -- |_ 127.0.0.1/simple/index.txt کاربر پایه qwerty -- -- @args hydra.lpath: مسیر فایل با ورود به سیستم. به عنوان مثال، -- nmap --script hydra --script-args="lpath=/home/my_logins.txt" -- @args hydra.ppath: مسیر فایل با رمزهای عبور. به عنوان مثال، -- nmap --script hydra --script-args="ppath=/home/my_pass.txt"

یک نظر؛ -- - نظر چند خطی. @usage، @output، @args - نمونه ای از فراخوانی یک اسکریپت، نمایش نتیجه روی صفحه، آرگومان های لازم هنگام فراخوانی.

در بالا در @usage فرمت راه‌اندازی اسکریپت را می‌بینیم. در این حالت فقط نام اسکریپت (hydra) مشخص می شود. اگر اسکریپت در دایرکتوری / قرار گیرد این امکان پذیر می شود /nmap/scripts/، در غیر این صورت باید یک مسیر مطلق یا نسبی برای آن مشخص کنید. در آینده امکان مشخص کردن آرگومان ها را هنگام اجرای اسکریپت فراهم خواهیم کرد. آرگومان ها با استفاده از پرچم --script-args مشخص می شوند در مورد ما، ما مسیر فایل را با logins (lpath) و به فایل با رمز عبور (ppath) مشخص می کنیم. آرگومان ها اختیاری هستند: به طور پیش فرض ما به دنبال فایل هایی با نام های login.txt و رمز عبور خواهیم بود. txt در فهرست فعلی.

دسته هایی که اسکریپت در آنها قرار دارد (دسته ها)

هنگام نوشتن یک اسکریپت NSE، می توانید دسته بندی آن (یا چندین دسته) را مشخص کنید. این زمانی مفید است که کاربر Nmap نمی خواهد از یک اسکریپت خاص استفاده کند، بلکه می خواهد از مجموعه ای از اسکریپت ها در همان دسته استفاده کند. نمونه هایی از برخی دسته بندی ها:

  • auth - دسته ای که در آن اسکریپت ها داده های احراز هویت میزبان هدف را تعریف می کنند.
  • brute - دسته ای که اسکریپت های آن به تعیین لاگین و رمز عبور برای سرویس های مختلف کمک می کند.
  • پیش فرض - دسته ای که شامل اسکریپت های اساسی است. معیارهایی وجود دارد که تعیین می کند آیا یک اسکریپت به این دسته تعلق دارد: سرعت اسکن، سودمندی، قابلیت اطمینان، محرمانه بودن، خروجی بصری.
  • بدافزار - دسته ای که به شناسایی برنامه های مخرب کمک می کند.

به عنوان مثال، اگر شما نیاز به اجرای تمام اسکریپت ها از دسته auth دارید، دستور به شکل زیر خواهد بود:

$ nmap --script=auth example.com

در این صورت اسکریپت های این دسته یک به یک برای هاست مشخص شده راه اندازی می شوند. فیلمنامه ما متعلق به رده brute است. بیایید خط زیر را به فایل اضافه کنیم:

دسته ها = ("بی رحم")

اطلاعات نویسنده

هر فیلمنامه حاوی اطلاعاتی درباره نویسنده خود است. در مورد من:

نویسنده = "اولگا بارینووا"

اطلاعات مربوط به مجوز مورد استفاده

Nmap از همه پیشرفت‌های کاربر استقبال می‌کند و اشتراک‌گذاری، از جمله اسکریپت‌های NSE را تشویق می‌کند. با تعیین مجوز، حق اشتراک اسکریپت با انجمن را تأیید می کنید. مجوز استاندارد Nmap به شکل زیر است:

مجوز = "همانند Nmap--به http://nmap.org/book/man-legal.html مراجعه کنید"

بیایید این خط را نیز به اسکریپت خود اضافه کنیم.

وابستگی به اسکریپت های دیگر

این قسمت شامل نام اسکریپت های NSE است که باید قبل از شروع این اسکریپت اجرا شوند تا اطلاعات لازم به دست آید. مثلا،

وابستگی ها = ("smb-brute").

در مورد ما، این ویژگی مورد نیاز نخواهد بود، بنابراین ما وابستگی اضافه نمی کنیم.

میزبان و پورت

Nmap باید بداند که اسکریپت را برای کدام سرویس ها و روی کدام پورت ها اجرا کند. قوانین خاصی برای این کار وجود دارد:

  • prerule() - اسکریپت قبل از اسکن هر میزبانی که برای برخی از عملیات شبکه استفاده می شود یک بار اجرا می شود.
  • hostrule(host) - اسکریپت برای هر میزبان از جدولی که به عنوان آرگومان می گیرد اجرا می شود.
  • portrule (میزبان، پورت) - اسکریپت برای هر میزبان و برای هر پورت از جداولی که به عنوان آرگومان می گیرد، اجرا می شود.
  • postrule() - اسکریپت یک بار پس از اسکن هر میزبان اجرا می شود. عمدتاً برای پردازش نتایج به‌دست‌آمده، جمع‌بندی آمار و موارد مشابه استفاده می‌شود.

کتابخانه هایی برای ایجاد چنین قوانینی وجود دارد. در اسکریپت ما فقط باید شماره پورت (5432) و نام سرویس (postgresql) را مشخص کنید و سپس فقط برای این پورت و سرویس کار می کند. یک کتابخانه کوتاه نسبتاً محبوب در NSE وجود دارد که شامل آن می شود روش های مختلف. از روش استفاده خواهیم کرد

Port_or_service (درگاه‌ها، سرویس‌ها، پروتوها، وضعیت‌ها)

که در آن پورت ها شماره پورت ها هستند، سرویس ها نام سرویس ها، پروت ها نام پروتکل ها هستند (مثلا udp)، حالت ها حالت ها هستند.

اگر سرویسی در حال تجزیه و تحلیل باشد که در یکی از پورت های لیست پورت ها یا مربوط به برخی از سرویس ها از لیست سرویس ها باشد، این روش true را برمی گرداند، علاوه بر این، پروتکل و وضعیت برای انطباق بررسی می شوند، در غیر این صورت false برگردانده می شود.
برای اینکه اسکریپت ما با PostgreSQL کار کند، باید شماره پورت و نام سرویس را اضافه کنیم:

Portrule = shortport.port_or_service((5432)، ("postgresql"))

اتصال کتابخانه ها

بیایید برای یک ثانیه از ساختار اسکریپت دور شویم و نحوه اتصال کتابخانه های خارجی را در نظر بگیریم که باید به عملکرد آنها دسترسی داشته باشیم.

ادامه فقط برای اعضا در دسترس است

گزینه 1. برای خواندن تمام مطالب موجود در سایت به انجمن "سایت" بپیوندید

عضویت در انجمن در مدت زمان مشخص شده به شما امکان دسترسی به تمام مطالب هکرها را می دهد، تخفیف تجمعی شخصی شما را افزایش می دهد و به شما امکان می دهد امتیاز حرفه ای Xakep را جمع آوری کنید!

nmap[ <Тип сканирования> ...] [ <Опции> ] { <цель сканирования> }

شرح

Nmap(" نقشه‌بردار شبکه") یک ابزار منبع باز است کد منبعبرای اکتشاف شبکه و تست امنیت این برای اسکن سریع شبکه های بزرگ طراحی شده است، اگرچه با اهداف منفرد نیز به خوبی کار می کند. Nmap از بسته‌های IP خام به روشی هوشمندانه استفاده می‌کند تا مشخص کند چه میزبان‌هایی در شبکه در دسترس هستند، چه خدماتی (نام برنامه و نسخه) ارائه می‌دهند، از چه سیستم‌عامل‌هایی (و نسخه‌های سیستم‌عامل) استفاده می‌کنند، از چه نوع فیلترها/فایروال‌های بسته استفاده می‌کنند. و خیلی بیشتر ویژگی های دیگر. در حالی که Nmap معمولا برای تست امنیتی استفاده می شود، بسیاری از آنها مدیران سیستمآن را برای کارهای رایجی مانند نظارت بر ساختار شبکه، مدیریت برنامه‌های راه‌اندازی سرویس، و پیگیری زمان به‌روزرسانی میزبان یا سرویس مفید می‌دانند.

خروجی Nmap لیستی از اهداف اسکن شده است اطلاعات اضافیبرای هر یک از آنها بسته به گزینه های مشخص شده است. اطلاعات کلیدی این است « جدول پورت های مهم» . این جدول شامل شماره پورت، پروتکل، نام سرویس و وضعیت است. وضعیت می تواند باز، فیلتر، بسته یا فیلتر نشده باشد. Open به این معنی است که برنامه کاربردی در ماشین هدف آماده برقراری اتصال/دریافت بسته ها در آن پورت است. فیلتر شده به این معنی است که یک فایروال، فیلتر شبکه، یا برخی دیگر از درهم ریختگی های شبکه، پورت را مسدود می کند و Nmap نمی تواند باز یا بسته بودن پورت را تعیین کند. پورت های بسته با هیچ برنامه ای مرتبط نیستند، اما می توانند در هر زمانی باز شوند. پورت ها وقتی به درخواست های Nmap پاسخ می دهند فیلتر نشده در نظر گرفته می شوند، اما Nmap نمی تواند باز یا بسته بودن آنها را تعیین کند. Nmap زمانی که نمی تواند تعیین کند کدام یک از این دو حالت یک پورت را توصیف می کند، باز|فیلتر و بسته|فیلتر می شود. این جدول همچنین در صورت درخواست می تواند جزئیاتی در مورد نسخه نرم افزار ارائه دهد. هنگام انجام اسکن پروتکل IP (-sO)، Nmap به جای پورت های باز، اطلاعات مربوط به پروتکل های پشتیبانی شده را ارائه می دهد.

علاوه بر جدول پورت های مهم، Nmap می تواند اطلاعات بیشتری در مورد اهداف ارائه دهد: نام های DNS حل شده، حدس زدن در مورد پورت مورد استفاده سیستم عامل، انواع دستگاه و آدرس های MAC.

یک اسکن معمولی با استفاده از Nmap در مثال 1 نشان داده شده است. تنها آرگومان های مورد استفاده در این مثال عبارتند از -A، برای تشخیص نسخه سیستم عامل، اسکن اسکریپت، و ردیابی. -T4 برای اجرای سریعتر؛ سپس دو میزبان هدف.

مثال 1: نمونه اسکن معمولی با Nmap

# nmap -A -T4 scanme..org) پورت های جالب در scanme.site (64.13.134.52): (1663 پورت اسکن شده اما در زیر نشان داده نشده اند در حالت: فیلتر شده هستند) PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 3.91 (پروتکل 1.99) 53/tcp دامنه باز 70/tcp بسته گوفر 80/tcp باز httpd Apache httpd 2.0.52 ((Fedora)) 113/tcp بسته اعتبار نوع دستگاه: هدف عمومی در حال اجرا: Linux 2.4.X|2.5.X| جزئیات سیستم عامل 2.6.X: Linux 2.4.7 - 2.6.11، Linux 2.6.0 - 2.6.11 پورت های جالب در زمین بازی..168.0.40): (1659 پورت اسکن شده اما نشان داده نشده در زیر در حالت بسته هستند) PORT STATE SERVICE VERSION 135/tcp open msrpc ویندوز مایکروسافت RPC 139/tcp open netbios-ssn 389/tcp open ldap؟ 445/tcp open microsoft-ds Microsoft Windows XP microsoft-ds 1002/tcp open windows-icfw? 1025/tcp open msrpc Microsoft Windows RPC 1720/tcp open H.323/Q.931 CompTek AquaGateKeeper 5800/tcp open vnc-http RealVNC 4.0 (رزولوشن 400x250؛ پورت VNC: 5900pc باز vnc VNC(پروتکل 3.8) آدرس MAC: 00:A0:CC:63:85:4B (ارتباطات Lite-on) نوع دستگاه: هدف کلی در حال اجرا: Microsoft Windows NT/2K/XP جزئیات سیستم عامل: Microsoft Windows XP Pro RC1+ تا پایان نسخه نهایی سرویس اطلاعات: سیستم عامل: Windows، Windows XP Nmap به پایان رسید: 2 آدرس IP (2 میزبان بالا) اسکن شده در 88.392 ثانیه


آخرین نسخه Nmap را می توان از اینجا دانلود کرد

  • کشف خدمات و نسخه های آنها
  • تعریف سیستم عامل
  • گزینه های مدیریت زمان و بهره وری
  • گزینه های مختلف
  • تعامل در زمان اجرا
  • مثال ها
  • اطلاعات در مورد اسکریپت های Nmap (به زبان انگلیسی):

    از مهمانان پنهان شده است


    آخرین نسخه اسناد Nmap (به زبان انگلیسی):

    از مهمانان پنهان شده است


    کتاب رسمی Nmap از سازندگان Nmap (به زبان انگلیسی):

    از مهمانان پنهان شده است

    مقدمه

    nmap - ابزار اکتشاف شبکه و اسکنر پورت

    Nmap ("Network Mapper") یک ابزار اکتشاف و تست امنیت شبکه منبع باز است. این برای اسکن سریع شبکه های بزرگ طراحی شده است، اگرچه با اهداف منفرد نیز به خوبی کار می کند. Nmap از بسته‌های IP خام به روش‌های هوشمندانه‌ای استفاده می‌کند تا تعیین کند چه میزبان‌هایی در شبکه در دسترس هستند، چه خدماتی (نام و نسخه برنامه) ارائه می‌دهند، از چه سیستم‌عامل‌هایی (و نسخه‌های سیستم‌عامل) استفاده می‌کنند، از چه نوع فیلترها/فایروال‌های بسته استفاده می‌کنند. و ده ها ویژگی دیگر. . در حالی که Nmap معمولاً برای آزمایش امنیت استفاده می‌شود، بسیاری از مدیران شبکه و سیستم آن را برای کارهای معمولی مانند نظارت بر ساختار شبکه، مدیریت برنامه‌های راه‌اندازی سرویس، و پیگیری زمان به‌روزرسانی میزبان یا سرویس مفید می‌دانند.

    خروجی Nmap لیستی از اهداف اسکن شده با اطلاعات اضافی برای هر یک بسته به گزینه های مشخص شده است. اطلاعات کلیدی "جدول پورت های مهم" است. این جدول شامل شماره پورت، پروتکل، نام سرویس و وضعیت است. وضعیت می تواند باز، فیلتر، بسته یا فیلتر نشده باشد. Open به این معنی است که برنامه کاربردی در ماشین هدف آماده برقراری اتصال/دریافت بسته ها در آن پورت است. فیلتر شده به این معنی است که یک فایروال، فیلتر شبکه یا برخی تداخل های شبکه دیگر پورت را مسدود می کند و Nmap نمی تواند باز یا بسته بودن پورت را تعیین کند. پورت های بسته با هیچ برنامه ای مرتبط نیستند، بنابراین می توان آنها را در هر زمانی باز کرد. پورت ها وقتی به درخواست های Nmap پاسخ می دهند فیلتر نشده در نظر گرفته می شوند، اما Nmap نمی تواند باز یا بسته بودن آنها را تعیین کند. Nmap زمانی که نمی تواند تعیین کند کدام یک از این دو حالت یک پورت را توصیف می کند، باز|فیلتر و بسته|فیلتر می شود. این جدول همچنین در صورت درخواست می تواند جزئیاتی در مورد نسخه نرم افزار ارائه دهد. هنگام انجام یک اسکن پروتکل IP (-sO)، Nmap به جای پورت های باز، اطلاعاتی در مورد پروتکل های IP پشتیبانی شده ارائه می دهد.

    علاوه بر جدول پورت های مهم، Nmap می تواند اطلاعات بیشتری در مورد اهداف ارائه دهد: نام های DNS حل شده، حدس ها در مورد سیستم عامل مورد استفاده، انواع دستگاه ها و آدرس های MAC.

    یک اسکن معمولی با استفاده از Nmap در مثال 1 نشان داده شده است. تنها آرگومان های مورد استفاده در این مثال -A هستند، برای تعیین نسخه سیستم عامل، اسکن اسکریپت، و ردیابی. -T4 برای اجرای سریعتر؛ سپس دو میزبان هدف.

    مثال 1: مثال معمولی اسکن با Nmap:

    # nmap -A -T4 scanme.nmap.org زمین بازی شروع Nmap (https://nmap.org/) پورت های جالب در scanme.nmap.org (64.13.134.52): (1663 پورت اسکن شده اما در زیر نشان داده نشده اند در حالت هستند : فیلتر شده) PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 3.9p1 (پروتکل 1.99) 53/tcp دامنه باز 70/tcp بسته gopher 80/tcp باز httpd Apache httpd 2.0.52 ((Fedora3th) Devices1 بسته شده نوع: عمومی در حال اجرا: Linux 2.4.X|2.5.X|2.6.X جزئیات سیستم عامل: Linux 2.4.7 - 2.6.11, Linux 2.6.0 - 2.6.11 پورت های جالب در playground.nmap.org (192.168.0.40) ): (1659 پورت اسکن شده اما در زیر نشان داده نشده اند در حالت بسته هستند) PORT STATE SERVICE VERSION 135/tcp open msrpc Microsoft Windows RPC 139/tcp open netbios-ssn 389/tcp open ldap؟ 445/tcp open microsoft-ds Microsoft Windows XP microsoft-ds 1002/tcp open windows-icfw? 1025/tcp open msrpc Microsoft Windows RPC 1720/tcp open H.323/Q.931 CompTek AquaGateKeeper 5800/tcp open vnc-http RealVNC 4.0 (رزولوشن 400x250؛ پورت VNC: 590000000/0000/00000000000/0000/0000000000000000) آدرس: 00:A0:CC:63:85:4B (ارتباطات Lite-on) نوع دستگاه: همه منظوره در حال اجرا: Microsoft Windows NT/2K/XP جزئیات سیستم عامل: Microsoft Windows XP Pro RC1+ تا نسخه نهایی اطلاعات خدمات: سیستم عامل: Windows , Windows XP Nmap به پایان رسید: 2 آدرس IP (2 میزبان بالا) در 88.392 ثانیه اسکن شدند

    خلاصه گزینه ها

    استفاده:
    nmap [نوع(های) اسکن] [گزینه‌ها] (specified_targets)

    تعیین هدف اسکن:

    می تواند با نام هاست، آدرس های IP، شبکه ها و غیره کار کند.
    به عنوان مثال: scanme.nmap.org, microsoft.com/24, 192.168.0.1; 10.0.0-255.1-254
    -iL<ввести_имя_файла>: وارد کردن از لیست میزبان/شبکه
    -iR<количество хостов>: اهداف تصادفی را انتخاب کنید
    - مستثنی کردن : هاست/شبکه ​​را حذف کنید
    - حذف فایل<файл_с_исключениями>: فهرست را از فایل حذف کنید

    تشخیص میزبان:

    SL: اسکن برای ایجاد یک لیست - به سادگی فهرستی از اهداف را برای اسکن تهیه کنید
    -sn: اسکن پینگ - به سادگی تعیین کنید که میزبان در حال اجرا است یا خیر
    -Pn: با همه میزبان ها به عنوان بالا رفتار کنید - از شناسایی میزبان صرفنظر کنید
    -PS/PA/PU/PY[port_list]: TCP SYN/ACK، UDP یا SCTP پینگ میزبان های مشخص شده
    -PE/PP/PM: پینگ با استفاده از درخواست‌های اکو ICMP، درخواست‌های برچسب زمانی و نقاب شبکه
    -PO[protocol_list]: پینگ با استفاده از پروتکل IP
    -n/-R: هرگز DNS را حل نکنید/همیشه حل کنید [پیش‌فرض: گاهی اوقات]
    -dns-servers<сервер1[,сервер2],…>: سرورهای DNS خود را تنظیم کنید
    –system-dns: از حل کننده DNS سیستم استفاده کنید
    –traceroute: ردیابی (ردیابی مسیر) برای هر میزبان

    تکنیک های مختلف اسکن:

    SS/sT/sA/sW/sM: TCP SYN/با استفاده از تماس سیستم Connect()/ACK/Window/Maimon scan
    -sU: اسکن UDP
    -sN/sF/sX: اسکن TCP Null، FIN و Xmas
    -اسکن پرچم ها<флаги>: پرچم های TCP خود را تنظیم کنید
    -sI<зомби_хост[:порт]>: اسکن بیکار
    -sY/sZ: اسکن SCTP INIT/COOKIE-ECHO
    -sO: اسکن پروتکل IP
    : اسکن FTP bounce

    تعریف پورت ها و ترتیب اسکن:

    پ<диапазон_портов>: فقط پورت های خاص را اسکن کنید
    مثال: -p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080,S:9
    -F: اسکن سریع – اسکن تعداد محدودی از پورت ها
    -r: پورت ها را به صورت متوالی اسکن کنید - پورت ها را تصادفی نکنید
    – پورت های بالا<количество_портов>: اسکن<количество_портов>رایج ترین پورت ها
    -نسبت پورت<рейтинг>: پورت های با رتبه بندی بیشتر از<рейтинг>

    تعریف خدمات و نسخه های آنها:

    SV: کاوش کنید پورت ها را باز کنیدبرای تعیین اطلاعات سرویس/نسخه
    - شدت نسخه<уровень>: از 0 (آسان) تا 9 تنظیم کنید (همه درخواست ها را امتحان کنید)
    –نسخه-نور: محدود به سبک‌ترین پرسش‌ها (شدت ۲)
    –version-all: از هر درخواست استفاده کنید (شدت 9)
    –version-trace: خروجی اطلاعات دقیقدر مورد فرآیند اسکن (برای اشکال زدایی)

    اسکن با استفاده از اسکریپت ها:

    SC: معادل گزینه –script=default
    –اسکریپت= : این فهرستی از دایرکتوری ها، فایل های اسکریپت یا دسته های اسکریپت جدا شده با کاما است
    –script-args=<имя1=значение1,[имя2=значение2,…]>: ارسال آرگومان ها به اسکریپت ها
    –script-args-file=filename: آرگومان های فایل را به اسکریپت های NSE منتقل کنید
    –script-trace: تمام داده های دریافتی و ارسالی را چاپ می کند
    –script-updatedb: پایگاه داده اسکریپت را به روز کنید
    –script-help= : نمایش راهنمایی در مورد اسکریپت ها. فهرستی از اسکریپت ها با کاما از هم جدا شده یا فهرستی از دسته های اسکریپت.

    تعریف سیستم عامل:

    O: عملکرد تشخیص سیستم عامل را فعال کنید
    –osscan-limit: از تابع تشخیص سیستم عامل فقط برای میزبان های "امیدبخش" استفاده کنید
    –osscan-guess: نتایج تشخیص سیستم عامل را حدس بزنید

    گزینه های مدیریت زمان و بهره وری:

    گزینه هایی که استدلال می کنند<время>، در میلی ثانیه داده می شود تا زمانی که "s" (ثانیه)، "m" (دقیقه)، یا "h" (ساعت) را به مقدار (مثلا 30 متر) اضافه کنید.
    -تی<0-5>: تنظیم الگوی تنظیمات مدیریت زمان (بیشتر سریعتر است)
    –min-hostgroup/max-hostgroup<кол_хостов>: اندازه گروه را برای اسکن موازی تنظیم کنید
    – حداقل موازی / حداکثر موازی<кол_хостов>: موازی سازی درخواست ها را تنظیم می کند
    –min-rtt-timeout/max-rtt-timeout/initial-rtt-timeout<время>: زمان انتظار برای پاسخ به یک درخواست را تنظیم می کند.
    - حداکثر تلاش مجدد<количество_попыток>: حداکثر تعداد درخواست ارسال مجدد را تنظیم می کند
    -میزان تایم اوت<время>: اسکن اهداف کند را متوقف می کند
    –تاخیر اسکن/–حداکثر تأخیر اسکن<время>: تأخیر بین درخواست ها را تنظیم می کند
    - نرخ دقیقه<число>: ارسال درخواست ها با شدت کمتر از<число>در هر ثانیه
    - حداکثر نرخ<число>: درخواست ها را با شدت حداکثر ارسال کنید<число>در هر ثانیه

    دور زدن فایروال ها/شناسه ها:

    F; -mtu<значение>: بسته های قطعه (اختیاری با مقدار مشخص شده MTU)
    -دی<фикт_хост1,фикт_хост2[,ME],…>: اسکن های ماسک با استفاده از میزبان های ساختگی
    : آدرس منبع را تغییر دهید
    -e<интерфейс>: از رابط خاص استفاده کنید
    -g/–source-port<номер_порта>: از شماره پورت مشخص شده استفاده کنید
    – پروکسی ها : اتصالات را از طریق پروکسی HTTP/SOCKS4 رله کنید
    -طول داده ها<число>: داده های دلخواه را به بسته های ارسالی اضافه کنید
    – گزینه های IP<опции>: یک بسته با گزینه های IP مشخص شده ارسال کنید
    – ttl<значение>: زمان فعال بودن فیلد IP (طول عمر) را تنظیم کنید
    – جعل مک : آدرس MAC خود را تنظیم کنید
    –badsum: ارسال بسته ها با چک جمع های جعلی TCP/UDP/SCTP

    خروجی نتایج:

    ON/-oX/-oS/-oG نتایج خروجی نرمال، XML، s| -oA<базовове_имя_файла>: از سه فرمت خروجی اصلی به طور همزمان استفاده کنید
    -v: سطح کلامی را افزایش دهید (دوبار یا بیشتر برای افزایش اثر تنظیم کنید)
    -d: افزایش یا تنظیم سطح اشکال زدایی (تا 9)
    –reason: دلیل قرار گرفتن پورت در یک حالت خاص را نشان دهید
    –open: فقط پورت های باز (یا احتمالاً باز) را نشان می دهد
    –packet-trace: ردیابی بسته های دریافتی و ارسالی
    –iflist: فهرست رابط ها و روترها (برای اشکال زدایی)
    –log-errors: ورود خطاها/هشدارها به فایل خروجی حالت عادی
    –append-output: به جای بازنویسی، فایل های خروجی را اضافه کنید
    -از سرگیری<имя_файла>: اسکن قطع شده را ادامه دهید
    – شیوه نامه<путь/URL>: یک شیوه نامه XSL را برای تبدیل خروجی XML به HTML تنظیم می کند
    –webxml: یک شیوه نامه را از Nmap.Org بارگیری می کند
    –no-stylesheet: اعلان شیت XSL را از XML حذف کنید

    گزینه های مختلف:

    6: اسکن IPv6 را فعال کنید
    -A: سیستم عامل و تشخیص نسخه، اسکن اسکریپت، و ویژگی های ردیابی را فعال کنید
    –داداتیر<имя_директории>: مکان فایل های Nmap را تعیین می کند
    –send-eth/–send-ip: از لایه اترنت/IP خام استفاده کنید
    –privileged: فرض کنید کاربر تمام امتیازات را دارد
    –unprivileged: به این معنی است که کاربر امتیازی برای استفاده از سوکت های خام ندارد
    -V: چاپ شماره نسخه
    -h: نمایش این صفحه راهنما

    دستورات تعاملی:

    HELP: با "sudo nmap" کار نمی کند، بنابراین از "sudo –i" استفاده کنید
    در حین اجرا، می توانید با کلیدهای زیر nmap را پرس و جو کنید:
    ? این اطلاعات را نشان دهید
    v/V افزایش/کاهش کلامی
    d/D افزایش/کاهش اشکال زدایی
    p/P فعال/غیرفعال کردن ردیابی بسته
    و کلیدهای دیگری که در وضعیت چاپ خواهند شد

    مثال ها:
    تعیین هدف اسکن

    در خط فرمان Nmap، هر چیزی که یک گزینه (یا یک آرگومان گزینه) نباشد به عنوان یک هدف اسکن در نظر گرفته می شود. در ساده ترین حالت، آدرس IP یا نام شبکه دستگاه مورد نظر برای اسکن استفاده می شود.

    گاهی اوقات لازم است کل یک شبکه را اسکن کنید. برای رسیدن به این هدف، Nmap از آدرس دهی CIDR پشتیبانی می کند. شما می توانید اضافه کنید /<кол-во бит>به یک آدرس IP یا نام شبکه و Nmap هر آدرس IP را اسکن می کند<кол-во бит>مانند میزبان مشخص شده. به عنوان مثال، 192.168.10.0/24 256 هاست را بین 192.168.10.0 (دودویی: 11000000 10101000 00001010 00000000) و 192.150000000: 192.150000000: 192.1501010101:102.192.168.10.0 اسکن می کند. 00001010 11111111) شامل. 192.168.10.40/24 دقیقاً همین کار را انجام می دهد. با دانستن اینکه آدرس IP scanme.nmap.org 64.13.134.52 است، رکوردی مانند scanme.nmap.org/16 65536 آدرس IP را بین 64.13.0.0 و 64.13.255.255 اسکن می کند. کوچکترین مقدار قابل قبول /0 است که در آن کل اینترنت اسکن می شود. بالاترین مقدار 32/ است که در آن فقط هاست یا آدرس IP مشخص شده اسکن می شود، زیرا همه بیت های آدرس غیرفعال هستند.

    نماد CIDR کوتاه است، اما همیشه به اندازه کافی انعطاف پذیر نیست. به عنوان مثال، شما می خواهید 192.168.0.0/16 را اسکن کنید، اما تمام IP هایی که به 0.0 یا 0.255 ختم می شوند را رد کنید، زیرا اینها معمولاً آدرس های پخش هستند. Nmap می‌تواند این اسکن را با تعیین محدوده‌ها در octet انجام دهد. به جای تعیین یک آدرس IP معمولی، می توانید برای هر اکتت لیستی از اعداد جدا شده با کاما یا محدوده ای تعریف کنید. به عنوان مثال، 192.168.0-255.1-254 تمام آدرس های موجود در محدوده ای را که به 0.0 و 0.255 ختم می شود، ارسال می کند. لازم نیست محدوده‌ها فقط در اکتت‌های آخر مشخص شوند: نوشتن 0-255.0-255.13.37 تمام آدرس‌های اینترنتی که به 13.37 ختم می‌شوند را اسکن می‌کند. این نوع اسکن می تواند برای مرور اینترنت و مطالعات مختلف مفید باشد.

    آدرس های IPv6 را فقط می توان به شکلی مشخص کرد که کاملاً با شکل صحیح نوشتن آدرس های IPv6 مطابقت داشته باشد. CIDR و استفاده از محدوده ها در octet ها برای آدرس های IPv6 قابل اجرا نیست، زیرا آنها به ندرت مورد استفاده قرار می گیرند.

    شما می توانید تعاریف مختلف هدف را در خط فرمان Nmap ارسال کنید، نه لزوماً یک نوع. تیم nmap scanme.nmap.org 192.168.0.0/16 10.0.0،1،3-7.0-255آنچه را که انتظار دارید انجام خواهد داد

    اهداف اسکن معمولاً در خط فرمان مشخص می شوند و گزینه های مختلفی برای کنترل انتخاب هدف وجود دارد:

    IL<имя_файла>(ورودی از لیست)

    اهداف را از<имя_файла>. در حالی که ارسال لیست بزرگی از میزبان ها برای اسکن معمول است، اما راحت نیست. به عنوان مثال، سرور DHCP شما لیستی از 10000 آدرسی که در حال حاضر از آن استفاده می کند به شما می دهد و می خواهید آن را اسکن کنید. یا شاید بخواهید تمام آدرس های IP را به جز آدرس هایی که به آنها اختصاص داده شده است اسکن کنید تا استفاده غیرمجاز از آدرس های IP ثابت را شناسایی کنید. به سادگی لیستی از میزبان ها را برای اسکن ایجاد کنید و نام فایل را به عنوان آرگومان گزینه -iL به Nmap ارسال کنید. ورودی‌های فایل می‌تواند به هر شکلی باشد که برای Nmap قابل قبول باشد (آدرس‌های IP، نام‌های شبکه، CIDR، IPv6 یا محدوده‌های هشتگانه). هر ورودی باید با یک فاصله یا بیشتر، کاراکترهای برگه یا کاراکترهای خط جدید از هم جدا شود. اگر می‌خواهید Nmap لیست میزبان‌ها را از ورودی استاندارد بخواند نه از فایل، می‌توانید یک خط فاصله (-) را به عنوان آرگومان نام فایل ارسال کنید.

    IR<кол-во хостов>(اهداف تصادفی را انتخاب می کند)

    برای اسکن در سطح وب یا هر تحقیقی، ممکن است لازم باشد اهداف را به صورت تصادفی انتخاب کنید. بحث و جدل<кол-во хостов>تعیین می کند که چه تعداد آدرس IP باید تولید شود. آدرس‌های IP نامناسب مانند محدوده‌های آدرس خصوصی، پخش یا غیرمحلی به طور خودکار نادیده گرفته می‌شوند. آرگومان 0 را می توان برای اسکن به طور نامحدود ارسال کرد. به خاطر داشته باشید که برخی از مدیران سیستم ممکن است اسکن غیرمجاز شبکه های خود را دوست نداشته باشند و ممکن است شکایت کنند. از این گزینه با مسئولیت خود استفاده کنید! اگر در یک روز بارانی احساس بی حوصلگی می کنید، nmap -sS -PS80 -iR 0 -p 80 را امتحان کنید تا سرورهای وب تصادفی را اسکن کنید.

    - مستثنی کردن<хост1>[,<хост2>[،…]] (بدون میزبان/شبکه)

    فهرستی از اهداف جدا شده با کاما را مشخص می‌کند تا از اسکن حذف شوند، حتی اگر بخشی از محدوده اسکنی باشند که شما مشخص کرده‌اید. لیست ارسال شده از نحو استاندارد Nmap استفاده می کند، بنابراین می تواند شامل نام های شبکه، آدرس دهی CIDR، محدوده های هشتگانه و غیره باشد. اگر شبکه‌ای که می‌خواهید اسکن کنید حاوی سرورها یا سیستم‌هایی باشد که به اسکن پورت پاسخ منفی می‌دهند، یا زیرشبکه‌هایی که توسط افراد دیگر اداره می‌شوند، این گزینه می‌تواند مفید باشد.

    - حذف فایل<имя_файла>(خارج از لیست از فایل)

    این گزینه همان کار –exclude را انجام می دهد، با این تفاوت که اهداف حذف شده با فاصله، برگه ها یا خطوط جدید از هم جدا می شوند.<файле>، نه در خط فرمان.



     


    خواندن:



    چرا یک لپ تاپ به یک SSD کوچک نیاز دارد و آیا ارزش نصب ویندوز روی آن را دارد؟

    چرا یک لپ تاپ به یک SSD کوچک نیاز دارد و آیا ارزش نصب ویندوز روی آن را دارد؟

    درایو SSD چقدر برای بازی ها مهم است ، چه تأثیری دارد و چه فایده ای از این فناوری دارد - این همان چیزی است که در مقاله ما مورد بحث قرار خواهد گرفت. حالت جامد...

    تعمیر فلش مموری با استفاده از برنامه ها نحوه تعمیر پورت USB در لپ تاپ

    تعمیر فلش مموری با استفاده از برنامه ها نحوه تعمیر پورت USB در لپ تاپ

    چگونه پورت USB را تعمیر کنیم؟ پاسخ تکنسین: هنگام استفاده از رایانه، درگاه‌های USB اغلب خراب می‌شوند. اول از همه شکست می خورند...

    ساختار دیسک آسیب دیده است، خواندن غیرممکن است، چه باید بکنم؟

    ساختار دیسک آسیب دیده است، خواندن غیرممکن است، چه باید بکنم؟

    رایانه های شخصی کاربران اغلب اطلاعات مهم را ذخیره می کنند - اسناد، عکس ها، فیلم ها، اما پشتیبان گیری از داده ها معمولاً ...

    کامپیوتر از چه چیزی تشکیل شده است؟

    کامپیوتر از چه چیزی تشکیل شده است؟

    تاریخ انتشار: 1396/01/14 با سلام خدمت دوستان امروز به طور مفصل به طراحی واحد سیستم کامپیوتر می پردازیم. بیایید بفهمیم چه ...

    فید-تصویر RSS