Токен 2SDnjePPp7S

Елизавета Рыженкова, независимый эксперт: Как видно из списка 2024 года, сейчас наиболее актуальной уязвимостью считается Improper Credential Usage

Премия Securitymedia
Елизавета Рыженкова, независимый эксперт: Как видно из списка 2024 года, сейчас наиболее актуальной уязвимостью считается Improper Credential Usage
Елизавета Рыженкова, независимый эксперт: Как видно из списка 2024 года, сейчас наиболее актуальной уязвимостью считается Improper Credential Usage
01.02.2024

Елизавета Рыженкова, специалист по анализу защищенности и автор блога «x4n4x security», рассказала порталу Cyber Media об особенностях тестирования мобильных приложений, реверс-инжиниринге и отличиях тестирования мобильных приложений от веба.

Cyber Media: Есть ли какие-то важные различия между тестированием мобильных и веб-приложений?

Елизавета Рыженкова: Конечно. По сути, мобильное приложение является таким же клиентским кодом, что мы видим в браузере, когда заходим на веб-страницу. В браузере мы видим JavaScript, который виновен в большей части client side багов. 

Для тестирования клиентской части веба мы проксируем трафик браузера (обычно с помощью BurpSuite). Далее мы изменяем запросы, чтобы посмотреть как реализована валидация данных. Если реализация некорректна, то можно сделать инжект чего-то вредоносного. Проверяем серверную часть на мисконфиги и смотрим на правильность использования технологий. Определяем их версии, смотрим эксплойты под устаревшие.

Что касается мобильных приложений, процесс тестирования немного усложнен. Да, мы таким же образом будем в итоге проксировать трафик (перехватывать запросы) и тестить бэкенд приложения (изменять запросы, фаззить), но:

  • первое, что необходимо сделать – это снять ssl pinning. Иногда это делается сложно, иногда просто. Реализация проверки зашита на клиенте;
  • второе – мы используем совершенно другие приложения для тестирования. По классике это скрипты Frida.

На данный момент существуют обертки над этими скриптами (например, objection, RMS).

Первая часть – это подготовка среды. Она делается один раз, но многих именно этот процесс останавливает от того, чтобы начать пентестить мобилки.

Для Android-приложений могут подойти эмуляторы и виртуальные машины, доступные на любой OS. Но для тестирования iOS без Apple-девайсов никуда. Зачастую приходится работать с кодом и он бывает обфусцирован, а на iOS так вообще исходники только дизассемблируются и, чтобы там копаться, нужно иметь определенный опыт в реверсе.

Для облегчения тестирования как и в вебе используются готовые решения. Существует большое количество различных автоматизированных сканеров. Один из самых популярных и бесплатных MobFS.

Поэтому можно сказать, что есть и сходства, и отличия в тестировании веб-приложений и «мобилок».

Cyber Media: Какие типы уязвимостей чаще всего встречаются в мобильных приложениях?

Елизавета Рыженкова: Чаще всего самые критические уязвимости затрагивают API приложений. Это серверная часть.

Для того чтобы ознакомиться с наиболее часто встречающимися уязвимостями в мобильных приложениях, можно взглянуть на OWASP Mobile top 10. Как видно из списка 2024 года, сейчас наиболее актуальной уязвимостью считается Improper Credential Usage. Это ключи и различные токены доступов, оставленные в части клиентского кода или же используемые, передаваемые небезопасным способом. 

На практике работы могу это подтвердить. Очень часто в исходном коде приложений остаются те или иные секреты. Уязвимость как и была, так и остается популярной на данный момент.

Cyber Media: Если сравнивать приложения, написанные под iOS и Android, есть ли какая-то специфика с точки зрения кибербезопасности?

Елизавета Рыженкова: Apple более строго контролирует приложения, допущенные в App Store, проверяя их на наличие вредоносного кода и нарушений политики безопасности. Это уменьшает вероятность появления вредоносных приложений в iOS. Также существует ряд пунктов, по которым продукцию Apple можно считать более безопасной. Например, установка приложений из одного источника (App Store). 

Но если встает вопрос какой девайс использовать, советую выбирать максимально удобный для себя и подходящий под задачи!

Cyber Media: Можете ли Вы поделиться своими кейсами по исследованию мобильных приложений, которые считаете наиболее интересными?

Елизавета Рыженкова: Наиболее интересные исследования были связаны с багбаунти китайских приложений.

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

Познакомилась с экосистемой WeChat. Именно экосистемой, а не приложением, потому что в нем сосредоточено максимальное количество функциональности и данных. 

Было интересно реверсить это приложение, чтобы узнать, как работает функциональность скрытая за обфускацией и патчить приложение для того, чтобы снять пиннинг.

Cyber Media: Насколько часто вообще приходится сталкиваться с обфусцированными приложениями? Есть ощущение, что в мобильной разработке мало кто занимается защитой от анализа кода.

Елизавета Рыженкова: На данный момент появляется все больше средств обфускации, что затрудняет реверс. Это создано не только для затруднения исследования, но и с целью защиты авторских прав. К примеру, все больше приложений пишутся на Kotlin, где есть встроенные механизмы обфускации и минификации, что делает код запутанным и сложным для анализа.

Cyber Media: Если говорить о вредоносных мобильных приложениях, насколько часто они встречаются, и какие техники используют злоумышленники, чтобы обойти проверку магазинов приложений?

Елизавета Рыженкова: Существует очень большое количество вредоносных мобильных приложений.

Я часто встречаюсь с фишинговыми приложениями, которые можно скачать из альтернативных магазинов. Или же просто скачать и вручную установить .apk файл. В iOS это возможно только при наличии максимальных привилегий, а в Android можно установить после разблокировки режима разработчика. 

Приложения притворяются официальными продуктами крупных вендоров. За счет этого некоторые люди могут повестись и предоставить в них реальные логины, пароли от своих сервисов. 

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

Популярные материалы

Комментарии 0