Третий за четыре недели релиз безопасности WordPress исправляет RCE-уязвимость на уровне автора в Imagick

Вчера был выпущен WordPress 7.0.4, исправляющий RCE-уязвимость, которая позволяла авторизованному автору выполнять произвольный код на сервере путем загрузки файла, выглядящего как изображение, но таковым не являющегося. Это уже третий основной релиз безопасности за четыре недели.

Уязвимость, обнаруженная компанией pwn.ai, специализирующейся на ИИ-пентесте, и ответственно раскрытая через программу HackerOne от WordPress, затрагивает сайты, использующие библиотеку обработки изображений Imagick с Ghostscript.

Релиз был инициирован представителем команды безопасности WordPress Джоном Блэкборном из Human Made при «значительном вкладе» двух других основных разработчиков: Денниса Снелла (Automattic) и Джереми Фелта (Happy Prime, INC). В примечаниях к релизу указаны имена четырнадцати других участников команды безопасности, основных разработчиков и контрибьюторов, а также представителей WP Engine.

В анализе, опубликованном вскоре после выхода обновления, руководитель отдела исследований безопасности Patchstack Дэйв Джонг подробно описал уязвимость. По словам Джонга, WordPress использует ImageMagick через расширение PHP Imagick для ресайзинга и обработки изображений в медиатеке. Но ImageMagick принимает не только JPEG и PNG — он также обрабатывает файлы PostScript, EPS и PDF, а для их рендеринга прибегает к Ghostscript, программе, которая, по словам Джонга, «долгое время использовалась для выполнения команд, которые выполнять не следует».

Как объясняет Джонг, проблема в том, что ImageMagick определяет, что представляет собой файл, считывая его содержимое, в то время как WordPress в основном полагался на расширение. Стандартный процесс загрузки в WordPress проверяет наличие такого несоответствия, но два пути полностью обходят эту проверку: метод wp.uploadFile в XML-RPC и процедура извлечения обложек для загруженных MP3-файлов. Оба записывают файлы на диск без проверки содержимого, а это значит, что файл с расширением .png, содержащий PostScript, может попасть в Imagick, который распознает PostScript и передаст его в Ghostscript для обработки.

В этом патче WordPress был обновлен так, что теперь проверяет содержимое каждого файла перед передачей его в Imagick, отклоняя всё, что могло бы быть направлено опасному обработчику.

Для эксплуатации уязвимости требуется как минимум доступ уровня автора, поэтому это не атака типа Drive-by. Но для публикаций с несколькими авторами, сайтов с членством или чего-либо с нестрогим управлением регистрацией этот порог ниже, чем кажется.

На сайтах с включенными автоматическими фоновыми обновлениями исправление уже должно быть установлено. Перенос исправлений в более старые ветки, начиная с WordPress 4.7, уже завершен, и в версии 7.1 RC3, выпущенной вскоре после 7.0.4, это исправление также есть.

WordPress 7.0.4 следует за версией 7.0.3, в которой на прошлой неделе были исправлены 12 уязвимостей с привлечением специалистов из pwn.ai, Anthropic и Aikido Security. Этот релиз последовал за экстренным выпуском 7.0.2 от 17 июля, в котором была исправлена ​​критическая уязвимость RCE до аутентификации, обнаруженная исследователем с помощью Sol Ultra от OpenAI.

Частота обновлений безопасности WordPress в последние недели заставила сообщество пересмотреть свои ожидания. В чате Post Status Slack соучредитель Emilia Capital Йост де Валк предположил, что частые обновления безопасности станут «регулярным явлением в течение следующих нескольких лет».

В X генеральный директор Patchstack Оливер Силд написал, что это «вопрос времени», когда уязвимость нулевого дня в ядре WordPress будет раскрыта до того, как команда безопасности выпустит патч. Он указал на отчеты, отправленные через HackerOne, которые оставались неисправленными годами, утверждая, что ИИ превращает баги, ранее считавшиеся низкоприоритетными, в эксплуатируемые цепочки. Если исследователи продолжат получать отписки, не видя никаких исправлений, сказал Силд, «они просто сольют свои отчеты в сеть».

Выпуск версии 7.0.4 последовал за данными, опубликованными Epoch AI 31 июля, согласно которым известные технологические организации сообщили примерно о 2500 уязвимостях высокой и критической степени опасности (CVE) только за июль — это примерно в пять раз больше месячного рекорда до анонса Claude Mythos Preview от Anthropic.

На прошлой неделе компания Human Made опубликовала данные, показывающие, что количество баг-баунти репортов в проекте WordPress, поступающих через программу HackerOne, выросло с десятилетнего базового уровня в 20-30 сообщений в месяц до 450.

Источник: https://www.therepository.email

Дмитрий/ автор статьи
CCO, Senior SEM/PPC Specialist, WordPress-энтузиаст, переводчик с английского и немецкого. Серый кардинал русскоязычного WP-комьюнити.
Блог про WordPress
Добавить комментарий

Получать новые комментарии по электронной почте.