شما هم اکنون در حال مشاهده مطلب آموزش ساخت ابزار پیدا کردن صفحه ادمین (Admin Finder) با پایتون از اولترا سیکوریتی می باشید

این صفحه تاکنون 590 بار بازدید داشته است
آموزش ساخت ابزار پیدا کردن صفحه ادمین (Admin Finder) با پایتون
چکیده مطلب:

سلام عرض ادب احترام دارم خدمت همه شما کاربران عزیز وب سایت تیم امنیتی اولترا! امیدوارم حالتون خوب باشه…عزیزان گرانقدر توی این بخش میخوایم با هم دیگه بیاییم و یک اسکریپت ساده ای رو با پایتون بنویسیم تحت عنوان (admin page finder) امیدوارم از این بخش خوشتون بیاد مبحث تست نفوذ وب یکی از بخش […]

سلام عرض ادب احترام دارم خدمت همه شما کاربران عزیز وب سایت تیم امنیتی اولترا! امیدوارم حالتون خوب باشه…عزیزان گرانقدر توی این بخش میخوایم با هم دیگه بیاییم و یک اسکریپت ساده ای رو با پایتون بنویسیم تحت عنوان (admin page finder) امیدوارم از این بخش خوشتون بیاد

مبحث تست نفوذ وب یکی از بخش های پرطرفدار هستش که ما خیلی کم روش کارکردیم از این به بعد آموزش های بیشتری از تست نفوذ وب درسایت قرار میدیم

تو این آموزش ما یک اسکریپ ساده مینویسیم با پایتون که صفحه لاگین سایت رو برای ما پیدا بکنه بریم سراغ آموزش ساخت ابزار پیدا کردن صفحه لاگین با پایتون

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

مثل…(ultrasec.org/admin) حالا این بستگی داره که چطور باشه…بعضی از سایت ها هستن که ادرس شون admin.asp یا admin.php و یا وب سایت های وردپرسی صفحه ادمین شون بصورت پیشفرض wp-admin هستش

حالا ما میخوایم یه برنامه بنویسیم که اسم یک سایت رو بگیره و ادرس صفحه ادمین رو به ما بده

الگوریتم کارمون اینطوره!

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

حالا ما اینجا به یه دیکشنری احتیاج داریم که تعداد زیادی کاراکتر ممکن برای اسم یک صفحه ورود یک وب سایت رو داشته باشه!
مثلا

admin.html & login.php & wp-admin.php

و انواع این جور کاراکتر ها که میتونید توی وب سایت گیت هاب اون رو پیدا کنید و توی اسکریپتتون بکارگیری کنید!

و ما میایم توی این اسکریپت از کاربر اسم یک سایت رو میگریم و توی یک متعیر ذخیره می کنیم.اون فایل دیکشنری رو بایک حلقه, خط به خط میخونیمش!
هر حالت ممکن توی فایل دیکشنری تو یه خط جدا نوشته شده. توی هر بار اجرا شدن حلقه، خطی رو که از دیکشنری خوندیم رو کنار متغیری که اسم سایت رو نگه میداره میچسبونیم، یعنی کلا یه (ulr) میسازیم مثلا متغیر محتواش ultrasec.org هست.توی یک بار اجرای حلقه آدرس مثلا ultrasec.org/admin
ساخته میشه. توی اجرای بعدی حلقه آدرس مثلا ultrasec.org/admin.asp ساخته میشه و به همین ترتیب تا آخر حلقه که خوندن فایل تموم میشه توی هر بار اجرای حلقه پس از درست شدن این ادرس های ممکن برای صفحه مدیر.درخواستی واسه باز شدن اون صفحه ارسال میشه!
این کار رو با استفاده از کتابخونه (request) در پایتون انجام میدیم!
حالا قضیه اینه..ممکنه اون اردسی که اخر سایت اضافه میکنیم وجود نداشته باشه یا بلعکس! این رو با استفاده از header های بسته های http میفهمیم…
حتما خطای ۴۰۴ رو دیدن! این عدد اگر توی header برگشتی از سمت سرور باشه…یعنی صفحه درخواستی شما وجود نداره! از این اعداد زیاد هستن و فکر میکنم همه اونای که با ۴۰۰ شروع بشن به منزله خطا هستن ……. ۲۰۰ به معنی وجود صفحه مورد نظر هستش، یعنی اگه توی header بسته بازگشتی از سمت سرور عدد ۲۰۰ باشه یعنی صفحه مورد نظر وجود داره. این بررسی header رو با یک if انجام میدیم. اگه ۲۰۰ بود، آدرس رو چاپ کن در غیر اینصورت کاری نمیکنه و میره حلقه رو ادامه میده. منطق برنامه خیلی ساده هستش!!

به عکس زیر توجه کنید

 

دستور raw-input که یک رشته رو توی خروجی چاپ میکنه و منتظر میمونه تا کاربر یه مقداری رو وارد کنه. بعد از اون مقدار ورودی کاربر رو توی متغیر var میریزه. و بعدش میاییم با دستور open فایل رو باز می کنیم. اون r که میبینید از read میاد یعنی فقط قراره فایل خونده بشه. و میاد فایل رو توی متغیر dic__file میریزه. بعدش با یک for فایل رو خط به خط میخونه. دو خط اول حلقه for خطوط فایل رو از هم جدا میکنه و url رو میسازه. tmp شامل خطوط فایل هستش و var هم که شامل اسم سایته و با (+) اینا رو به هم میچسبونیم. و بعدش درخواستی رو با این url ارسال میکنیم. اگر header بسته بازگشتی شامل ۲۰۰ بود یعنی صفحه وجود داره و برنامه چاپش میکنه!!!

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

دیدگاه شما

کلیه حقوق این وب سایت نزد اولترا سیکوریتی محفوظ می باشد و هرگونه کپی برداری از قالب و محتوا پیگرد قانونی دارد

طراحی و توسعه توسط اولترا سیکوریتی