Уязвимость RCE в плагине WordPress «WPML» угрожает более чем 1 миллиону сайтов

Недавно в плагине WordPress Multilingual Plugin (WPML) была обнаружена серьезная уязвимость удаленного выполнения кода (RCE – Remote Code Execution) с идентификатором CVE-2024-6386. Эта уязвимость угрожает более чем 1 000 000 активным сайтам WordPress по всему миру и позволяет злоумышленникам взломать сайты. Уязвимость возникла из-за внедрения шаблонов на стороне сервера (SSTI) в движке шаблонов «Twig».

Опасность данной уязвимости оценена как чрезвычайно высокая: по системе CVSS ей присвоено 9,9 балла, что указывает на критический уровень угрозы.

WPML – это премиальный плагин, который обеспечивает многоязычность на сайтах WordPress. Он позволяет работать сайтам в многоязычном режиме и широко используется по всему миру.

Обнаруженная уязвимость затрагивает все версии плагина WPML до версии 4.6.12 включительно. После первоначального сообщения об уязвимости на её устранение потребовалось 62 дня, что оставило сайты уязвимыми на протяжении длительного времени.

Как выяснили специалисты из Stealthcopter, используя данную уязвимость, злоумышленники смогли задействовать функцию dump() в движке шаблонов Twig. Это позволило им считывать данные с сервера и выполнять необходимые команды.

Ниже приведен пример кода, использующего данную уязвимость:

[wpml_language_switcher]  
{% set s = dump(current_language_code)|slice(0,1) %}
{% set y = dump(css_classes)|slice(4,1) %}
{% set system = s~y~s~t~e~m %}
{{ [id]|map(system)|join }}
[/wpml_language_switcher]

С помощью этого кода злоумышленники создавали команду system и выполняли через терминал команды вроде id или pwd. В результате могли быть считаны данные пользовательских учетных записей или системные файлы.

Последствия такой атаки включают:

  1. Полный контроль над сайтом: Злоумышленники могут полностью управлять сайтом.
  2. Кража данных: Конфиденциальные данные, такие как учетные записи пользователей и пароли администратора, могут быть похищены.
  3. Установка вредоносного ПО: Сайт может использоваться для распространения вредоносного программного обеспечения на компьютеры пользователей.

Всем владельцам сайтов WordPress, использующим плагин WPML, необходимо немедленно обновиться до последней версии плагина. На данный момент выпущена обновленная безопасная версия, в которой данная проблема устранена.

Помимо этого, администраторам сайтов рекомендуется усилить меры безопасности:

  • Регулярно обновляйте плагины и удаляйте устаревшие версии.
  • Устанавливайте дополнительные плагины безопасности и регулярно сканируйте сайт.
  • Проверьте безопасность сервера и включите необходимые брандмауэры (firewall).

Этот инцидент наглядно показал, что обеспечение безопасности плагинов не менее важно, чем их функциональность.

Перейти к содержимому