亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

蘋果iOS設(shè)備設(shè)置到1970會徹底變磚 iPhone變磚原理及解救方法

  發(fā)布時間:2016-02-14 10:56:56   作者:佚名   我要評論
iPhone繼上次"Error 53"變磚,又出現(xiàn)了另一個可以導(dǎo)致其“變磚”的操作,而這個bug只要簡單修改一下日期,那么蘋果iOS設(shè)備變磚了該如何解決呢?本文將提供iPhone變磚原理及解救方法供大家了解,希望對大家有所幫助

這個操作是把你的蘋果手機(jī)的日期設(shè)定為1970年1月1日,設(shè)置完成后關(guān)機(jī)重啟,這個時候你要是意外發(fā)現(xiàn)你的iPhone變成一塊“磚頭”不要驚訝,據(jù)說用這種方法變磚之后進(jìn)DFU模式都無法刷機(jī)重啟。

外媒稱凡是運行iOS 8以上系統(tǒng)的64位設(shè)備都有可能遇到這一問題,如果你的iphone是32位設(shè)備,那么先小小的恭喜你下,目前你還是安全的。看到這里的童鞋要注意了,如果你身邊有在用蘋果手機(jī),或者將要用蘋果手機(jī)的用戶,提醒他們注意安全,以免帶來不必要的麻煩。

蘋果iOS設(shè)備日期設(shè)置到1970年變磚?原理及解救方法來了

如果你把系統(tǒng)時間設(shè)置到1970年1月1日,那么你的iPhone便會徹底變磚。這個漏洞會影響到所有搭載iOS 8和iOS 9系統(tǒng)的64位iPhone,以及使用A7、A8、A8X和A9X處理器的iPad。

蘋果iOS設(shè)備日期設(shè)置到1970年變磚?原理及解救方法來了

iPhone時不時會出現(xiàn)一些奇奇怪怪的小毛病,比如會在收到特定短信或訪問特定網(wǎng)站時重啟。而在最近,又有人發(fā)現(xiàn)了iPhone的另一個“弱點”,而它則更加致命。如果你把系統(tǒng)時間設(shè)置到1970年1月1日,那么你的iPhone便會徹底變磚。

如果你沒有特別強(qiáng)烈的自虐傾向,請不要在自己的iPhone上進(jìn)行嘗試,因為這會讓你的手機(jī)徹底無法使用,當(dāng)中的數(shù)據(jù)也無法恢復(fù)。

根據(jù)Reddit用戶的分析,時區(qū)可能是引起這個bug的原因——如果你把日期設(shè)置得盡可能得久遠(yuǎn),時鐘值就會更改至0以下,從而引發(fā)這個嚴(yán)重問題。

蘋果目前尚未對此事發(fā)表任何評論。

UNIX時間戳

在確認(rèn)這件事情的真假前,你需要了解的一個知識是Unix時間戳。

iOS系統(tǒng)時間使用Unix時間戳(Unix epoch)表示(time_t數(shù)據(jù)類型)。在系統(tǒng)中,使用系統(tǒng)位數(shù)個二進(jìn)制位儲存時間。

Unix時間戳規(guī)定,UTC時區(qū)的1970年1月1日0點0時0秒的值為0,以秒為單位,即每過一秒,二進(jìn)制數(shù)字加1。

如果您想詳細(xì)了解Unix時間戳,請移步到 Unix Time。

不能往前調(diào),那我把時間往后調(diào)

有些好奇的朋友拿出了自己手機(jī),心想:既然我不能往回調(diào),那我要是把時間使勁往后調(diào)能怎樣?

細(xì)心的朋友發(fā)現(xiàn)了一個問題,iOS系統(tǒng)可以設(shè)置的最大時間是2038年1月1日,并不能再往后設(shè)置。蘋果一定考慮到了這個問題,為什么這么說呢?

在32位系統(tǒng)中,time_t是長度為32位的,有符號整數(shù)(signed int)類型。首個二進(jìn)制位是符號位,用來儲存正負(fù)。正數(shù)則為1970/1/1以后的時間,負(fù)數(shù)反之;其余的31位用來記數(shù)。當(dāng)時間到達(dá)2038年1月19日3時14分08秒時,數(shù)值位全部向前進(jìn)1,導(dǎo)致符號位被置1,其余31位為0。介時,將出現(xiàn)『時間回歸』的情況,系統(tǒng)時間變?yōu)?901年12月13日20時45分52秒,系統(tǒng)將會出現(xiàn)錯誤。

蘋果iOS設(shè)備日期設(shè)置到1970年變磚?原理及解救方法來了

▲From Wikipedia "Year 2038 Problem"

所以Apple為了避免這種問題導(dǎo)致的錯誤發(fā)生,將最大時間期限定在了2038年1月1日23時59分59秒。這樣即使超出這個范圍,在18天內(nèi)也不會有太大問題,況且32位設(shè)備到那個時候基本都已經(jīng)淘汰了。

64位系統(tǒng)會不會受到這個影響呢?通過計算我們可以得到,292,277,026,596年12月04日15時30分08秒是64位系統(tǒng)可以表示的最大時間。

64位處理器的『時間回歸』問題

有了剛才的知識儲備,現(xiàn)在我們回到正題,開始探討搭載64位處理器設(shè)備的時間bug。

我們說到了以UTC時區(qū)的1970年1月1日0點0時0秒為界限,數(shù)值為0,時間正常流逝為正數(shù),反之為負(fù)數(shù)。不過各位需要留意的是,時間受到時區(qū)的影響。

假設(shè)一種情況,我原來是北京時區(qū),假設(shè)將時間設(shè)置到了1970年1月1日0點0時0秒,那么我將這個時間轉(zhuǎn)換為UTC時間,公式:北京時間= GMT+8 = UTC+8,那么UTC時間則為1969年12月31日16時0分0秒。這樣就會出現(xiàn)時間負(fù)值,即時間回歸bug觸發(fā),系統(tǒng)啟動卡在Kernel階段,時間錯誤,無法繼續(xù)進(jìn)行啟動。

觸發(fā)bug條件與表現(xiàn):

滿足以下條件,『時間回歸』bug被觸發(fā):

系統(tǒng)版本:iOS8.0 ~ iOS9.3 beta 3

硬件設(shè)備:搭載64位處理器的設(shè)備(即處理器為A7~A9X的設(shè)備)

進(jìn)入『設(shè)置』-『通用』-『時間與日期』,關(guān)閉『自動設(shè)置』,并將時間修改為1970年1月1日,分秒任意。

修改時間后,需要重啟設(shè)備。

Bug觸發(fā)表現(xiàn):iOS設(shè)備啟動時,卡在蘋果Logo,無法繼續(xù)啟動。

Bug危害分析

黑客可以利用此bug通過無線局域網(wǎng)發(fā)出范圍性攻擊。

當(dāng)iOS設(shè)備連接到公共網(wǎng)絡(luò)時,iOS系統(tǒng)將會使用NTP服務(wù)對時區(qū)、時間進(jìn)行校準(zhǔn)。如果黑客發(fā)送惡意的NTP攻擊,將iOS系統(tǒng)時間校準(zhǔn)至UTC < 0的時間,那么所有用戶設(shè)備均會受到此bug影響,在重新啟動設(shè)備后無法使用設(shè)備。

解決方法:

針對所有64位處理器的iOS設(shè)備

拆機(jī)并拆出電池,放置10分鐘后重新安裝。

電量充足的情況下,等待數(shù)小時,當(dāng)Unix時間戳的數(shù)值大于等于0,系統(tǒng)時間生效,可正常開機(jī)。

針對已越獄設(shè)備的防范

添加Cydia源http://repo.ziph0n.com/

并安BrickingDate插件

注意:此插件只可以防止人為修改時間,并無法防止代碼惡意篡改時間。

以上就是對蘋果iOS設(shè)備設(shè)置到1970會徹底變磚 iPhone變磚原理及解救方法全部內(nèi)容的介紹,更多內(nèi)容請繼續(xù)關(guān)注腳本之家!

相關(guān)文章

最新評論