CVE-2023-22952

SugarCRM Multiple Products

ВЫСОКАЯ ВЕРОЯТНОСТЬ

Дата обнаружения

2023-02-02

Официальное описание

Multiple SugarCRM products contain a remote code execution vulnerability in the EmailTemplates. Using a specially crafted request, custom PHP code can be injected through the EmailTemplates.

🛡️
Технический анализ и план устранения

Суть уязвимости

CVE-2023-22952 представляет собой критическую уязвимость типа Remote Code Execution (RCE), возникающую из-за недостаточной фильтрации входных данных в модуле EmailTemplates.

Злоумышленник, имеющий доступ к приложению, может отправить специально сформированный HTTP-запрос, который позволяет внедрить произвольный PHP-код в файлы шаблонов электронных писем. Поскольку SugarCRM динамически обрабатывает эти шаблоны, внедренный код исполняется на стороне сервера с правами веб-сервиса. Это дает атакующему возможность полного захвата системы, кражи конфиденциальных данных и дальнейшего продвижения по сети.

Как исправить

Основным и наиболее надежным способом устранения уязвимости является обновление SugarCRM до версий, в которых данная проблема была официально исправлена вендором.

  1. Определите текущую версию вашей системы.
  2. Выполните обновление до одной из следующих версий (или более новых):
  3. Sugar Sell, Serve, Enterprise, Professional, Community Edition: 12.0.2
  4. Sugar Sell, Serve, Enterprise (версии с краткосрочной поддержкой): 11.0.5

Процесс обновления через консоль (SugarCRM CLI):

./sugar_update_tool.php --source /path/to/sugar/ --patch /path/to/upgrade_package.zip

После обновления необходимо очистить кэш системы:

rm -rf cache/modules/EmailTemplates/*

Временные меры

Если немедленное обновление невозможно, необходимо применить следующие защитные меры для снижения риска эксплуатации:

  1. Ограничение прав доступа: Минимизируйте количество пользователей, имеющих права на создание и редактирование шаблонов в модуле EmailTemplates.

  2. Настройка Web Application Firewall (WAF): Настройте правила фильтрации для блокировки подозрительных POST-запросов к модулю EmailTemplates, содержащих PHP-теги или функции исполнения кода (например, <?php, system(), eval(), base64_decode).

Пример правила для Nginx (запрет PHP-тегов в теле запроса):

if ($request_body ~* "(<\?php|eval\(|base64_decode)") { return 403; }

  1. Усиление безопасности PHP: Отключите опасные функции в конфигурационном файле php.ini:
disable_functions = exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source,eval

  1. Мониторинг логов: Настройте оповещения на поиск аномальной активности в логах веб-сервера, связанных с путем index.php?module=EmailTemplates.