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
Многие уже слышали историю про “Социальный мониторинг”. Наткнулся на хабропост где разбираются основные проблемы. Если кто-то еще не вкурсе, то это отличный повод узнать что же произошло.

#reverse_engineering

https://habr.com/en/post/495606/
Самоизоляция продолжается, а вместе с ней нарастает скука. Чтобы как-то вас развлечь, я хочу предложить решить crackme начального уровня. Закаленным в боях реверсерам и ctf-ерам он может показаться скучным, но кто знает, может и для вас найдется над чем подумать.

Задача: у вас есть apk файл crackme1.apk (контрольная сумма: 93baa133485e8d1fb069effd4528c0a4b2acef69), который содержит 5 ключей. Нужно их найти. Проверить правильность ключа можно у бота: @android_guards_crackme_bot

Если история зайдет, то сделаю crackme посложнее. Всем хороших выходных! 😉

#reverse_engineering, #just4fun
Если вы еще не забыли (а я забыл), то в Goolge Pixel 3 и Pixel 3 XL появились отдельные security чипы "Titan M". Вместе с ними появилось такое понятие как StrongBox KeyStore APIs, которое обещает хранить наши ключи "в железе". Наткнулся на старую, но все еще актуальную статью, которая объясняет разницу между тем как ключи хранили "в железе" раньше (23+) и как они хранятся сейчас (28+).

#strongbox, #cryptography, #pixel

https://proandroiddev.com/android-keystore-what-is-the-difference-between-strongbox-and-hardware-backed-keys-4c276ea78fd0
Статья от ребят из 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/
Найдено 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/
Вот и произошло то, чего мы все так долго ждали (ну может не все, ладно…). ProtonMail выложили в открытый доступ исходники своего Android приложения. Они позиционируют себя как очень защищенная почта и их исходники многие хотели по двум причинам:

👮‍♀️ Убедиться, что там все так безопасно как они обещают

📚 Изучить применяемые их командой security-практики.

Теперь все это лежит на github. Идем смотреть =)

#security_best_practice, #protonmail_android

https://github.com/ProtonMail/proton-mail-android
Давненько что-то Samsung не радовал нас багами в прошивках.

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

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

#samsung_bugs, #fuzzing

https://www.opennet.ru/opennews/art.shtml?num=52896
Вышла новая версия Frida 🎉
Они обновили все зависимости до свежих версий и наболее интересным обновлением выглядит V8 версия 8.4. Также добавлена поддержка Android 11 Developer Preview 4. Обновляемся!

https://frida.re/news/2020/05/19/frida-12-9-released/
В 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
Нашел удобный плагин для утилиты Dependency-Check от OWASP. Наличие этого плагина позволяет встроить ее использование в рабочий процесс, а значит сделать приложения безопаснее. Как следует из названия, это утилита для проверки зависимостей вашего проекта на security уязвимости. Начать использовать ее довольно просто.

🛠 Подключить плагин в корневой 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-классов. Если кто не вкурсе проблемы, то эта штука сводила на нет все усилия по обфускации кода, т.к. по этой аннотации можно было восстановить исходные имена полей, методов и самого класса. Теперь это в прошлом. А чтобы проверить свой код они также выпустили утилиту 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.

💎 В ProGuard v7.0 завезли улучшенную поддержку Kotlin-а.

🧰 Выкатили новую opensource библиотеку ProGuardCore, которая позволяет работать с java байткодом (чтение, запись, анализ, обработка). И это выглядит реально круто! Теперь можно попробовать написать свой личный обфускатор кода или даже деобфускатор 😉

#4developers, #proguard
Всем привет! Написал небольшую библиотеку, которая может сделать вашу аутентификацию по пин-коду проще и возможно безопаснее. В основе этой библиотеки лежат идеи, которые я изложил в моей статье про аутентификацию + проведена работа над ошибками. Буду рад любому фидбэку и контрибьюшенам.

#4developers, #libraries

https://github.com/RedMadRobot/PINkman
⚡️ Если кто-то использует в своих проектах чистый Tink, то для вас есть пара новостей:

🐣 Вышел новый релиз 1.4.0 с несколькими важными android-фиксами

🎲 Лучше использовать специально оптимизированную версию библиотеки для android если вы еще не - implementation 'com.google.crypto.tink:tink-android:1.4.0’

#4developers, #cryptography