В последнее время участились случаи взлома сайтов на Joomla, использующих компонент Joomla Content Editor (com_jce).
Этот компонент имеет уязвимость вплоть до версии 2.0.10, которая позволяет злоумышленнику загружать на сайт произвольные файлы, в том числе, скрипты php.
Для заражения злоумышленники используют робота, который сканирует сайты на предмет наличия компонента jce и имеющейся в нём уязвимости. Наиболее часто встречающиеся симптомы такого заражения:
- файлы wp-conf.php в корневой директории сайта ./public_html и в корневой директории аккаунта
- файл со случайным названием вида w7792289n.php в ./public_html
- многочисленные файлы index.php, залитые в случайные директории сайта
- файлы с произвольным названием, в т.ч. с вполне осмысленным, залитые в случайные директории сайта.
Модификация файлов сайта в этом случае не производится, и зловредные файлы легко вычислить по дате изменения. Например, если взлом был осуществлён неделю назад, и если за эту неделю на сайте не менялись php-скрипты, то лечение сводится к следующей команде:
cd public_html find . -type f -mtime -7 -name "*.php" -delete
Для предотвращения повторного взлома через эту уязвимость следует обновить компонент JCE. Скачать его можно здесь.
В качестве альтернативы можно использовать патч, закрывающий данную уязвимость. Для установки патча файл jce_patch.php из архива помещаем рядом с index.php в корне сайта, а в самом index.php ищем строку $mainframe->initialise(); и добавляем за ней строку include ‘jce_patch.php’;