ویرگول
ورودثبت نام
rasgari
rasgariدر مورد ای‌تی، کار، روزمرگی و زندگی می‌نویسم | کارشناس تست نفوذ وب | گیت هاب https://github.com/rasgari
rasgari
rasgari
خواندن ۷ دقیقه·۲۰ ساعت پیش

۱۵ ابزار ضروری برای باگ بانتی

دنیای باگ بانتی (Bug Bounty) پر از فرصت‌های هیجان‌انگیز برای کشف آسیب‌پذیری‌ها و کسب درآمد است. موفقیت در این حوزه نیازمند دانش فنی، مهارت‌های تحلیلی و البته، ابزارهای مناسب است. در این مقاله، به معرفی ۱۵ ابزار کلیدی می‌پردازیم که هر باگ هانتر (Bug Hunter) باید در جعبه ابزار خود داشته باشد. این ابزارها طیف وسیعی از وظایف، از جمع‌آوری اطلاعات اولیه گرفته تا اسکن آسیب‌پذیری‌های پیچیده، را پوشش می‌دهند.


۱. Burp Suite

  • کاربرد: Burp Suite یک پلتفرم یکپارچه برای انجام تست نفوذ برنامه‌های وب است. قابلیت‌های اصلی آن شامل پروکسی رهگیر (Interception Proxy)، اسکنر خودکار آسیب‌پذیری، ابزارهای تست گذرواژه (Intruder)، تکرارکننده درخواست (Repeater) و ده‌ها ابزار جانبی دیگر است.

  • فایده: این ابزار به شما اجازه می‌دهد تا ترافیک HTTP/S بین مرورگر و سرور را مشاهده، دستکاری و تحلیل کنید. برای یافتن آسیب‌پذیری‌هایی مانند XSS، SQL Injection، CSRF و مشکلات احراز هویت، ضروری است.

  • نحوه استفاده: پس از تنظیم پروکسی مرورگر برای هدایت ترافیک به Burp Suite، می‌توانید درخواست‌ها را رهگیری کرده، آن‌ها را تغییر دهید (مثلاً پارامترها را دستکاری کنید) و سپس به سرور ارسال کنید تا پاسخ‌ها را بررسی نمایید.


۲. Nmap (Network Mapper)

  • کاربرد: Nmap یک اسکنر شبکه قدرتمند است که برای شناسایی هاست‌ها و سرویس‌های فعال در یک شبکه استفاده می‌شود. این ابزار می‌تواند پورت‌های باز، سیستم‌عامل‌ها، نسخه‌های سرویس‌ها و حتی فایروال‌ها را تشخیص دهد.

  • فایده: در باگ بانتی، Nmap به شما کمک می‌کند تا سطح حمله (attack surface) یک هدف را درک کنید. شناسایی سرویس‌های در حال اجرا روی پورت‌های غیر استاندارد یا نسخه‌های قدیمی نرم‌افزارها می‌تواند سرنخ‌های خوبی برای یافتن آسیب‌پذیری بدهد.

  • نحوه استفاده: با اجرای دستوراتی مانند nmap -sV -p- target.com می‌توانید پورت‌های باز، سرویس‌ها و نسخه‌های آن‌ها را روی دامنه هدف شناسایی کنید.


۳. Nuclei

  • کاربرد: Nuclei یک ابزار اسکنر آسیب‌پذیری سریع و مبتنی بر template است. این ابزار از templateهای از پیش تعریف شده یا سفارشی برای شناسایی انواع مختلف آسیب‌پذیری‌ها استفاده می‌کند.

  • فایده: سرعت بالا و انعطاف‌پذیری Nuclei آن را به گزینه‌ای عالی برای اسکن خودکار و سریع اهداف تبدیل کرده است. می‌توان از آن برای شناسایی طیف وسیعی از آسیب‌پذیری‌ها، از جمله پیکربندی‌های نادرست، آسیب‌پذیری‌های شناخته شده (CVEs) و موارد خاص برنامه‌های وب استفاده کرد.

  • نحوه استفاده: با اجرای nuclei -u target.com -t templates/ می‌توانید یک دامنه را با استفاده از templateهای مشخص اسکن کنید.


۴. httpx (HTTP/HTTPS scanner)

  • کاربرد: httpx یک ابزار سریع و قابل تنظیم برای اسکن پاسخ‌های HTTP/S است. این ابزار می‌تواند پورت‌های باز HTTP/S، عنوان صفحات وب، وضعیت پاسخ HTTP، گواهی TLS، و حتی جزئیات بیشتری مانند فناوری‌های مورد استفاده را شناسایی کند.

  • فایده: برای جمع‌آوری اطلاعات اولیه روی مجموعه‌ای از دامنه‌ها یا ساب‌دامنه‌ها فوق‌العاده است. به سرعت لیستی از URLهای فعال و اطلاعات اولیه آن‌ها را در اختیار شما قرار می‌دهد که برای مراحل بعدی تست ضروری است.

  • نحوه استفاده: اجرای httpx -l urls.txt -title -tech-detect لیستی از URLها را گرفته و عنوان و فناوری‌های شناسایی شده را نمایش می‌دهد.


۵. ffuf (Fuzz Faster U Fool)

  • کاربرد: ffuf یک ابزار خط فرمان برای fuzzing محتوای وب است. این ابزار برای کشف دایرکتوری‌ها، فایل‌ها، پارامترها و ساب‌دامنه‌های مخفی یا غیرقابل دسترس استفاده می‌شود.

  • فایده: سرعت بالا و پشتیبانی از انواع fuzzing (مانند brute-force دایرکتوری و پارامتر) آن را به ابزاری قدرتمند برای گسترش سطح حمله و یافتن نقاط ورودی جدید تبدیل کرده است.

  • نحوه استفاده: با دستور ffuf -w wordlist.txt -u https://target.com/FUZZ می‌توانید به دنبال دایرکتوری‌ها و فایل‌های پنهان بگردید.


۶. xsstrike (Cross-Site Scripting Finder)

  • کاربرد: xsstrike یک ابزار خودکار برای شناسایی و بهره‌برداری از آسیب‌پذیری‌های XSS (Cross-Site Scripting) در برنامه‌های وب است. این ابزار قادر به تست انواع XSS (Reflected, Stored, DOM-based) است.

  • فایده: با ترکیب روش‌های مختلف تست تزریق و استفاده از payloadهای هوشمند، xsstrike شانس یافتن XSSهای پیچیده را افزایش می‌دهد. این ابزار می‌تواند shell یا پروفایل مرورگر را نیز steal کند.

  • نحوه استفاده: اجرای python xsstrike.py -u "https://target.com/search?q=<PAYLOAD>" با استفاده از payloadهای مناسب، به جستجوی XSS می‌پردازد.


۷. Shodan

  • کاربرد: Shodan موتور جستجوی دستگاه‌های متصل به اینترنت است. برخلاف موتورهای جستجوی معمولی که محتوای وب را ایندکس می‌کنند، Shodan اطلاعات سرویس‌ها، پورت‌ها و metadata دستگاه‌های IoT، سرورها و حتی سیستم‌های صنعتی را جمع‌آوری می‌کند.

  • فایده: برای یافتن دستگاه‌ها یا سرویس‌های در معرض خطر (مانند پنل‌های مدیریتی ناامن، دوربین‌های مداربسته، IoT devices) که به اشتباه یا با تنظیمات ضعیف در اینترنت قرار گرفته‌اند، بسیار کاربردی است.

  • نحوه استفاده: با جستجوی عبارات کلیدی مانند http.title:"Login Page" یا port:8080 country:ir می‌توانید دستگاه‌های خاص را پیدا کنید.


۸. WaybackURLs

  • کاربرد: WaybackURLs ابزاری برای استخراج تمام URLهای یافت شده برای یک دامنه از آرشیو Wayback Machine است. این شامل صفحات HTML، لینک‌های JavaScript، CSS، و سایر منابع است.

  • فایده: این ابزار به شما کمک می‌کند تا URLهای قدیمی، endpointهای حذف شده یا غیرقابل دسترس، و بخش‌هایی از وب‌سایت که دیگر فعال نیستند را کشف کنید. این می‌تواند سرنخ‌های مهمی برای یافتن آسیب‌پذیری‌های مرتبط با نسخه‌های قدیمی یا پیکربندی‌های نادرست باشد.

  • نحوه استفاده: اجرای waybackurls target.com لیست URLهای مرتبط با آن دامنه را از Wayback Machine استخراج می‌کند.


۹. Katana

  • کاربرد: Katana یک ابزار جمع‌آوری اطلاعات (reconnaissance) است که به طور خودکار اطلاعات مربوط به یک هدف را جمع‌آوری می‌کند. این ابزار می‌تواند ساب‌دامنه‌ها، technology stack، و نقاط ورودی بالقوه را شناسایی کند.

  • فایده: Katana با خودکارسازی فرآیند جمع‌آوری اطلاعات، زمان تست را به طور قابل توجهی کاهش می‌دهد و به شما اجازه می‌دهد روی تحلیل و یافتن آسیب‌پذیری تمرکز کنید.

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


۱۰. sqlmap

  • کاربرد: sqlmap یک ابزار تشخیص و بهره‌برداری خودکار برای تزریق SQL (SQL Injection) است. این ابزار قادر به شناسایی و بهره‌برداری از طیف وسیعی از پایگاه‌های داده SQL است.

  • فایده: برای یافتن و بهره‌برداری از آسیب‌پذیری‌های SQL Injection در برنامه‌های وب که مستقیماً به پایگاه داده متصل هستند، ضروری است. می‌تواند داده‌ها را از پایگاه داده استخراج کند، جداول را لیست کند و حتی گاهی به اجرای دستورات سیستمی منجر شود.

  • نحوه استفاده: با ارائه URL هدف و پارامترهای مشکوک، sqlmap -u "target.com/page.php?id=1" می‌تواند آسیب‌پذیری را شناسایی و اطلاعات پایگاه داده را استخراج کند.


۱۱. LinkFinder

  • کاربرد: LinkFinder یک اسکریپت برای استخراج URLهای مخفی، endpointهای JavaScript، و ارتباطات بین فایل‌های JS است. این ابزار به دنبال الگوهای خاص در کد JavaScript می‌گردد تا لینک‌ها و APIهای پنهان را کشف کند.

  • فایده: برای تست نفوذ وب، کشف APIهای مخفی یا endpointهای undocumented که ممکن است از دید موتورهای جستجو یا ابزارهای معمول پنهان باشند، بسیار مفید است. این‌ها می‌توانند نقاط ورودی جدیدی برای حمله باشند.

  • نحوه استفاده: با اجرای python LinkFinder.py -d target.com می‌توانید لیست URLهای مرتبط با فایل‌های JS دامنه هدف را استخراج کنید.


۱۲. Subfinder

  • کاربرد: Subfinder یک ابزار سریع برای کشف ساب‌دامنه‌ها (subdomains) است. این ابزار از منابع مختلفی مانند DNS brute-forcing، گواهی‌های SSL، و موتورهای جستجو برای یافتن زیرمجموعه‌های دامنه استفاده می‌کند.

  • فایده: شناسایی تمام ساب‌دامنه‌های موجود، نمایانگر کامل سطح حمله است. ساب‌دامنه‌هایی که به درستی پیکربندی یا ایمن‌سازی نشده‌اند، می‌توانند دروازه‌ای برای نفوذ به سیستم اصلی باشند.

  • نحوه استفاده: با اجرای subfinder -d target.com لیستی از ساب‌دامنه‌های فعال برای دامنه هدف را دریافت خواهید کرد.


۱۳. gau (Get All URLs)

  • کاربرد: gau ابزاری است که URLهای یک دامنه را از منابع مختلفی مانند Apache Wayback Machine، Common Crawl، و URLscan.io جمع‌آوری می‌کند. این به بازیابی URLهای قدیمی و همچنین URLهای جدید کمک می‌کند.

  • فایده: شبیه به WaybackURLs، اما با منابع جمع‌آوری اطلاعات گسترده‌تر. برای یافتن endpointهای قدیمی، صفحات حذف شده، یا APIهای رها شده که ممکن است هنوز آسیب‌پذیر باشند، عالی است.

  • نحوه استفاده: با اجرای gau target.com لیست جامع URLها را استخراج می‌کند.


۱۴. Dirsearch

  • کاربرد: Dirsearch یک اسکنر سریع برای جستجوی دایرکتوری‌ها و فایل‌های پنهان یا قابل دسترس در وب‌سرورها است. این ابزار از لیست‌های کلمات (wordlists) برای حدس زدن نام‌های رایج دایرکتوری‌ها و فایل‌ها استفاده می‌کند.

  • فایده: برای کشف صفحات مدیریتی، فایل‌های پیکربندی، بک‌آپ‌ها، لاگ‌ها، یا هر نوع محتوای دیگری که نباید به صورت عمومی در دسترس باشد، بسیار مؤثر است.

  • نحوه استفاده: با دستور python dirsearch.py -u https://target.com/ -e all می‌توانید به دنبال انواع فایل‌ها و دایرکتوری‌ها بگردید.


۱۵. Brute XSS

  • کاربرد: Brute XSS یک اسکریپت ساده برای تست تزریق XSS است. این ابزار با ارسال payloadهای مختلف به پارامترهای URL و بررسی پاسخ‌ها، به دنبال آسیب‌پذیری XSS می‌گردد.

  • فایده: برای تست سریع و اولیه پارامترهای GET و POST در URLها برای یافتن XSSهای ساده بسیار مفید است. اگرچه به اندازه xsstrike پیچیده نیست، اما سرعت و سادگی آن را برای غربالگری اولیه کاربردی می‌کند.

  • نحوه استفاده: معمولاً با ارائه URL و پارامترهای مشکوک، اسکریپت شروع به تست payloadهای پیش‌فرض می‌کند.


نتیجه‌گیری:

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

باگ بانتی
۱
۰
rasgari
rasgari
در مورد ای‌تی، کار، روزمرگی و زندگی می‌نویسم | کارشناس تست نفوذ وب | گیت هاب https://github.com/rasgari
شاید از این پست‌ها خوشتان بیاید