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

По всем вопросам - @Mr_R1p
Download Telegram
Гайд по реверсу iOS приложения на примере ExpressVPN

Очень неплохая статья о нелегком пути реверса на iOS вышла недавно на Хабре от @skillzq.

Автор разбирает приложение ExpressVPN, как оно осуществляет SSL Pinning, как его снимать, как найти место, где шифруется запрос и как вытащить ключ шифрования и много других интересных моментов.

Приятно почитать и особенно круто, что в конце статьи есть ссылка на Github автора, где можно посмотреть, как именно он все это свел в работающий полноценный модуль для тестирования!

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

Спасибо автору!

#iOS #Reverse
​​Модификация Android-приложений

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

Мне в свое время очень понравилось модифицировать игру ClumsyBird, где закомментировав одну строку в smali можно было бесконечно летать через деревья и набирать огромное количество очков.

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

Где можно взять модифицированные приложения и в достаточно большом количестве? Есть очень интересный канал, в котором выкладывают модифицированные версии приложений (чаще всего игры). Я иногда выкачиваю пару приложений, сравниваю с оригиналами и пытаюсь повторить модификацию) Иногда получается, иногда нет :D Ну и пару игрушек себе поставил с модами, надеюсь хоть там меня не забанят 😄

Так что, если вам интересно прокачаться в подобных модификациях и хочется потренироваться не на CTF, а на реальных приложениях - заходите в канал https://t.me/progifresh, не пожалеете (а может и свое приложение там найдете))

#Reverse #Android #ВП
Реверс приложений на Flutter

Несколько раз за последнее время в различных чатах всплывал вопрос про анализ приложений на Flutter, как к ним подступиться, как анализировать?

И там же всплыла очень интересная ссылка на инструмент по реверсу Flutter-приложений под названием reFlutter.

Из описания:
Этот фреймворк помогает при реверсе Flutter приложений благодаря пропатченной версии библиотеки Flutter, которая скомпилирована и готова к переупаковке приложения. В этой библиотеке изменен процесс десериализации, для более удобного динамического анализа.

Поддерживает iOS и Android и умеет перехватыватывать трафик приложения и перенаправлять его на прокси без необходимости ставить сертификаты и рутовать устройство. По словам создателя он автоматически умеет снимать некоторые виды Certificate Pinning, который используется во Flutter. Как мне кажется, только ради этого можно его попробовать 😁

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

#tools #flutter #reverse #pinning
Реверс протокола камер Reolink

Достаточно давно интересуюсь системами умного дома и в целом устройствами IoT.

И вот наткнулся на очень интересную статью про реверс проприетарного протокола камер Reolink с целью его преобразования в популярный и народный RTSP.

Чем она приглянулась и почему решил поделиться с вами? В статье много инструментов, которые мы часто используем, тут и Wireshark, анализ firmware, использование Ghidra, поиск строк, использование gdb, strace и многое другое. Интересно посмотреть на использование таких знакомых вещей под немного другим углом 😄

Надеюсь вам тоже будет немного интересно почитать, а может даже и полезно 🙃

#Reolink #iot #smarthome #reverse
Интеграция Ghidra и radare2

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

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

Более подробно об этом плагине и примерах использования автор рассказал да r2con2019.

Удачного реверса

#reverse #radare2 #ghidra
Отличная заметка по реверсу и замене функции на свою в рантайме

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

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

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

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

#lldb #reverse
Большой гайд по реверсу

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

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

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

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

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

#reverse #frida #gdb #radare2
Продолжая тему реверса - инструмент radius2

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

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

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

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

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

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

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

#radius #radare #frida #reverse
Большая энциклопедия Android-malware

Не так давно кто-то спрашивал про сэмплы зловредов под Androd. Тогда я скинул репозиторий, который содержит определенное их количество и периодически обновляется.

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

Очень интересный проект, для аналитиков самое то!

А вот небольшая статья по его функционалу.

#Android #Malware #reverse
Анализ Flutter-приложений

Компания Guardsquare, производитель DexGuard, выпустила занятную статью про внутренности Flutter и подходу к его анализу.

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

Во второй статье уже намного больше примеров, объяснений и внутренней кухне Flutter. Много отсылок на различные инструменты доя анализа, скрипты и репозитории (в том числе написанные самими исследователями). Весь свой тулинг для демо выложен в открытый доступ. Так что можно не просто прочитать, а попробовать повторить все шаги в статье, что, наверно является наиболее ценным.

Ну и я уверен, что в следующих статьях мы ещё услышим о reFlutter ;)

#flutter #reverse #dexguard
Вторая часть исследования iOS-приложений под обфускацией

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

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

Что мне понравилось, это способ "защиты" от анализа crash-лога приложения, когда оно падает или аварийно завершается при обнаружении Frida или jailbreak. А именно, перед завершением работы обфускатор затирает некоторые регистры, например LR. А в твуом формате iOS-служба для анализа сбоев не может правильно построить стек вызовов функций, которые привели к сбою. Очень занятно, так как из crash-лога можно было бы получить нужную информацию.о том, где происходят проверки.

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

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

- Deobfuscation: recovering an OLLVM-protected program
- Automated Detection of Control-flow Flattening
- D810: A journey into control flow unflattening

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

#ios #reverse #rasp #frida #obfuscation
Заметки на полях. Дебаг нативных библиотек при помощи IDA

В соседнем чате прислали интересную небольшую инструкцию, как можно удобно дебажить нативные библиотеки при помощи IDA:

https://www.trustwave.com/en-us/resources/blogs/spiderlabs-blog/debugging-android-libraries-using-ida/

#IDA #android #reverse #debug
Mobile AppSec World
Реверс iOS-приложений для начинающих Отличная статья по реверсу и модификации iOS-приложений доя начинающих! Никаких больших и тяжелых софтин, вроде IDA, дизассемблеров и прочего, только классика: otool, cycript и lldb. Очень рекомендую всем, кто желает…
Начнем новый год с продолжения статей по реверсу iOS

С того времени, как вышла эта статья, в ней появилось еще две главы
- Guide to Reversing and Exploiting iOS binaries Part 2: ARM64 ROP Chains
- Heap Overflows on iOS ARM64: Heap Spraying, Use-After-Free (Part 3)

Как обычно, используются только бесплатные утилиты:
- LLDB - https://lldb.llvm.org/
- Radare 2 - https://rada.re/n/
- Hopper Disassembler (DEMO Version) - https://www.hopperapp.com/

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

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

Так что дерзайте, у нас весь год впереди, чтобы научиться чему-то новому и интересному. Может как раз в этом году ты начнешь реверсить или разберешься с Frida?)

В общем, друзья, всем удачного и насыщенного года!

#iOS #reverse #newYear
Kernel Debug View

Оказывается, ядро ​​iOS и macOS умеет создавать отладочные сообщения и логировать, какие функции вызываются в ядре.

Как можно это провернуть и сопоставлять trace с фактически вызываемыми функциями, показано в отличном видео!

А на самом деле, если зайти в этот плейлист, то можно найти там шикарные короткие видео-заметки по реверсу iOS-приложений.

Более того, если посмотреть на канал автора целиком, то там есть ооочень много крутого контента!

Как минимум:
- воркшоп по анализу iOS-приложений в трех частях
- запись 41 выступления
- лаба по реверсу

И много других полезных штук, так что хороших и плодотворных выходных!

#iOS #reverse #frida #youtube
Анализ Xamarin-приложений.

Хотя я и очень не люблю кроссплатформенные приложения, но приходится весьма часто иметь с ними дело.

В последнее время, это конечно все больше Flutter, но встречаются еще и на других платформах.

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

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

Кстати, в соседнем чате от @OxFi5t тоже есть очень классный совет по Xamarin-приложениям, переходите, читайте обязательно :)

#xamarin #reverse #tools
Mobile AppSec World
Пишем Android-приложение практически полностью в NDK Привет любителям прятать строки в .so файлах, что бы их сложнее было найти! Тут есть крайне занятный пример, как практически полностью написать приложение, используя NDK для того, чтобы усложнить анализ…
Много полезных видео для реверса

Решил я пересмотреть видео и глянуть, а что там ещё интересного у автора в видео лежит.

А там крайне много интересной информации, начиная от начального уровня (анализ и структура файла Info.plist), заканчивая весьма сложными вещами (на по крайней мере для меня), как пример - Ghydra Scripting.

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

#YouTube #reverse
Azeria Labs - обучение реверсу

Тут в комментариях подсказали еще один отличный ресурс по реверсу - Azeria Labs.

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

При этом есть и общая часть и статьи непосредственно относящиеся к iOS, например:

1. HEAP EXPLOIT DEVELOPMENT – CASE STUDY FROM AN IN-THE-WILD IOS 0-DAY

2. HEAP OVERFLOWS AND THE IOS KERNEL HEAP

3. GROOMING THE IOS KERNEL HEAP

Так что будет интересно и людям, кто занимается мобилками и всем, кто занимается реверсом.

#reverse #ios
Deobfuscating Android ARM64 strings with Ghidra

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

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

Очень советую тем, кто работает с этим инструментом или планирует изучать.

#android #ghidra #reverse
Обход защиты от отладки в iOS-приложениях.

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

В статье описывается логика и принцип различных защитных техник, а так же, как их можно обойти. При обходе используются инструменты:
- frida
- r2frida
- radare2
- r2ghidra

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

Всем, кто сталкивается с тем, что приложение детектит скомпометированную среду, советую!

#ios #reverse #frida
Реверс Flutter-приложений

И снова речь пойдёт о Reflutter и как с ним работать!

Шутка :)

Это презентация с nullcoin, в которой рассказывают о внутреннем строении таких приложений и о том, как их можно разреверсить. В качестве подопытного взяли приложение на Flutter из GreHack CTF 2023.

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

К сожалению, в статье только презентация, но я нашел еще и видео выступления. Так что можно ознакомиться полностью.

#flutter #reverse