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

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

بدون ديدگاه

سلام خدمت تمامی کاربران تیم امنیتی بیت، در این آموزش به طور کامل نحوه پیدا کردن دایرکتوری های وبسایت به کمک ابزار DirBuster رو با هم دیگه بررسی میکنیم

قبل از این که بخوایم عملیات تست نفوذ رو روی هر وبسایتی انجام بدیم، اینکه بدونیم وبسایت موردنظر از چه ساختاری برای دایرکتوری ها و فایل ها استفاده میکنه میتونه خیلی برای پیدا کردن نقشه و استراتژی مناسب عملیات تست نفوذ وبسایت موردنظر مفید باشه

همچنین با پیدا کردن فایل ها و دایرکتوری های یک وبسایت ممکنه که بتونیم بعضی از فایل ها و دایرکتوری های مخفی یک وبسایت رو پیدا کنیم، که میتونه فایل هایی باشه که سازنده وبسایت در حالت عادی فکر نمیکرده در دسترس کسی قرار بگیره، و میتونه اطلاعات ارزشمندی برای ما باشه

OWASP یا همان Open Web Application Security Project، ابزار خیلی مفیدی در این زمینه طراحی کرده به نام DirBuster که برای همین منظور طراحی شده

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

DirBuster چگونه کار میکنه؟

متودی که DirBuster ازش استفاده میکنه تقریبا سادست

به ابزار یک آدرس URL و یک پورت (معمولا ۸۰ و یا ۴۴۳) معرفی میکنید، به همراه یک Wordlist (مسیر پیش فرض وردلیست های پیش فرض در کالی لینوکس مسیر /usr/share/wordlists هست)

و سپس ابزار درخواست های GET رو به سمت وبسایت ارسال میکنه و با توجه به Response هایی که وبسایت بر میگردونه، نتیجه میگیره که اون دایرکتوری و یا فایل موجود هست یا نه و در پیدا کردن دایرکتوری های وبسایت کمکمون میکنه

اگر پاسخی که وبسایت برمیگردونه در رنج ۲۰۰ باشه یعنی دایرکتوری و یا فایل موردنظر موجود هست، و یا اگر در پاسخ به طور مثال Forbidden (معمولا ۴۰۳) بگیریم، یعنی دسترسی به فایل محدود است (که میتونه فایل و یا مسیری باشه که میخوایم در حمله خودمون مورد هدف قرار بدیمش)

HTTP Status Codes

در لبست پایین مهم ترین Status Code های HTTP رو میبینید که تمامی Browser ها ازش استفاده میکنند

و DirBuster هم از همین Status Code ها موجود بودن/نبودن مسیر و فایل رو تشخیص میده

  • ۱۰۰ continue: کد هایی که در این رنج هستند یعنی به هر دلیلی درخواستی که از سمت کلاینت ارسال شده کامل نشده و باید درخواست رو ادامه بده
  • ۲۰۰ Successful: کد های این رنج عمولا به معنای موفقیت آمیز بودن درخواست هستند
  • ۳۰۰ Multiple Choices: درخواست های این رنج میتونه معانی متفاوت از هم داشته باشه، اما عموما به معنای Redirect و یا کامل نشدن Request هستند
  • ۴۰۰ Bad Request: کد های این رنج به معنای ارور از سمت Client هستند که معمول ترین اون ۴۰۴ (Not Found) و ۴۰۳ (Forbidden) هست

اجرای DirBuster

برای اجرا کردن DirBuster کافیه تا در منوی کالی لینوکس اسم ابزار (DirBuster) رو جست و جو کنید، و ابزار رو باز کنید

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

ابزار رو که بازکردید با صفحه ای به شکل بالا رو به رو میشید

در قسما Target URL باید آدرس URL وبسایتی که میخواهید دایرکتوری هاش رو بررسی کنید رو با فرمت زیر وارد کنید:

http:website.com:80

و اگر وبسایت موردنظر از پروتکل HTTPS استفاده میکرد، به شکل زیر:

https://site.com:443

انتخاب Wordlist

در این مرحله باید یک Wordlist به برنامه معرفی کنیم تا درخواست های GET ای که میخواهد ارسال کند را از درونه لیست انتخاب کند

یعنی هربار یک نام دایرکتوری را از لیست انتخاب کرده و با اون درخواست GET خود را ارسال میکند

و بر اساس پاسخ دریافتی (۲۰۰, ۴۰۴, ۳۰۲, ۴۰۳,…) نتیجه میگیرد که دایرکتوری و یا فایل موردنظر وجود دارد یا نه

برای اینکار در صفحه برنامه، در قسمت File With List Of dirs/files، مسیر Wordlist را با انتخاب کردن Browse به برنامه بدهیم

میتونید در مسیر /usr/share/wordlists/dirbuster  از wordlist های پیش فرض ابزار استفاده کنید

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

اگر تیک گزینه ی Brute Force Files خورده باشه به این معنی هست که از کلمات داخل Wordlist برای پیدا کردن فایل های php (پسوند های وارد شده در قسمت File Extension) هم استفاده میکنه

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

در نهایت روی Start کلیک میکنیم تا اسکن رو شروع کنه

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

و میبینید که بعد از ۳ ساعت به چه صورتی ساختاری از دایرکتوری ها و فایل های وبسایت رو در اختیار داریم

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

موفق باشید

نوشتن دیدگاه