XML-RPC — угроза для WordPress?
XML-RPC — протокол вызова удалённых процедур, т.е. Вы можете удалённо управлять своим сайтом — публиковать какую-то информацию на сайте… За его работу в WordPress отвечает файл xmlrpc.php Этот файл часто используется для хакерских атак на Ваш сайт либо без Вашего ведома Ваш сайт участвует в большой цепочке DDoS — атак на какие-то сайты. Как сделать защиту сайта от этого?
Если Вы не пользуетесь функцией удалённого управления сайтом, то лучше её отключить. Давайте рассмотрим как это можно сделать.
Первое, что нужно сделать — это открыть в админке сайта файл header.php и удалить там строку:
1 2 3 4 | < link rel="pingback" href="< ?php bloginfo( 'pingback_url' ); " / > |
Далее открываете файл wp-config.php, который находится в корневой папке сайта и в самом низу вставляете такую строку:
1 2 3 4 | add_filter('xmlrpc_enabled', '__return_false'); |
Эта строка выключает все функции протокола XML-RPC.
Теперь в файле default-filters.php, который находится в папке wp-includes, закомментируйте один фильтр (поставьте перед ним два слеша):
1 2 3 4 | //add_action('wp_head', 'rsd_link'); |
После того, как Вы это сделали, можно удалить файлы, которые непосредственно отвечают за пингацию и работу интерфейса XML-RPC: wp-trackback.php и xmlrpc.php
Теперь злоумышленники не смогут воспользоваться интерфейсом XML-RPC, что намного обезопасит Вfш сайт
Вся проблема состоит в том, что WordPress периодически обновляется и после обновления эту работу придётся повторять. Как альтернатива — можно закрыть доступ к файлу xmlrpc.php через файл .htaccess, прописав в нём следующее правило:
1 2 3 4 5 6 7 | < FilesMatch "xmlrpc.php"> order deny,allow deny from all < /FilesMatch> |
При копировании не забудьте убрать пробел после первых скобок.
Статья была полезной?