Что такое «ошибка 1970»
Если на устройствах Apple, работающих под управлением iOS 9.2 и более ранних версий, установить дату 1 января 1970 года и время 0:00, то они перестают работать. Это значение – старт UNIX-календаря, от которого отсчитывается количество секунд для определения всех других дат.
Если пользователь, к примеру, находится в Нью-Йорке, где разница с всемирным координированным временем составляет -5 часов, устройство пытается присвоить отрицательное значение в секундах беззнаковой переменной. В результате в ядре операционной системы возникает сбой, iPhone или iPad зависают и перестают реагировать на действия пользователя.
Подключился – проиграл
Доказали они это следующим образом: в общественном месте создали точку доступа Wi-Fi с таким же именем, как у точки доступа популярной сети кофеен Starbucks – attwifi.
К этой точке доступа подключается NTP-сервер, который предназначен для синхронизации времени. На сервере устанавливается то самое нулевое UNIX-время – 0:00 1 января 1970 года.
Если смартфон или планшет автоматически подключится к такой точке доступа (ведь ранее он не раз соединялся с ней), но он синхронизирует время с NTP-сервером. Секунда – и гаджет превращается в «кирпич».
Скорее всего, это происходит из-за проблем в работе приложений, которые сопровождаются значительным увеличением нагрузки на процессор.
Вред или польза
Эксперт по кибербезопасности Брайан Кребс считает, что эта уязвимость может быть полезна для снятия шифрования. Дело в том, что если текущая дата указывает на время до выпуска сертификата, часто он перестает действовать.