记录黑客技术中优秀的内容, 传播黑客文化,分享黑客技术精华

那条可以使你iPhone和Mac网页浏览器崩溃的链接

2016-01-27 23:20

那条可以使你iPhone和Mac网页浏览器崩溃的链接

2016-01-27 14:58:56 作者:Mickeyyyyy
阅读:1947次 点赞(0) 收藏

分享到:

http://p4.qhimg.com/t017cfe06eb0620331b.png

如果说有个网站一点开就会导致iPhone崩溃,那大多数人肯定会认为这是个病毒网站。事实并非如此,近日有网友称,点开网站“crashsafari.com”设备就会卡顿甚至重启。而在后续的试验中发现,OS X和iOS版的Safari浏览器受影响最明显,各平台的Chrome和火狐浏览器也未能幸免,几乎均以崩溃告终。

这一网站的源代码已被公开。crashsafari.com首次获得关注是在2015年4月,但在Hacker News上周刊文介绍之后,这一网站开始吸引主流人群的兴趣。

研究人员警告称,大家不要尝试点击这个恶意链接,也请大家不要再传播或者分享这条链接。

无论是在家还是在办公室,都请大家不要点击这条链接,也不要劝其他人去点击它。除此之外,也请大家不要将这条恶意链接通过邮件发送给他人,因为其他人有可能会点击这条链接。

没错,我们这样来建议大家不要点击这条链接,听起来有点史翠珊效应(史翠珊效应,即:试图阻止大众了解某些内容,或压制特定的网络信息,结果适得其反,反而使该事件为更多的人所了解,用中国一个成语就是欲盖弥彰)的感觉了,但是我们不得不这样做。

请各位苹果狂热粉们不要尝试去访问crashsafari dot com。

从技术层面上来看,这个网站实际上并不会使你的Safari浏览器崩溃,至少一开始不会。因为在你使用Mac或者iPhone访问这个网站之后,网站中的HTML代码会不断地对你的内存空间循环写入信息,直到你的设备崩溃为止。

可怕的是,这个流氓网站所使用的恶意代码却十分的简单,如下图所示:

http://p4.qhimg.com/t01b69a762bf49cca6c.png

HTML页面中所显示的文字信息如下图所示:

http://p4.qhimg.com/t017607bc12534c2293.png

如果你不是一名程序员,你也不用担心,这个JavaScript脚本是很容易理解的。

这段脚本代码会创建大量的字符串,这些字符串中的数据从0开始,一直到99999,每一个字符串都是这些数字的组合序列,具体信息如下图所示:

http://p5.qhimg.com/t01f0d7342bc016c63a.png

每当一个新的字符串创建成功之后,浏览器会使用一个特殊的函数-history.pushState()来将这些字符串存储进浏览器的历史记录列表中,用户在访问了这个恶意网站之后,浏览器的历史记录便会立刻变成下图所示的样子:

http://p1.qhimg.com/t01e95289817a0e98dc.png

在你浏览器的历史记录列表中,你最后得到的URL记录将会是所有从0至99999的数字组合,这个字符串的长度总共有1×10 + 2×90 + 3×900 + 4×9000 + 5×90000个字节。

光是这一个字符串就需要耗费0.5MB(488,890字节)的内存空间,而这只是列表中的最后一条记录而已。

当浏览器在内存中创建了100000条字符串记录,并放入历史记录列表时,所有字符串加起来的总长度将为488,890 + 488,885 + 488,880 … 3 + 2 +1字节。

所以,字符串的总大小并不是与脚本中的循环迭代次数成正比的,而是与循环次数的平方(100,000 x 100,000, 即 100亿)成正比的。

因为在浏览器的历史记录列表中,总共有100,000条记录,其中每一条记录平均会消耗250KBytes的内存空间。这样算来,总共将需要使用25GBytes大小的内存空间。

最后,Safari浏览器将会耗尽你计算机中的内存,系统将会无法响应用户的操作,所以你需要重启系统才能使系统恢复正常。

如果你足够耐心,你可以开启终端(终端窗口可能需要一段时间才会显示出来),然后运行命令killall -9 Safari,这段命令将会使OS X终止系统中的浏览器进程。

当然了,你也可以切换到Finder之中,然后在系统顶部的菜单中点击苹果图标,然后使用强制退出(Force Quit)功能来终止Safari进程。这种方法与我们在上面所介绍的方法结果是一样的。

因为Safari浏览器会一直请求内存空间,并占用CPU资源,所以在终止了浏览器进程之后,系统可能还需要等待一段时间系才能恢复正常。

下图显示的是系统在陷入了“crashsafari”循环期间,内存和CPU资源的使用情况:

http://p0.qhimg.com/t01cb4fc635918e098f.png

系统回到正常之后,情况如下图所示:

http://p6.qhimg.com/t01d671db79bb889a53.png

这样的小技巧也能够适用于其他的浏览器吗?

我们使用火狐浏览器进行了测试,该浏览器在访问了这个恶意网址之后,会弹出一个警告对话框。在此期间,网页中的脚本代码将无法响应,所以用户很容易就可以关掉浏览器了。

至于其他的浏览器,我们还没有进行过测试。我们对最坏的情况进行了假设:因为对于任何的网页浏览器而言,处理大量内存数据的加载过程都是一个非常棘手的问题,不同品牌的浏览器都会采用不同的技术手段来与“恶意”页面进行斗争。

在此顺便提一下,我们并不是在开玩笑,我们再一次警告你:“不要去点击这条链接!”

虽然这只是一条链接,点击它也就是一瞬间的事情。但是如果你让你的朋友去点击了这条恶意链接,那么他们将需要终止Safari进程才可以使他们的计算机重新恢复正常,这不仅会浪费他们的时间,而且还有可能使他们在此之前未保存的信息全部丢失。

目前,唯一能处理这一网站的浏览器是微软的Edge浏览器,可能是因为Edge对这类脚本的响应机制不同吧。

苹果、谷歌和Mozilla很可能会调整浏览器对这类脚本的响应方式。很明显,火狐浏览器曾试图停止这一脚本。不过考虑到这并非安全问题,因此问题的解决可能需要等待较长时间。

从计算机安全的角度出发,“有了这样的朋友,谁还需要敌人呢?”,请你不要成为你朋友眼中的那种人。毕竟,我们现在在网络世界中已经有足够多的敌人了。


本文由 360安全播报 翻译,转载请注明“转自360安全播报”,并附上链接。
原文链接:https://nakedsecurity.sophos.com/2016/01/26/dont-share-the-link-that-crashes/

知识来源: bobao.360.cn/news/detail/2679.html

阅读:92999 | 评论:0 | 标签:phone

想收藏或者和大家分享这篇好文章→复制链接地址

“那条可以使你iPhone和Mac网页浏览器崩溃的链接”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

公告

关注公众号hackdig,学习最新黑客技术

推广

工具

标签云