Аутентификация по короткому коду с поддержкой биометрии. Почти RFC

Году эдак в 2021-м, мне по служебной необходимости понадобилось переосмыслить подход к аутентификации по пин-коду и сделать эту процедуру максимально безопасной настолько, насколько это вообще возможно для мобильных устройств. Получилось нечто вроде RFC. Я уже упоминал этот документ в видео “Как взломать PIN-код | Теория, практика и векторы атаки”, но тогда его публиковать было нельзя. Теперь можно.

Приятного чтения!

/img/pin-code-authentication/kdpv.png

[Далее]

Android Jetpack Navigation: Go Even Deeper

Предыдущее исследование

Некоторое время назад мой коллега нашел интересную уязвимость в библиотеке Jetpack Navigation, которая позволяет открывать любой экран приложения в обход существующих ограничений для компонентов не являющихся экспортированными, а следовательно недоступными для других приложений. Суть проблемы в наличии неявного механизма обработки depplink-ов, с которым может взаимодействовать любое приложение на устройстве. Это исследование завершилось тем, что компания Google добавила в документацию к библиотеке следующее предупреждение:

/img/jetpack-compose-navigation/afd2874f950766bd721944957a1f0a0d.png

Проблема этого предупреждения в том, что оно, исходя из контекста документации, касается только API для создания явных deeplink-ов. Хотя на самом деле проблема гораздо глубже. Но давайте обо всем по порядку.

[Далее]

Три случайных уязвимости

В рамках стажировки PT Start от компании Positive Technologies поучаствовал в роли спикера на интенсиве по безопасности мобильных приложений. Всего, что там происходило в паблик не раскрою, но разбор трех уязвимостей, про которые рассказывал студентам, покажу. Две из них нашел я сам, а третья просто показалась мне очень интересной по ряду причин, которые станут понятны далее.

/img/three-random-bugs/kdpv.png
[Далее]

CVE-2023-40121

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

[Далее]

Святая корова SSL Pinning-а

Еще раз про MITM в Android

Долгое время я советовал всем разработчикам включать SSL Pinning в своих приложениях, чтобы защитить пользователей от MITM атак. И многие до сих пор делают это по инерции, даже не задумываясь о том так ли это необходимо, и от чего это вообще защищает. Пришло время разобраться и расставить все точки в вопросе про необходимость реализации этого подхода в ваших приложениях.

– Стой и не шевелись! Я тебя породил, я тебя и убью!

/img/sslpinning-holy-cow/kdpv.png
[Далее]

Как вкатиться в безопасность android приложений в 2024

С завидным постоянством получаю подобные вопросы лично или вижу их в нашем уютном чате Android Guards. Поэтому решил систематизировать информацию чтобы упростить процедуру входа как для тех, кто только начинает свой путь в инфобезе, так и для тех, кто уже что-то умеет в соседних областях.

/img/how-to-join-mobilesec-2024/kdpv.png
[Далее]

OWASP Mobile Top Ten 2023

Как-то тихо и незаметно для меня релизнулась новая редакция OWASP для мобилок. После ознакомления с новой редакцией появилось несколько мыслей, которыми хотел поделиться. Ну и в целом попытался простыми словами передать суть пунктов чтобы инфобез-неофитам и разработчикам было проще понять суть происходящего.

Comparison between 2016 and 2023

[Далее]

Эволюция уязвимостей в приложениях для Android

История развития приложений для Android прошла несколько заметных этапов: небольшие приложения, работающие локально, клиент-серверные приложения, экосистемы приложений и суперапы (super-app). Каждый из этих этапов повышал планку сложности, порождал новые уязвимости и заставлял разработчиков все больше заботиться о безопасности как самих приложений, так и данных, которыми они оперируют. Развивалась и сама операционная система, предоставляя разработчикам больше возможностей и механизмов обеспечения безопасности. Но в этой системе уравнений всегда несколько больше неизвестных, чем кажется на первый взгляд. Эта статья о том, как эволюционировали уязвимости мобильных приложений, что на это влияло, какие уязвимости актуальны сейчас и какие ждут нас в будущем.

[Далее]

Безопасность мобильных приложений и устройств

За 2022 год наша команда обнаружила 216 уязвимостей в 25 парах исследованных приложений для платформ Android и iOS. Наибольшая доля уязвимостей (14%) пришлась на хранение пользовательских данных в открытом виде. Несмотря на усилия со стороны разработчиков операционных систем и сообществ по безопасной разработке приложений, этот класс уязвимостей продолжает уверенно сохранять лидерство несколько лет подряд. Описанный тренд сохранит актуальность в 2023 году, хотя использовать криптографию в мобильных приложениях сегодня очень просто: и вендорские, и опенсорсные решения облегчают разработчикам работу с криптографическими примитивами. Второе место поделили между собой уязвимости, касающиеся проверки целостности приложений и хранения конфиденциальной информации в коде (по 9%). Замыкает тройку лидеров класс уязвимостей, связанных с проверками на недоверенное окружение (8%).

[Далее]

Деобфускация в уме: Часть 1

Если вам на секунду показалось, что название статьи вам смутно знакомо, то вам не показалось.

Очень часто под рукой не оказывается ни отладчика, ни дизассемблера, ни даже компилятора, чтобы набросать хотя бы примитивный трассировщик. Разумеется, что говорить о взломе современных защитных механизмов в таких условиях просто смешно, но что делать если жизнь заставляет?

Касперски Крис

Я задумал этот цикл статей, как попытку составить некий справочник того, как в android приложениях написанных на Kotlin, могут выглядеть разные куски кода обфусцированные с помощью Proguard.

/img/deobfuscation-in-the-mind/kdpv.png

[Далее]