Mobile AppSec World
5.29K subscribers
142 photos
8 videos
19 files
675 links
Новости из мира безопасности мобильных приложений, а так же интересные статьи, обзоры инструментов, доклады, митапы и многое другое...

По всем вопросам - @Mr_R1p
Download Telegram
SQL Injection в Android-приложениях

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

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

Это к слову о том, что данные во внутренней директории не нужно шифровать, так как они уже защищены средствами системы. НЕТ, не надо так больше, пожалуйста :)

Так что да, инъекции, хоть и не так часто, но встречаются в мобилках и последствия от них могут быть самыми серьёзными.

#injection #android #sql
Фреймворки тестирования мобильных приложений

Внутри нашего продукта Стингрей для автоматизации действий пользователя в приложении у нас есть два решения:
- Использование нашего механизма записи и воспроизведения тестовых сценариев (основан на координатах и перехвате функций по взаимодействию с UI приложения)
- Использование Appium-скриптов для взаимодействия с UI приложения

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

Фреймворк Appium был выбран нами не случайно, а как универсальное решение для iOS и Android устройств и так привычному нам подобию Selenium по синтаксису. Но возникает вопрос, а настолько ли популярен Appium и настолько ли универсален? Так как мы развиваемся и хотим добавить еще некоторые фреймворки есть вопрос, а какой фреймворк тестирования сейчас наиболее популярен и распространен? Я скину опрос чуть ниже, чтобы понять, куда нам рзвиваться и в какую сторону еще посмотреть.

И еще дело в том, что ко мне обратились коллеги из Касперского, которые создали свой собственный фреймворк для тестирования мобильных приложений - Kaspresso. К большому сожалению, я не большой эксперт в подобных вещах, но большое количество форков и звезд на гитхабе говорит о том, что люди им пользуются.

А в скором времени (24-го мая), коллеги проведут вебинар, в котором расскажут, как они вынесли этот фремворк в OpenSource, с какими трудностями внутри и снаружи столкнулись и как их преодолели. На мой взгляд, всем, кто делает собственные OpenSource-проекты можно послушать и, возможно, взять на заметку какие-то вещи. В любом случае, думаю, что это будет действительно интересно.

Я обязательно приду послушать, так что встретимся там)

#automation #appium #kaspersky #webinar
Какой фреймворк тестирования мобильных приложений вы используете?
Anonymous Poll
35%
Appium
32%
Espresso
20%
UIAutomator
4%
Robotium
5%
MonkeyRunner
4%
Ranorex
21%
XCUITest
И немного о рекламе на канале...

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

Я решил немного прояснить ситуацию, как это происходит, скорее для собственного успокоения и ответов на вопросы тем, кто хочет приобрести рекламу в канале.

Я не публикую платные рекламные посты принципиально.

Я могу порекламировать какое-то мероприятие или статью или смежный инструмент/канал только если мне интересна эта тематика и я понимаю, что это теоретически может быть интересно мобильным аналитикам безопасности или разработчикам и если мероприятие бесплатное (ну или если я могу разыграть билет на него). Ну или если я заинтересован в привлечении людей (как в случае с CFP на различные конференции по безопасности).

Давно хотел это написать, но теперь вот наконец созрел. Только хороший контент, только полезные вещи без всякой шляпы =)

Так что всем хорошей и продуктивной недели!

#advertisement #webinars #реклама
Подписываюсь под каждым словом :))
Forwarded from Android Guards
В качестве эксперимента написал пару статей в журнал Positive Research и хочу поделиться этими статьями здесь. Там много текста, нет картинок и после нескольких итераций редактуры они не очень похожи на то, что я обычно пишу. Но в целом, получилось не стыдно и может быть аудитория этого канала тоже найдет в них что-то интересное для себя.

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

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

Сам журнал можно забрать здесь, а еще они были в печатном виде на прошедшем PHD.
Кэширование сетевых запросов в Cache.db

В продолжении темы статей Артема статья, которая описывает интересный файл Cache.db в iOS-приложениях, в который по умолчанию попадает кэш всех сетевых запросов, отправленных через NSURLSession.

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

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

#iOS #storage #vulns
Эксплуатация Android WebView при помощи Frida

Читая заголовок этой статьи от NowSecure, я надеялся на что-то крайнее интересное, как проверить все WebView на возможность загрузки произвольных URL, как через них получить файлы или вызвать выполнение кода через JS Interface и, конечно, советы по автоматизации.

Но реальность превзошла все ожидания! Такого я не ожидал...

А давайте-ка мы через Frida подменим адрес URL, который попадает в целевую вьюху и тогда он откроет нужную нам ссылку! А если на страничке будет JS-код, то он выполнится! 😄

Что-то конечно это забавно весьма. Но и полезное в статье есть, например использование ngrok. Тоже не божий дар, но удобно.

#Frida #android #ngrok #webview
И ещё немного про IoT, или как устроен электросамокат

Спасибо большое ребятам из позитива за приглашение, отлично поболтали на PhDays про опасности различных IoT систем, девайсов и векторов атак на них с использованием мобильных приложений.

И вот на глаза попалась интересная статья про анализ взаимодействия, разбор железа и анализ безопасности электросамоката одного из брендов Xiaomi - Brightway.

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

Всем хороших выходных и приятного чтения!

#ble #hardware #analisys
Динамическая подгрузка и исполнение кода в Android

Всем привет!
Не секрет, что различная малварь на Android для расширения своего функционала и для того, чтобы меньше палиться при анализе использует техники динамической загрузки кода и его выполнения. и правда, это крайне удобно!

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

«Only when we create something, we are able to fully understand how it operates and then later on figure out ways to detect it»

Именно поэтому, на мой взгляд, лучшими аппсеками становятся бывшие разработчики. Так что учитесь не только ломать, но и создавать :D

#android #code
Эмулятор Smali-кода на Python

Весьма интересную штуку нашел недавно, еще не успел посмотреть, но возможно будет полезно тем, кто занимается патчем smali-кода.

Это небольшой и расширяемый эмулятор для smali-кода, написанный на Python.

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

#android #smali #emulator
Заметки по работе с Frida от Android Guards

Как по мне, удобнее работать через exports в питоне, но такой подход тоже достаточно неплох, если нужно что-то быстро сделать и не заморачиваться с компиляцией.

Спасибо @OxFi5t
Forwarded from Android Guards
Если хочется инструментировать приложения сразу несколькими Frida-скриптами, но при этом не хочется сливать их в один файл, то можно воспользоваться таким трюком: сначала запустить скрипт требующий ранней инструментации, например c отключением пиннинга, а потом, подключить другой скрипт к уже запущенному приложению. Сделать это можно так:
frida -Uf com.my.app -l unpinning.js # Отлючаем пиннинг (ранняя инструментация)

frida -UF -l fsmonitor.js # Запуск скрипта для текущего активного приложения
#aht
И еще немного про IoT

Пора, конечно, заканчивать с этой темой, но мимо этого я не смог пройти.

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

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

Что еще интересно в этой статье это способ поднятия вполне рабочего окружения для ARP Poising и перенаправления трафика на нужный прокси сервер.

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

В общем, это весьма весело в любом случае)

Ну и моя любимая шутка про очки:
“Java programmers wear glasses, because they don’t C#”
🤓

#iot #glasses #mitm
Как подготовить устройство для анализа Android-приложений

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

Лично у меня это несколько девайсов(было 🥲) и несколько эмуляторов с настроенными для моего окружения тулами и конфигами.

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

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

Во многом они пересекаются, но у каждого есть свои особенности.

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

#setup #environment #android
Когда охотник становится жертвой

На первом OFFZONE мои коллеги читали классный доклад именно с таким названием (очень рекомендую посмотреть), когда мы атаковали внутренние HR-системы, разместив пейлоады в резюме на HeadHunter. Было очень весело!

Но сегодня не об этом, а об атаках на привилегированные приложения на вашем устройстве. И, как показывает практика, наибольшее количество Permissions у..... барабанная дробь.... антивирусов! Да, именно они для анализа вашего устройства требуют каких-то непомерных разрешений. И конечно, уязвимости в них могут быть очень лакомым кусочком для злоумышленника.

Взять, к примеру приложение McAfee Security: Antivirus VPN, которое запрашивало более 70-ти разрешений! Куда ему столько🙃

И вот исследование только одной, главной Activity, позволяет запускать произвольные компоненты приложения с произвольными данными. Например, можно позвонить на любой номер… Или сколько всего еще возможно, учитывая богатый функционал и огромное количество разрешений. И даже ребята Pic сделали и видео 😃

Статья сделана по всем канонам, сначала теория, про андроид-приложения, про разрешения, про интенты и потом уже непосредственно анализ и результаты. Все весьма последовательно, по делу и приятно читать. Ну и конечно, отсылки к предыдущим исследованиям тоже радуют)

Тут как обычно, сапожник без сапог. И меня всегда интересовал вопрос, а проверяют ли сканеры исходного кода свой собственный код? Или как у них это устроено вообще?)

Всем отличной пятницы и приятного вечера!

#android #vulnerabilities #antivirus #mcafee
Разрешения в Android

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

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

Всем приятного чтения и хорошего настроения!

#habr #android #permissions
А вот это очень дельный и интересный совет!
Forwarded from Android Guards
Если для эксплуатации уязвимости нужно передать Parcelable класс в intent-е, то есть пара способов это сделать. Представим, что activity ожидает модель User, которая лежит в пакете com.myapp.xxx. Можно создать в эксплойте такую же структуру пакетов, и класс с таким же названием и необходимыми полями. Чтобы не писать реализацию сериализации руками, то можно воспользоваться плагином и добавить к созданному классу аннотацию @Parcelize. Но иногда классы бывают сложными или их требуется несколько сразу. В этом случае проще взять из целевого приложения .dex файлы с этими классами, положить их в assets и работать с ними через DexClassLoader. Пример здесь.
#aht
This media is not supported in your browser
VIEW IN TELEGRAM
Встретимся на Russian Tech Week!

Всем привет!

28-29 июня я буду выступать на конференции - TECH WEEK 2023 @russiantechweek. Тема доклада будет достаточно веселой: «Как разработать мобильное приложение и потерять все». Хоть времени на выступление и немного, но я обязательно сделаю доклад интересным)))

Еще у нас будет стенд, если есть желание пообщаться, подходите и поболтаем за безопасность мобильных приложений и не только)

Если вы хотели попасть на это мероприятие, но еще не купили билеты, есть возможность получить их со скидкой 20% по коду – SHABALIN. Для активации скидки нужно оставить заявку по ссылке и потом указать промокод.

#techweek #conf
Android SeLinux Internals

Очень грамотная и очень полезная статья про устройство SeLinux в Android, для чего он нужен, как устроен, как обойти его ограничения для каких-либо процессов и многое другое. Статья наполнена практическими примерами, примерами команд и другими полезными вещами.

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

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

Ну и так как это первая часть статьи, с нетерпением ждем вторую часть :)

#android #selinux