Xmlrpc php что это
Безопасность сайта и файл xmlrpc.php
В header.php шаблоне большинства тем WordPress есть важный хук wp_head. Этот необходимый хук позволяет функциям WordPress выводить содержимое в браузер в области ваших веб-страниц.
Например, в новых версиях WordPress WordPress wp_head() позволяет выводить следующие три строки в вашу тему :
Что делает xmlrpc.php? Нужно ли мне это?
Хотя документация на XML-RPC WordPress довольно тонкая, мы можем собрать частичное представление о том, как xmlrpc.php работает, вчитываясь в код самого файла. Не волнуйтесь, мы не собираемся вас беспокоить этим, но достаточно сказать, что xmlrpc.php необходим для таких вещей, как:
Не все используют возможности удаленной публикации, доступные в WordPress, но я думаю, что многие блоги определенно используют протокол XML-RPC для функций pingback и trackback.
Предоставляет ли файл xmlrpc.php угрозу безопасности?
Некоторые из вас могут вспомнить риск безопасности, связанный со xmlrpc.php сценарием, в хорошие дни WordPress 2.1.2, посредством чего:
WordPress может позволить удаленному аутентифицированному злоумышленнику обойти ограничения безопасности, вызванные неправильной проверкой скриптом xmlrpc. > Удаленный злоумышленник с разрешениями участников может использовать эту уязвимость для публикации сообщений на веб-сайте.
Ознакомьтесь с этими связанными сообщениями для получения дополнительной информации о файле xmlrpc.php и безопасности сайта:
Советы по безопасности файла xmlrpc.php вашего сайта
Несмотря на то что, в прошлом были проблемы с безопасностью, xmlrpc.php и в будущем, возможно, возникнут новые проблемы. Чтобы быть в безопасности, вот несколько разных стратегий и советов, которые помогут обеспечить максимальную безопасность вашего блога.
Если вам функциональность xmlrpc.php не нужна, удалите его
Возможно, самым безопасным способом устранения потенциальных уязвимостей безопасности является просто удаление рассматриваемого сценария. Если вам не нужна дистанционная проводка, pingback или trackbacks, может быть проще всего просто удалить xmlrpc.php файл с вашего сервера. Вместо того, чтобы удалять его, вы можете просто переименовать его в нечто неописуемое. В любом случае, если скрипт недоступен для злоумышленника, это затрудняет его использование.
Обновление. Если вы удалите (или переименуете) xmlrpc.php файл из своей установки WordPress, вы также должны реализовать функцию, описанную в следующем разделе, чтобы избежать лавины из 404 ошибок (см. Этот комментарий для дальнейшего объяснения).
Удалите ссылки на xmlrpc.php и wlwmanifest.xml
В качестве альтернативы, если вам не нужны какие-либо функции удаленного доступа или pingback, вы можете просто удалить связанные заголовки ссылок, а не удалять любые основные файлы с вашего сервера. Это легко осуществить с помощью следующей функции, помещенной в файл активной темы functions.php:
Это предотвратит привязку этих двух файлов в заголовке, но сами файлы останутся доступными на вашем сервере. Определенно убедитесь, что по умолчанию отключена удаленная публикация, если вы реализуете этот метод.
Отключить функциональность удаленной публикации
Если вы не публикуете удаленно, но вы все равно хотите получать pingback и trackbacks, возьмите совет WordPress и просто оставьте функциональность удаленного доступа отключенной по умолчанию. Этот шаг по-настоящему кажется огромным способом помочь скрыть безопасность вашего блога. Файл будет по-прежнему доступен на вашем сервере, но злоумышленники смогут сделать с ним гораздо меньше.
Предотвращение сканирования вредоносных файлов xmlrpc.php
Для тех из вас, кто мудро следит за доступом к вашему серверу и журналам ошибок, вы, вероятно, видели недавний всплеск объема xmlrpc.php сканирования вредоносного каталога. По какой-то причине плохие парни внезапно очень заинтересовались в xmlrpc.php файлах и просматривают каждый каталог, который они могут получить, боты, пытаясь найти их. В последнее время я видел тонны этого вида деятельности:
Оставьте файл xmlrpc.php, но запретите доступ к нему
И последнее, но не менее важное – это простой способ, позволяющий оставить файл на своем сервере, но запретить доступ к нему. Просто вставьте следующий код в свой корневой файл HTAccess и сделайте с ним:
What Is Xmlrpc.php in WordPress and Why You Should Disable It
WordPress has always had inbuilt features that let you remotely interact with your site. Face it, sometimes you’ll need to access your website and your computer won’t be anywhere nearby. For a long time, the solution was a file named xmlrpc.php. But in recent years, the file has become more of a pest than a solution.
Below we dive into what xmlrpc.php actually is and why it was created. We also overview the common security issues it causes and how to patch them on your own WordPress site.
What Is Xmlrpc.php?
XML-RPC is a feature of WordPress that enables data to be transmitted, with HTTP acting as the transport mechanism and XML as the encoding mechanism. Since WordPress isn’t a self-enclosed system and occasionally needs to communicate with other systems, this was sought to handle that job.
For example, let’s say you wanted to post to your site from your mobile device since your computer was nowhere nearby. You could use the remote access feature enabled by xmlrpc.php to do just that.
The core features that xmlrpc.php enabled were allowing you to connect to your site via smartphone, implementing trackbacks and pingbacks from other sites, and some functions associated with the Jetpack plugin.
Why Was Xmlrpc.php Created and How Was it Used?
The implementation of XML-RPC goes back to the early days of WordPress before it even became WordPress.
Back in the early days of the internet, when the connections were incredibly slow, the process of writing and publishing to the web was much more difficult and time-consuming. Instead of writing within the browser itself, most people would write offline, then copied and pasted their content onto the web. Still, this process was far from ideal.
The solution (at the time), was to create an offline blogging client, where you could compose your content, then connect to your blog to publish it. This connection was done through XML-RPC. With the basic framework of XML-RPC in place, early apps used this same connection to allow people to log in to their WordPress sites from other devices.
XML-RPC Nowadays
In 2008, with version 2.6 of WordPress, there was an option to enable or disable XML-RPC. However, with the release of the WordPress iPhone app, XML-RPC support was enabled by default, and there was no option to turn off the setting. This has remained true to the present day.
However, the functionality of this file has greatly decreased over time, and the overall size of the file has decreased from 83kb to 3kb, so it doesn’t play as large of a role as it used to.
The Future of XML-RPC
With the new WordPress API, we can expect XML-RPC to be eliminated entirely. Today, this new API is still in the trial phase and can only be enabled through the use of a plugin.
However, you can expect the API to be coded directly into the WordPress core in the future, which will mostly eliminate the need for the xmlrpc.php file altogether.
The new API isn’t perfect, but it provides a more robust and secure solution to the problem that xmlrpc.php addressed.
Why You Should Disable Xmlrpc.php
The biggest issues with XML-RPC are the security concerns that arise. The issues aren’t with XML-RPC directly, but instead how the file can be used to enable a brute force attack on your site.
Sure, you can protect yourself with incredibly strong passwords, and WordPress security plugins. But, the best mode of protection is to simply disable it.
There are two main weaknesses to XML-RPC which have been exploited in the past.
The first is using brute force attacks to gain entry to your site. An attacker will try to access your site using xmlrpc.php by using various username and password combinations. They can effectively use a single command to test hundreds of different passwords. This allows them to bypass security tools that typically detect and block brute force attacks.
The second was taking sites offline through a DDoS attack. Hackers would use the pingback feature in WordPress to send pingbacks to thousands of sites instantaneously. This feature in xmlrpc.php gives hackers a nearly endless supply of IP addresses to distribute a DDoS attack over.
To check if XML-RPC is running on your site, then you can run it through a tool called XML-RPC Validator. Run your site through the tool, and if you get an error message, then it means you don’t have XML-RPC enabled.
If you get a success message, then you can stop xmlrpc.php with one of the two approaches below.
Method 1: Disabling Xmlrpc.php With Plugins
Disabling XML-RPC on your WordPress site couldn’t be easier.
Simply navigate to the Plugins › Add New section from within your WordPress dashboard. Search for Disable XML-RPC and install the plugin that looks like the image below:
Activate the plugin and you’re all set. This plugin will automatically insert the necessary code to turn off XML-RPC.
However, keep in mind that some existing plugins may utilize parts of XML-RPC, so disabling it completely could cause a plugin conflict or certain elements of your site to no longer function.
If you’d want to only turn certain elements of XML-RPC off, but still allow certain plugins and features to work, then use the following plugins instead:
Method 2: Disabling Xmlrpc.php Manually
If you don’t want to utilize a plugin and prefer to do it manually, then follow this approach. It will stop all incoming xmlrpc.php requests before it gets passed onto WordPress.
Inside your .htaccess file, paste the following code:
Note: Change xxx.xxx.xxx.xxx to IP address you wish to allow access xmlrpc.php or remove this line completely.
Closing Thoughts
Overall, XML-RPC was a solid solution to some of the problems that occurred due to remote publishing to your WordPress site. However, with this feature came some security holes that ended up being pretty damaging for some WordPress site owners.
To ensure your site remains secure it’s a good idea to disable xmlrpc.php entirely. Unless you require some of the functions needed for remote publishing and the Jetpack plugin. Then, you should use the workaround plugins that allow for these features, while still patching the security holes.
In time, we can expect the features of XML-RPC to become integrated into the new WordPress API, which will keep remote access and the like, without sacrificing security. But, in the meantime, it’s a good idea to protect yourself from the potential XML-RPC security holes.
Have you blocked XML-RPC access via a plugin or manually? Or experienced any security issues from having it active in the first place? Please share your experience in the comments below.
Kevin is a freelance writer who specializes in technology and online content marketing. He loves making complex marketing and technology topics accessible to all readers. When he’s not glued to his screen, you can find him lost in a book, writing poetry, or running through the woods.
Создайте свой собственный веб-сервис с PHP и XML-RPC
Если вы следите за отраслевыми новостями на эту тему, вы можете подумать, что это технология высокого уровня, которая интересна только крупным компаниям с огромными бюджетами. Но если бы ты сделал, ты был бы неправ.
Итак, вот что в меню:
Основы веб-сервисов. Для начала мы кратко рассмотрим основные концепции веб-сервисов.
Представляем XML-RPC: Далее мы познакомим вас со стандартом XML для обмена данными между системами и познакомим его со статьей Кевина.
Реализации PHP XML-RPC: Затем мы рассмотрим некоторые реализации XML-RPC с открытым исходным кодом в PHP: код, который можно использовать для быстрого создания собственной веб-службы или доступа к другим веб-службам с вашего сайта.
Ваш первый веб-сервис: если вы хотите перейти прямо к делу, это место для вас. Здесь мы возьмем одну из реализаций, описанных ранее, и создадим для нее Web-сервис на PHP.
Что вы можете сделать с XML-RPC: Хотите знать, что делать дальше? Мы дадим вам несколько идей о том, что вы можете сделать с XML-RPC и веб-службами.
Основы веб-сервисов
Первое, что нужно понять о веб-сервисах, это то, что они не являются чем-то новым. Если вы когда-либо использовали RSS-канал, чтобы получать новости с другого веб-сайта и размещать их самостоятельно, у вас уже есть хорошее представление о том, как работают веб-службы (см. Статью Кевина Янка: PHP и XML: парсинг RSS 1.0 ).
Веб-службы предназначены для обмена данными между сервером и клиентом с использованием стандартного формата XML для «упаковки» запросов и данных, чтобы обе системы могли «понимать» друг друга. Сервер и клиент могут быть как веб-серверами, так и любыми другими электронными устройствами, о которых вы можете подумать.
Слои описания и обнаружения — это просто XML, управляемый особым форматом, который позволяет найти соответствующую информацию для всех веб-служб в Интернете.
Возможно, то, что сделало веб-сервисы горячей темой в последнее время — помимо маркетинга таких компаний, как Microsoft и IBM, — это разработка этих стандартов. Они позволят массово развернуть веб-службы в Интернете, опираясь на инструменты разработки, которые сделают доступ к ним как предсказуемым, так и простым.
Но следует помнить, что все, что веб-служба делает сейчас с точки зрения обмена данными, также можно было бы сделать 5 или даже 10 лет назад с использованием стандарта HTTP и любого формата XML, который вы решили использовать или изобрести (каналы RSS являются простыми). пример). «Горячие новости» сегодня заключаются в том, что создание и распространение веб-службы теперь намного проще, чем в прошлом.
Представляем XML-RPC
Как будет показано в этой статье, самое важное, что есть у XML-RPC, — это простота, которая становится понятной с самого начала, когда вы сравниваете спецификацию на 1500 слов с библией (и растущей) из 11 000 слов в SOAP. Другая хорошая новость заключается в том, что XML-RPC хорошо поддерживается в PHP, наряду с реализациями практически на любом другом языке, который вы можете пожелать.
Вот как может выглядеть запрос клиента с точки зрения целевого сервера XML-RPC:
Запрос (от вашего клиента XML-RPC):
А вот и ответ от сервера, который видит клиент XML-RPC.
Ответ (с сервера XML-RPC):
Сервер XML-RPC
База данных теперь готова к действию. Далее, давайте создадим сервер XML-RPC и назовем его «server.php»:
Вот краткий обзор того, что происходит внутри server.php:
Мы использовали специальные функции XML-RPC:
На этом сервер XML-RPC закончен. В общем, это то, что вы делаете для каждого построенного вами XML-RPC-сервера. Не сложно, не так ли? Теперь все, что нам нужно, это те функции PHP, которые будут использоваться с методами …
Методы
Далее мы определяем некоторые функции PHP, которые соответствуют методам XML-RPC, и сохраняем их в web_service_api.php:
Что здесь случилось?
Мы использовали специальные функции XML-RPC:
Уф! Итак, теперь мы определили наши функции PHP и имеем массив для перевода их в методы XML-RPC: наш сервер XML-RPC готов к работе! Теперь, чтобы закончить, давайте составим простой клиент для доступа к нашим новостям.
Клиент XML-RPC
Для примера, мы будем хранить клиентский скрипт в том же месте, что и сервер, но если у вас есть другой веб-сервер, вы можете разместить скрипт там, убедившись, что у него есть доступ к функциям «kd_xmlrpc.php», функциям библиотека.
Здесь использовались специальные функции XML-RPC:
Возвращенный массив содержит две переменные. Первый — либо 0 для сбоя, либо 1 для успешного ответа на запрос, который мы используем для проверки ошибок. Второй — это многомерный массив, который содержит все данные из ответа.
Один совет: для написания XML-RPC-клиентов может быть полезно думать о сервере так же, как о базе данных — это просто источник данных. С точки зрения ваших сценариев, код будет аналогичен структуре, которую вы будете использовать при запросе MySQL.
Итак, это все! Направьте свой браузер на http://www.yourdomain.com/kd_xmlrpc/client.php, откиньтесь на спинку кресла и читайте новости.
Заворачивать
Как вы уже видели, используя код XML-RPC Кейта Девенса, довольно легко создать свой собственный веб-сервис. Это отличная отправная точка для знакомства с веб-сервисами. Возможно, как «домашнее задание», вы можете попробовать обновить клиента, чтобы посетители могли выбирать, каким образом они хотят заказывать новости (например, по автору, названию или дате). И если вы чувствуете себя честолюбивым, возможно, вы даже подумаете о добавлении интерфейса к клиенту для INSERT или UPDATE новостей.
В коде Кейта есть один или два небольших недостатка, о которых вы должны знать.
Во-первых, XMLRPC_request() используемая клиентом, удаляет «знания», хранящиеся в ответе XML-RPC, о типе каждой переменной, что может привести к дополнительному кодированию для клиента. Например, вы можете ожидать массив, но получите только скалярную (однозначную) переменную — клиенту необходимо иметь дело с обоими обстоятельствами.
Также нет расширения для самоанализа, позволяющего другим разработчикам видеть ваш API (то есть какие методы и параметры принимает ваш сервер). Не должно быть слишком сложно добавить свой собственный самоанализ — просто используйте массив, который мы определили в web_service_api.php.
Наконец, есть только ограниченное положение для отладки. Если ваш единственный интерфейс — клиент, вы можете столкнуться с множеством головных болей, когда речь заходит о том, что делает ваш XML-RPC-сервер. Возможно, вам захочется подумать о создании какого-либо файла журнала для сервера, используя пользовательскую обработку ошибок PHP — посмотрите эту статью, чтобы начать работу с пользовательскими обработчиками ошибок.
Но спасибо Кита Девенсу за отличный код и за то, что он дал нам отличное начало!
Есть пара вопросов, которые мы здесь не рассматривали: безопасность и обработка транзакций.
Не беспокойтесь, вы создали свой первый веб-сервис и, надеюсь, получили хорошее представление о том, как работает эта технология. Вопрос сейчас в том, что с этим делать? Публикация новостей — это хорошо, но это было сделано раньше. Что еще там? Мы рассмотрим это в следующем разделе …
Что вы можете сделать с XML-RPC?
Этот вопрос немного похож на вопрос «что я могу сделать с веб-страницей?» Единственным ограничением является ваше воображение. Что вы можете сделать с XML-RPC и PHP в целом, так это расширить свой веб-сайт за пределы простого обслуживания веб-страниц. Ваш сайт сможет передавать данные в любую понравившуюся вам систему, и, приняв и приняв стандарт, вы предоставите интерфейс, с которым другие разработчики будут рады работать.
Веб-сервисы в самом широком смысле будут зарабатывать деньги для тех, кто владеет «ценными данными». Например, если у вас есть прямой доступ к курсам обмена валют, вы можете использовать PHP и XML-RPC для доставки конвертера валют на другие веб-сайты. Но вот некоторые другие идеи и примеры:
Как включить и отключить XMLRPC.PHP в WordPress и почему
XMLRPC — это система, которая позволяет удаленно обновлять WordPress из других приложений. Например, система Windows Live Writer способна публиковать блоги непосредственно в WordPress благодаря xmlrpc.php. Однако раньше он был отключен по умолчанию из-за проблем с кодированием.
По сути, xmlrpc.php мог открыть сайт для различных атак и других проблем. К счастью, разработчики этого кода уже давно ужесточили его структуру, и он по-прежнему широко используется.
xmlrpc.php позволяет удаленно подключаться к WordPress. Без него различные инструменты и приложения для публикации просто не смогут получить доступ к сайту. Любые обновления или дополнения к веб-сайту должны быть сделаны при входе в систему непосредственно.
Хорошо
Отключив с помощью этой функции вы исключаете риск получения доступа к внешним атакам. Хотя участники этой платформы подтверждают, что программирование xmlrpc.php так же безопасно, как и остальные файлы ядра WordPress, некоторые могут чувствовать себя в большей безопасности, отключив эту возможность.
Это как иметь дом с только одна дверь. Добавление второй двери может быть более удобным, но при этом создается еще одна точка входа, которую необходимо заблокировать.
Плохие
Очевидным недостатком отказа от этой функции является то, что удаленный доступ к WordPress больше не будет возможен. Это удаляет часть функциональности и универсальности системы. Вместо автоматической публикации блогов из другого приложения через удаленный доступ, любой контент и другие изменения должны быть внесены путем входа непосредственно в WordPress.
Это может быть проблематичным для тех, кому нравится идея публикации контент прямо со своих мобильных устройств.
Как узнать, включен ли XMLRPC?
Иногда это вызывает путаницу. Помните, что по умолчанию XMLRPC уже включен. Он активен после завершения установки WordPress.
Поэтому, если вы используете какие-либо из следующих ресурсов, чтобы отключить его, просто измените настройки или сотрите код, чтобы снова включить его.
Реальность XMLRPC
По большей части xmlrpc.php действительно полезен только в том случае, если вы планируете использовать мобильные приложения или удаленные подключения для публикации контента на своем веб-сайте. Поскольку мобильное использование было настолько распространенным способом доступа в Интернет, многие люди будут использовать удаленные приложения, чтобы упростить разработку своих сайтов WordPress.
Это также одна из причин, по которой разработчики вкладывают так много усилия по устранению проблем с кодированием этой функции в прошлом.
Однако не всем понадобится эта возможность. Многие аспекты системы работают очень хорошо и просты в использовании на смартфонах или планшетах.. Это особенно верно, поскольку ядро WordPress исключительно хорошо работает в мобильной среде.
Отключение XMLRPC через плагины
Хотя многие вещи можно сделать на уровне кодирования в WordPress, иногда проще использовать правильный плагин. Сегодня мы собираемся использовать Управление XML-RPC. Этот простой плагин выполняет работу по включению и отключению XMLRPC в любое время.
Чтобы использовать этот замечательный небольшой плагин, вам необходимо установить и активировать его со страницы плагинов на панели администратора WordPress.
После установки и активации плагина в левой части панели администратора WordPress появится новая функция под названием «Настройки XML-RPC. ” Щелкните эту ссылку, чтобы открыть плагин.
Установите флажок выберите «Отключить XML-RPC», если вы хотите удалить возможности удаленного доступа WordPress. В любой момент вы можете снять этот флажок, чтобы снова включить его.
После того, как ваш выбор сделан, нажмите кнопку «Сохранить изменения» в левом нижнем углу экрана.
ПРИМЕЧАНИЕ : Управление XML-RPC также есть возможность отключать пингбеки. Вы также можете установить определенные IP-адреса, чтобы включить или отключить эту функцию. Это может быть удобно, если вы хотите, чтобы служба работала для определенных приложений или пользователей в зависимости от их IP-адреса.
Этот плагин дает вам возможность включать или отключать xmlrpc.php для всего сайта или просто несколько IP-адресов. Это хорошая функция, особенно если вы хотите заблокировать доступ определенных пользователей к XMLRPC через WordPress.
Отключить XML-RPC
Плагин Disable XML-RPC — это простой способ заблокировать удаленный доступ к WordPress. Это один из самых популярных плагинов, его установили более 60 000 раз. Этот плагин помог многим людям избежать атак типа «отказ в обслуживании» через XMLRPC.
Отключить XML-RPC Pingback
Плагин Disable XML-RPC Pingback
Обе эти опции определенно являются плагинами, которые стоит добавить на ваш сайт.
# Блокировать запросы xmlrpc.php WordPress
запретить заказ, разрешить
запретить из всех
разрешить из 123.123.123.123
Теперь «Сохраните» файл. Это так просто. Теперь все удаленное использование XMLRPC.PHP будет запрещено.
Использование кода в плагине для конкретного сайта
Плагин для конкретного сайта может быть чрезвычайно полезен, если вы хотите для добавления функциональности вашему сайту без использования стороннего программного обеспечения. Это отличный способ добавить фрагменты, которые вы найдете в Интернете, для использования на своем сайте, не редактируя шаблон темы или файл functions.php.
В свой плагин для конкретного сайта вы можете просто добавить следующий код для отключения функции удаленного доступа:
После сохранения подключаемый модуль для конкретного сайта запустит указанное выше код и отключите XMLRPC. Однако вам нужно будет удалить код, если вы захотите снова включить эту функцию.
Когда мне нужно будет включить XMLRPC на моем сайте?
Если вы используете или планируете использовать удаленную систему для публикации контента на своем сайте, вам потребуется включить эту функцию. В противном случае вы не сможете устанавливать удаленные подключения через систему. Если вы отключили эту функцию и обнаружили, что некоторые из ваших подключаемых модулей или других инструментов больше не работают, вам нужно будет повторно включить их, чтобы продолжить использование этих дополнений.
Не всем потребуется включать xmlrpc.php в WordPress для правильной работы. Фактически, многие из вас могут вообще никогда не использовать эту функцию. Если вас беспокоят дополнительные проблемы с безопасностью, в ваших интересах отключить эту функцию до тех пор, пока она вам не понадобится.
Какие инструменты вы отключили в WordPress? Какие плагины используются для кодирования на вашем веб-сайте?
Автор: Крис Расикот
Крис является менеджером по поддержке GreenGeeks и работает в компании с 2010 года. Он страстно увлечен играми, написанием сценариев и WordPress. Когда он не спит, он отрабатывает свои навыки игры на гитаре и возится с 3D-печатью.
Моя проблема в том, что я хочу иметь возможность убедиться, что XML-RPC включен, поскольку использование IFTTT требует, чтобы он включал использование wordpress в своей системе.. Есть ли плагин, который позволяет включать или выключать его?
Моя проблема, похоже, противоположная. Я пытаюсь подключить свой веб-сайт к Windows LiveWriter, и когда я пытаюсь войти в систему, он не может найти файл xmlrpc.php. Он говорит:
«Не удалось найти следующий адрес веб-сайта xmlrpc.php. Пожалуйста, проверьте URL-адрес и повторите попытку ».
Итак, я попытался найти этот файл в диспетчере файлов, но его не существует. Что мне сделать, чтобы это заработало?
XML RPC — это мусорный файл, который дает очень красивую панель инструментов для людей, взломавших тему, которую я ** купил **.
По сути, XML RPC — это удобная кушетка, которую вы даете своим хакерам взломать ваш домен. Какого черта WP поставил бы это на первое место? Существует множество безопасных бесплатных VPN-сервисов, таких как teamviewer или многие другие. Они настаивают на том, что изобрели что-то новое?
выбросить этот удобный диван из вашего сервера. Я надеюсь, что это прочитают столько же людей, сколько и многие люди.
erezT
Ребята, это может создать ошибку 503 (отказано) из файла xmlrpc.php:
Может быть, это поможет кому-то другому
# Это правило перенаправляет запросы/xmlrpc.php на localhost 😉
Redirect 301/xmlrpc.php http://127.0.0.1
erezT, несмотря на ваше догматичное и немного агрессивное мнение, никто бы не • Обычно RPC используется для целей типа «удаленный рабочий стол». RPC открывает возможность подключаться к WordPress API, например автоматически загружать медиафайлы через Zapier или IFTTT и т. д.
Давайте не будем выбрасывать ребенка вместе с водой в ванну только потому, что можно сосредоточиться на всех недостатках RPC.
Спасибо, Крис, за подробное объяснение.
Маттиас, ваше предложение о плагине littlebizzy, который выдает ошибки 503, также полезно. Я управляю почти 40 сайтами WordPress, поэтому ищу наиболее эффективный способ их реализации. Я использую ManageWP, поэтому могу централизованно установить и активировать плагин на всех сайтах одним запросом. Мне нравится, что этот плагин сразу начинает работать после активации и не требует ручной настройки.
Крис, вы спросили: «Какие инструменты вы отключили в WordPress?» У меня есть два крошечных плагина, которые я использую для временного отключения функций WP. Один скрывает ссылки редактирования сообщений, чтобы я мог просматривать страницу без беспорядка и без выхода из системы. Другой отключает блокировку записи редактирования, так что я могу провести сеанс обучения с удаленным клиентом, и мы оба можем просматривать экран редактирования. Я просто помещаю их в GitHub на случай, если они кому-то пригодятся: https://github.com/donnamcmaster/mcw-hide-edit-post-link и https://github.com/donnamcmaster/mcw-disable- редактировать-блокировать.
Вы можете вытащить код и поместить его в свой файл функций, но затем вам придется отредактировать файл, чтобы включить/выключить их. В качестве плагинов их легко включить, только когда они вам понадобятся. HTH.
XMLRPC делает сайты WordPress программируемыми. Возможность отправлять сообщения из сценария чрезвычайно полезна для управления сайтом. Идея о том, что каждый должен использовать интерактивный веб-интерфейс, в первую очередь странна. Доступность XML RPC — вот что делает WordPress стоящим.
erezT, почему сосать абсолю? Почему вы так хотите отключить XML-RPC для НЕИЗМЕРНОГО улучшения безопасности? Зачем ограничивать возможность управления веб-сайтом WordPress только веб-браузером?
Работа с WordPress из мобильного браузера (и интерфейса с сенсорным экраном) болезненна. Опыт работы с приложением WordPress намного лучше.
Я думаю, что каждый должен самостоятельно оценить риск и принять решение. Подход «этого никогда не следует делать» несостоятельный.
Мне нужно проверить новый веб-сайт с помощью WordPress на сайте Gravatar, и когда я пытаюсь это проверить, я не могу к, это как-то связано с XML-RPC API.
Я тоже скачал плагин, но ничего не помогло.
Вы можете взглянуть к плагину REST XML-RPC Data Checker (https://wordpress.org/plugins/rest-xmlrpc-data-checker/): он позволяет расширенный контроль доступа к XML-RPC и REST API (включение также пользователем/IP /method или endopoint)
в моем собственном блоге WordPress, единственным пользователем которого являюсь, Я просто перемещаю файл/usr/share/wordpress/xmlrpc.php, когда хочу отключить xmlrpc, и возвращаю его на место. для повторного включения. Например,
sudo mv/usr/share/wordpress/xmlrpc.php/root
sudo mv/root/xmlrpc.php/usr/share/wordpress
Пока он отключен, я не могу использовать приложение Android WordPress для просмотра комментариев, но это небольшая плата. Для крупных сайтов с большим количеством пользователей картина может быть более сложной.
Для записи, я делаю то же самое с wp-login.php, только возвращая его на место. когда я хочу войти на сайт. Опять же, подходит только для небольших сайтов с одним автором. Я задокументировал это здесь http://unixetc.co.uk/2015/02/10/speed-up-wordpress-by-renaming-wp-login-php/
Получит ли моя учетная запись Google AdSense одобрение, если включен метод xmlrpc?
Использование xmlrpc. php во всех версиях WordPress
XML-RPC на WordPress — это фактически API, который позволяет разработчикам, создающим сторонние приложения и сервисы, взаимодействовать с вашим сайтом WordPress. XML-RPC API, который WordPress предоставляет несколько ключевых функций, включая:
Например, система Windows Live Writer способна публиковать блоги непосредственно в WordPress благодаря XML-RPC.
К сожалению, обычно При установке (без изменения настроек и/или конфигураций) WordPress интерфейс XML-RPC открывает два типа атак:
Согласно документации WordPress (https:// codex.wordpress.org/XML-RPC_Support), функция XML-RPC включена по умолчанию, начиная с WordPress 3.5.
Обратите внимание, что в этом руководстве/шпаргалке домен «example.com» фактически является пример и может быть заменен вашей конкретной целью.
Дор ks для поиска потенциальных целей
Поиск серверов XML-RPC на WordPress:
Нормальный ответ должен быть:
Обратите внимание, что в отсутствие ответа, представленного выше, довольно бессмысленно продолжать фактическое тестирование двух уязвимостей. Ответ может отличаться в зависимости от настроек и конфигураций установки WordPress.
XML-RPC pingback-атаки
В этом случае злоумышленник может использовать стандартный XML-RPC API для выполнения обратных вызовов для следующих целей:
Ниже представлен простой пример запроса. используя предоставленный PostBin URL в качестве обратного вызова:
Атаки грубой силы
Следующий запрос представляет собой наиболее распространенную атаку методом грубой силы:
Обеспокоены отправкой большого количества запросов против цели? — Не беспокойтесь. WordPress XML-RPC по умолчанию позволяет злоумышленнику выполнить один запрос и перебрать сотни паролей.
Для следующего запроса требуются разрешения для обеих систем . методы multicall и wp.getUsersBlogs :
Ответ будет выглядеть так:
В приведенном выше примере я протестировал 4 разных набора учетных данных с помощью одного запроса. Вам просто нужно заменить <<Ваше имя пользователя>> и <<Ваш пароль>> своими собственными комбинациями.
Вот и все, прокомментируйте, если я что-то пропустил, и удачной охоты!