Если сайт начал вести себя странно, сначала проверьте ядро, а не тему и плагины. Базовая логика простая: чистые файлы должны совпадать с эталоном, а любые правки в них — повод копать глубже.
— Сначала снимите список изменённых файлов и сравните его с оригиналом. Если в каталоге ядра есть новые PHP-файлы, это уже красный флаг.
— Отдельно смотрите на файлы с «безобидными» именами: functions.php, wp-config-sample.php, files с короткими случайными названиями.
— Ищите подозрительные вставки: eval, base64_decode, gzinflate, str_rot13, длинные строки без переносов, скрытые вызовы через include и file_get_contents.
— Обратите внимание на права доступа и время изменения: свежая правка в старом файле часто означает не обновление, а вмешательство.
Удобнее всего проверять целостность через сравнение контрольных сумм или повторную установку чистого ядра поверх текущей копии без затрагивания uploads и wp-content. Так вы быстро отделите штатные файлы от лишних изменений.
Если нашли правку в ядре — не удаляйте файл вслепую. Сначала сохраните копию, потом сверьте с чистым дистрибутивом и только после этого возвращайте оригинал. Так вы поймёте, где была точка входа, а не просто «заткнёте дыру».
WP-CLI и командная строка
@wp_cli_tricks_ww
Как быстро найти подмену в ядре WordPress и не ковырять всё вручную
Этот пост опубликован в Telegram-канале WP-CLI и командная строка. Подписаться можно по ссылке: @wp_cli_tricks_ww.