آشنایی با پایتون در تست نفوذ
در این قسمت از اموزش قصد داریم به آشنایی با پایتون در تست نفوذ بپردازیم ، با ما در ادامه این اموزش هک و امنیت همراه باشید.
آشنایی با زبان برنامه نویسی پایتون در تست نفوذ
اگر در زمینه برنامه نویسی فعال باشید حتما متوجه این موضوع شده اید که به تازگی زبان برنامه نویسی پایتون از اهمیت و محبوبیت بسیار بالایی برخوردار شده است، اما چرا ؟ به این دلیل که زبان برنامه نویسی پایتون یکی از زبان های سطح بالا ، شیرین و بسیار پرقدرت است و شما با استفاده از این زبان برنامه نویسی می توانید در زمینه های مختلف فعالیت کنید مانند برنامه نویسی وب , برنامه نویسی شبکه و سوکت نویسی , برنامه نویسی هوش مصنوعی , نوشتن برنامه های مخرب مانند تروجان , ویروس , دیداسر , کیلاگر و …
تا اینجا متوجه شدید که زبان برنامه نویسی پایتون یک زبان بسیار قدرتمند است که کتابخانه های بسیار زیادی برای این زبان وجود دارد که شما می توانید از این کتابخانه ها به سادگی استفاده کنید. یکی دیگر از دلایلی که پایتون را بسیار محبوب کرده شیرین بودن و ساده بودن این زبان است که می توانید با استفاده از مثال زیر این سادگی را درک کنید.
دستوری در زبان برنامه نویسی c++ که موجب چاپ شدن یک دستور می شود :
<include <iostream
;using namespace std
}() int main
;”cout<<“pentestcore
;return 0
{
دستوری در زبان برنامه نویسی python که موجب چاپ شدن یک دستور می شود :
;(“print(“pentestcore
حال نیز مشاهده کردید که زبان برنامه نویسی پایتون نسبت به دیگر زبان ها چقدر ساده تر است.
کتابخانه های موجود برای پایتون در حوزه تست نفوذ و امنیت
زبان برنامه نویسی پایتون کتابخانه های بسیار قدرتمندی در زمینه تست نفوذ و امنیت دارد که در ادامه با برخی از این کتابخانه ها اشنا خواهید شد.
zipfile : این کتابخانه به شما کمک می کند تا توانایی کرک پسورد فایل های فشرده را داشته باشید
و با استفاده از این کتابخانه می توانید اقدام به کرک فایل های فشرده با پسوند zip کنید .
socket : با استفاده از import کردن این کتابخانه می توانید سوکت نویسی در شبکه انجام دهید و برنامه هایی مانند شناسایی باز یا بسته بودن پورت در یک سرویس را بنویسید ( این کتابخانه امکانات بسیار زیادی در اختیار شما قرار خواهد داد و تنها محدود به نوشتن یک برنامه ساده با عنوان اسکن پورت نمی شود و در مواردی مانند اکسپلویت نویسی کاربرد زیادی خواهند داشت. )
Subprocess : این کتابخانه این قابلیت را به شما خواهد داد که یک محیط شل مخصوص برای خود طراحی کنید.
winreg : با استفاده از فراخوانی این ماژول می توانید به رجیستری ویندوز دسترسی داشته باشید و همانگونه که می دانید مهم ترین بخش سیستم عامل بخش رجیستری است و اگر شما بتوانید به این قسمت از سیستم عامل قربانی دسترسی داشته باشید.
os : با استفاده از این کتابخانه می توانید دستورات سیستمی را بر روی ویروس خود پیاده سازی کنید.
شما می توانید با استفاده از ترکیب کتابخانه های بالا نیز ویروس های بسیار جالبی بسازید.
برای درک بهتر این موضوع به مثال زیر توجه کنید :
import base64
: while True
(” : data = input(“\n please enter the value
(“encodedBytes = base64.b64encode(data.encode(“utf-8
(“encodedStr = str(encodedBytes, “utf-8
(“print(“\n endofe is = “,encodedStr
در قطعه کد بالا یک ابزاری نوشته شده که در ابتدا کتابخانه base64 فراخوانی شده است ( این کتابخانه می تواند ورودی های وارد شده به ان را به الگوریتم base64 تبدیل کند و به اصطلاح رمزنگاری کند البته لازم است که بدانید decode کردن ورودی هایی که base64 هستند را هم انجام می دهد، که در واقع زبان پایتون در تست نفوذ با این کتابخانه ها می تواند کار را برای متخصص امنیت بدون استفاده از ابزار ها و برنامه های دیگر بسیار اسان کند. )
سپس در مرحله بعدی یک حلقه بینهایت تعریف شده است تا به صورت مداوم از کاربر ورودی بگیرید و برنامه بسته نشود و در صورتی که کاربر ترکیب کلید های cntrl+c را فشار داد برنامه باید خاتمه یابد و سپس در ادامه از کاربر یک ورودی دریافت کرده است، تا بتواند ورودی کاربر را به صورت base64 به کاربر نمایش دهد , سپس در مرحله بعدی از تابع های موجود در کتابخانه base64 استفاده کرده است و در نهایت خروجی را به string تبدیل کرده و خروجی را به کاربر نمایش می دهد.
نمونه اسکریپتی که در بالا مشاهده کردید تقریبا کاری مشابه باج افزار ها را انجام می دهد و شما می توانید با گسترش دادن این اسکریپت و استفاده از الگریتم های پیچیده تر با کلید های رمزنگاری و استفاده از کتابخانه هایی که معرفی کردیم یک باج افزار ساده اما کارامد برای تست بنویسید .
اشنایی بیشتر با پایتون
پس از نوشتن ویروس خود می توانید از طریق متد های مختلف ویروس خود را انتشار دهید. در ابتدای کار باید ویروس پایتون خود را تبدیل به فایل اجرایی کنید با پسوند exe کنید که این عملیات را ابزار های بسیار زیادی برای شما انجام خواهند داد و در نهایت با می توانید فایل خود را با استفاده از بایندر های مختلف با برنامه های های محبوب و پر استفاده ترکیب کنید و سپس برای قربانی خود ارسال کنید .
تفاوت های میان پایتون 2 و 3
بسیاری از افراد سوالاتی در خصوص تفاوت میان پایتون 2 و 3 می پرسند و قصد دارند تفاوت این دو نسخه را بدانند .
باید بدانید که این دو نسخه تفاوت چندانی با یکدیگر ندارند و تنها فقط بعضی از دستورات در پایتون 3 بهینه تر شده اند و شما با یادگیری زبان برنامه نویسی پایتون می توانید به راحتی کد های این زبان را از پایتون 3 به 2 و از پایتون 2 به 3 تغیر دهید و البته لازم به ذکر است که حتما باید از پایتون 3 استفاده کنید زیرا بروز تر است و برای یک محقق امنیتی بروز بودن یکی از مهم ترین ها در چک لیست امنیتی خود است , بنابراین اگر قصد شروع یادگیری پایتون برای تست نفوذ را دارید بهترین راه برای شما یادگیری پایتون 3 است.
نکته ای که قابل توجه است این است که زمانی که از اسکریپت ها یا اکسپلویت های پایتون استفاده می کنید باید به این نکته دقت داشته باشید که ورژن پایتون استفاده شده در اسکریپت را شناسایی کنید و زمانی که ورژن را شناسایی کردید باید اسکریپت مربوطه را با استفاده از نسخه مربوطه اجرا کنید.
نکته : برای تشخیص ورژن پایتون استفاده شده در اسکریپت یا اکسپلویت مربوطه می توانید به سورس کد اسکریپت مراجعه کنید و به قسمتی که یک خروجی را چاپ می کند دقت کنید : (print)
اگر دستور print به شکل زیر بود به این معنی است که ورژن پایتون استفاده شده ورژن 2 است :
print code
اما اگر به صورت زیر نوشته شده بود به این معنی است که از پایتون 3 استفاده شده است :
(print (code
جمع بندی
در این اموزش شما را با نحوه ویروس نویسی با پایتون اشنا کردیم و کتابخانه های محبوب در این زمینه را برای شما معرفی کردیم در نهایت با بررسی یک نسخه های پایتون اموزش را به پایان رساندیم . نکته ای که وجود دارد این است که برای اینکه بتوانید یک برنامه نویس خوب شوید باید به صورت مداوم علم خود را بروز نگه دارید و هر روز از اموزش های جدید استفاده نمایید.
موفق باشید.