Защитить Android от эксплойта уязвимостей OTA помогут IntSan и BoundSan

Защитить Android от эксплойта уязвимостей OTA помогут IntSan и BoundSan

Защитить Android от эксплойта уязвимостей OTA помогут IntSan и BoundSan

Эксперты Google рассказали, как усилить защиту контроллера сотовой связи в Android-устройствах. Оградить такие прошивки от эксплойта можно с помощью инструментов-санаторов, проверяющих код на наличие уязвимостей во время его выполнения.

Разработчиков Google давно беспокоит состояние софта, который используют процессоры канала прямой связи в чипсетах современных телефонов. В нем редко встретишь защиту от эксплойта, а уязвимости не так уж сложно отыскать, к тому же их можно использовать удаленно — OTA. Более того, такие контроллеры работают с высокими привилегиями и нередко парсят данные из ненадежных источников.

Оказалось, что ограничить возможности эксплойта в данном случае можно так же, как это делается для самой Android — с помощью средств очистки Integer Overflow Sanitizer (IntSan) и BoundsSanitizer (BoundSan) из набора инструментов UndefinedBehaviorSanitizer (UBSan), созданного на основе компилятора Clang/LLVM.

Эти санаторы не требуют поддержки со стороны ОС или определенной архитектуры процессора и прекрасно работают с кодами C и C++. Инструмент IntSan выявляет ошибки целочисленного переполнения, BoundSan привносит проверки на выход за границы массива.

В обоих случаях заметно возрастает нагрузка на CPU, поэтому лучше пока применять санаторы точечно — на площадях атаки, критических с точки зрения безопасности. В частности, Google рекомендует проверять таким образом следующие объекты:

  • функции парсинга сообщений, доставляемых OTA (2G, 3G, 4G, 5G);
  • библиотеки кодирования-декодирования контента сложных форматов (ASN.1, XML, DNS и т. п.);
  • стеки IMS, TCP и IP;
  • функции обмена сообщениями (СМС, MMS).

В случае с 2G эксперты советуют и вовсе отключить стек, если он не используется (в настройках Android, начиная с версии 12, есть специальный переключатель — 2G toggle).

Эксперты нашли три способа угнать ключи доступа из Google Password Manager

Исследователи из Unit 42 обнаружили три способа атаковать ключи доступа, синхронизированные через Google Password Manager. Сценарии получили общее название Pass-ta-key и позволяют захватывать аккаунты, обходить проверку пользователя и даже извлекать закрытые ключи.

Есть важное условие: вредоносная программа уже должна работать на компьютере жертвы с Windows и модулем TPM.

Криптографию ключей доступа исследователи не взломали, они нашли слабые места в механизмах доверия к устройствам, повторной регистрации и восстановления доступа.

В первой атаке вредонос без прав администратора выдаёт себя за доверенный компьютер и запрашивает у облачного сервиса Google готовое подтверждение для входа. Биометрия, ПИН-код и участие пользователя не требуются.

Метод не сработал на GitHub, который корректно проверял факт подтверждения личности, но позволил войти в аккаунт eBay. После уведомления сервис устранил проблему.

 

Метод Silver Pass-ta-key действует наглее. Вредонос принудительно запускает повторную регистрацию Chrome и подсовывает Google собственный ключ проверки пользователя. Облачный сервис принимает его за доказательство ввода ПИН-кода или использования биометрии. После этого злоумышленник может входить в защищённые аккаунты уже с другого устройства.

Наконец, Golden Pass-ta-key позволяет вытащить главный секрет, которым шифруются все синхронизированные ключи доступа. Сначала Chrome выводил его открытым текстом в журналах FIDO.

Google убрала секрет из логов, однако он по-прежнему временно появляется в памяти браузера во время регистрации или восстановления. Если вредонос успеет его перехватить, злоумышленник сможет расшифровать закрытые ключи и перенести их на другой компьютер.

По данным Unit 42, украденный секрет подойдёт и для расшифровки будущих ключей доступа, а механизма его отзыва или замены сейчас нет.

RSS: Новости на портале Anti-Malware.ru