امنیتتست نفوذتست نفوذ شبکه

۴ اسکریپت Nmap برای هکرها

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

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

در مقایسه با سایر ابزارها احتمالا محبوب ترین و شناخته شده ترین ابزار شناسایی در حال حاضر ابزار انمپ است.

برای درک بهتر این آموزش، بهتر است تجربه اولیه ای در کار کردن با ابزار Nmap داشته باشیم. من بیشترین دستورات را برای پورت های ۸۰ و ۴۴۳ ( -p80،۴۴۳ ) قرار می دهم ، زیرا پورت های معمول وب سرورها هستند.

سلب مسئولیت: اسکریپت های نفوذی Nmap منابع سیستم(CPU و پهنای باند) را بر روی وب سرور مقصد به شدت تحت فشار میگذارند و ممکن است باعث ایجاد حملات ddos/dos شوند. پس بهتر است اسکریپت های زیر را با احتیاط استفاده کنید.

به روز رسانی Nmap در kalilinux

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

Nmap را می توان با استفاده از دستورات زیر نصب کرد:

apt-get update && apt-get install nmap

اسکریپت های تست نفوذ NMAP

WAF ها که اختصار شده عبارت “web application firewall” هستند، ترافیک مخرب را شناسایی و دفع می کنند و از سرور در مقابل آن محافظت می کنند. WAF ها اغلب در برابر حملات (SQL injection، file inclusion ،cross-site scripting (XSS مورد استفاده قرار می گیرند.

در یک سرور تحت حمایت WAF تقریبا تمام آسیب پذیری های مبتنی بر وب برطرف می شود. و برعکس، یک سرور بدون حفاظت WAF می تواند در برابر اکثر حمله ها آسیب پذیر باشد. پس میتوان به این نتیجه رسید که توانایی یک هکر برای شناسایی wafها میتوانید خیلی مهم باشد.

اسکریپت HTTP-WAF به ما کمک می کند تا waf موجود بر روی یک وب سایت را شناسایی کنیم. کارکرد آن به گونه ای است که وب سرور را با چندین درخواست بررسی می کند. اول، یک درخواست وب معمولی را ارسال می کند و پاسخ سرور را ثبت می کند. سپس، یک درخواست دیگر را با نشانی اینترنتی نامعتبر (malformed URL) ارسال می کند و پاسخ ها را مقایسه می کند. این روش شناسایی WAF ها بسیار دور از دسترس نیست و ممکن است بر اساس نوع وب سرور و محصول WAF متفاوت باشد.

برای فعال کردن اسکریپت http-waf-detect ، از دستور nmap زیر استفاده می کنیم:

nmap -p80,443 --script http-waf-detect --script-args="http-waf-detect.aggro,http-waf-detect.detectBodyChanges" targetWebsite.com

در اینجا، من از آرگومان http-waf-detect.aggg استفاده میکنم که دستورالعمل Nmap را برای انجام تمام بردارهای حمله داخلی ساخته شده بر روی waf انجام میدهد. همچنین فعال کردن آرگومان http-waf-detect.detectBodyChanges است که بدنه درخواست های HTTP را تغییر میدهد و احتمال تشخیص را افزایش می دهد.

Starting Nmap 7.70 ( https://nmap.org )
Nmap scan report for targetWebsite.com
Host is up (0.65s latency).

PORT    STATE SERVICE
۸۰/tcp  open  http
| http-waf-detect: IDS/IPS/WAF detected:
|_targetWebsite.com:80/?p4yl04d=hostname%00
۴۴۳/tcp open  https
| http-waf-detect: IDS/IPS/WAF detected:
|_targetWebsite.com:443/?p4yl04d=hostname%00
همانطور که در خروجی بالا می بینیم، Nmap نوعی از فایروال وب را که در وب سرور مقصد وجود دارد، شناسایی کرده است.

 

  • تشخیص نوع waf وب سایت ها (Web Application Firewall Fingerprint Detection)

شناسایی نوع WAF یک وب سایت می تواند مهم باشد، زیرا هر WAF دارای متد های تشخیص خاصی است. شناسایی نوع WAF می تواند به هکر در مخفی ماندن و شناسایی نشدن کمک کند. اسکریپت انمپ http-waf-fingerprint طراحی شده است تا در شناسایی دقیق فایروال، نوع و نسخه دقیق آن به ما کمک کند.
nmap -p80,443 --script http-waf-fingerprint targetWebsite.com

Starting Nmap 7.70 ( https://nmap.org )
Nmap scan report for targetWebsite.com
Host is up (0.71s latency).

PORT    STATE SERVICE
۸۰/tcp  open  http
| http-waf-fingerprint:
|   Detected WAF
|_    Cloudflare
۴۴۳/tcp open  https

همانطور که در خروجی دستور بالا می بینید، این وب سایت از سرویس Cloudflare برای محافظت از وب سایت خود در برابر هکرها استفاده می کند.

ما می توانیم توانایی Nmap را برای تشخیص انواع نسخه های WAF با استفاده از آرگومان http-waf-fingerprint.intensive  بهبود بخشیم. این آرگومان زمان اسکن را طولانی تر می کند و همچنین میزان ترافیک وب تولید شده توسط اسکریپت را افزایش می دهد.

nmap -p80,443 --script http-waf-fingerprint --script-args http-waf-fingerprint.intensive=1 targetWebsite

Starting Nmap 7.70 ( https://nmap.org )
Nmap scan report for targetWebsite
Host is up (0.84s latency).

PORT    STATE SERVICE
۸۰/tcp  open  http
| http-waf-fingerprint:
|   Detected WAF
|_    BinarySec version 3.4.0
۴۴۳/tcp open  https
از نتیجه دستور بالا میتوان فهمید که BinarySec WAF (نسخه ۳٫۴) در حال استفاده است.

 

  • پیدا کردن خطاهای Find HTTP Errors) http)

کدهای وضعیت پروتکل انتقال HTTP توسط وب سرورها به مرورگرهای ما صادر می شود.

کدهای وضعیت HTTP به چند دسته تقسیم می شوند. رقم اول دسته ها مخصوص انواع مختلف پیام های خطا هستند. به عنوان مثال، دسته های ۴xx یک کلاس از خطاهای خاص برای درخواست HTTP است که نمی تواند توسط سرور وب انجام شود. مانند تلاش برای دیدن یک صفحه وب که وجود ندارد این به عنوان وضعیت “۴۰۴ Not Found” تعریف شده است، احتمالا یکی از شناخته شده ترین کدهای وضعیت در اینترنت است.

کدهای وضعیت برای هکرها بسیار مفید هستند زیرا در شناسایی بخش های خراب، ناقص و غلط سرور که ممکن است اطلاعات حساس را به خطر بیاندازند کمک میکنند.

لیستی از پنج دسته کد وضعیت HTTP به صورت زیر است:

  • ۱xx (Informational): The request was received, continuing process
  • ۲xx (Successful): The request was successfully received, understood, and accepted
  • ۳xx (Redirection): Further action needs to be taken in order to complete the request
  • ۴xx (Client Error): The request contains bad syntax or cannot be fulfilled
  • ۵xx (Server Error): The server failed to fulfill an apparently valid request

خطاهای اسکریپت انمپ http- script می تواند برای شناسایی کدهای وضعیت برای بررسی بیشتر مورد استفاده قرار گیرد.

nmap -p80,443 --script http-errors targetWebsite.com

نتیجه دستور بالا:

Nmap scan report for targetWebsite.com
Host is up (0.67s latency).

PORT STATE SERVICE
۸۰/tcp open http
| http-errors:
| Spidering limited to: maxpagecount=40; withinhost=targetWebsite.com
| Found the following error pages:
|
| Error Code: 403
|_ http://targetWebsite.com:80/
۴۴۳/tcp open https
| http-errors:
| Spidering limited to: maxpagecount=40; withinhost=targetWebsite.com
| Found the following error pages:
|
| Error Code: 400
|_ http://targetWebsite.com:443/

در خروجی بالا، Nmap کد وضعیت ۴۰۳ را شناسایی کرد، که نشان می دهد مجوزهای پرونده های سرور به اشتباه تنظیم شده اند و بازدید کنندگان دسترسی به منابع درخواست شده را ندارند.

  • شناسایی سرورهای به اشتراک گذاشته شده و جدید (Find Shared & New Servers)

ساب دامین ها اغلب برای میزبانی وب سایت های اضافی برای یک زیر مجموعه خاص از کاربران استفاده می شوند. برای مثال زیر دامنه m.facebook.com، که برای موبایل میباشد.

این زیردامنه ها برای هکرها مفید هستند، زیرا Subdomainها ممکن است در سرورهای کاملا متفاوت از سرور اصلی و در نقاط مختلف جهان میزبانی شده باشند و ممکن است امنیت سرور اصلی را نداشته باشد.

اسکریپت DNS-Brute، برای شناسایی زیر دامنه ها و آدرس های IP مربوط به یک سرور طراحی شده است.

nmap -p80,443 --script dns-brute targetWebsite.com

Starting Nmap 7.70 ( https://nmap.org )
Nmap scan report for targetWebsite.com
Host is up (0.16s latency).

PORT    STATE SERVICE
۸۰/tcp  open  http
۴۴۳/tcp open  https

Host script results:
| dns-brute:
|   DNS Brute-force hostnames:
|     http.targetWebsite.com - 198.105.244.228
|     http.targetWebsite.com - 198.105.254.228
|     mysql.targetWebsite.com - 198.105.244.228
|     mysql.targetWebsite.com - 198.105.254.228
|     news.targetWebsite.com - 104.17.202.106
|     news.targetWebsite.com - 104.17.203.106
|     news.targetWebsite.com - 104.17.204.106
|     news.targetWebsite.com - 104.17.205.106
|     news.targetWebsite.com - 104.17.206.106
|     app.targetWebsite.com - 104.97.95.87
|     apps.targetWebsite.com - 12.18.141.21
|     web.targetWebsite.com - 198.105.244.228
|     web.targetWebsite.com - 198.105.254.228
|     auth.targetWebsite.com - 204.238.150.111
|     web2test.targetWebsite.com - 198.105.244.228
|     web2test.targetWebsite.com - 198.105.254.228
|     beta.targetWebsite.com - 98.99.252.42
|     id.targetWebsite.com - 98.99.254.9
|     blog.targetWebsite.com - 216.87.148.114
|     www.targetWebsite.com - 104.97.95.87
|     www2.targetWebsite.com - 207.76.137.99
|     cms.targetWebsite.com - 98.99.252.57
|     ldap.targetWebsite.com - 98.99.254.57
|     owa.targetWebsite.com - 98.99.252.118
|     sip.targetWebsite.com - 199.233.179.46
|     mail.targetWebsite.com - 98.99.254.8
|     mobile.targetWebsite.com - 216.87.148.114
|     help.targetWebsite.com - 98.99.252.46
|     home.targetWebsite.com - 198.105.244.228
|_    home.targetWebsite.com - 198.105.254.228

Nmap done: 1 IP address (1 host up) scanned in 32.62 seconds

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

 

یوسف وفایی

فارغ التحصیل کارشناسی IT، علاقه مند به برنامه نویسی و علم امنیت، عاشق یادگیری حرفه های جدید، کنجکاو برای همه چیز، همچنین همیشه تلاش میکنم تا به هدفم برسم...

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا