Если заголовок вызывает у кого-то легкое ощущение дежавю, совсем неудивительно. В марте 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 подчеркивают, что это далеко не все найденные ими баги, — компания еще работает над устранением других уязвимостей, которые закроют в следующих обновлениях.
В плагине All-in-One WP Migration and Backup обнаружили возможность SQL-инъекции, которая может привести к удалённому выполнению кода и полному захвату сайта. Под угрозой оказались все версии до 7.109 включительно. Уязвимость CVE-2026-19949 получила 8,8 балла из 10 по шкале CVSS.
Плагин установлен более чем на 5 млн сайтов и используется для резервного копирования, переноса и восстановления WordPress вместе с базой данных, темами, файлами и расширениями.
Атака работает не мгновенно. Злоумышленник без аутентификации отправляет специально подготовленные данные через механизм trackback WordPress. Они сохраняются в базе и спокойно ждут своего часа.
Полезная нагрузка срабатывает, когда администратор экспортирует, а затем импортирует сайт. Во время восстановления плагин неправильно обрабатывает обратные слеши и кавычки, превращая сохранённые данные в исполняемый SQL-запрос.
С его помощью атакующий может вытащить секретный ключ ai1wm_secret_key и опубликовать его в доступном комментарии. Затем ключ используется для импорта вредоносного архива .wpress с исполняемым кодом. Итог — удалённое выполнение команд и возможность полностью прибрать сайт к рукам.
Необходимость дождаться действий администратора немного снижает срочность угрозы. Но экспорт и восстановление — основное предназначение плагина, поэтому рассчитывать, что опасная кнопка никогда не будет нажата, довольно смело.
Исследователь Джек Тейлор сообщил об ошибке через Wordfence в середине августа. Разработчик ServMask выпустил исправленную версию 7.110 уже 20 августа. Wordfence рекомендует обновиться немедленно.
По имеющимся оценкам, патч установили лишь около 35% пользователей. Примерно 3,25 млн сайтов всё ещё остаются уязвимыми.
Свидетельство о регистрации СМИ ЭЛ № ФС 77 - 68398, выдано федеральной службой по надзору в сфере связи, информационных технологий и массовых коммуникаций (Роскомнадзор) 27.01.2017 Разрешается частичное использование материалов на других сайтах при наличии ссылки на источник. Использование материалов сайта с полной копией оригинала допускается только с письменного разрешения администрации.