Один из наших веб-сайтов Wordpress, работающих на сервере Apache, был недавно взломан через PHP-инъекцию.Скрытая переадресация на взломанный сайт?
Хакеры установили сотни URL-адресов, перенаправленных на внешнюю электронную коммерцию, которая продавала часы; URL-адреса имели форму http://www.example.com/eta.php?some_file.html
; например: http://www.example.com/eta.php?Jewellery-Watches-Others-c138-4.html
.
Мы думаем, что мы удалили все зараженные PHP-коды. Однако взломанные URL-адреса, вместо того, чтобы возвращать 404, теперь перенаправляют 301 на http://www.example.com/?some_file.html
(то есть, тот же URL-адрес без части eta.php
) и, наконец, показывают домашнюю страницу сайта, возвращая код 200. Обратите внимание, что мой файл .htaccess
кажется быть совершенно чистым.
Откуда это фантомное перенаправление?
Я был бы очень признателен всем, кто мог бы помочь мне понять, что происходит. Я беспокоюсь, что мы не полностью уничтожили хак.
Благодарим за внимание!
ДАЛЬНЕЙШИЯ ПОДРОБНОСТИ
Файл eta.php
нигде не найти на сервере. Замена eta.php
со случайным файлом (например, ate.php
) в взломанных URL-адресах дает код 404, как ожидалось.
В конце концов мне удалось заставить взломанную URL, чтобы вернуть 404 с помощью следующего правила: .htaccess
RewriteCond %{THE_REQUEST} /eta\.php
RewriteRule ^(.*)$ - [R=404,L,NC]
Интересно, что это другое правило не работает, как если бы хак был как-то баловаться с %{REQUEST_URI}
:
RewriteCond %{REQUEST_URI} ^/eta\.php [NC]
RewriteRule (.*) - [R=404,L]
Nuke сервер с орбиты, переустановить с нуля, ** затянуть защиту на этот раз **, восстановить из известных резервных копий (надеюсь, у вас есть). Обычно нет смысла пытаться что-то убрать; для всех, кого вы знаете, ваш сервер настроен на root и будет постоянно возвращаться к «взломанному состоянию», что бы вы ни делали. – deceze
У вас есть, вероятно, какой-то вредоносный код, скрытый где-то, который добавляет это правило перезаписи. Несколько шагов для проверки: 1. посмотрите время модификации ваших файлов установки WP и посмотрите, обновлен ли какой-либо файл в последнее время. 2. Найдите любые ссылки add_rewrite_rule и посмотрите, выглядит ли подозрение подозрительным. 3. искать любые ссылки base64_decode (хакеры могут скрыть вредоносный код с использованием строк base64) – vard
Проблемы с взломанными сайтами вне темы на SO; см. https://codex.wordpress.org/FAQ_My_site_was_hacked – markratledge