И так, спустя некоторое время, после предыдущей статьи про борьбу со спамом пришлось бороться дальше. Забанить пол мира это вообще вариант (это просто ужас, сколько зараженных компьютеров работает по миру!!! не ожидал, что чуть ли не каждый второй IP адрес это безответственный любитель халявы и жесткого порно).
В общем рассылки спама продолжились, причем с сайтов работающих на WordPress. Для своих сайтов мне хватило установки и настройки плагина All In One WP Security и сканирования антивирусом ClamAV. Но вот клиентские сайты продолжали периодически спамить.
Механизм прост — при помощи дырок в движке, плагинах и темах, спамер размещает скрипт с шифрованным кодом, потом просто на прямую к нему обращается (данные подтверждены анализом логов apache) и шлет в мир письма с вашего сервера… Как результат спамер Вы!
Что бы запретить такого рода деятельность, я решил запретить миру обращаться к php файлам в папках wp-content и wp-includes. Для того, что бы этого добиться необходимо добавить в .htaccess 2 строки:
RewriteRule ^wp-content/(.*).php$ http://localhost [R=301,L]
RewriteRule ^wp-includes/(.*).php$ http://localhost [R=301,L]
Соответственно все запросы из вне к файлам .php в папках wp-content и wp-includes будут переадресованы на localhost, те пусть спамят самих себя.
Для того, что бы указать любой другой адрес пересылки надо изменить http://localhost, что бы передать полностью адрес нужно добавить wp-content/$1, получиться примерно так:
RewriteRule ^wp-content/(.*).php$ http://localhost/$1 [R=301,L]
RewriteRule ^wp-includes/(.*).php$ http://localhost/$1 [R=301,L]
Добавить комментарий