Ограничить доступ к WordPress REST API
Пришло время взять под контроль WordPress REST API
English version: Restrict access to the WordPress REST API
WP Cerber Security позволяет ограничить или полностью заблокировать доступ к WordPress REST API, который включен по умолчанию. Чтобы включить защиту, перейдите на вкладку «Защита» и включите параметр « Блокировать доступ к WordPress REST API», кроме любого из следующих . Это блокирует доступ к REST API, если вы не предоставите доступ к нему в полях настроек ниже или не добавите IP-адрес в белый список доступа IP-адресов.
Если вы используете Contact Form 7, Jetpack или другой плагин, использующий REST API, вам необходимо внести его пространства имен REST API в белый список, как описано ниже.
Разрешить доступ к определенному пространству имен REST API
Пространство имен REST API — это часть URL-адреса запроса, которая позволяет WordPress распознавать, какой программный код обрабатывает определенный запрос REST API. Чтобы получить пространство имен, возьмите строку между /wp-json/ и следующей косой чертой в URL-адресе REST. Каждый плагин, использующий REST API, использует собственное уникальное пространство имен. В таблице ниже показаны пространства имен для некоторых плагинов.
Плагин | Пространство имен |
Контактная форма 7 | contact-form-7 |
Кальдера Формы | cf-api |
Йост SEO | yoast |
Реактивный ранец | jetpack |
Укажите исключения пространства имен для REST API, если это необходимо, как показано на скриншоте.
Разрешите своим пользователям использовать REST API
Включите Разрешить REST API для зарегистрированных пользователей , если вы хотите разрешить использование REST API для любого авторизованного (вошедшего в систему) пользователя WordPress без ограничений.
Ограничить доступ к WordPress REST API по IP-адресам
Чтобы разрешить доступ к REST API с определенного IP-адреса или IP-сети, добавьте их в Белый список IP-доступа .
Чтобы полностью заблокировать доступ к REST API с определенного IP-адреса или IP-сети, добавьте их в черный список IP-доступа .
Подробнее: Использование списков доступа IP для защиты WordPress
Как остановить перечисление пользователей REST API
Чтобы заблокировать доступ к данным пользователей и прекратить перечисление пользователей через REST API, необходимо включить параметр Блокировать доступ к данным пользователей через REST API на вкладке Усиление. Эта функция безопасности предназначена для обнаружения и предотвращения сканирования вашего сайта хакерами на предмет входа в систему и конфиденциальных данных пользователей.
Когда он включен, Cerber блокирует все запросы к REST API и возвращает ошибку HTTP 403. Вы можете отслеживать такие события на вкладке «Активность». Они регистрируются как «Запрос к REST API отклонен».
Доступ к данным пользователей через WordPress REST API всегда предоставляется в двух случаях:
- Для учетных записей администратора, что означает, что если «Остановить перечисление пользователей» через REST API включено, все пользователи с ролью администратора всегда имеют доступ к данным пользователей.
- Для всех IP-адресов в белом списке доступа IP-адресов
Что такое REST API?
В двух словах, это технология, которая позволяет двум разным частям кода (приложениям) взаимодействовать друг с другом и обмениваться данными стандартизированным способом. Использование REST API позволяет разработчикам создавать, читать и обновлять содержимое WordPress из внешних приложений, работающих на удаленном компьютере или веб-сайте. WP REST API включен по умолчанию, начиная с версии WordPress 4.7.0.
Подробнее: Почему важно ограничить доступ к WP REST API
Документация для разработчиков: https://developer.wordpress.org/rest-api/
Знаете ли вы, что вы можете удаленно управлять настройками REST API на любом количестве веб-сайтов? Включите режим основного веб-сайта на основном веб-сайте Cerber.Hub и режим управляемого веб-сайта на других ваших веб-сайтах, чтобы управлять всеми экземплярами WP Cerber с одной панели инструментов.
Следующие шаги, которые укрепят вашу безопасность WordPress
- Как заблокировать спам-регистрации пользователей
- Как заблокировать отправку спам-форм
- Как заблокировать пользователя WordPress
- Как заблокировать доступ с определенного IP-адреса
- Как отключить использование определенного имени пользователя
Что такое Cerber Security? Это комплексное решение для обеспечения безопасности WordPress, созданное на основе простого, но эффективного плагина ограничения количества попыток входа в систему.
OK. But how do I know whether a plugin uses the REST API so I have to add it to the namespace access-list?
1. From the documentation on a plugin.
2. Checking for REST API requests on the Live Traffic page: just click the small “REST API” button above the table.
3. If you know the REST API namespace that is used by a plugin you can search for requests by entering that REST API namespace on the Advanced search form in the “URL contains” field.
4. Disable REST API in the settings completely and check how the plugin works. If the plugin doesn’t work anymore, that means it uses REST API. To find out its namespace look for “Request to REST API denied” events the Activity page.
Mmm… thnx, but that does not really make me happy. I checked e.g. the contact form and that worked because the REST API works for the administrator. For me small blogger with 22 plugins operational this becomes a nuisance and a lot of time and work. Can’t this be done automatically eg by suggesting or something?
And while we are talking, why should I not permit /oembed/ as a permitted namespace? It seems to be used by a robot (and of course Cerber blocks it correctly 🙂 ).
For other questions I will use the support blog as I normally do.
Sorry for the kind of abuse of this blog. Won’t do it again.