Что такое Xmlrpc.php для WordPress и как его отключить

Xmlrpc.php в WordPress используется для удаленного доступа к вашему сайту, через сторонние приложения. Данный инструмент появился, когда WordPress только зарождался и скорость интернета не позволяла быстро создавать и публиковать записи на сайт. Существовал офлайн-клиент, в котором администратор создавал и редактировал записи, а затем через xmlrpc.php записи публиковались на сайт.

В 2008 году было выпущено приложение WordPress для iPhone и поддержка XML-RPC была включена по умолчанию, без возможности отключить.

Одна из важных причин, из-за которой стоит отключить XML-RPC — это угроза безопасности вашего сайта. Злоумышленники часто используют эту лазейку для взлома пароля от админки вашего сайта, а также для DDoS-атаки.

Часто причиной нагрузки на CPU в хостинг панели является нежелательные подключение через XML-RPC, из-за чего работа вашего хостинга может быть приостановлена.

Как проверить, включен ли XML-RPC на вашем сайте

Проверить можно с помощью XML-RPC Validator. Для этого:

  1. 1.

    Перейдите на сайт XML-RPC Validator.

  2. 2.

    В поле Address введите ваш домен и нажмите Check:

  3. 3.

    Если вы получили сообщение «Congratulation! Your site passed the first check», то xmlrpc.php на вашем сайте включен.

    Если ответ «Failed to check your site at http://domain.ru because of the following error», то xmlrpc.php отключен.

Чтобы отключить XML-RPC выберите нужную инструкцию:

Отключить с помощью плагина

Отключить вручную

Чтобы отключить XML-RPC, достаточно установить плагин Disable XML-RPC и активировать его. Он автоматически укажет необходимые настройки и закроет доступ через xmlrpc.php.

Установить плагин можно через админку WordPress, в разделе Плагины.

Если вы хотите сделать все вручную без установки плагина:

  1. 1.

    Перейдите в корневую папку вашего сайта на WordPress: Как узнать корневую папку сайта?

  2. 2.

    Откройте или создайте (если он отсутствует) файл .htaccess и вставьте в конце файла строки:

    <Files xmlrpc.php>
    order deny,allow
    deny from all
    </Files>
  3. 3.

    Сохраните изменения.

После отключения XML-RPC доступ через xmlrpc.php будет закрыт. Тем самым вы дополнительно обезопасите свой сайт и сможете избежать блокировки услуги хостинга из-за нагрузки на CPU.

Помогла ли вам статья?

Да

раз уже
помогла

Плагин отнесен в категорию xmlrpc

Disable XML-RPC

(25 общий рейтинг)

Disables the XML-RPC API in WordPress 3.5+, which is enabled by default.


Philip Erb 200 000+ активных установок Протестирован с 5.8.6 Обновлен 2 года назад

Disable XML-RPC-API

(37 общий рейтинг)

A simple and lightweight plugin to disable XML-RPC API, X-Pingback and pingback-ping in WordPress 3.5+…


Neatma 60 000+ активных установок Протестирован с 6.1.1 Обновлен 2 месяца назад

WP Hardening — Fix Your WordPress Security

(17 общий рейтинг)

The WP Hardening is a one-click tool to fix standard security recommendations on your WordPress…


Astra Security 10 000+ активных установок Протестирован с 6. 0.3 Обновлен 6 месяцев назад

Remove & Disable XML-RPC Pingback

(6 общий рейтинг)

Prevent pingback, XML-RPC and denial of service DDOS attacks by disabling the XML-RPC pingback functionality.


WP Security Ninja 10 000+ активных установок Протестирован с 5.9.5 Обновлен 12 месяцев назад

XO Security

(8 общий рейтинг)

XO Security is a plugin to enhance login related security.


Xakuro 10 000+ активных установок Протестирован с 6.2 Обновлен 1 день назад

Manage XML-RPC

(4 общий рейтинг)

Enable/Disable XML-RPC for all or based on IP list, also you can control pingback and…


brainvireinfo 10 000+ активных установок Протестирован с 6.0.3 Обновлен 10 месяцев назад

Rename XMLRPC

(10 общий рейтинг)

Make XML-RPC work if you rename the file. Some hosts block access to xmlrpc.php file…


Jorge Bernal 3 000+ активных установок Протестирован с 5.7.8 Обновлен 2 года назад

Eazy XMLRPC Pingback Disable

(4 общий рейтинг)

This plugin disables the WordPress XMLRPC pingback ping.


Rob Scott, LLC 1 000+ активных установок Протестирован с 4.9.22 Обновлен 5 лет назад

Control XML-RPC publishing

(2 общий рейтинг)

Control remote publishing with XML-RPC from the writing settings page.


Mark Kaplun 1 000+ активных установок Протестирован с 4.4.29 Обновлен 7 лет назад

REST XML-RPC Data Checker

(3 общий рейтинг)

REST XML-RPC Data Checker allow to check JSON REST and XML-RPC API requests and grant…


Enrico Sorcinelli 1 000+ активных установок Протестирован с 6.
0.3 Обновлен 8 месяцев назад

xmlrpc attacks blocker

(0 общий рейтинг)

multipie ways to help block xmlrpc attacks.


Yehuda Hassine 800+ активных установок Протестирован с 4.8.21 Обновлен 8 лет назад

WP Login Door

(6 общий рейтинг)

Did you ever feel like your website or blog login page is ridiculously fragile and…


Nicolas Simonnet 400+ активных установок Протестирован с 4.9.22 Обновлен 5 лет назад

Push Syndication

(4 общий рейтинг)

Syndication helps users manage posts across multiple sites. It’s useful when managing posts on different…


Automattic 400+ активных установок Протестирован с 5.0.18 Обновлен 4 года назад

Syndicate Out

(4 общий рейтинг)

Syndicates posts made in any specified category to another WP blog using WordPress’ built in…


ConfuzzledDuck 400+ активных установок Протестирован с 4. 4.29 Обновлен 7 лет назад

Deactivate XML-RPC on WordPress

(0 общий рейтинг)

This plugin will completely disable or deactivates XML-RPC on your WordPress installation. This will prevent…


Alfredo Sanchez Jr 400+ активных установок Протестирован с 4.2.34 Обновлен 8 лет назад

Native WP Cleaner

(2 общий рейтинг)

Disable native widgets, clean head tag from RSS, RSD, WLW Manifest links, disable XML-RPC, cleanup…


Oleg Komarovskyi 300+ активных установок Протестирован с 4.8.21 Обновлен 6 лет назад

Disable XML RPC Fully

(1 общий рейтинг)

Simple plugin that disables XML-RPC.


Jonathan Harris 200+ активных установок Протестирован с 3.6.1 Обновлен 9 лет назад

XML-RPC Modernization

(2 общий рейтинг)

This plugin updates the WordPress XML-RPC API to leverage the latest features of WordPress and…


Max Cutler 200+ активных установок Протестирован с 3. 5.2 Обновлен 10 лет назад

Deactivate XML-RPC Service

(0 общий рейтинг)

Disables the XMP-RPC API service introduced in WordPress 3.5 and above.


DeveloperWil 200+ активных установок Протестирован с 6.2 Обновлен 3 недели назад

Disable Pingbacks

(0 общий рейтинг)

This plugin disables the Pingback functionality in your blog.


Glen Scott 200+ активных установок Протестирован с 4.9.22 Обновлен 5 лет назад

Что такое xmlrpc.php в WordPress и почему его следует отключить

Вордпресс Эксперт

20 февраля 2023 г.

Kevin W.

4min Read

В WordPress всегда были встроенные функции, которые позволяли вам удаленно взаимодействовать с вашим сайтом. Признайте, иногда вам нужно получить доступ к вашему веб-сайту WordPress, а вашего компьютера поблизости не будет. Долгое время решением был файл с именем xmlrpc.php . Но в последние годы файл стал скорее вредителем, чем решением.

Ниже мы углубимся в то, что на самом деле представляет собой xmlrpc.php и почему он был создан. Мы также рассмотрим общие проблемы безопасности, которые он вызывает, и способы их исправления на вашем собственном сайте WordPress.

Что такое Xmlrpc.php?

XML-RPC — это функция WordPress, позволяющая передавать данные, при этом HTTP действует как транспортный механизм, а XML — как механизм кодирования. Поскольку WordPress не является самозамкнутой системой и время от времени нуждается в обмене данными с другими системами, для выполнения этой работы был выбран именно этот.

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

Основными функциями, включенными в xmlrpc.php, были возможность подключения к вашему сайту через смартфон, реализация трекбеков и пингбэков с других сайтов, а также некоторые функции, связанные с плагином Jetpack.

Для чего был создан Xmlrpc.php и как он использовался?

Реализация XML-RPC восходит к ранним дням существования WordPress еще до того, как он стал WordPress.

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

Решение (в то время) состояло в том, чтобы создать автономный клиент для ведения блога, где вы могли бы создавать свой контент, а затем подключаться к своему блогу, чтобы опубликовать его. Это соединение было выполнено через XML-RPC. Имея базовую структуру XML-RPC, ранние приложения использовали это же соединение, чтобы позволить людям входить на свои сайты WordPress с других устройств.

XML-RPC В настоящее время

В 2008 году в версии 2.6 WordPress была возможность включить или отключить XML-RPC. Однако с выпуском приложения WordPress для iPhone поддержка XML-RPC была включена по умолчанию, и отключить эту настройку было невозможно. Это осталось верным и по сей день.

Однако функциональность этого файла со временем сильно уменьшилась, а общий размер файла уменьшился с 83 КБ до 3 КБ, поэтому он уже не играет такой большой роли, как раньше.

Будущее XML-RPC

С новым API WordPress мы можем ожидать полного отказа от XML-RPC. Сегодня этот новый API все еще находится на стадии пробной версии и может быть включен только с помощью плагина.

Однако можно ожидать, что в будущем API будет кодироваться непосредственно в ядре WordPress, что в основном полностью устранит необходимость в файле xmlrpc.php.

Новый API не идеален, но он обеспечивает более надежное и безопасное решение проблемы, которую решает xmlrpc.php.

Почему следует отключить Xmlrpc.

php

Самые большие проблемы с XML-RPC связаны с безопасностью. Проблемы связаны не с XML-RPC напрямую, а с тем, как файл можно использовать для проведения атаки грубой силы на ваш сайт.

Конечно, вы можете защитить себя с помощью невероятно надежных паролей и плагинов безопасности WordPress. Но лучший способ защиты — просто отключить его.

В XML-RPC есть два основных недостатка, которые использовались в прошлом.

Во-первых, для получения доступа к вашему сайту используются атаки грубой силы. Злоумышленник попытается получить доступ к вашему сайту с помощью xmlrpc.php, используя различные комбинации имени пользователя и пароля. Они могут эффективно использовать одну команду для проверки сотен различных паролей. Это позволяет им обходить инструменты безопасности, которые обычно обнаруживают и блокируют атаки грубой силы.

Второй вывод сайтов из сети посредством DDoS-атаки. Хакеры будут использовать функцию pingback в WordPress, чтобы мгновенно отправлять pingback на тысячи сайтов. Эта функция в xmlrpc.php дает хакерам почти бесконечный запас IP-адресов для распространения DDoS-атаки.

Чтобы проверить, работает ли XML-RPC на вашем сайте, вы можете запустить его с помощью инструмента под названием XML-RPC Validator. Запустите свой сайт с помощью этого инструмента, и если вы получите сообщение об ошибке, это означает, что у вас не включен XML-RPC.

Если вы получили сообщение об успешном завершении, вы можете остановить xmlrpc.php одним из двух способов, указанных ниже.

Метод 1: отключение Xmlrpc.php с помощью плагинов

Отключение XML-RPC на вашем сайте WordPress очень просто.

Просто перейдите к  9Плагины 0011 › Добавьте новый раздел  из панели управления WordPress. Найдите Отключите XML-RPC-API и установите плагин.

Активируйте плагин, и все готово. Этот плагин автоматически вставит необходимый код для отключения XML-RPC.

Однако имейте в виду, что некоторые существующие плагины могут использовать части XML-RPC, поэтому его полное отключение может привести к конфликту плагинов или к тому, что некоторые элементы вашего сайта перестанут работать.

Способ 2: отключение Xmlrpc.php вручную

Если вы не хотите использовать плагин и предпочитаете делать это вручную, следуйте этому подходу. Он остановит все входящие запросы xmlrpc.php, прежде чем они будут переданы в WordPress.

Откройте файл .htaccess. Возможно, вам придется включить «показывать скрытые файлы» в файловом менеджере или FTP-клиенте, чтобы найти этот файл.

Внутри файла .htaccess вставьте следующий код:

 # Блокировать запросы WordPress xmlrpc.php
<Файлы xmlrpc.php>
запретить заказ, разрешить
отрицать от всех
разрешить от xxx.xxx.xxx.xxx
 

Важно! Измените xxx.xxx.xxx.xxx на IP-адрес, которому вы хотите разрешить доступ xmlrpc.php , или полностью удалите эту строку.

Заключение

В целом, XML-RPC стал надежным решением некоторых проблем, возникающих из-за удаленной публикации на вашем сайте WordPress. Однако с этой функцией появились некоторые дыры в безопасности, которые оказались довольно опасными для некоторых владельцев сайтов WordPress.

Чтобы обеспечить безопасность вашего сайта, рекомендуется отключить xmlrpc.php полностью. Если вам не требуются некоторые функции, необходимые для удаленной публикации и плагин Jetpack. Затем вы должны использовать обходные плагины, которые позволяют использовать эти функции, при этом закрывая дыры в безопасности.

Со временем мы можем ожидать, что функции XML-RPC будут интегрированы в новый WordPress API, который сохранит удаленный доступ и тому подобное без ущерба для безопасности. Но в то же время неплохо защитить себя от потенциальных дыр в безопасности XML-RPC.

Вы ​​заблокировали доступ XML-RPC через подключаемый модуль или вручную? Или возникли какие-либо проблемы с безопасностью из-за того, что он был активен в первую очередь? Пожалуйста, поделитесь своим опытом в комментариях ниже.

Узнайте больше о WordPress

WordPress REST API Tutorial
Как использовать XAMPP в WordPress
WordPress Tutorial
Лучшие фреймворки WordPress
Что такое WordPress Heartbeat
Как добавить пользовательский CSS в WordPress

Кевин — писатель-фрилансер, специализирующийся на технологиях и маркетинге онлайн-контента. Он любит делать сложные темы маркетинга и технологий доступными для всех читателей. Когда он не приклеен к экрану, вы можете найти его потерянным в книге, пишущим стихи или бегущим по лесу.

Еще от Кевина Вуда

Как отключить xmlrpc.php для WordPress?

Обзор

Следующее руководство содержит краткий обзор первоначального назначения xmlrpc.php, почему рекомендуется отключить эту функцию для обеспечения безопасности, и как пройти этапы ее отключения. К счастью, отключить XML-RPC обычно можно за несколько минут.

ЗАЯВЛЕНИЕ О ПОДДЕРЖКЕ:
Имейте в виду, что устранение неполадок в конфигурации/функциональности сторонних приложений не входит в наше заявление о поддержке. Эти ресурсы были предоставлены в качестве любезности, чтобы помочь вам в меру наших возможностей. Для получения дополнительной информации о нашем заявлении о поддержке щелкните здесь.

Что такое XML-RPC?

XML-RPC для WordPress был разработан для обеспечения удаленных подключений между вашим сайтом и внешними приложениями. Это означает, что пользователи могут взаимодействовать со своим сайтом WordPress через различные платформы для ведения блогов или приложения для телефонов. Это было полезно в ранние дни Интернета, когда человек хотел редактировать контент в автономном режиме, а затем подключаться к своему блогу WordPress позже, чтобы опубликовать его.

В некоторых ситуациях пользователи хотели бы использовать XML-RPC. Однако с развитием технологий использование и функциональность XML-RPC значительно сократились с момента его появления. Таким образом, первоначальные плюсы, которые давала эта функция, перевешиваются потенциальными рисками безопасности, связанными с ее включением.

Зачем отключать XML-RPC?

Как ускользнуло в предыдущем разделе, существуют риски безопасности, связанные с включением XML-RPC. Они могут включать:

  • Атаки полным перебором — Злоумышленник может использовать xml-rpc для проверки сотен комбинаций имени пользователя и пароля, пока в конечном итоге не сможет получить доступ к вашему сайту. Это происходит потому, что xml-rpc не имеет того же ограничения на количество попыток входа, которое существует при обычном входе в WordPress.
  • DDoS-атака — Злоумышленник может использовать xml-rpc для проверки тысяч IP-адресов. Это позволяет им отправлять потоки данных и трафика, которые могут привести к перерасходу и даже к параличу и отключению сетей.

Инструкции

Проверьте, включен ли XML-RPC

  1. Перейдите на следующий веб-сайт: XML-RPC Validator.
  2. Введите имя вашего домена. Затем нажмите Проверить .
    • Несмотря на наличие поля Имя пользователя/Пароль, вы можете оставить этот раздел пустым.
  3. Если вы получили сообщение об успешном выполнении , это означает, что XML-RPC включен и вы захотите отключить его.

Метод 1 — Плагин

  1. Войдите в панель администратора WordPress.
  2. Нажмите Плагины >> Добавить новый .
  3. Найдите «Отключить XML-RPC» и установите подключаемый модуль «Отключить XML-RPC».
  4. Просто активируйте плагин и все! XML-RPC должен быть отключен.
  5. Вы можете перепроверить с помощью XML-RPC Validator. Сообщение об ошибке подтвердит, что XML-RPC отключен.

Если вы хотите сохранить определенные функции XML-RPC, вы можете использовать другие плагины, такие как:

  • Stop XML-RPC Attack — защищает от грубой силы/DDoS, но позволяет подключаемым модулям и автоматическим инструментам получать доступ к XML-RPC.
  • Управление публикацией XML-RPC — позволяет использовать функции удаленной публикации xml-RPC.

Метод 2 — .htaccess

  1. Используя FTP FTP FTP FTP или файловый менеджер файловый менеджер файловый менеджер, перейдите в корневой каталог вашего сайта корневой каталог корневой каталог корневой каталог.
  2. Откройте файл .htaccess .
  3. Добавьте в файл .