Автоматический ввод в DFU с микроконтроллером Raspberry Pi Pico

12 апреля, 2023, Vladimir Katalov
Рубрика: «Аппаратное обеспечение», «Новость Элкомсофт», «Полезные советы»
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

В новой версии iOS Forensic Toolkit появилась возможность автоматически переводить iPhone 8, 8 Plus и iPhone X в режим DFU. Кроме того, для всех устройств и версий iOS мы добавили возможность частично автоматизировать процесс снятия «длинных» снимков экрана (скриншотов с прокруткой). Чтобы воспользоваться новыми возможностями, вам потребуется собрать и запрограммировать микроконтроллер Raspberry Pi Pico. В этой статье мы расскажем о том, как автоматизировать ввод устройств в DFU.

Авто-DFU

Перевод устройства в режим DFU — первый и необходимый шаг, предшествующий низкоуровневому извлечению данных посредством checkm8. Стандартная процедура перевода в режим DFU требует последовательного нажатия кнопок на устройстве и точного соблюдения таймингов; особую сложность представляет перевод в DFU устройств с отказавшими кнопками. Новый способ перевода в DFU максимально прост, корректно переводя в режим DFU в том числе и частично неработоспособные устройства. Для того, чтобы воспользоваться новым способом, вам понадобится одноплатный микроконтроллер Raspberry Pi Pico с разработанной нами программой прошивки и дополнительными кабелями.

В статье checkm8: Разблокировка и извлечение данных из iPhone 4s мы рассказали о том, как Raspberry Pi Pico помогает разблокировке и извлечению данных из iPhone 4s. Для нового процесса вам понадобится несколько другая сборка.

Совместимость:

  • Процесс авто-DFU не поддерживает старые модели iPhone (iPhone 7 и старше)
  • Совместимость с более новыми моделями iPhone (iPhone Xs/Xr и новее) возможна, но не гарантируется.

Вам понадобятся:

  • Одноплатный микроконтроллер Raspberry Pi Pico с контактами.
  • Адаптер USB-A — micro-USB (для прошивки Pico с компьютера Mac)
  • Специальный кабель Lightning.

Подготовка специального кабеля Lightning

Сам по себе этот кабель предельно прост: на одном конце — коннектор Lightning без чипа, на другом — провода или 4 коннектора Dupont для подключения к Pico. От Lightning нам потребуется всего четыре провода:

  • GND (Black)
  • 5V (Red)
  • ID0 (Yellow)
  • ID1 (Blue)

Внимание: на вашем экземпляре кабеля цвета проводов могут отличаться. Обязательно проверьте распиновку вольтметром!

Важно: требуется такой кабель, в котором нет встроенного чипа в коннекторе Lightning. В таком качестве идеально подходит удлинитель (Lightning male <> Lightning female), т.к. все остальные кабели оснащены чипом. Рекомендуем подобный кабель:

Cредняя цена этих кабелей обычно составляет от 1,5 до 2 долларов. Рекомендуем запастись кабелями, так как кабель будет использоваться в качестве «донора»: его придётся разрезать и припаивать разъёмы к вышеупомянутым линиям/проводам.

Наконец, рекомендуем подобный набор соединительных кабелей для подключения к разъёмам Pico:

В качестве альтернативы вы можете использовать кабели, продающиеся под названиями Dupont Cable Female (или “Hookup Wire for Arduino cable”), к которым можно просто подпаять провода, если внешний вид конструкции неважен.

Подготовка к работе

Единственное, что нужно сделать с платой Pico, это установить соответствующую прошивку. Для этого подключите плату Pico к Mac с помощью кабеля USB-micro-USB, одновременно зажав кнопку на плате Pico; он будет распознан как внешнее хранилище. Затем перетащите на него следующий файл из папки установки EIFT:

/pico/picoDFU.uf2

Светодиод на плате Pico будет мигать, после чего Pico отсоединится от компьютера. Эта часть подготовки завершена. Переподключите Pico к Mac (на плату будет подано питание), после чего подключите кабель к соответствующим разъёмам на плате:

5V (Red)     <-> VBUS
GND (Black)  <-> GND
ID0 (Yellow) <-> GP2
ID1 (Blue)   <-> GP3

Вы можете подключить два последних разъёма в обратном порядке: ID0 к GP3, ID1 к GP2.

Ввод в DFU

После того, как Pico собран и прошит, а специальный кабель Lightning подключён к разъёмам на Pico, остальной процесс не представляет сложности. Для перевода устройства в DFU проделайте следующие шаги.

  • Если устройство включено, выключите его
  • Введите устройство в режим Recovery mode: нажмите кнопку уменьшения громкости, после чего подключите его к компьютеру стандартным Lightning кабелем, и удерживайте кнопку до тех пор, пока устрйоство не перейдёт в Recovery
  • Используйте команду ./EIFT_cmd tools autobootFalse для блокировки автозагрузки (чтобы устройство случайно не загрузилось в обычном режиме нни при каких обстоятельствах)
  • Подключите Pico к питанию через micro-USB
  • Подключите устройство к разъёму Lightning специального кабеля, который в свою очередь подключён к разъёмам на Pico
  • Устройство должно перейти в режим DFU

На этом процесс завершён. Вы можете подключить iPhone к Mac и использовать EIFT для извлечения данных из iPhone посредством checkm8.

Информация об авторском праве

Код для picoDFU взят из проекта Tamarin firmware, который доступен под лицензией GPLv3. В соответствие с этой лицензией мы в скором времени опубликуем наш код.


  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

REFERENCES:

Elcomsoft iOS Forensic Toolkit

Elcomsoft iOS Forensic Toolkit – специализированный инструмент для проведения криминалистического анализа устройств, работающих под управлением Apple iOS. Для анализа доступна вся пользовательская и системная информация, а также зашифрованные данные из системного хранилища (связка ключей).

Официальная страница Elcomsoft iOS Forensic Toolkit »

НАШИ НОВОСТИ