Обнаружена уязвимость Android позволяющая обойти защиту любого приложения
В последнее время многие пользователи Android как-то расслабились. Все из-за того, что уязвимостей операционной системы стало намного меньше. Хотя, не исключено, что о них просто стали меньше говорить. Это все равно привело к тому, что пользователи начали забывать о том, что такое вирусы, и смелее качать приложения из Google Play. Теперь выясняется, что рано расслабились. Начинать паниковать тоже, конечно, не стоит, но иметь в виду, что почти каждое приложение под угрозой, тоже надо. Что еще интереснее, дело даже не в Android и Google не может одним волевым решением все сразу исправить. Но что же тогда делать и кто вообще в этом виноват? Снова два извечных русских вопроса.
По мнению исследователей из Trustwave, пользователи Android по всему миру могут подвергаться риску из-за недавно обнаруженной уязвимости обхода аутентификации, которая может повлиять на любое приложение. И, возможно, Google действительно мало что может с этим поделать, несмотря на то, что это влияет на приложения, скачанные из Google Play. Фактически компания говорит, что в настоящее время невозможно даже определить, насколько широко распространена проблема. И все потому, что дело не в Android.
Проблема, по-видимому, является прямым результатом "плохого программирования" и потенциально может повлиять на любое приложение. Выходит, виноваты сами приложения и их разработчики. Это было бы не так страшно, если бы не могло привести к утечке важной информации пользователей. Это в свою очередь потенциально может привести к компрометации или потере действительно конфиденциальной информации.
Пока широкого распространения использование этой уязвимости не приобрело, но перспективы роста есть. В итоге это может стать большой проблемой для миллионов пользователей.
Trustwave говорит, что проблема заключается в компонентах, которые позволяют обмениваться сообщениями с другими приложениями. В текущем варианте почти всех приложений ими легко манипулировать. Если все именно так, то такая проблема действительно не может быть решена на уровне Android, и в работу должны включаться сами разработчики.
Если говорить совсем просто, каждое приложение для Android поставляется с файлом AndroidManifest.xml, который можно экспортировать разными способами, но приложения и программное обеспечение являются наиболее распространенными из них. Поскольку с обнаруженными там действиями можно взаимодействовать, злоумышленнику становится легко манипулировать приложениями, заставляя их делать то, чего им делать не следует.
Trustwave использует пример приложения для обмена сообщениями, созданного компанией для внутреннего использования. В итоге, указанная уязвимость позволила Trustwave войти непосредственно в систему обмена сообщениями без учетных данных. Это дало им возможность получить доступ ко всем сообщениям в системе. Все, что было необходимо, - это доступ к файлу манифеста и способ выполнения действий, таких как ADB.
Злоупотребления уязвимостями могут быть совершенно разными. Например, можно заставить приложение делиться данными, в том числе удаленно, или просто запускать внутри него рекламу. Реклама естественно будет запускаться в рамках возможностей приложения. Но, к примеру, выводить уведомления может почти каждое приложение. Это и есть потенциальный канал нежелательной рекламы. Вопрос в ее эффективности взломщиков мало беспокоит, так как в этом случае они будут брать скорее объемом.
Учитывая особенности уязвимости, Google действительно ничего не может сделать, кроме как разослать разработчикам рекомендации, и в самом крайнем случае начать банить их приложения в своем магазине. Впрочем, на данном этапе это маловероятно, так как перебанить придется буквально всех. Да и масштаб проблемы пока не такой большой, чтобы говорить о необходимости серьезных мер.
С другой стороны, разработчики сами должны как-то зашевелиться и проявить инициативу, чтобы их пользователи были в безопасности. Одно дело - приложения-однодневки, сделанные в рамках хобби программиста-любителя, и совсем другое - серьезные продукты, сделанные крупными студиями для коммерческих проектов.
Trustwave указывает, что самым простым и потенциально наиболее эффективным решением является ограничение разработчиками экспортируемых компонентов теми, которые действительно необходимы. То есть экспорт надо ограничить только теми компонентами, которые просто обязаны быть доступными для других приложений.Мы обязательно будем следить за развитием событий и расскажем о том, к чему все это приведет в нашем Google News.
Во-вторых, приложения должны вести самоконтроль для проверки всех данных, полученных в рамках команд обмена. Более того, разработчики должны ограничить источники получения этих команд. Это тоже не даст стопроцентной защиты, но очень существенно снизит риски взлома.
Если такие действия будут предприняты, система в целом станет намного более безопасной. Наверняка все серьезные разработчики уже в курсе проблемы и стараются ее решить. Ну, а небольшие приложения особо никому не интересны, и самое страшное, что с ними могут сделать злоумышленники, это напичкать их рекламой, которой там и так хватает.