В феврале 2016 года множество гаджетов компании Apple «погибли» из-за так называемого бага 1970. Тогда исследователи обнаружили, что для превращения iPhone или iPad в кирпич, достаточно выставить на устройстве дату 1 января 1970 года и перезагрузить девайс. Хотя специалисты Apple достаточно оперативно устранили проблему, теперь выясняется, что баг не был исправлен до конца. Эксперты компании PacketSled сообщили, что проблема не просто сохранилась, но могла использоваться удаленно.
Для бага 1970 версия операционной системы значения не имела. Проблема была актуальна для чипов A7, A8, A8X, A9 и A9X, и любых 64-битных версий iOS старше 8. В феврале от данной ошибки пострадало множество пользователей, так как шутники очень быстро распространили в социальных сетях информацию о том, что выставление на iPhone даты 1.01.1970 активирует забавную пасхалку в iOS (см. иллюстрацию ниже). Ситуация сильно осложнялась тем, что спасти гаджет после «окирпичивания» было уже практически невозможно.
Хотя тогда Apple вполне оперативно устранила уязвимость, исследователи PacketSled пишут, что ошибка 1970 представляла опасность вплоть до недавнего релиза iOS 9.3.1.
Исследователи рассказали, что срабатывание бага можно было спровоцировать удаленно. Используя протокол NTP (Network Time Protocol), кастомный софт и Raspberry Pi в качестве вредоносной точки доступа, исследователи смогли подменить NTP-серверы Apple и обмануть устройство. Полагая, что получает данные из легитимного источника, устройство устанавливало дату 1/1/1970, что приводило к дестабилизации девайса, быстрой разрядке аккумулятора и повышению температуры до 54°C. «Окирпичивание» устройства в данном случае происходило не моментально, для этого требовалось 15-20 минут.
Уязвимость устранили в iOS 9.3.1, и исследователи признались, что молчали о проблеме до выхода патча, чтобы не спровоцировать волну атак на устройства Apple. Теперь, когда баг уже исправлен, PacketSled опубликовали информацию о нем в своем блоге, а также в подробностях рассказали о проделанной работе Брайану Кребсу.
Напомню, что проблема 1970 связана с тем, что 1 января 1970 года, это не просто дата – это так называемое UNIX-время (или POSIX-время), оно применяется для описания моментов во времени в UNIX и POSIX-совместимых ОС, к которым относится и iOS.
Фото: PacketSled