Аудиторы тщательно проверяют защиту критических данных в Flutter-приложениях, так как их утечка может повлечь серьезные последствия. Особое внимание уделяется возможности запуска приложений на рутованных/джейлбрейкнутых устройствах и эмуляторах. Подобные среды уязвимы для атак и позволяют злоумышленникам получать доступ к конфиденциальным данным, перехватывать трафик и обходить системы защиты. Для обнаружения таких угроз рекомендуют использовать библиотеки, например Flutter Jailbreak Detection и SafeDevice.

Критически важно тщательно проверять подключаемые библиотеки, особенно плагины, имеющие доступ к нативному коду. Непроверенный или скомпрометированный плагин может получить доступ к данным или манипулировать приложением. Рекомендуется использовать проверенные версии библиотек из надежных источников и хранить их внутренние репозитории. При этом следует детально изучать их исходный код.
Хранение критических данных, таких как токены доступа, в SharedPreferences недопустимо. Необходимо использовать безопасные хранилища, такие как Flutter Secure Storage, а также избегать хранения данных в оперативной памяти в открытом виде. Кроме того, важно контролировать запрашиваемые разрешения и ограничиваться необходимыми для функциональности приложения. Не должно быть избыточных разрешений.
Особое внимание уделяется отображению чувствительных данных в фоновом режиме. Необходимо использовать Secure Application для сокрытия содержимого экрана при переходе приложения в фон. Запуск приложения из недоверенных источников является еще одной проблемой. Модифицированные сборки могут содержать вредоносный код. FreeRASP может отслеживать такие запуски и блокировать их. Не менее важно поддерживать актуальность версии Flutter SDK.

Изображение носит иллюстративный характер
Критически важно тщательно проверять подключаемые библиотеки, особенно плагины, имеющие доступ к нативному коду. Непроверенный или скомпрометированный плагин может получить доступ к данным или манипулировать приложением. Рекомендуется использовать проверенные версии библиотек из надежных источников и хранить их внутренние репозитории. При этом следует детально изучать их исходный код.
Хранение критических данных, таких как токены доступа, в SharedPreferences недопустимо. Необходимо использовать безопасные хранилища, такие как Flutter Secure Storage, а также избегать хранения данных в оперативной памяти в открытом виде. Кроме того, важно контролировать запрашиваемые разрешения и ограничиваться необходимыми для функциональности приложения. Не должно быть избыточных разрешений.
Особое внимание уделяется отображению чувствительных данных в фоновом режиме. Необходимо использовать Secure Application для сокрытия содержимого экрана при переходе приложения в фон. Запуск приложения из недоверенных источников является еще одной проблемой. Модифицированные сборки могут содержать вредоносный код. FreeRASP может отслеживать такие запуски и блокировать их. Не менее важно поддерживать актуальность версии Flutter SDK.