Отключить XML-RPC в WordPress 3.5

Возможно вы в курсе, что протокол XML-RPC ru.wikipedia.org/wiki/XML-RPC в WordPress 3.5 включен по умолчанию. Официальной описание здесь — codex.wordpress.org/XML-RPC_Support. Т.е. после обновления на WP 3.5 он включится автоматически даже если он был выключен в консоли ранее! Данный протокол используется для удаленной публикации и администрирования сайта на WordPress с помощью сторонних приложений, есть версии под Windows, Mac, iPhone, Andriod и пр. подробнее тут — wordpress.org/extend/mobile.

Почему этот протокол был по умолчанию выключен длительное время? Причина — в наличии в нем уязвимостей, решенных, по мнению разработчиков.

Quite a bit has changed since we introduced off-by-default for XML-RPC. Their code has improved, and it is no longer considered a second-class citizen when it comes to API development, thanks to the work of a large team of awesome contributors. Security is no greater a concern than the rest of core.
There is no longer a compelling reason to disable this by default. It’s time we should remove the option entirely.
— Andrew Nacin, Ticket #21509

Здорово конечно, что разработчики заботятся об удобстве пользователей приложений для публикации, теперь им не придется каждый раз ставить разрешающую галочку вручную после каждого обновления. Но как быть с теми, кому эта опция не нужна и теми, кто считает эту опцию небезопасной?

Я не утверждаю, что протокол и его использование в WordPress небезопасно, но зачем оставлять доступным то, что не используется и то, что теоретически, может иметь недостатки?

К счастью, эту опцию можно отключить, хотя сделать это не так просто как ранее, в WordPress 3.5 есть фильтр xmlrpc_enabled. И все, что от нас требуется — воспользоваться им. Сделать это можно так:

add_filter('xmlrpc_enabled', '__return_false');

Этот код необходимо добавить в wp_config.php после строки require_once (ABSPATH "WP-settings.php.).

Или можно воспользоваться маленьким плагином — Disable XML-RPC размещенным в официальном репозитории по ссылке wordpress.org/extend/plugins/disable-xml-rpc.

Опубликовано

Обратите внимание на предыдущие записи: