В современном мире стало очень много данных. И очень много людей, которые этими данными интересуются. Поэтому на плечи разработчиков приложений ложится забота о приватности данных пользователей, т.к. пользователи не всегда беспокоятся об этом сами. Но практически всегда приходят и жалуются на утечки ;)
По ссылке вы найдете туториал, который покрывает различные аспекты обеспечения приватности данных в android приложениях:
😎 Работа с разрешениями (permissions) относящимися к приватности
📸 Отключение логирования и снятия скриншотов
🧻 Очистка кэша
👆 Биометрия и шифрование
Люди искушенные в написании безопасных приложений вряд-ли найдут для себя что-то новое, но для желающих разобраться или систематизировать свои знания этот туториал подходит отлично
#4developers, #cryptography, #privacy
https://www.raywenderlich.com/6901838-data-privacy-for-android
По ссылке вы найдете туториал, который покрывает различные аспекты обеспечения приватности данных в android приложениях:
😎 Работа с разрешениями (permissions) относящимися к приватности
📸 Отключение логирования и снятия скриншотов
🧻 Очистка кэша
👆 Биометрия и шифрование
Люди искушенные в написании безопасных приложений вряд-ли найдут для себя что-то новое, но для желающих разобраться или систематизировать свои знания этот туториал подходит отлично
#4developers, #cryptography, #privacy
https://www.raywenderlich.com/6901838-data-privacy-for-android
kodeco.com
Data Privacy for Android
In this data privacy tutorial for Android with Kotlin, you’ll learn how to protect users’ data.
Вышла в релиз довольно удобная веб-панелька для работы с java классами и методами в рантайме. Можно хукать методы, смотреть их аргументы и значения, что помогает лучше понять поток выполнения приложения. Построена на базе Frida и требует установки Frida сервера на устройстве.
Пока все работает не так хорошо, как хотелось бы, но задумка отличная.
#reverse_engineering #frida
https://github.com/m0bilesecurity/RMS-Runtime-Mobile-Security
Пока все работает не так хорошо, как хотелось бы, но задумка отличная.
#reverse_engineering #frida
https://github.com/m0bilesecurity/RMS-Runtime-Mobile-Security
GitHub
GitHub - m0bilesecurity/RMS-Runtime-Mobile-Security: Runtime Mobile Security (RMS) 📱🔥 - is a powerful web interface that helps…
Runtime Mobile Security (RMS) 📱🔥 - is a powerful web interface that helps you to manipulate Android and iOS Apps at Runtime - m0bilesecurity/RMS-Runtime-Mobile-Security
Вы всегда хотели русскоговоряющую шпаргалку по Smali? Теперь она есть. Ставим звездочки, предлагаем правки.
#4developers, #reverse_engineering, #smali
https://habr.com/en/post/495024/
#4developers, #reverse_engineering, #smali
https://habr.com/en/post/495024/
Habr
Шпаргалка по Smali на русском
Русская шпаргалка по Smali Приветствую, любители реверс-инжинирить Android. Перед вами шпаргалка по Smali — аналогу ассемблера для Android-приложений. Изначальный текст на русском взят отсюда. Там...
Нашел сайт, куда выкладывают записи конференций по безопасности. Контента очень много и он регулярно обновляется. Проведите ближайший месяц с пользой 🦠
#conference
https://infocon.org/cons/
#conference
https://infocon.org/cons/
infocon.org
InfoCon.org is an archive of hacking and security conference videos, documentaries, rainbow tables, word lists and podcasts.
Многие уже слышали историю про “Социальный мониторинг”. Наткнулся на хабропост где разбираются основные проблемы. Если кто-то еще не вкурсе, то это отличный повод узнать что же произошло.
#reverse_engineering
https://habr.com/en/post/495606/
#reverse_engineering
https://habr.com/en/post/495606/
Хабр
«Социальный мониторинг». Счёт 1:0 в нашу пользу
Введение Приложение вышло → увидели тихий ужас → начали писать отрицательные отзывы → разобрали по полочкам → приложение удалили (отправили на доработку). Всем...
Самоизоляция продолжается, а вместе с ней нарастает скука. Чтобы как-то вас развлечь, я хочу предложить решить crackme начального уровня. Закаленным в боях реверсерам и ctf-ерам он может показаться скучным, но кто знает, может и для вас найдется над чем подумать.
Задача: у вас есть apk файл crackme1.apk (контрольная сумма: 93baa133485e8d1fb069effd4528c0a4b2acef69), который содержит 5 ключей. Нужно их найти. Проверить правильность ключа можно у бота: @android_guards_crackme_bot
Если история зайдет, то сделаю crackme посложнее. Всем хороших выходных! 😉
#reverse_engineering, #just4fun
Задача: у вас есть apk файл crackme1.apk (контрольная сумма: 93baa133485e8d1fb069effd4528c0a4b2acef69), который содержит 5 ключей. Нужно их найти. Проверить правильность ключа можно у бота: @android_guards_crackme_bot
Если история зайдет, то сделаю crackme посложнее. Всем хороших выходных! 😉
#reverse_engineering, #just4fun
Если вы еще не забыли (а я забыл), то в Goolge Pixel 3 и Pixel 3 XL появились отдельные security чипы "Titan M". Вместе с ними появилось такое понятие как
#strongbox, #cryptography, #pixel
https://proandroiddev.com/android-keystore-what-is-the-difference-between-strongbox-and-hardware-backed-keys-4c276ea78fd0
StrongBox KeyStore APIs, которое обещает хранить наши ключи "в железе". Наткнулся на старую, но все еще актуальную статью, которая объясняет разницу между тем как ключи хранили "в железе" раньше (23+) и как они хранятся сейчас (28+).#strongbox, #cryptography, #pixel
https://proandroiddev.com/android-keystore-what-is-the-difference-between-strongbox-and-hardware-backed-keys-4c276ea78fd0
Medium
Android KeyStore: what is the difference between “StrongBox” and “hardware-backed” keys?
Together with the announcement of the Pixel 3 and 3 XL phones came a bunch of other announcements, one of them being the “Titan” security…
Статья от ребят из
🏝 В отличие от WebView, CCT запускает себя (а значит и JavaScript) в своем собественном процессе
🔐 CCT отображает адрес посещаемого сайта и "замочек" безопасного (или нет) соединения
Но ничего не дается бесплатно и проблемы с использованием CCT тоже есть. В статье написано с чем ребята столкнулись и как эти проблемы решали.
#4developers, #webview, #chrome_custom_tabs
https://blog.plaid.com/securing-webviews-with-chrome-custom-tabs/
Plaid где они рассказывают почему использовать Chrome Custom Tabs гораздо безопаснее чем WebView. А ведь и правда, почему?🏝 В отличие от WebView, CCT запускает себя (а значит и JavaScript) в своем собественном процессе
🔐 CCT отображает адрес посещаемого сайта и "замочек" безопасного (или нет) соединения
Но ничего не дается бесплатно и проблемы с использованием CCT тоже есть. В статье написано с чем ребята столкнулись и как эти проблемы решали.
#4developers, #webview, #chrome_custom_tabs
https://blog.plaid.com/securing-webviews-with-chrome-custom-tabs/
Plaid
Securing WebViews with Chrome Custom Tabs | Plaid
Plaid empowers innovators in the fintech space by providing them with access to
financial data via a uniform API. In order to help end users connect their
...
financial data via a uniform API. In order to help end users connect their
...
Найдено 4 ключа и я, как обещал, даю первую подсказку: Мета-данные - очень полезная вещь. Много чего можно из них узнать, например автора. Но не все форматы файлов имеют возможность хранить метаданные.
Вторая подсказка: Разработчики бывают весьма наивны и думают, что хранение токенов в коде приложения это "довольно безопасно". Но есть и такие, кто думает, что они умнее первых и делают то же самое, но уже не в коде приложения. Очень опасное заблуждение.
Я подумал и решил дать подсказку про ключ, который оказался самым сложным для участников. Возможно это поможет продвинуться нашим лидерам.
Подсказка:Некоторые алгоритмы шифрования очень похожи и порой существуют под разными именами. Что мы еще знаем про алгоритмы шифрования? Они не всегда требуют указывать вектор инициализации. Так… Что еще… Ах да, ключ.. Некоторые из них не принимают ключ произвольной длины.
Подсказка:Некоторые алгоритмы шифрования очень похожи и порой существуют под разными именами. Что мы еще знаем про алгоритмы шифрования? Они не всегда требуют указывать вектор инициализации. Так… Что еще… Ах да, ключ.. Некоторые из них не принимают ключ произвольной длины.
Вслед за взломом айфонов через отправку email сломали Bluetooth на андройде. Найденная уязвимость позволяет получить удаленный шелл на устройстве. По ссылке найдете полный разбор уязвимости с примерами и картинками.
#bluetooth_bug, #reverse_engineering
https://insinuator.net/2020/04/cve-2020-0022-an-android-8-0-9-0-bluetooth-zero-click-rce-bluefrag/
#bluetooth_bug, #reverse_engineering
https://insinuator.net/2020/04/cve-2020-0022-an-android-8-0-9-0-bluetooth-zero-click-rce-bluefrag/
Скучно проводите выходные? Прекратите это делать. Если вы начинающий android reverse engineer, то вам будет полезно посмотреть этот тренинг.
#reverse_engineering
https://www.youtube.com/watch?v=BijZmutY0CQ
#reverse_engineering
https://www.youtube.com/watch?v=BijZmutY0CQ
YouTube
Android App Reverse Engineering LIVE! - Part 1
Live stream of teaching Part 1 of the Android App Reverse Engineering workshop on 24 April 2020 by Maddie Stone (@maddiestone). Workshop is available at https://maddiestone.github.io/AndroidAppRE
Donation Link for SF-Marin Foodbank: https://us-p2p.netdo…
Donation Link for SF-Marin Foodbank: https://us-p2p.netdo…
Вот и произошло то, чего мы все так долго ждали (ну может не все, ладно…). ProtonMail выложили в открытый доступ исходники своего Android приложения. Они позиционируют себя как очень защищенная почта и их исходники многие хотели по двум причинам:
👮♀️ Убедиться, что там все так безопасно как они обещают
📚 Изучить применяемые их командой security-практики.
Теперь все это лежит на github. Идем смотреть =)
#security_best_practice, #protonmail_android
https://github.com/ProtonMail/proton-mail-android
👮♀️ Убедиться, что там все так безопасно как они обещают
📚 Изучить применяемые их командой security-практики.
Теперь все это лежит на github. Идем смотреть =)
#security_best_practice, #protonmail_android
https://github.com/ProtonMail/proton-mail-android
GitHub
GitHub - ProtonMail/proton-mail-android: Proton Mail Android app
Proton Mail Android app. Contribute to ProtonMail/proton-mail-android development by creating an account on GitHub.
Давненько что-то Samsung не радовал нас багами в прошивках.
На этот раз ошибку нашли в обработчике изображений встроенном в систему рендеринга графики. Уязвимость приводит к
Нашли ее ребята из Google с помощью обычного фаззинга. Так что если вы до сир пор считали, что фаззинг это бесполезная трата времени, то пора менять свое отношение к этой технике.
#samsung_bugs, #fuzzing
https://www.opennet.ru/opennews/art.shtml?num=52896
На этот раз ошибку нашли в обработчике изображений встроенном в систему рендеринга графики. Уязвимость приводит к
RCE.Нашли ее ребята из Google с помощью обычного фаззинга. Так что если вы до сир пор считали, что фаззинг это бесполезная трата времени, то пора менять свое отношение к этой технике.
#samsung_bugs, #fuzzing
https://www.opennet.ru/opennews/art.shtml?num=52896
www.opennet.ru
Уязвимость в Android-прошивках Samsung, эксплуатируемая через отправку MMS
В поставляемом в Android-прошивках Samsung обработчике изображений Qmage, встроенном в систему рендеринга графики Skia, выявлена уязвимость (CVE-2020-8899), позволяющая организовать выполнение кода при обработке в любом приложении изображений в форматах QM…
Вышла новая версия Frida 🎉
Они обновили все зависимости до свежих версий и наболее интересным обновлением выглядит V8 версия 8.4. Также добавлена поддержка Android 11 Developer Preview 4. Обновляемся!
https://frida.re/news/2020/05/19/frida-12-9-released/
Они обновили все зависимости до свежих версий и наболее интересным обновлением выглядит V8 версия 8.4. Также добавлена поддержка Android 11 Developer Preview 4. Обновляемся!
https://frida.re/news/2020/05/19/frida-12-9-released/
Frida • A world-class dynamic instrumentation toolkit
Frida 12.9 Released
Observe and reprogram running programs on Windows, macOS, GNU/Linux, iOS, watchOS, tvOS, Android, FreeBSD, and QNX
В
#androidx_security, #security_best_practice
androidx есть такая библиотека: security-crypto. Многие о ней знают и используют. Была у нее только одна поблема, которая будоражила умы н̶е̶к̶р̶о̶ф̶и̶л̶о̶в любителей поддерживать старые версии android: minSdk=23. Сделано это было не от хорошей жизни, т.к. на версии ниже 23 (она же М) нельзя хранить симметричные ключи в AndroidKeystore. Для этого всегда изобретались дичайшие костыли и приседания вокруг асимметричной крипты в KeyChain. Видимо поэтому команда решила в это не играть, и отрубить старые версии. Но "Google идет нам навстречу" и даже иногда читает issue на своем трекере. Буквально вчера, нашим спецкореспондентом был замечен коммит, который устанавливает minSdk=21. Этот же коммит проводит некоторые косметические изменения, но не более. Ключи на версии ниже 23 не будут храниться в AndroidKeystore. Совершенно непонятно почему бы не сделать так сразу, т.к. используемый под капотом этой библиотеки Tink всегда работал на версии 21.#androidx_security, #security_best_practice
Запись вебинара от Eric Lafortune (CTO в Guardsquare). Обсуждаются следующие темы:
- Какие существуют угрозы безопасности мобильных приложений и сценарии атак
- Как реализовать многослойную защиту против этих атак
- Шаги по повышению безопасности приложения: shrinking, optimization, obfuscation
Сам вебинар был доступен только для сотрудников компаний (требовался корп.мыльник), но я любезно перезалил его на ютуб. Сам вебинар предназначен для разработчиков, которые ничего не понимают в безопасности, архитекторов без мобильного бэкграунда, технических директоров и (возможно) менеджеров.
#video
https://youtu.be/Ql4q-mGmXkA
- Какие существуют угрозы безопасности мобильных приложений и сценарии атак
- Как реализовать многослойную защиту против этих атак
- Шаги по повышению безопасности приложения: shrinking, optimization, obfuscation
Сам вебинар был доступен только для сотрудников компаний (требовался корп.мыльник), но я любезно перезалил его на ютуб. Сам вебинар предназначен для разработчиков, которые ничего не понимают в безопасности, архитекторов без мобильного бэкграунда, технических директоров и (возможно) менеджеров.
#video
https://youtu.be/Ql4q-mGmXkA
YouTube
Securing Mobile Apps, From the Inside Out
Запись вебинара от Eric Lafortune (CTO в Guardsquare). Обсуждаются следующие темы:
- Какие существуют угрозы безопасности мобильных приложений и сценарии атак
- Как реализовать многослойную защиту против этих атак
- Шаги по повышению безопасности приложения:…
- Какие существуют угрозы безопасности мобильных приложений и сценарии атак
- Как реализовать многослойную защиту против этих атак
- Шаги по повышению безопасности приложения:…
Нашел удобный плагин для утилиты Dependency-Check от OWASP. Наличие этого плагина позволяет встроить ее использование в рабочий процесс, а значит сделать приложения безопаснее. Как следует из названия, это утилита для проверки зависимостей вашего проекта на security уязвимости. Начать использовать ее довольно просто.
🛠 Подключить плагин в корневой build.gradle
📲 Добавить плагин в модуль приложения
💻 Выполнить команду
Отчет об уязвимостях появится в
#4developers, #security_best_practice
🛠 Подключить плагин в корневой build.gradle
buildnoscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'org.owasp:dependency-check-gradle:5.3.2'
}
}
📲 Добавить плагин в модуль приложения
apply plugin: 'com.android.application'
...
apply plugin: 'org.owasp.dependencycheck'
💻 Выполнить команду
./gradlew dependencyCheckAnalyze
Отчет об уязвимостях появится в
app/build/reports.#4developers, #security_best_practice
Ребята из Guardsquare, сообщают, что новая версия ProGuard (и конечно же DexGuard) научилась удалять аннотацию @Metadata у kotlin-классов. Если кто не вкурсе проблемы, то эта штука сводила на нет все усилия по обфускации кода, т.к. по этой аннотации можно было восстановить исходные имена полей, методов и самого класса. Теперь это в прошлом. А чтобы проверить свой код они также выпустили утилиту
P.S. Но возможность узнать оригинальное имя класса и полей все еще существует. Догадайтесь как 😉
#proguard, #4developers
https://www.guardsquare.com/en/blog/why-mobile-developers-must-better-protect-their-kotlin-apps%E2%80%94and-how-do-it
Kotlin Metadata Printer. Утилита доступна как в виде сервиса на сайте, так и в виде исходных кодов.P.S. Но возможность узнать оригинальное имя класса и полей все еще существует. Догадайтесь как 😉
#proguard, #4developers
https://www.guardsquare.com/en/blog/why-mobile-developers-must-better-protect-their-kotlin-apps%E2%80%94and-how-do-it
Guardsquare
Why Mobile Developers Must Better Protect their Kotlin Apps & How to Do It
Take a look at the potential security pitfalls of Kotlin-developed apps and find out how to improve security without negatively impacting performance.