Критическая уязвимость в WordPress-плагине wpDiscuz, насчитывающем 80 тысяч установок

В WordPress-плагине wpDiscuz, который установлен на более чем 80 тысячах сайтов, выявлена опасная уязвимость, позволяющая без аутентификации загрузить любой файл на сервер. В том числе можно загрузить PHP-файлы и добиться выполнения своего кода на сервере. Проблеме подвержены версии с 7.0.0 по 7.0.4 включительно. Уязвимость устранена в выпуске 7.0.5.

Плагин wpDiscuz предоставляет возможность использования AJAX для динамической отправки комментариев без перезагрузки страницы. Уязвимость вызвана недоработкой в коде проверки загружаемых типов файлов, используемом для прикрепления изображений к комментариям. Для ограничения загрузки произвольных файлов вызывалась функция определения MIME-типа по содержимому, которую было легко обойти для загрузки PHP-файлов. Расширение файла не ограничивалось. Например, можно было загрузить файл myphpfile.php, указав вначале последовательность 89 50 4E 47 0D 0A 1A 0A, идентифицирующую PNG-изображения, а следом разместить блок «<?php» с PHP-кодом.

Источник: opennet.ru