جستجو در تالارهای گفتگو
در حال نمایش نتایج برای برچسب های 'create module in meta'.
1 نتیجه پیدا شد
-
ساخت ماژول ساده http_scanner در متا
Reza.Black پاسخی ارسال کرد برای یک موضوع در متاسپلویت Metasploit
به نام خدا با سلام یکی از قابلیت های فوق العاده متا این هست که ما می تونیم ماژول خودمون رو بسازیم و به متا اضافه کنیم. به خاطر این من ماژول http_scanner رو انتخاب کردم چون هم ساده هست و هم تو مباحث مربوط به ماژول نویسی متا می تونه خیلی کمک کننده باشه. کلی و بخش به بخش توضیح می دم. خطوط اولیه کامنت هستن. در قسمت require روش های مربوط به پروتکل http از کتابخونه ی rex رو برای ما محیا می کنه که برای ایجاد اتصال و درخواست ها هست. البته شامل تمامی کتابخونه های هسته ایی هستش. در ادامه کلاس متا رو برای کد تعریف می کنیم که کد از نوع یک ماژول و ماژول از نوع ایگزیلیاری هستش. در ادامه باز هم یکسری فایل های کتابخونه ایی که هر کدوم تو یه مسیر مطلق داخل ساختار متا تعریف شدن رو اینکلود می کنیم. مثل Msf::Auxiliary::WmapScanServer که فایل کتابخونه ایی wmapmodule.rb رو به کد ما اضافه می کنه. wmap یک نوع افزونه ی پویا برای متا هست که برای اسکن وب خیلی کاربرد داره. و اما مابقی ماژول این بخش مربوط به مقدار دهی اولیه یا initialize هست و برای کسب اطلاعات خصوصیات ماژول و مشخص کردن پارامترها که می تونه تا حدودی هم سلیقه ایی باشه. اما مهمترین بخش ماژول ما این بخش که که متود اصلی ما هست آدرس ip رو به عنوان پارامتر برای متود ما که نام اون run_host هست پاس می ده. عبارت connect که اتصال اولیه رو با سرور ایجاد می کنه و متغیر res که درخواست خام رو با روش GET در روت سرور رو درون خودش ذخیره می کنه. یک متغیر دیگه به نام fp برای چک کردن خروجی متغیر res که اگه خروجی بدون مشکل دریافت شد بلافاصله دستور بعدی رو اجرا کن. که معمولا اطلاعات مهم مربوط به فیلدهای هدر درخواست مثل Powered-by رو ساپورت می کنه. تو خطوط پایانی هم دستورات مربوط به چاپ پیام داخل کنسول و همین طور مدیریت استثنا ها و خطاها رو داریم. و در نهایت پایان اتصال و ماژول. وقتشه ماژول رو تست کنیم. کد رو ذخیره می کنیم و تو مسیر مورد نظرمون که محل قرارگیری ماژول های ایگزیلیاری از نوع http هست قرار می دیم. متا رو اجرا می کنیم و ماژولی رو که ساختیم انتخاب می کنیم و همینطور گزینه ها رو هم چک می کنیم. تارگت رو انتخاب می کنیم و ماژول رو اجرا می کنیم. تمام.