CVE-2021-44026
Roundcube Roundcube Webmail
2023-06-22
Roundcube Webmail is vulnerable to SQL injection via search or search_params.
Технический анализ и план устранения
Суть уязвимости
CVE-2021-44026 представляет собой критическую уязвимость типа SQL-инъекция в Roundcube Webmail версий до 1.3.17 и 1.4.x до 1.4.12. Проблема возникает из-за недостаточной фильтрации входных данных в параметрах search или search_params.
Злоумышленник, имеющий доступ к интерфейсу почты, может внедрить вредоносный SQL-код через поисковые запросы. Это позволяет выполнять произвольные запросы к базе данных, что может привести к утечке конфиденциальной информации (данных пользователей, сессий) или полному компрометированию базы данных Roundcube.
Как исправить
Основным способом устранения уязвимости является обновление Roundcube Webmail до актуальных безопасных версий.
- Определите текущую версию Roundcube.
- Сделайте резервную копию базы данных и файлов приложения.
- Обновите Roundcube до версии 1.3.17, 1.4.12 или более поздних (например, ветки 1.5.x и 1.6.x не подвержены этой уязвимости).
Если вы используете установку из исходных кодов, выполните обновление через скрипт installto.sh:
wget https://github.com/roundcube/roundcubemail/releases/download/1.4.12/roundcubemail-1.4.12-complete.tar.gz
tar -xf roundcubemail-1.4.12-complete.tar.gz
cd roundcubemail-1.4.12
./bin/installto.sh /var/www/roundcube
Если вы используете пакетный менеджер (например, в Debian/Ubuntu), выполните:
apt update && apt upgrade roundcubemail
Временные меры
Если немедленное обновление невозможно, рекомендуется применить следующие защитные механизмы:
- Ограничение доступа: Разрешите доступ к интерфейсу Roundcube только через доверенные IP-адреса или VPN.
- Использование WAF (Web Application Firewall): Настройте правила фильтрации для блокировки подозрительных SQL-конструкций (таких как
UNION SELECT,SLEEP(), кавычки в параметрах поиска) в GET/POST запросах. - Применение патча вручную: Если обновление всей системы невозможно, внесите изменения в код обработки поиска, добавив принудительное экранирование параметров в файлах
program/lib/Roundcube/rcube_imap_generic.phpиprogram/steps/mail/search.inc(согласно официальному коммиту безопасности в репозитории Roundcube). - Мониторинг логов: Настройте алерты на специфические ошибки SQL в логах веб-сервера и базы данных.