Компания Microsoft предупредила Android-пользователей о новой атаке, получившей название «Dirty Stream». Она позволяет вредоносным приложениям перезаписывать файлы в домашнем каталоге другого приложения, что может привести к выполнению произвольного кода и краже секретов. Ошибка возникает из-за неправильного использования системы контент-провайдера Android, которая управляет доступом к структурированным наборам данных, предназначенным для совместного использования различными приложениями. Эта система включает изоляцию данных, разрешения URI и меры безопасности проверки пути для предотвращения несанкционированного доступа, утечек данных и атак с обходом пути. При неправильной реализации пользовательские намерения (Intent-ы), представляющие собой объекты обмена сообщениями, облегчающие обмен данными между компонентами в приложениях Android, могут обходить эти меры безопасности. Атака «Dirty Stream» позволяет вредоносным приложениям отправлять файл с изменённым именем файла или путём — другому приложению, используя пользовательское намерение. Целевое приложение вводится в заблуждение, заставляя доверять имени файла или пути, и выполняет или сохраняет файл в критическом каталоге. Такое манипулирование потоком данных между двумя приложениями Android превращает обычную функцию уровня операционной системы в опасный инструмент и может привести к несанкционированному выполнению кода, краже данных или другим вредоносным результатам. Исследователь Microsoft Димитриос Вальсамарас отметил, что подобных некорректных реализаций, к сожалению, множество. Они влияют даже на те приложения, которые были установлены из Google Play уже более четырёх миллиардов раз. К уязвимым программам относятся, в частности, File Manager от Xiaomi с более чем миллиардом установок и офисный пакет WPS с около 500 миллионами пользователей. Обе компании уже исправили обнаруженные в своём софте проблемы. Для предотвращения аналогичных уязвимостей в будущем Microsoft поделилась своим исследованием с сообществом Android-разработчиков, а Google обновила своё руководство по безопасности приложений с учётом допущенных ошибок. Что касается конечных пользователей, то они могут защититься, своевременно обновляя устанавливаемые программы и избегая загрузки APK-файлов из ненадёжных источников.