ابزار هایدرا Hydra

منتشر شده در دسته : تست نفوذ وب

ابزار هایدرا یکی از قدرتمندترین گزینه های موجود برای شکستن پسوردها به صورت آنلاین به شمار می رود و می توان گفت در این زمینه بی همتاست . قبلا درباره حملات بروت فورس و دیکشنری و یا حملات هیبرید و ترکیبی گفتگو کردیم . گفتیم که در شرایطی که همه راههای موجود برای نفوذ بسته شدند , استفاده از این تکنیک ها ممکن است کارآمد باشد . دلیل این موضوع که گفتم ممکن است کارآمد باشد این است که استفاده از یک پسورد امن ممکن است امکان موفقیت این نوع حملات را به صفر برساند .

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

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

صحبت کافی است و کمی با ابزارها آَشنا شویم .

بازکردن ابزار هایدرا

در صورتیکه بخواهید ابزار قدرتمند هایدرا را از این آدرس دریافت کنید با پیام زیر مواجه می شوید .

ابزار هایدرا

حتی گوگل کروم هم می داند که این ابزار تا چه اندازه می تواند آسیب رسان باشد. خوشبختانه شما نیاز به دانلود و نصب و یا کامپایل THC Hydra ندارید چرا که این ابزار به صورت پیش فرض در کالی لینوکس تعبیه شده است و به منظور استفاده کافی است به مسیر زیر در کالی لینوکس رفته تا به ابزار هایدرا دسترسی پیدا کنید .

و با تصویر اژدهای سه سر روبرو می شوید .

ابزار هایدرا

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

به منظور دسترسی مجدد به همین راهنما کافی است تا مجدد دستور hydra -h را درون خط فرمان وارد کنید .

ابزار هایدرا

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

ابزار هایدرا نسخه ۸.۱ در سال ۲۰۱۴ توسط .. .. لطفا از این ابزار در سازمان های سرویس مخفی یا نظامی یا هر نوع فعالیت غیرقانونی دیگری استفاده نکنید . اگر نظر من را می خواهید هرگز بدون مجوز از این ابزار برای تست استفاده نکنید در غیر اینصورت عواقب قانونی آن دامن گیر شما خواهد شد و این مطلب تنها جنبه آموزشی دارد .

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

در دستور بالا به جای username نام کاربری مورد نظر برای لاگین و به جای password پسورد مورد نظر برای لاگین و به جای target آدرس هدف را وارد می کنیم . پس این دستور ساده تنها یک نام کاربری و پسورد را یکبار بر روی سیستم هدف تست می کند . این دستور ساده اصلا کاربردی نیست و تنها برای آشنایی کلی آن را بیان کردم .

اما توضیح سوییچ ها . سینتکس دستوری ابزار هایدرا به شکل زیر می باشد .

در نگاه اول بسیار ترسناک و پیچیده به نظر می رسد ولی زمانی که با کاربرد هر سوییچ آَشنا شوید خواهید دید که بسیار ساده است .

  • سوییچ l- نام کاربری مورد نظر برای لاگین را تعیین می کند . پس در صورتیکه در هدف از نام کاربری خود مطمئن هستید از این سوییچ استفاده کنید .
  • سوییچ L- در صورتی کاربرد دارد که می خواهید لیستی از اسامی کاربری را تست کنید که در این شرایط به جای وارد کردن یک نام کاربری , بایستی مسیر فایلی که حاوی لیستی از اسامی کاربری برای تست هست را وارد کنید . به بزرگ و کوچک بودن دو دستور l- و L- دقت کنید که اشتباهی وارد نکنید و در هر حالت فقط یکی از این دو سوییچ را باید بکار برد.
  • درست همین موضوع برای سوییچ p- و P- نیز کاربرد دارد که به ترتیب برای یک پسورد ثابت و یا فایلی حاوی لیستی از پسوردها کاربرد دارد .
  • در صورتی که دو فایل دیکشنری جداگانه برای نام کاربری و رمزعبور در اختیار دارید از سوییچ های L- و P- به ترتیب استفاده کنید . ولی اگر یک لیست اعتبارنامه حاوی نام و کاربری و رمزعبور دارید که نام کاربری و رمزعبور با دونقطه از هم جدا شده اند چه ؟ مثلا لیست زیر :

در این شرایط دیگر نیازی به استفاده از سوییچ های L- و یا P- ندارید و تنها با وارد کردن سوییچ C- به همراه نام فایل اعتبارنامه می توانید تست خود را انجام دهید .

  • سوییچ بعدی کمی پیچیده تر است و شیوه استفاده از آن نیاز به دقت دارد . شما باید سوییچ e- را به همراه سوییچ های nsr وارد کنید . مثلا e nsr- یا e ns-  .
    n مخفف نال یعنی زمانی که پسورد شما خالی است و s یعنی می خواهید تنها پسورد را وارد کنید . در برخی شرایط فرم های ورود سایت تنها نیاز به یک پسورد دارند که در اینجا کاربرد دارد . سوییچ r نیز لاگین با پسورد را به صورت معکوس انجام می دهد .
  • در صورتیکه می خواهید نتایج بدست آمده از حمله ابزار هایدرا به جای چاپ در صفحه نمایش درون یک فایل خروجی ذخیره شوند از سوییچ o- (مخفف output) استفاده کنید که به دنبال آن بایستی نام فایل نیز آورده شود .
  • سوییچ t- (مخفف Task به معنای وظیفه) تعیین کننده تعداد وظایف همزمان در حین حملات بروت فورس می باشد . در حالت پیش فرض و در صورتیکه این سوییچ را بکار نبرید , هیدار ۱۶ وظیفه را به صورت پارالل و موازی انجام می دهد . در صورت دلخواه می توانید این مقدار را کم یا زیاد کنید که به شرایط بستر شبکه و پتانسیل هدف بستگی دارد . مثلا وارد کنید t 10- تا ۱۰ وظیفه موازی را انجام دهد .
  • در صورتیکه می خواهید لیستی از سرورها را برای بروت فورس تعیین کنید می توانید از سوییچ M- استفاده کنید . به این منظور بایستی لیست سرورهای مورد نظر را درون یک فایل متنی ذخیره کنید . هر سرور را در یک خط وارد کنید و در صورتیکه می خواهید پورت را نیز تعیین کنید از دو نقطه استفاده کنید مثلا :

  • سوییچ W- زمان انتظار بین پاسخ ها را تعیین می کند که به صورت پیش فرض ۳۲ ثانیه می باشد.
  • سوییچ w- زمان انتظار بین اتصال های هر ترد (thread)
  • سوییچ f- موجب می شود که در صورت یک جفت نام کاربری و رمزعبور با موفقیت پیدا شد از اسکن خارج شود.
  • در صورتیکه سرویس مورد نظر شما بر روی پورت دیگری (غیر پورت پیش فرض) قرار دارد می تواند آن را با استفاده از سوییچ s- تعیین کنید .
  • در صورتیکه می خواهید یک اتصال SSL را برقرار کنید از سوییچ S- استفاده کنید .
  • سوییچ های v- و V- به منظور نمایش نتایج بیشتر (برگرفته از Verbose به معنی طولانی) می باشد.
  • سوییچ d- حالت دیباگ را تعیین می کند.

مهم ترین بخش سرویس هایی است که در هایدرا پشتیبانی می شود . یعنی ابزار هایدرا بر روی چه سرویس هایی می تواند حملات بروت فورس خود را پیاده سازی کند که در زیر لیست این سرویس آورده شده اند .

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

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

ساده ترین روش برای تست و یادگیری حملات هایدرا , انجام حملات بر روی مودم خانگی می باشد . در بیشتر موارد مودم دارای نام کاربری و رمزعبور پیش فرض می باشد که از این نظر برای تست عملکرد هایدرا مناسب است.البته باید گفت که هایدرا از همه پلتفورم ها پشتیبانی نمی کند و در بخش بالا لیست سرویس های پشتیبانی شده را مشاهده کردید . در صورتیکه مودم شما برای دسترسی نیازمند یک نام کاربری و رمزعبور برای دسترسی به صفحه اصلی است به سادگی می توانید آن را با هایدرا تست کنید . در صورتیکه مودم یا هر دیوایس دیگر شما برای ورود یک فرم احرازهویت نمایش می دهد , برای اجرای حمله نیاز است که از سرویس http-post-form استفاده کنید که خودش یک مبحث جداست و امیدوارم در کتاب تست نفوذ وب که بعدا منتشر خواهد شد (اگر از آیندگان نیستید) به طور مفصل در این باره توضیح داده شود.

صفحه ورود مودم من (TP-Link) برای دسترسی نیاز به احرازهویت می باشد که به صورت زیر است .

ابزار هایدرا

اگر اعتبارنامه های پیش فرض را تغییر نداده باشم , نام کاربری admin و رمزعبور admin می باشد .

برای شروع شما نیاز به یک لیست دیکشنری دارید . به صورت پیش فرض چندین فایل دیکشنری فوق العاده درون کالی لینوکس قرار داده شده است . برای دسترسی به این فایل ها کافی است به مسیر /usr/share/wordlists/ بروید .

ابزار هایدرا

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

برای شروع یادگیری بهتر است از فایل دیکشنری استفاده نکنیم . به همین منظور ابتدا با استفاده از دستورهای l- و p- نام کاربری و رمزعبور مودم خود را به ابزار هایدرا می دهیم . سپس آدرس آن را آورده و در ادامه سرویس ارتباطی که در اینجا http-get می باشد . ولی من برای اثبات صحت کار خود ابتدا رمز اشتباه را وارد می کنم . چرا که در بسیاری از موارد به دلیل اشتباه وارد کردن سینتکس پیش آمده که هایدرا به غلط نتایج موفقیت آمیز (False Positive) را به ما می دهد .

ابزار هایدرا

همانطور که مشاهده می کنید پسورد eshtebah نتیجه ای در بر ندارد .

اکنون پسورد admin را جایگزین می کنیم و بار دیگر تست می کنیم .

ابزار هایدرا

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

پس از اینکه از ساختار سینتکس خود مطمئن شدیم اکنون می توانیم همین کار را با استفاده از یک فایل دیکشنری انجام دهیم . دقت کنید که به جای سوییچ p- از سوییچ P- که برای تعیین فایل پسورد است استفاده کنید .

ابزار هایدرا

پس از تست و بررسی لیست پسورد, رمزعبور توسط هیدرا یافت می شود . همین کار مشابه را می توان برای نام کاربری انجام داد یعنی دو گزینه مجهول را به هایدرا بدهیم و به جای سوییچ l- از سوییچ L- استفاده کنیم . همچنین می توانید رمز ورود و دسترسی به مودم را تغییر دهید و بار دیگر تست و بررسی را انجام دهید .

توصیه هایی درباره ابزار هایدرا

  • هرگز از این ابزار برای نفوذ غیرمجاز به سیستم ها استفاده نکنید چرا که ساده ترین و پیش پا افتاده ترین سرورها حملات بروت فورس را درون لاگ مدیریت نمایش می دهند و از نظر قانونی عواقب خوبی را به همراه ندارد و همیشه مسیر درست و قانونی را انتخاب کنید.
  • برای شروع یادگیری ابزار هایدرا سعی کنید در محیطی تست که از صحت نام کاربری و رمزعبور آن مطمئن هستید کار را آغاز کنید . چرا ؟ هیدرا خیلی نسبت به سینتکس وارد شده حساس می باشد و کوچک ترین خطای وارد شده باعث بروز مشکل می شود و بدتر از همه اینکه شما هرگز از اشتباه بودن دستور وارد شده خود مطلع نمی شوید و هیدرا به اشتباه نتایج درستی را به شما نشان خواهد داد ! پس همانگونه که در بالا توضیح دادم همه حالات را در نظر بگیرید.
  • شما می توانید از ابزار xhydra که یک محیط گرافیکی در کالی لینوکس موجود است نیز استفاده کنید . برای دسترسی به آن کافی است xhydra را درون خط فرمان کالی وارد کنید.
  • برای مشاهده نتایج بیشتر می توانید سوییچ های v- یا V- یا هر دو را به دستور خود اضافه کنید و برای دیباگینگ می توانید سوییچ d- را استفاده کنید.
  • برای مطالعه صفحات راهنمای هر سرویس می توانید سوییچ U- را به همراه نام سرویس وارد کنید . مثلا برای مشاهده صفحات راهنمای سرویس های http-get  و http-post-form دستورهای زیر را وارد کنید :

این بخشی از کتاب مقدمات وب هکینگ می باشد که متاسفانه هنوز به پایان نرسیده است (اگر از آیندگان نیستید) . امید دارم که در این کتاب تا جای ممکن جنبه های گوناگون کار با هایدرا را به شما آموزش دهم. زمان همه چیز است.

صاحب امتیاز نت آموز : نویسنده , مدرس و متخصص در زمینه امنیت شبکه های رایانه ای

نوشته های مرتبط

تعداد پیام ها ۵

    1. سلام
      بله میشه هدف اصلی هایدرا پروتکل های آنلاین هست ولی همین پروتکل ها در شبکه داخلی هم می تونند استفاده بشند . مثلا http یا ftp . باید ببینید که چه پروتکلی مد نظرتون هست و ببینید که توسط هایدرا پشتیبانی میشه یا نه

  1. با سلام خدمت اقای شریعتی مهر. اقای مهندس لطفا کمی درباره ابزار patator که یه ابزار فوق العاده قوی و انعطاف پذیر نیز هست کمی صحبت کنید.چون به نظر می رسه ابزارهایی مثل هایدرا بیش از حد شناخته شده باشد.که کار رو کمی برای Brute-force کردن کمی سخت می کند.با تشکر جناب مهندس.

نظرات غیرمرتبط با موضوع این مطلب تایید نخواهند شد. این سوالات را می توانید از بخش پشتیبانی آموزشی مطرح کنید

پاسخ دهید

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