ts icon
سرور تیم اسپیک گاردایران
Reza.Black

ساخت ماژول ساده http_scanner در متا

پست های پیشنهاد شده

به نام خدا 

با سلام

یکی از قابلیت های فوق العاده متا این هست که ما می تونیم ماژول خودمون رو بسازیم و به متا اضافه کنیم.

به خاطر این من ماژول http_scanner رو انتخاب کردم چون هم ساده هست و هم تو مباحث مربوط به ماژول نویسی متا می تونه خیلی کمک کننده باشه.

کلی و بخش به بخش توضیح می دم.

 

meta1.PNG.892ff29fb5dab5ab4eab749dcbc2a931.PNG

 

خطوط اولیه کامنت هستن.

در قسمت require روش های مربوط به پروتکل http از کتابخونه ی rex رو برای ما محیا می کنه که برای ایجاد اتصال و درخواست ها هست.

البته شامل تمامی کتابخونه های هسته ایی هستش.

در ادامه کلاس متا رو برای کد تعریف می کنیم که کد از نوع یک ماژول و ماژول از نوع ایگزیلیاری هستش.

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

مثل Msf::Auxiliary::WmapScanServer که فایل کتابخونه ایی wmapmodule.rb رو به کد ما اضافه می کنه.

wmap یک نوع افزونه ی پویا برای متا هست که برای اسکن وب خیلی کاربرد داره.

و اما مابقی ماژول

 

meta2.PNG.1805355038db5430d9f56fa6b15ec890.PNG

 

این بخش مربوط به مقدار دهی اولیه یا initialize هست و برای کسب اطلاعات خصوصیات ماژول و مشخص کردن پارامترها که می تونه تا حدودی هم سلیقه ایی باشه.

اما مهمترین بخش ماژول ما

 

meta3.thumb.PNG.0135bdd425d26b3d0a93e4812dd2e012.PNG

 

این بخش که که متود اصلی ما هست آدرس ip رو به عنوان پارامتر برای متود ما که نام اون run_host هست پاس می ده.

عبارت connect که اتصال اولیه رو با سرور ایجاد می کنه و متغیر res که درخواست خام رو با روش GET در روت سرور رو درون خودش ذخیره می کنه.

یک متغیر دیگه به نام fp برای چک کردن خروجی متغیر res که اگه خروجی بدون مشکل دریافت شد بلافاصله دستور بعدی رو اجرا کن.

که معمولا اطلاعات مهم مربوط به فیلدهای هدر درخواست مثل Powered-by رو ساپورت می کنه.

تو خطوط پایانی هم دستورات مربوط به چاپ پیام داخل کنسول و همین طور مدیریت استثنا ها و خطاها رو داریم.

و در نهایت پایان اتصال و ماژول.

وقتشه ماژول رو تست کنیم.

کد رو ذخیره می کنیم و تو مسیر مورد نظرمون که محل قرارگیری ماژول های ایگزیلیاری از نوع http هست قرار می دیم.

 

meta4.PNG.ca797a285082f394f77354b074717c89.PNG

 

متا رو اجرا می کنیم و ماژولی رو که ساختیم انتخاب می کنیم و همینطور گزینه ها رو هم چک می کنیم.

تارگت رو انتخاب می کنیم و ماژول رو اجرا می کنیم.

 

meta5.PNG.f1b81b35b3e7a4a1bea4690c6de6baa4.PNG

 

meta6.PNG.a28160f0d08915c5e4a8535a56295f81.PNG

 

تمام.

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای ارسال دیدگاه یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید دیدگاهی ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

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

ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید

ورود به حساب کاربری