- PVSM.RU - https://www.pvsm.ru -

Демонстрация брутфорса пароля iPhone 5c c зеркалированием флэш-памяти

Демонстрация брутфорса пароля iPhone 5c c зеркалированием флэш-памяти - 1

В апреле 2016 года ФБР и Apple устроили настоящее шоу [1] вокруг телефона iPhone 5c стрелка из Сан-Бернардино, для которого якобы никак не удавалось подобрать пароль без помощи компании Apple.

ФБР давило на Apple, требуя технической помощи. Тим Кук опубликовал открытое письмо [2], в котором обвинил ФБР в принуждении Apple встроить бэкдор в iOS. Дело дошло до Конгресса и Сената США, проблему обсуждали все крупнейшие американские СМИ и телеканалы. Мир с замиранием сердца следил за санта-барбарой и гадал: даст Apple федералам или не даст доступ к криптосистеме iPhone.

iPhone защищён от брутфорса через опцию уничтожения данных на устройстве после десяти некорректных попыток ввода и увеличивающееся время задержки между наборами кода разблокировки (5 секунд после 5 попыток, затем 1 минута, 5 минут, 15 минут и 60 минут).

Защиту логично обойти путём копирования флэш-памяти с брутфорсом сделанных копий (NAND mirroring), но специалисты ФБР почему-то не смогли провести такую атаку [3]. Они обратились к АНБ — те тоже не смогли помочь [4].

После длительных безуспешных попыток давления на Apple ФБР заплатило больше $1 млн [5] хакерам (предположительно, из Израиля), которые предложили рабочий метод брутфорса пароля iPhone 5c. Источники сообщили тогда, что смартфон был взломан с использованием ранее неизвестной (0day) уязвимости в iOS 9. Несмотря на требование компании Apple, ФБР до сих пор не обнародовало информацию об уязвимости, чтобы Apple могла устранить её — такая месть по-фбровски.

Директор ФБР сказал, что копирование NAND не применялось, потому что оно не работает [6].

Теперь один простой хакер сделал то, что не могли сделать специалисты ФБР и АНБ. Сергей Скоробогатов из Кембриджского университета (Великобритания) наглядно показал, как осуществляется брутфорс пароля iPhone 5C после копирования флэш-памяти. Научная работа по криптографии опубликована [7] в свободном доступе на сайте arXiv.org.

Согласно схеме шифрования iOS [8], пароль пользователя и уникальный ключ UID применяются для генерации ключа к системному хранилищу System Keybag. Ключ UID аппаратно прописан в SoC и недоступен на программном уровне, поэтому невозможно провести брутфорс, не имея доступа к конкретной микросхеме.

Демонстрация брутфорса пароля iPhone 5c c зеркалированием флэш-памяти - 2

Хотя архитектура iPhone 5c держится в секрете, на форумах можно найти схемы и наименования микросхем iPhone 5c, iPhone 6 [9] и др., с цоколёвкой NAND. Но Сергей Скоробогатов предупреждает, что некоторые контакты VCCQ и GND поменяли местами, так что по той распиновке можно безвозвратно повредить микросхему. Для изучения протоколов и команд понадобится осциллограф и логический анализатор.

В демонстрационном видеоролике [10] Сергей показывает, как разобрать iPhone, извлечь микросхему с чипом флэш-памяти, отпаять её паяльным феном и клонировать данные. Подобную инструкцию по разбору iPhone 5C см. на iFixit [11].

SoC A6 и микросхема NAND находятся разных сторонах материнской платы. Между NAND и платой расстояние примерно 0,05 мм. Для извлечения потребуется специальный тонкий нож и паяльный фен с температурой более 300°C.

Демонстрация брутфорса пароля iPhone 5c c зеркалированием флэш-памяти - 3

Все мелкие компоненты вокруг чипа были предварительно защищены температуростойкой эпоксидной смолой.

Демонстрация брутфорса пароля iPhone 5c c зеркалированием флэш-памяти - 4
Подготовка к извлечению NAND

Высокая температура не повреждает данные во флэш-памяти. Проведённые ранее исследования показали, что она выдерживает до 400°C.

Демонстрация брутфорса пароля iPhone 5c c зеркалированием флэш-памяти - 5
Извлечённый модуль NAND

Для проверки работоспособности каждый контакт модуля NAND соединяют с материнской платой тефлоновыми проводами 0,3 мм.

Демонстрация брутфорса пароля iPhone 5c c зеркалированием флэш-памяти - 6

Затем материнскую плату вставили на место, а для проводом с извлечённым модулем NAND в корпусе вырезали дырку.

Демонстрация брутфорса пароля iPhone 5c c зеркалированием флэш-памяти - 7

Демонстрация брутфорса пароля iPhone 5c c зеркалированием флэш-памяти - 8

В первое время телефон сильно глючил. Сергей выяснил, что это из-за помех в длинных проводах.

Демонстрация брутфорса пароля iPhone 5c c зеркалированием флэш-памяти - 9
Сигнал с помехами

Пришлось добавить согласующие резисторы на все сигнальные провода. Тогда сигнал выровнялся и телефон перестал глючить.

Демонстрация брутфорса пароля iPhone 5c c зеркалированием флэш-памяти - 10
Сигнал без помех

Дальше инженер из Кембриджского университета вставил промежуточную плату для прослушки сигнала, подключил осциллограф и логический анализатор для реверс-инжиниринга протокола и команд iPhone 5c.

Демонстрация брутфорса пароля iPhone 5c c зеркалированием флэш-памяти - 11
Промежуточная плата для прослушки

Здесь опять возникли проблемы с целостностью сигнала, на этот раз из-за входной и выходной электрической ёмкости буферных элементов 74LVC и 74AVC в 4 пФ и 6 пФ. Пришлось заменить их на элементы с меньшей ёмкостью 74AUP и 74AXP.

В конце концов, исследователю всё-таки удалось подготовить iPhone 5с к реверс-инжинирингу. К этому моменту он, очевидно, зашёл уже дальше, чем удалось зайти специалистам ФБР и АНБ.

Демонстрация брутфорса пароля iPhone 5c c зеркалированием флэш-памяти - 12
iPhone 5c с логическим анализатором

Дальнейшее было делом техники. Оказалось, что iPhone 5c использует разные интерфейсы и команды на разных этапах загрузки, в том числе недокументированные проприетарные команды на тактовой частоте 50 МГц. В конце концов, логический анализатор записал все команды и помог определить особый проприетарный протокол, который используется для коммуникации с NAND.

Сергей Сборогатов научился считывать, стирать и записывать память NAND по воему желанию. Это всё, что необходимо для успешного брутфорса пароля.

Демонстрация брутфорса пароля iPhone 5c c зеркалированием флэш-памяти - 13
Испытательный стенд для копирования NAND

Программа для брутфорса пробует шесть вариантов пароля, пока не появляется задержка в 1 минуту, тогда автоматически начинается процесс восстановления памяти из резервной копии (чтобы сбросить счётчик, защищающий от брутфорса), затем брутфорс продолжается. Цикл восстановления после 6 попыток занимает 90 секунд. Таким образом, полный перебор всех вариантов пинкода из четырёх цифр займёт около 40 часов.

Демонстрация брутфорса пароля iPhone 5c c зеркалированием флэш-памяти - 14
Программа для зеркалирования NAND для iPhone 5c

Такой метод брутфорса не работает в более новых моделях iPhone, куда встроена дополнительная защита Secure Enclave [12]. Но вполне можно предположить, что коллеги Сергея Скоробогатова из компании Elcomsoft и других фирм, которые специализируются на взломе смартфонов, в том числе по заказу спецслужб, уже решают эту проблему.

Автор: alizar

Источник [13]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/ios/189232

Ссылки в тексте:

[1] настоящее шоу: https://geektimes.ru/post/271742/

[2] опубликовал открытое письмо: https://geektimes.ru/post/271238/

[3] не смогли провести такую атаку: https://en.wikipedia.org/wiki/FBI%E2%80%93Apple_encryption_dispute

[4] не смогли помочь: http://www.zdnet.com/article/nsa-comes-clean-on-why-it-couldnt-hack-san-bernardino-shooters-iphone/

[5] заплатило больше $1 млн: https://geektimes.ru/post/274739/

[6] не работает: http://www.computerworld.com/article/3048243/apple-ios/fbi-chief-shoots-down-theory-that-nand-mirroring-will-be-used-to-crack-terrorists-iphone.html

[7] опубликована: http://arxiv.org/abs/1609.04327

[8] схеме шифрования iOS: http://www.slideshare.net/andrey.belenko/ios-and-blackberry-forensics

[9] схемы и наименования микросхем iPhone 5c, iPhone 6: http://forum.gsmhosting.com/vbb/f631/iphone-5c-6-plus-schematic-diagram-available-1857968/

[10] демонстрационном видеоролике: https://www.youtube.com/watch?v=tM66GWrwbsY

[11] см. на iFixit: https://www.ifixit.com/Teardown/iPhone+5c+Teardown/17382

[12] Secure Enclave: https://www.apple.com/business/docs/iOS_Security_Guide.pdf

[13] Источник: https://geektimes.ru/post/280556/