Книги: "Создание сайтов" - "Доменные войны". Защита информации: техническое описание TLS, тестовый сервер TLS 1.3. Ресурсы: LaTeX
Автоматический подбор PIN-кода для iPhone
У iPhone есть функция, которая стирает пользовательские данные с устройства, если PIN-код на экране блокировки введён неверно 10 раз. Казалось бы, подобрать даже четырёхзначный код нереально – шанс угадать слишком мал. Тем не менее, пишут про электронное устройство, которое PIN-код успешно подбирает. Хитрость в том, что устройство, обнаружив ошибочный ввод по показаниям дисплея, моментально отрубает питание телефона (для реализации этого требуются вскрыть корпус и подключить прерыватель). Из-за алгоритмической ошибки в процедуре обработки ввода PIN-кода, телефон не успевает записать новое значение счётчика попыток в память, поэтому после перезагрузки можно попробовать ещё раз (пишут, что примерно 111 часов нужно для проверки всего множества кодов).
Насколько можно понять, речь об уязвимости CVE-2014-4451, которая датирована 18 ноября 2014 года и должна быть уже закрыта. Очевидно, что ошибка разработчиков состоит в последовательности шагов алгоритма: нужно сперва увеличивать значение счётчика попыток в энергонезависимой памяти, а только потом выводить результат проверки на экран (не наоборот). Очень показательный пример того, что в реализации функций обеспечения безопасности подобная “мелочь” может начисто удалить все защитные свойства.
()
Похожие записки:
- Статья: DNS в качестве инструмента публикации вспомогательной информации
- Интернет-протокол "дымовой завесы"
- Удостоверяющий центр TLS ТЦИ
- Обновление описания TLS
- Браузеры и перехват TLS без участия УЦ
- "Яндекс.Браузер" и российские сертификаты TLS в вебе
- Доверенные программы для обмена сообщениями
- TLS для DevOps
- Смартфон-шпион: восемь лет спустя
- Про цепочки, RSA и ECDSA
- Ретроспектива заметок: деанонимизация по географии
- Статья о технологии Encrypted Client Hello
Комментарии читателей блога: 3
1. 8th April 2015, 00:39 // Читатель sarin написал:
наверняка, можно было бы определить начало записи и в энергонезависимую память и отключить питание. например анализируя энергопотрбление.
2. 8th April 2015, 00:44 // Читатель sarin написал:
наверняка, можно было бы определить начало записи и в энергонезависимую память и отключить питание. например, анализируя энергопотрбление.
3. 8th April 2015, 12:16 // Александр Венедюхин ответил:
> можно было бы определить начало записи и в энергонезависимую память
Вряд ли: это очень сложно проделать, так как процесс записи быстрый, а энергопотребление минимальное. Но дело даже не в этом – запись нового значения счётчика в память происходит в любом случае, вне зависимости от того, правильное значение введёно или нет, соответственно, нельзя определить, что автомат угадал код.