Неделя мобильной безопасности (30 апреля — 6 мая)
Привет, Хабр!
И снова представляю вам, как и обещал в статье про подборку материалов по мобильной безопасности, самые главные новости из мира безопасности мобильных приложений (с 30 апреля по 6 мая). Несмотря на праздники, новостей и материалов было достаточно много, — давайте посмотрим, что интересного произошло.
Новости
Ядовитая экосистема
Насколько хорошо разработчики приложений понимают, как построить безопасную экосистему? Чтобы не теоретизировать, автор решил посмотреть на существующие экосистемы и рассказать об одной интересной уязвимости, которая характерна именно для экосистем приложений.
Здесь представлено очень интересное исследование неизвестной ранее проблемы, связанной с особенностью взаимодействия приложений между собой в рамках Android-платформы. Ещё один классный способ обмануть систему.
Особенно приятно, что этот материал — от нашего соотечественника и на русском языке.
Рефакторинг MASVS — секция CODE
Я уже рассказывал про планы провести глобальный «ребрендинг» и переработку основных документов от OWASP для мобильных приложений. Секция про криптографию уже переделана, а сейчас настала очередь раздела V7 — Code.
Надо сказать, что переделывают его неплохо, по крайней мере все спорные требования, которые было иногда трудно понять, либо совсем убрали, либо перенесли в правильные разделы. К примеру, требование "MSTG-CODE-7 Error handling logic in security controls denies access by default."
наконец-то переехало в секцию архитектуры, где ему самое место.
А "A mechanism for enforcing updates of the mobile app exists."
либо вообще уберут, либо оно также отправится в архитектуру.
Поскольку этот документ, как и в целом проект OWASP, — общественное мероприятие, обсудить и прокомментировать можно на github (и там же — актуальный дифф).
Если вам есть, что сказать по теме, — добро пожаловать в комьюнити OWASP:)
Немного об особенностях eSIM в Android
Не совсем о безопасности, но также интересно и познавательно о том, что такое eSIM, какие технологии используются и какие есть ограничения. А именно, что для eSIM до недавнего времени нельзя было держать два активных профиля. То есть одна виртуальная сим-карта — один оператор. В том числе, поэтому многие производители устройств оставляли как минимум один слот для классической сим-карты.
Но Google решил пойти чуть дальше и в 2020 году запатентовал решение для программной возможности активной работы двух профилей на одном eSIM-чипе. И это прям очень круто, ведь теперь без физической сим-карты можно спокойно использовать несколько операторов, которые предоставляют eSIM.
Нововведение должно заработать в Android 13.
Увлекательная статья про печать фейковых чеков
Легко написанная статья про уязвимости в аппаратах, которые печатают чеки. Оказывается, на некоторых из них стоит полноценный Android.
Автор описывает, как работают такие устройства, как он проводил исследование и какие результаты получил. Не уверен, что поможет кому-то в работе, но мне почему-то очень понравилось. Думаю, что для расширения кругозора должна отлично подойти.
Библиотека для iOS-приложений для определение Jailbreak, дебагер и много чего еще
Весьма интересный проект «iOS Security Suite», написанный на Swift, который поможет вам определить:
Наличие Jailbreak
Подключенный дебаггер
Запуск в эмуляторе (наверное все-таки в симуляторе)
Наличие различных инструментов для отладки приложений
Ну и выглядит достаточно интересно всякие вещи в стадии Experimental:
Определение хуков в рантайме
Определение целостности файла из Bundle
Определение Breakpoint
Посмотрел на код библиотеки. Все здорово, и она действительно реализует все OWASP-требования и даже чуть больше. Но есть одна оговорка: названия ну слишком вызывающие, например, для определения Jailbreak — IOSSecuritySuite.amIJailbroken()
. Такое имя будет слишком просто найти. Так что я бы посоветовал взять исходники себе и немного пошаманить, чтобы названия были не такие говорящие.
А вообще очень неплохой проект для того, чтобы сходу получить пачку детектов. Только не поступайте, как я в свое время, и не включайте детект и предупреждение/блокировку пользователей сразу, а соберите побольше статистики и посмотрите, какие проверки когда срабатывают. Я в свое время неплохо так получил за то, что мы реализовали проверку, которая фалзила, и отключили половину пользователей