
Эксплуатационный код на PHP, доказывающий концепцию для CVE-2025-49113, уязвимости удаленного выполнения кода в Roundcube Webmail через десериализацию PHP-объектов в конечной точке /settings/upload.php.
CVE-2025-49113 — это критическая уязвимость, затрагивающая Roundcube Webmail версий до 1.5.10 и 1.6.11. Обнаруженная в 2025 году, эта ошибка позволяет удаленное выполнение кода (RCE) через десериализацию PHP-объектов в конечной точке /settings/upload.php. Уязвимость возникает из-за неправильной обработки параметра _from, который может быть использован аутентифицированными пользователями для выполнения произвольного кода на сервере. Эта проблема представляет значительный риск, так как может позволить злоумышленникам получить несанкционированный доступ, украсть данные или полностью скомпрометировать сервер. Уязвимость была исправлена в Roundcube версий 1.5.10 (LTS) и 1.6.11, выпущенных в рамках обновлений безопасности в июне 2025 года.
Этот репозиторий содержит Proof of Concept (PoC) эксплойт, написанный на PHP, для демонстрации уязвимости CVE-2025-49113. Скрипт использует десериализацию PHP-объектов для создания вредоносной нагрузки, которая записывает файл (test_poc.txt) на целевом сервере. Вот как это работает:
Setup: Скрипт отправляет специально созданный запрос к конечной точке Roundcube /settings/upload.php с сериализованным классом EvilObject, встроенным в параметр _from.
Payload: Класс EvilObject определяет имя файла (например, /home/public_html/test_poc.txt) и содержимое с меткой времени, которые выполняются через метод __destruct для записи файла при десериализации.
Execution: Используя cURL, скрипт аутентифицируется с помощью действующего cookie roundcube_sessid и доставляет полезную нагрузку. На уязвимом сервере это приводит к созданию указанного файла.
Output: Успех подтверждается сообщением «File written successfully», а ответ сервера сохраняется в response.html для отладки.
PoC был успешно протестирован 5 июня 2025 года, файл создан в каталоге public_html. Обратите внимание, что требуется действующая сессионная cookie, а целевой путь должен быть доступен для записи пользователем веб-сервера.
Чтобы снизить риски, связанные с CVE-2025-49113, выполните следующие действия:
Предупреждение: Этот PoC предназначен только для образовательных целей. Несанкционированная эксплуатация данной уязвимости незаконна и может нарушать местные законы.
Rasool13x :)