Как отключить XML-RPC

Начиная с первых версий у Вордпресса есть функция удаленного управления сайтом с помощью специальных приложений.
XML Remote Procedure Call — (Вызов удаленной процедуры) используется для подключения к сайту через мобильное приложение WordPress.
Эта же функция используется для трекбэков и пингбэков (оповещает владельца сайта о том, что где-то оставили ссылку на его сайт), и используется плагином Jetpack.
История XML-RPC
Когда к интернету подключались через модем и скорость подключения была низкой, публиковать страницы было долго. Чтобы решить эту проблему, решили сначала создавать контент на компьютере, а потом публиковать его на сайте.
Сервис Blogger создал API и оффлайн-приложение для создания контента, и пользователи стали загружать контент через XML-RPC. После этого остальные блог-платформы сделали то же самое у себя.
В 2008-2009 годах компания Automattic, которая поддерживает плагины WP Super Cache, WooCommerce, Jetpack, VaultPress и другие, выпустила приложение WordPress для мобильных (android, ios), которое использует интерфейс XML-RPC.
XML-RPC был в Вордпресс с самого начала, но по умолчанию он был выключен. После выхода мобильного приложения, начиная с версии 3.5, функцию сделали включенной по умолчанию.
Проблема XML-RPC
Проблема включенного XML-RPC заключается в том, что роботы подбирают логин и пароль к сайту через файл xmlrpc.php практически без ограничений. Если на главной странице входа на сайт можно установить ограничение попыток авторизации, то через файл xmlrpc.php с помощью нескольких запросов можно попробовать множество логинов и паролей.
Другая проблема в том, что злоумышленник может использовать пингбэк-сеть Вордпресс сайтов для DDoS атаки на один из этих сайтов, то есть невзломанные сайты сети атакуют выбранный сайт.
В итоге роботы своими запросами расходуют большое количество ресурсов сервера, что может повесить сайт, или могут подобрать правильный логин и пароль. Если вы не пользуетесь этим функционалом, его лучше выключить.
В этой статье вы узнаете 3 способа отключить XML-RPC.
Как отключить XML-RPC в wp-config.php
Добавьте это правило в конце wp-config.php после строки require_once(ABSPATH . 'wp-settings.php');
Как отключить XML-RPC с помощью плагина
Если вы не хотите добавлять код, установите плагин Disable XML-RPC. Этот плагин делает то же самое, что и код в первом способе.
Как отключить XML-RPC в .htaccess
Хотя эти 2 способа хорошо работают, они не запрещают роботам подключаться к XML-RPC. Когда хакбот приходит на сайт и перебирает комбинации логинов и паролей, он использует ресурсы вашего сервера.
Чтобы отключить xmlrpc.php и не дать хакерам нагрузить сервер, отключите xmlrpc в файле .htaccess. В этом случае запрос не будет передаваться в Вордпресс, и робот не получит разрешения для подключения к XML-RPC.
Этот способ не будет нагружать сервер. Это самый правильный способ отключить XML-RPC.
Добавьте этот код в .htaccess:
Частичное отключение XML-RPC
Чтобы отключить XML-RPC частично, добавьте этот снипет в .htaccess:
Измените адреса на те, которым вы хотите разрешить подключение к XML-RPC. Добавьте столько адресов, сколько вам нужно.
Если вы не хотите добавлять код, используйте плагин Stop XML-RPC Attack, он создает правило в файле .htaccess, которое разрешает использовать XML-RPC только плагину Jetpack и другим инструментам Automattic.
Плагины iThemes Security, Anti-Malware Security and Brute-Force Firewall и All in One WP Security & Firewall ограничивают попытки авторизации на стандартной странице входа на сайт и через XML-RPC.
All in One WP Security & Firewall может частично отключить XML-RPC, чтобы работал функционал Jetpack.
Wordfence не отключает XML-RPC, так как разработчики считают, что Вордпресс улучшил встроенную защиту этой функции.
Читайте также:
- Вход в админку WordPress
- Как проверить Вордпресс сайт на безопасность
- Безопасность Вордпресс. Подробное руководство
Надеюсь, статья была полезна. Оставляйте комментарии.
Один комментарий
Ответить
Techbear
Сайт для тех, кто хочет использовать Вордпресс по максимуму, но не хочет разбираться в коде.
WordPress WooCommerce Membership Elementor ACF
Спасибо! Взял на заметку!