世界最惡12行代碼,輕松讓你所有手機(jī)電腦抓瞎
事情的起因是這樣的,國外一哥們Cyber Security在推特上發(fā)了這么一條推文:
神秘的12行代碼(圖片來自0xroot)
這哥們聲稱,如果你使用上述這段12行的JavaScript代碼,就可以能讓firefox、chrome、safari瀏覽器崩潰,而且還能讓iphone重啟,安卓手機(jī)閃退!
網(wǎng)友們起初并不相信,于是繼續(xù)在推特上深挖,發(fā)現(xiàn)另一小哥IT Security Tweets也發(fā)過類似的推文:
依舊是這段代碼
(圖片來自0xroot)
完整HTML代碼如下:
注意:前方高能!!
注意:前方高能!!
注意:前方高能!!
如果光用說的你可能不信
所以再此附上demo 感(shou)興(jian)趣的可以試試:
http://www.0xroot.cn/demo.html(注意:請保存瀏覽器正在運(yùn)行的編輯內(nèi)容或任務(wù)!)
點(diǎn)開后會發(fā)生什么?反正我的第一反應(yīng)是這樣的:
簡直瞎了我的眼!
如果你是PC端用戶,點(diǎn)開鏈接以后,電腦CPU內(nèi)存極有可能一路狂飆直至瀏覽器崩潰卡死.。.
如果你是移動端(安卓、iPhone)用戶,點(diǎn)開鏈接以后你的瀏覽器會閃退!在微博、微信點(diǎn)開鏈接也同樣會閃退。
為什么會發(fā)生此現(xiàn)象呢?對此我在知乎上找到了一位名為“小米”的大神解答:
history.pushstate() 是HTML5引入的API,pushState將指定的URL添加到瀏覽器歷史里,存儲當(dāng)前歷史記錄點(diǎn)。 當(dāng) i<100000 的時(shí)候會循環(huán)的 將 total記錄到瀏覽器歷史里面,重復(fù)多了,瀏覽器就承受不住了,自然就崩了。
好吧,反正對于連“hello world”都不會編的我,是一點(diǎn)也看不明白...總之牛氣炫酷吊炸天就對了!