Эксперты изучили три тысячи приложений и подсчитали, что в среднем на каждое из них приходится почти 40 уязвимостей. Источником проблемы являются опенсорсные компоненты.
39 «багов» на брата
Исследователи компаний Atlas VPN и Synopsys Cybersecurity Research Center выяснили, что почти две трети приложений под ОС Android, доступных для скачивания в первом квартале 2021 г., содержали те или иные уязвимости. В среднем на каждое приложение платформы Android приходится по 39 «багов».
Особенно уязвимыми, согласно собранным данным, оказываются игры, причём в первую очередь — бесплатные. Финансовые (банковские, платёжные и т.п.) приложения также полны ошибок.
Эксперты Synopsys проанализировали компоненты, написанные в соответствии с принципами СПО (Open Source) 3335 платных и бесплатных приложений в Google Play Store. Выяснилось, что в 96% топовых бесплатных игр содержатся уязвимые компоненты. То же касается 94% наиболее популярных игр и 80% топовых платных игр.
Огромное количество уязвимостей нашлись и во всевозможных финансовых приложениях: 88% банковских, 80% платёжных приложений, а также 84% приложений для учёта личного бюджета содержат уязвимости.
При изучении наиболее популярных приложений вне отраслевого контекста стало ясно, что уязвимости присутствуют в 61% из них. Уязвимы также 59% топовых бесплатных приложений.
Уязвимые компоненты также обнаружились более чем в половине приложений для повышения производительности работы (58%), 57% образовательных приложений, 56% программ для учителей и 55% развлекательных приложений (неигровых).
Нерасторопность в исправлениях
В общей сложности эксперты выявили 3137 уникальных уязвимостей и обнаружили, что в изученных приложениях они встречаются более 82 тысяч раз, то есть в каждом таком приложении встречаются десятки «багов» одновременно. Более 73% из этих уязвимостей были впервые опубликованы более двух лет назад.
Как отметили эксперты, не все эти уязвимости представляют непосредственную угрозу — некоторые можно отнести просто к мелким недочётам.
Однако, например, в образовательных приложениях встречается наибольшее количество серьёзных уязвимостей, которые могут эксплуатироваться злоумышленниками; в большинстве случаев речь идёт о «багах», для которых уже выпущены исправления.
44% уязвимостей, выявленных в приложениях под Android, относятся к высокоопасным, при этом 1% содержат «баги», допускающие запуск произвольного кода удалённо — наиболее опасную разновидность программных ошибок.
К 94% уязвимостей, выявленных в исследованных приложениях, существуют готовые исправления. Для остальных они ещё не выпущены.
«Любопытен акцент на опенсорсных компонентах в этом исследовании, — отмечает Алексей Водясов, технический директор компании SEC Consult Services. — Эти компоненты ожидаемо популярны среди разработчиков мобильных приложений, но, похоже, надлежащего аудита безопасности перед их интеграцией в конечные приложения они не проходят. Возможно, именно из-за того, что от опенсорсных библиотек часто ожидают повышенного уровня защищённости, хотя это ожидание мало чем оправданно. В любом случае, цифры в исследовании приводятся угрожающие, особенно если экстраполировать их на общее количество приложений, использующих компоненты с открытым кодом».