Если заголовок вызывает у кого-то легкое ощущение дежавю, совсем неудивительно. В марте 2016 года израильская компания StartCom, которой принадлежит сервис StartSSL и проект по выдаче бесплатных SSL-сертификатов всем желающим StartEncrypt, уже страдала от аналогичной проблемы.
Теперь ситуация повторяется: эксперты датской фирмы CompuTest сообщили, что StartEncrypt содержит ряд уязвимостей, эксплуатируя которые, злоумышленники могут получить сертификат для любого домена, который им не принадлежит.
Инициатива StartEncrypt была запущена в начале июня текущего года, разработчики вдохновились примером коллег, создавших Let’s Encrypt. Проект предоставил всем желающим возможность получить бесплатный SSL-сертификат, для применения которого понадобится только скачать и установить собственный Linux-клиент компании. Посредством клиента осуществляется процесс валидации домена: данные передаются StartSSL, после чего создается сертификат для домена, который работает на только что проверенном сервере,
Казалось бы, система продумана неплохо, однако специалисты CompuTest утверждают, что процесс валидации небезопасен. Злоумышленники могут получить сертификаты для чужих доменов, в том числе для доменов крупных компаний, таких как Facebook, Google, Dropbox и так далее. Затем эти сертификаты могут быть перепроданы на черном рынке или использованы для man-in-the-middle атак.
Первая проблема заключается в том, что клиент StartEncrypt позволяет пользователю вручную изменить конфигурацию и задать директорию, из которой будет подгружена сигнатура сервера. Атакующие могут обмануть систему, подменив сигнатуру на сигнатуру другого домена. Атаковать таким способом можно любой сайт, который разрешает пользователям загружать контент: GitHub, Dropbox и так далее.
Вторая проблема еще серьезнее, так как с ее помощью злоумышленники могут получить сертификат практически для любого домена. Когда API производит верификацию, он работает с параметром «verifyRes», то есть воспринимает редиректы. Если URL снабжен параметром «verifyRes» и ведет на другой URL, API проследует по ссылке, пока не получит то, что ищет. Это означает, что клиент открыт для уязвимостей Open Redirect. Проще говоря, атакующие могут подделать запрос и провести процедуру валидации для любого сервера вообще.
Исследователи пишут, что эту брешь не так-то легко эксплуатировать. URL домена, который использует атакующий, должен отвечать одному из условий. По ссылке либо должна присутствовать возможность загружать файлы и возможность скачивать их. Либо здесь тоже понадобится собственная уязвимость Open Redirect. Впрочем, второе условие соблюсти проще: фактически все сайты с поддержкой OAuth 2.0 должны поддерживать открытые редиректы, чтобы протокол функционировал нормально. Используя эту особенность OAuth 2.0 и клиент StartEncrypt, атакующие могут обмануть сервис StartSSL, заставив его выдать бесплатный сертификат для любого сайта, поддерживающего OAuth 2.0.
Помимо двух вышеописанных проблем, специалисты также обнаружили ряд багов калибром поменьше. Исследователи пришли к выводу, что клиент StartEncrypt не проверяет даже сертификат собственного сервера, когда соединяется с API. Также API не проводит проверку типа содержимого для файлов, которые скачивает во время верификации. Это позволяет злоумышленникам получить сертификат от имени любого сайта, который разрешает пользователям загрузку аватаров. Кроме того приватный ключ сертификата хранится с правами доступа 0666 в публичной директории, где достать его может кто угодно. Разработчики StartEncrypt, к тому же, не учли опыт коллег из Let’s Encrypt, так что сервис уязвим для атак типа Duplicate-Signature Key Selection.
«Мы считаем, что StartCom совершила ошибку, представив StartEncrypt в текущем виде, — пишут исследователи. — Хотя они оценили проблемы по степени их серьезности и отреагировали [на наши сообщения] быстро, очевидно, что безопасности уделялось очень мало внимания, как в ходе разработки (пользователь может подменить путь вручную), так и в конечной реализации. Более того, они не учли даже те проблемы, с которыми LetsEncrypt столкнулся еще на стадии бета-теста».
Компания StartCom уже представила новую версию Linux-клиента StartEncrypt, где описанные исследователями проблемы были устранены. Номер версии остался прежним: 1.0.0.1. Специалисты CompuTest подчеркивают, что это далеко не все найденные ими баги, — компания еще работает над устранением других уязвимостей, которые закроют в следующих обновлениях.
В WhatsApp (принадлежит корпорации Meta, признанной экстремисткой и запрещённой в России) для Android обнаружили лазейку, позволяющую открыть галерею на заблокированном устройстве. Для этого не нужны сложный эксплойт, кабель и терминал, достаточно входящего видеозвонка и пары нажатий. Сценарий начинается с вызова WhatsApp, на который можно ответить без разблокировки смартфона.
Затем пользователь открывает меню фильтров и эффектов для видео и выбирает функцию Meta AI для редактирования фотографии.
После этого приложение показывает превью снимков из галереи ещё до запроса ПИН-кода или биометрии.
Проблему заметил пользователь X под ником VBarraquito, затем её подтвердили другие исследователи и журналисты NotebookCheck. Уязвимость воспроизводится не на всех устройствах: смартфоны Pixel и Oppo пропустили пользователя к фотографиям, а протестированный Samsung Galaxy потребовал сначала снять блокировку.
На iPhone такой проблемы не обнаружили. Версия WhatsApp для iOS использует системный интерфейс звонков Apple, поэтому добраться до аналогичного меню с заблокированного экрана не получается.
Полностью захватить смартфон через лазейку нельзя: другие разделы системы остаются закрытыми. Возможности работы со снимками также ограничены, но человек с физическим доступом к устройству может просмотреть приватные фотографии и переснять их на другой телефон.
О проблеме сообщили WhatsApp и Google, однако патча пока нет. Официального подтверждения и CVE у уязвимости также не появилось. В качестве временной защиты владельцам Android советуют ограничить доступ WhatsApp к фото и видео в системных разрешениях. Это ломает описанный сценарий, хотя пользоваться галереей внутри мессенджера станет менее удобно.
Свидетельство о регистрации СМИ ЭЛ № ФС 77 - 68398, выдано федеральной службой по надзору в сфере связи, информационных технологий и массовых коммуникаций (Роскомнадзор) 27.01.2017 Разрешается частичное использование материалов на других сайтах при наличии ссылки на источник. Использование материалов сайта с полной копией оригинала допускается только с письменного разрешения администрации.