Ломают сайты на Д7 даже после обновления

Аватар пользователя buldozer_kpi buldozer_kpi 3 июня 2018 в 22:27

Здравствуйте. Ломанули сайт, создали файлы с вредоносным кодом, хостинг обнаружил, прислал уведомления. Почистил файлы, обновил ядро с 7.51 до 7.59. Через 2 дня опять уведомление о вредоносном коде. Атрибуты на папках изменены с 755 на 775, в папке изменены файлы некоторых модулей в папке modules. На сайте только один юзер. Подобная история происходит с другими сайтами на этом же хостинге на семерке. На шестерке сайты не трогают. Куда копать, где смотреть дыры? Проблемы начались еще месяц назад. Я так понимаю, у многих в то время возникли схожие проблемы.

0 Thanks

Комментарии

Аватар пользователя Semantics Semantics 3 июня 2018 в 22:54

90%, что не дочистили.
5%, что хостинг такой
5%, что пароли ваши с FTP-клиента утекли.

Если протроянили, то это обновлением не решается, нужно ещё анализировать, могли вполне дописать в тему оформления или в базу, особенно, если PHP-фильтром балуетесь.

Аватар пользователя buldozer_kpi buldozer_kpi 3 июня 2018 в 22:58

Пароли сменил, файлы пересматриваю сейчас, а вот что смотреть в базе не знаю. К базе есть доступ через phpMyAdmin. На что там обращать внимание?

Аватар пользователя gun_dose gun_dose 3 июня 2018 в 22:59

Скорее всего, вы не вычистили некоторые файлы. Проверьте всю папку files на наличие файлов с расширением php. Затем проверьте, чтобы нигде, кроме корневого каталога не лежали файлы index.php, плюс файлы со всякими непонятными именами. Файлов может быть с пару десятков. Если не используете систему контроля версий, ароде git, то проще всего будет удалить полностью ядро, все модули и темы, кроме кастомных. Затем перезалить их с drupal.org, а папки кастомных модулей и тем просмотреть вручную.

Дело в том, что если есть лишние файлы, то они могут быть вызваны по прямой сссылке, и тут уже не важно, обновлялись вы или нет.

Аватар пользователя buldozer_kpi buldozer_kpi 3 июня 2018 в 23:08

Да, в files регулярно закидывали разные пхп-шные файлы, даже под видом фавиконок файлы были. Только что обнаружил, что даже в default.settings.php залили гадость. Кастомных модулей нет. Лишние темы удалил. А что делать с БД?

Аватар пользователя gun_dose gun_dose 3 июня 2018 в 23:19

Да, кстати, ico-файлы тоже надо проверять. А в базе надо искать пхп и джаваскрипты в текстовых полях.

Аватар пользователя gun_dose gun_dose 3 июня 2018 в 23:02

По опыту лечения сайтов по последней уязвимости, в files ничего не закидывали, а в базе только в ноды закидывали js с редиректом, причём это было замечено только на одном сайте. В принципе, если в форматах текста запрещены скрипты, то этотне страшно.

Аватар пользователя xakd xakd 4 июня 2018 в 7:20
buldozer_kpi wrote:

Подобная история происходит с другими сайтами на этом же хостинге на семерке.

Отсюда делаем вывод....

Аватар пользователя buldozer_kpi buldozer_kpi 4 июня 2018 в 14:43

Практически во всех зараженных файлах такая гадость залита
<?php /*435345352*/ error_reporting(0); @ini_set('error_log',NULL); @ini_set('log_errors',0); @ini_set('display_errors','Off'); @eval( base64_decode('
и дальше куча всякого не читаемого кода. Что может делать этот код?

Аватар пользователя Semantics Semantics 4 июня 2018 в 14:46

Обычный шелл.
Скрипт для управления сайтом снаружи, если по простому.
Можно, например, заливать файлы, выполнять иные команды

Аватар пользователя buldozer_kpi buldozer_kpi 4 июня 2018 в 14:53

Забыл добавить, такой код есть как в отдельно созданных файлах, так и в начале файлов ядра и модулей.

Аватар пользователя ivnish ivnish 4 июня 2018 в 19:59

Буквально пару дней назад лечил такое. Заражены были абсолютно все php файлы

Аватар пользователя buldozer_kpi buldozer_kpi 4 июня 2018 в 15:20

Сделал поиск по БД по выражению %base64_%, нашло 4 совпадения в таблице watchdog. Какой-то подозрительный длинный набор символов написан в столбцах message, referer и location. Что с ними сделать, что бы не повредить БД?