Следующая новость
Предыдущая новость

Под капотом у Face ID, анализ и взлом приложений для Android и iOS, нейросети и альтернативы SQLIte

02.10.2017 13:49
Под капотом у Face ID, анализ и взлом приложений для Android и iOS, нейросети и альтернативы SQLIte

Содержание статьи

  • Приложения
  • Инструменты и семплы
  • Почитать
  • Как работает Face ID
  • Как работает Touch ID
  • Исследование и взлом приложений для Android
  • Исследование приложений для iOS с помощью отладчика
  • Разработка
  • Android и нейросети
  • Оптимизация приложений
  • Работа с BLE-маячками
  • Списки с быстрым скроллингом
  • Ограничения фонового исполнения в Android 8
  • Скачиваемые шрифты и Android 8
  • RxJava vs Kotlin
  • Режим Picture in Picture
  • Сравнение Realm, ObectBox и Room
  • Статический анализ кода с помощью Infer
  • Чат-бот с использованием нейросетей
  • Библиотеки

В этом выпуске: разбор принципов работы Face ID и Touch ID, руководство по анализу и взлому приложений для Android и iOS, разработка приложений с использованием нейросетей, методы обхода ограничения фонового исполнения приложений в Android 8, альтернативы SQLIte. А также: новые приложения, инструменты взлома и полезные библиотеки.

Приложения

  • Android Keyboard Gadget — приложение, которое позволяет превратить устройство в полноценную клавиатуру и мышь. Не требует установки каких-либо программ на ПК, совместимо с любыми ОС и работает в том числе в BIOS. Минус — в том, что оно требует установки кастомного ядра (есть в комплекте).
  • Zdata — приложение, сжимающее данные установленных приложений. В своей работе использует псевдо-ФС fusecompress, работает только на Android 7 и выше.

    Под капотом у Face ID, анализ и взлом приложений для Android и iOS, нейросети и альтернативы SQLIte
    Zdata

Инструменты и семплы

  • AStA — инструмент для сборки приложений для Android на самом Android. Представляет собой набор скриптов, которые разворачивают Debian в chroot и устанавливают в него Android SDK. Плюс простенький редактор с подсветкой синтаксиса;
  • AppBleed — исходный код приложения, способного получить информацию о том, какие приложения установлены в iOS, включая место расположения в файловой системе и многое другое (баг исправлен в iOS 11);
  • AndroidRE — образ Docker для реверс-инджиниринга приложений Android, включает в себя эмуляторы, apktool. dex2jar, frida, jadx, radare2 и множество других инструментов;
  • Avpass — инструмент для модификации APK с целью обхода антивирусных систем;
  • JailbreakMe-1.0 — исходный код первой версии эксплоита JailbreakMe, который позволяет выполнить джеибрейк через браузер;
  • Android-Bankbot — исходники трояна Bankbot, полученные с помощью декомпиляции;
  • GhostCtrl — декомпилированные исходники GhostCtrl;
  • SLocker — декомпилированные исходники SLocker;
  • Firmware.mobi — каталог загрузчиков и boot-разделов для более чем полутора тысяч устройств.

Почитать

Как работает Face ID

Face ID Security — официальный документ Apple, посвященный безопасности Face ID. Основные моменты из него:

  • смартфон потребует ввести PIN-код в следующих ситуациях: 1) устройство только что включено; 2) с момента прошлой разблокировки прошло более 48 часов; 3) PIN-код не использовался больше недели (156 часов), а смартфон не был разблокирован с помощью Face ID более четырех часов; 4) устройство заблокировано удаленно; 5) пять неудачных попыток отсканировать лицо; 5) был активирован режим SOS;
  • шанс разблокировать смартфон с помощью чужого лица « один к миллиону (в случае Touch ID — один к 50 000);
  • Apple не рекомендует использовать Face ID братьям и сестрам до 13 лет, возможны ложные срабатывания;
  • смартфон будет разблокирован только в том случае, если человек смотрит на него;
  • для считывания лица Face ID использует около 30 000 точек;
  • данные, считанные в процессе обучения, хранятся в Secure Encave в форме математической модели и никуда не передаются;
  • для распознавания лица используется нейронная сеть, обученная на миллиардах изображений и моделей лиц;
  • на работу Face ID не влияют шляпы, шарфы, очки, контактные линзы;
  • Face ID может работать при любом освещении, включая полную темноту;
  • нейронная сеть способна выявлять попытки обмана с помощью маски и фотографии;
  • нейронная сеть может быть обновлена без необходимости повторно сканировать лицо;
  • Face ID подстраивается под изменения в лице и периодически обновляет математическую модель;
  • приложения, поддерживающие Touch ID, будут из коробки работать с Face ID.

Как работает Touch ID

Demystifying Apple’s Touch ID — статья о другом биометрическом сенсоре iPhone, датчике отпечатков пальцев, а точнее о том, как реализована система безопасного хранения отпечатков. Три ключевых момента из него:

  • «хеширование» отпечатка. Как и в случае Face ID система не хранит изображение отпечатка. Она сохраняет только математическую модель, с помощью которой можно подтвердить, что два отпечатка совпадают, но нельзя восстановить оригинальный отпечаток. Концептуально такой подход схож с тем, что применяется для хранения паролей в современных системах аутентификации: пароль хранится в виде sha-хеша, который можно только сравнить с хешем другого пароля, но не восстановить оригинал;
  • Безопасная передача «хеша» в Secure Enclave. iPhone сохраняет математическую модель отпечатка в зашифрованную область памяти, контролируемую процессором Secure Enclave. Канал коммуникации между датчиком отпечатка и Secure Enclave защищен с помощью ключа шифрования, прошитого еще на заводе. Это значит, что установленный в кустарных условиях датчик отпечатка не сможет получить доступ к Secure Enclave, а пользователь увидит знаменитую ошибку 53;
  • Secure Enclave — центральная часть системы безопасности продуктов Apple. Это выделенный процессор со своей операционной системой, оперативной и постоянной памятью, к которой не может получить доступ основной процессор. И та, и другая память зашифрованы, а единственный способ общения с Secure Enclave — через систему сообщений. В iPhone Secure Enclave отвечает за все криптографические операции, включая шифрование данных и хранение ключей шифрования, а также математической модели отпечатка и лица.

Продолжение статьи доступно только подписчикам

Cтатьи из последних выпусков журнала можно покупать отдельно только через два месяца после публикации. Чтобы читать эту статью, необходимо купить подписку.

Подпишись на журнал «Хакер» по выгодной цене!

Подписка позволит тебе в течение указанного срока читать ВСЕ платные материалы сайта, включая эту статью. Мы принимаем оплату банковскими картами, электронными деньгами и переводами со счетов мобильных операторов. Подробнее о подписке

1 год

4590 р.

Экономия 1400 рублей!

1 месяц

490 р.

25-30 статей в месяц

Уже подписан?

Источник

Последние новости