Android Guards – Telegram
Android Guards
3.8K subscribers
93 photos
1 video
7 files
222 links
Статьи, исследования, полезные ссылки и многое другое из мира безопасности Android платформы и приложений. Только проверенный контент!

YouTube: https://www.youtube.com/c/AndroidGuards

Поблагодарить: https://news.1rj.ru/str/+oMgsdsq2ydY5MjQy
Download Telegram
Хороший гайд по реверсу приложений на Flutter. Я бы сказал - лучший из тех, что я видел до этого. Показано очень много аспектов проведения исследования и все это собрано в последовательное повествование. Тем не менее, на мой вкус, все еще очень много ручной работы там где можно было автоматизировать процесс. Но это скорее идеи на будущее. А ребята из SPbCTF молодцы!
🔥16👍1👎1
Кто-то еще помнит про существование Android Auto? Я думал проект умер или находится в состоянии гибернации, но похоже что я ошибался. С этой балалайкой выпускают автомобили и я предлагаю вам почитать отличную историю про взлом такого автомобиля. В ней есть все, что мы любим: магичские пасы руками для доступа в инженерное меню, брутфорс паролей, захардкоженные ключи шифрования и даже IDAPro.

UPD: Внимательный читатель (не я) сразу заметил плашку "перевод", а прочитав комментарии понял, что существует вторая и третья часть.
🔥13👍1
Большая статья про reFlutter от его создателя. Архитектура решения и примеры использования. Чтиво не будет легким, но однозначно рекомендую ознакомиться.
🔥6👍1
Статья о том, как не эксплуатируемый баг превратить в эксплуатируемый, да еще и 0 click. И не где-нибудь, а в великом и ужасном (если смотреть в исходный код) Telegram-е.

tl;dr обход Uri фильтра и использование недостатков ChooserTargetService

https://dphoeniixx.medium.com/chaining-telegram-bugs-to-steal-session-related-files-c90eac4749bd
🔥16
Если у вас не виден трафик в Burp Suite и при этом приложение долго висит при отправке запроса, то попробуйте снять эту галочку. Это может помочь.
#lifehack
👍5🔥2
Всем любителям строить "самые лучшие защиты" для своих приложений посвящается. В докладе подробно рассказывается как устроен современный SafetyNet. Если любите технические кишки, то вам сюда.
👍13🤔2
Замечательная уязвимость, которая напоминает простую истину: используй все доступные возможности. Хакеру удалось обойти экран блокировки на Pixel 6 с помощью замены SIM карты на свою с ее последующей блокировкой и разблокировкой через PUK код. Выглядит довольно элегантно и совершенно точно нужно проверять эту возможность на других устройствах.

Google заплатил за нее 70 килобаксов так-то 🤑
👍17😱9🔥6
Давайте поговорим про исследование приложений на ReactNative? Чтобы задать тон дискуссии я написал небольшую заметку о моих подходах к вопросу и буду рад послушать про ваш опыт. Как положительный так и отрицательный.
🔥6👍1
Канал достиг элитного числа подписчиков =) Знаю-знаю, что сейчас кто-нибудь обязательно отпишется или придет, но число зафиксировано ;)

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

Хороших выходных!
👍33🍾17❤‍🔥5🥰3🎉3
Я вам уже рассказывал про DataStore и даже набросал концепт того, как могло бы выглядеть шифрование этого хранилища, потому что Google не предоставил такую возможность из коробки. С тех пор прошло два года и ничего не изменилось. Встроенного шифрования так и нет. Это заставляет разработчиков городить свои велосипеды, которые я иногда наблюдаю в приложениях. Но если вы хотите просто шифровать данные и не хотите велосипедов, то можно воспользоваться библиотекой, которую разработал и поддерживает мой бывший коллега. Недавно он туда завез поддержку StreamingAead и облагородил документацию.

А если вы сможете найти в этой библиотеке уязвимость, то вам дадут денег заведите пожалуйста issue на github.
👍13
⚡️Государству F снова угрожают хакеры, и их атаки становятся все более изощренными. Что им удастся взломать на этот раз?

Да-да, нас опять ждет осенний Standoff. Вместе с кибербитвой будет проходить митап, который можно смотреть онлайн. А в 14:00, в секции "Безопасность или паранойя? Разбираем клиентскую часть мобильных приложений" - я и небезызвестный @Mr_R1p обсудим темные стороны безопасности мобильных приложений.

Кроме этого выступления, обязательно обратите внимание на доклады "OAuth 2.0 и как его разламывать" и "37 слайдов про багбаунти".

Присоединяйтесь, трансляция начинается в 10:00 MSK.
3👍3
Если вы пропустили трансляцию нашего с @Mr_R1p выступления, то ее уже можно посмотреть на YouTube. Получилось скорее развлекательно чем технически, поэтому можете также показать это выступление вашему менеджеру ;)
1
Кто-нибудь пользуется jadx для повседневной работы? Смотреть код, ресурсы, искать строки и т.д. Мне кажется, что как декомпилятор он неплохой, но смотреть код в нем не удобно. Поэтому мой обычный флоу работы с jadx это File->Save as gradle project и дальше уже смотреть в студии. Но мне захотелось еще больше автоматизировать этот процесс и вообще не заходить в GUI. У jadx есть cli версия, но мне всегда было очень лениво сесть и сопоставить опции из GUI с cli. В какой-то момент, я заметил, что в настройках есть кнопка "Copy to clipboard", которая позволяет выгрузить все текущие настройки в виде json. При этом, проблема сопоставления никуда не делась и я задал автору утилиты вопрос о том как перекатить эти опции из GUI в cli. Оказалось, что такой возможности пока нет, но есть обходной путь. Чем я и воспользовался, написав конвертер json конфигов во флаги командной строки. Мою проблему он решает, но если вашу нет, то создавайте issue или засылайте PR-ы.
Но, строго говоря - это костыль и лучше бы иметь такую возможность в самом jadx, поэтому поставьте лайков под этой issue.
👍18🔥2👌1
Если ваш вечер пятницы выглядит не так, то чем вы вообще там занимаетесь? 😁

Все подробности скоро на канале. Не переключайтесь.
11😁4👍2🤯2
Есть такая местами популярная в вебе штука - security.txt. Этот файл обычно располагают в корне сайта и он содержит контакты куда репортить уязвимости и иногда PGP ключи для шифрования отчетов. Но я ни разу не встречал этого или подобного ему файла в мобильных приложениях. Хотя это кажется полезным. Предлагаю всем разработчикам приложений, располагать такой файл в директории assets. Там его будет легко найти. Чтобы не составлять такой файл руками можно воспользоваться готовым генератором. Как вам такая инициатива?
👍29🤔11🔥4
Не буду разгонять телегу про "это был тяжелый год...". Был. И хватит об этом. Но в этом году удалось сделать много того, до чего долго не доходили руки. Одна из таких вещей - мое небольшое исследование о том, как ведут себя строки в памяти JVM и можно ли их гарантированно оттуда удалить. Как обычно я буду очень рад конструктивным дополнениям и уточнениям к изложенному материалу. Приятного чтения!
👍286🔥2🤩2🏆1
Начнем год с конференций. Вы же не хотите, чтобы на месте этого поста была статья про исследование приложения накрытого DexGuard-ом? Ну вот 🙃

Positive Hack Days 12, который пройдет 19-20 мая в Парке Горького - объявляет Call For Papers. Мне, традиционно, хотелось бы послушать много крутых докладов по уязвимостям в мобилках. Порадуйте меня пожалуйста 😉 Но вообще, там довольно широкий набор тем, и если мобилки вам не очень, то можно подать доклад про расследование действий кибергруппировок, безопасность BIOS, UEFI и другого firmware и даже про архитектурные проблемы современных вычислительных систем. Уж о чем, а об архитектуре тут все мастера потрындеть, да?

Рассматриваются разные варианты участия:
- доклад (50 минут),
- Fast Track (15 минут),
- Hands-on Lab (до 4 часов).

Лабу на 4 часа предлагаю сделать про снятие пиннинга 👨‍💻

Заявки от спикеров будут приниматься до 25 марта 2023 года. Программный комитет ответит на все заявки до 1 апреля.
👍62
Запускаю новую рубрику - Android Hacker Tips. Она будет выходить раз в неделю и содержать полезные советы, которые, теоретически, должны помогать в работе исследователям мобильных приложений. Эти советы будут выходить каждый понедельник под хештегом #aht. Чтобы не делать это сообщение бесполезным, прикрепляю к нему самый первый совет.
——————————————
При изучении сложных конструкций в декомпилированном коде или даже оригинальном исходном коде, полезно в динамике понимать как работает тот или иной алгоритм или его часть. Чтобы не переписывать это на какой-нибудь python или не создавать новый проект в Android Studio/Intellij IDEA - можно воспользоваться scratch-файлами. Кроме того, что они упрощают написание PoC-ов, они также являются кросс-проектными, а значит можно написать несколько базовых скретчей и они сразу будут доступны во всех новых исследуемых приложених. При условии, что вы используете Android Studio/Intellij IDEA конечно.
👍28🔥11
Нужно всегда обращать внимание на блок <query> в манифесте приложении. Там можно найти имена пакетов, с которыми исследуемое приложение как-то взаимодействует. Это взаимодействие может быть очень тесным и доверительным. А отсутствие проверки подписи при таком взаимодействии может дать поистине безграничные возможности. При исследовании этих взаимодействий также помогает поиск по ключевым словам queryIntentActivities, getPackageInfo, resolveActivity и getInstalledPackages.
#aht
👍30
Если приложение использует биометрию, то нужно сразу искать флаги setUserAuthenticationRequired и setInvalidatedByBiometricEnrollment. Если они установлены в false, то это может позволить обойти биометрическую аутентификацию при наличии физического доступа к устройству.
Первый флаг устанавливается когда нужно ограничить использовать ключа шифрования биометрическими данными. Без правильной биометрии - ключ не будет доступен для использования. Соответственно, если он false, то биометрический диалог можно просто скипнуть с помощью Frida.
Второй флаг, установленный в false позволяет злоумышленнику добавить в систему свой палец/лицо и получить доступ к приложению используя уже свои биометрические данные.
#aht
👍34