iPhone modification time brick

Recently, IOS time returns to bugs in the Internet, and many netizens are fresh, personally trying to unfortunately move, it is said that DFU cannot fix this problem.

Currently, the following conditions are met, enter the settings – general-time and date, turn off automatic settings, the modification time is 1970/1/1, the device, “time regression” bug will be triggered. Specifically, after the device is activated, the card is in Apple logo, and it cannot enter the system.

System Version: iOS 8.0 -ios 9.3 Beta 3

Hardware devices: equipment equipped with 64-bit processors (ie, devices that processors are A7-A9x)

The equipment involved includes:

A7: iPhone 5s, iPad mini 2, iPad mini 3;

A7 Variant: iPad Air;

A8: Apple TV 4G, iPad Mini 4, iPhone 6, iPhone 6 Plus, iPod Touch 6g;

A8X: iPad Air 2;

A9 (Samsung / TSM): iPhone 6S, iPhone 6S Plus;

A9x: ipad pro;

Current Solution: 1. Remove the battery and reinstall it after 10 minutes. 2, when the amount of electricity is sufficient, waiting for a few hours, when the value of the UNIX timestamp is greater than or equal to 0, the system time is active, which can be turned on normally. 3, get the apple after sale.

Weibo users # Hackl0us gives detailed reasons behind the bug, and the students who are interested in can know in depth, mainly involving UNIX timestamps.

If you want to truly understand this bug, you may need to know the following.

UNIX timestamp

Before confirming the true and false of this matter, a knowledge you need to understand is UNIX timestamp.

iOS system time uses UNIX timestamps (UNIX EPOCH) (Time_T data type). In the system, the system bit number binary position is used.

UNIX timestamp regulations, the UTC time zone is 0:0:04 0:0:0:0:0:05, in seconds, ie 1 second, binary numbers plus 1.

64-bit processor’s “time return” problem

With the just’s knowledge reserves, now we return to the topic and start to discuss the time bug equipped with 64-bit processor devices.

We have said that the UTC time zone is 0:0:05:0:0:0:0:0am, the value is 0, the time is normal, and the reaction is negative. However, you need to pay attention to the impact of time zone.

Have a situation, I originally a Beijing time zone, assume that time set to 0:0:04 January 1, 1970, then I convert this time to UTC time, formula: Beijing time = GMT + 8 = UTC + 8, then UTC time is 16:0:0:00 on December 31, 1969. This will show a time negative value, instant return bug trigger, the system start card is in the Kernel phase, the time error, and cannot continue to start.

Trigger BUG condition and performance

Meet the following conditions, “Time Return” bug is triggered:

System version: iOS 8.0 ~ iOS 9.3 Beta 3

Hardware devices: equipment equipped with 64-bit processors (ie, devices for processors are A7 to A9X)

iPhone is tested to the 1970 brick? Principle, the rescue method is coming

Enter “Setup” – “General” – “Time and Date”, close “Auto Settings”, and modify the time to January 1, 1970, and second.

After the modification time, you need to restart the device.

BUG trigger performance: When the iOS device is started, the card is in Apple logo, and it cannot be launched.

Bug hazard analysis

Hackers can use this bug to issue range attacks through wireless LAN.

When IOS devices are connected to a public network, the iOS system will use NTP service to calibrate time zone. If the hacker sends a malicious NTP attack, calibrate the iOS system time to UTC

Update: In iOS 9.3, Apple “wit” solves the previous adjustment time to 1970 brick problems. The specific method is that in iOS 9.3, only the callback is allowed to be repaired on January 1, 2001, so it is completely avoided The BUG of the brick has had to say that Apple is too “wit”.