forked from p34709852/monkey
Fixed mysql finger printer py3 bugs
This commit is contained in:
parent
1f5acbc287
commit
fc063a5378
|
@ -50,7 +50,7 @@ class MySQLFinger(HostFinger):
|
||||||
return False
|
return False
|
||||||
|
|
||||||
version, curpos = struct_unpack_tracker_string(data, curpos) # special coded to solve string parsing
|
version, curpos = struct_unpack_tracker_string(data, curpos) # special coded to solve string parsing
|
||||||
version = version[0]
|
version = version[0].decode()
|
||||||
self.init_service(host.services, SQL_SERVICE, MYSQL_PORT)
|
self.init_service(host.services, SQL_SERVICE, MYSQL_PORT)
|
||||||
host.services[SQL_SERVICE]['version'] = version
|
host.services[SQL_SERVICE]['version'] = version
|
||||||
version = version.split('-')[0].split('.')
|
version = version.split('-')[0].split('.')
|
||||||
|
|
|
@ -40,7 +40,7 @@ def struct_unpack_tracker_string(data, index):
|
||||||
:param index: Position index
|
:param index: Position index
|
||||||
:return: (Data, new index)
|
:return: (Data, new index)
|
||||||
"""
|
"""
|
||||||
ascii_len = data[index:].find('\0')
|
ascii_len = data[index:].find(b'\0')
|
||||||
fmt = "%ds" % ascii_len
|
fmt = "%ds" % ascii_len
|
||||||
return struct_unpack_tracker(data, index, fmt)
|
return struct_unpack_tracker(data, index, fmt)
|
||||||
|
|
||||||
|
@ -159,7 +159,7 @@ def check_tcp_ports(ip, ports, timeout=DEFAULT_TIMEOUT, get_banner=False):
|
||||||
if get_banner and (len(connected_ports_sockets) != 0):
|
if get_banner and (len(connected_ports_sockets) != 0):
|
||||||
readable_sockets, _, _ = select.select([s[1] for s in connected_ports_sockets], [], [], 0)
|
readable_sockets, _, _ = select.select([s[1] for s in connected_ports_sockets], [], [], 0)
|
||||||
# read first BANNER_READ bytes
|
# read first BANNER_READ bytes
|
||||||
banners = [sock.recv(BANNER_READ).decode() if sock in readable_sockets else ""
|
banners = [sock.recv(BANNER_READ).decode(errors='ignore') if sock in readable_sockets else ""
|
||||||
for port, sock in connected_ports_sockets]
|
for port, sock in connected_ports_sockets]
|
||||||
pass
|
pass
|
||||||
# try to cleanup
|
# try to cleanup
|
||||||
|
|
Loading…
Reference in New Issue