苹果iOS系统时间改为1970年无法开机咋办?告诉你原理及解救方法
2016-02-15 11:02
导读: 最近网上被iOS时间bug闹的沸沸扬扬,据说是将iOS系统时间修改为1970/1/1,重启后系统将开不了机。是真的吗?如果是真的有什么合理的解释吗? 想要真正了解这一bug,您可能需要以下知识。 UNIX时间戳 在确认这件事情的真假前,你需要了解的一个知识是Unix时间
最近网上被iOS时间bug闹的沸沸扬扬,据说是将iOS系统时间修改为1970/1/1,重启后系统将开不了机。是真的吗?如果是真的有什么合理的解释吗?
想要真正了解这一bug,您可能需要以下知识。
UNIX时间戳
在确认这件事情的真假前,你需要了解的一个知识是Unix时间戳。
iOS系统时间使用Unix时间戳(Unix epoch)表示(time_t数据类型)。在系统中,使用系统位数个二进制位储存时间。
Unix时间戳规定,UTC时区的1970年1月1日0点0时0秒的值为0,以秒为单位,即每过一秒,二进制数字加1。
如果您想详细了解Unix时间戳,请移步到 Unix Time。
不能往前调,那我把时间往后调
有些好奇的朋友拿出了自己手机,心想:既然我不能往回调,那我要是把时间使劲往后调能怎样?
细心的朋友发现了一个问题,iOS系统可以设置的最大时间是2038年1月1日,并不能再往后设置。苹果一定考虑到了这个问题,为什么这么说呢?
我们拿32位系统举例。在32位系统中,time_t是长度为32位的,有符号整数(signed int)类型。首个二进制位是符号位,用来储存正负。正数则为1970/1/1以后的时间,负数反之;其余的31位用来记数。当时间到达2038年1月19日3时14分08秒时,数值位全部向前进1,导致符号位被置1,其余31位为0。介时,将出现『时间回归』的情况,系统时间变为1901年12月13日20时45分52秒,系统将会出现错误。
所以Apple为了避免这种问题导致的错误发生,将最大时间期限定在了2038年1月1日23时59分59秒。这样即使超出这个范围,在18天内也不会有太大问题,况且32位设备到那个时候基本都已经淘汰了。
64位系统会不会受到这个影响呢?通过计算我们可以得到,292,277,026,596年12月04日15时30分08秒是64位系统可以表示的最大时间。
64位处理器的『时间回归』问题
有了刚才的知识储备,现在我们回到正题,开始探讨搭载64位处理器设备的时间bug。
我们说到了以UTC时区的1970年1月1日0点0时0秒为界限,数值为0,时间正常流逝为正数,反之为负数。不过各位需要留意的是,时间受到时区的影响。
假设一种情况,我原来是北京时区,假设将时间设置到了1970年1月1日0点0时0秒,那么我将这个时间转换为UTC时间,公式:北京时间= GMT+8 = UTC+8,那么UTC时间则为1969年12月31日16时0分0秒。这样就会出现时间负值,即时间回归bug触发,系统启动卡在Kernel阶段,时间错误,无法继续进行启动。
触发bug条件与表现
满足以下条件,『时间回归』bug被触发:
系统版本:iOS8.0 ~ iOS9.3 beta 3
硬件设备:搭载64位处理器的设备(即处理器为A7~A9X的设备)
进入『设置』-『通用』-『时间与日期』,关闭『自动设置』,并将时间修改为1970年1月1日,分秒任意。
修改时间后,需要重启设备。
Bug触发表现:iOS设备启动时,卡在苹果Logo,无法继续启动。
解决方案
▼针对所有64位处理器的iOS设备
拆机并拆出电池,放置10分钟后重新安装。
电量充足的情况下,等待数小时,当Unix时间戳的数值大于等于0,系统时间生效,可正常开机。
▼针对已越狱设备的防范
添加Cydia源http://repo.ziph0n.com/
并安BrickingDate插件
注意:此插件只可以防止人为修改时间,并无法防止代码恶意篡改时间。
Bug危害分析
黑客可以利用此bug通过无线局域网发出范围性攻击。
当iOS设备连接到公共网络时,iOS系统将会使用NTP服务对时区、时间进行校准。如果黑客发送恶意的NTP攻击,将iOS系统时间校准至UTC < 0的时间,那么所有用户设备均会受到此bug影响,在重新启动设备后无法使用设备。
相关文章
- 鐜嬪仴鏋楄瀹跺嵃娓歌墖鏇濆厜 缃戝弸锛氳繖娆$湡鏄传绌烽檺鍒朵簡鎴戜滑鐨勬兂鍍忓姏
2018-04-16 16:32
- 涓夊搴﹀叏鐞冨彲绌挎埓璁惧鍑鸿揣閲忎笂娑94.6%锛岃嫻鏋滅ǔ鈥
2019-12-10 17:52
- Samsung鏂颁笓鍒╂洕鍏夊叏闈㈠睆娌℃湁鍒樻捣
2018-05-13 13:33
- 鍏ㄥ箙楂橀熻繛鎷岰anon1DX鍗曟満鍞28800鍏
2018-04-09 17:32
- 鍗庝负Mate X棰勮渚涜揣20涓囧彴宸﹀彸
2019-06-30 15:50
- 杞婚噺绾у叆闂ㄦ満锛欶ujifilmX-M1鏃犲弽鐧诲満
2018-01-03 12:00
- 闂厜鐏珶鏈夎繖涔堝鑺辨牱榄呰摑E2璇勬祴
2018-05-29 19:33
- 涓寰幆缁忔祹鐮旂┒闄㈠湪娌у窞鎴愮珛
2020-12-28 16:52
- 2018鏄ヨ妭绗竴鏂版満 榄呰摑E3鑳岄潰璁捐鎹夌溂
2019-02-19 05:37
- iPhone6Plus鎼滀笉鍒癢iFi 鎵嬫満搴楁病淇ソ 澶х鎬濊矾娓呮櫚涓鎷涙悶瀹
2018-05-02 14:31
- 闃块噷YunOS鍗冲皢鍒版潵 鐩墠宸叉湁鍥戒骇鎵嬫満鏀寔 鏈熷緟鍚楋紵
2018-04-29 20:31
- 闇稿睆浜嗭紒闂嵎缃戝叓鍛ㄥ勾鎰熸仼鍥為娲诲姩鐏儹杩涜涓紒
2021-07-22 19:46
- 360鎽勫儚鏈3C浜戝彴鐢垫睜鐗堝紑鍚鍞 鍒涙柊鈥滀笉鎻掔數鈥
2021-03-20 09:54
- 澶栧獟鎶ラ亾锛歀G姝g爺鍙戞柊娆剧炕鐩栧紡鍙姌鍙犳墜鏈
2018-07-06 05:31
- 鎵庡厠浼牸澶绾︿細缁欏瀛愯█浼犺韩鏁 鎵庡厠浼牸瀹堕娆℃洕鍏
2019-12-05 18:53
- 5799鍏冭捣 涓夋槦GalaxyS9/S9锛嬪媰鑹绾㈢増鍙戝竷 涓夊ぇ濂崇浠h█
2018-05-08 17:32
- 鍗板害閫爄Phone缁堜簬涓婂競 浣嗘灉绮変緷鏃у緢澶辨湜
2018-09-22 00:32
- 鏇寸敓琛岃柂閰珽TC锛氭櫤鑳借柂閰競鍦虹殑棰嗚窇鑰
2019-08-20 11:55
- 榄斿吔浜夐湼锛氬畧鍩庡叧鍗$殑璁惧畾鍗佸垎缁忓吀 閭d箞鎴樺焦涓渶缁忓吀鐨勬槸鍝叧锛焈甯屽皵鐡﹀鏂
2019-06-30 14:46
- 鑴戞礊椋樺嚭澶╅檯鐨勭鐮旈槦浼嶅紑鍙戝嚭3D鎵撳嵃姘磋川妫娴嬪櫒
2018-08-05 18:31