Restringir o acesso à API REST do WordPress
É hora de assumir o controle da API REST do WordPress
English version: Restrict access to the WordPress REST API
O WP Cerber Security permite restringir ou bloquear completamente o acesso à API REST do WordPress, que é ativada por padrão. Para habilitar a proteção, vá para a guia Hardening e habilite Bloquear acesso à API REST do WordPress, exceto qualquer um dos seguintes . Isso bloqueia o acesso à API REST, a menos que você conceda acesso a ela nos campos de configurações abaixo ou adicione um IP à lista de acesso de IP branco.
Se você usar o Formulário de contato 7, Jetpack ou outro plug-in que faz uso da API REST, precisará colocar na lista de permissões os namespaces da API REST conforme descrito abaixo.
Permitir acesso a um namespace específico da API REST
Um namespace da API REST faz parte de uma URL de solicitação que permite ao WordPress reconhecer qual código de programa processa uma determinada solicitação da API REST. Para obter o namespace, pegue uma string entre /wp-json/ e a próxima barra no URL REST. Cada plug-in que utiliza a API REST usa seu próprio namespace exclusivo. A tabela abaixo mostra namespaces para alguns plugins.
Plugar | Namespace |
Formulário de contato 7 | contact-form-7 |
Formas de caldeira | cf-api |
Yoast SEO | yoast |
Mochila a jato | jetpack |
Especifique exceções de namespace para API REST, se necessário, conforme mostrado na captura de tela
Permita que seus usuários usem a API REST
Habilite Permitir API REST para usuários logados se quiser permitir o uso da API REST para qualquer usuário autorizado (logado) do WordPress sem limitação.
Restringir o acesso à API REST do WordPress por endereços IP
Para permitir o acesso à API REST a partir de um endereço IP específico ou de uma rede IP, adicione-os à Lista de acesso de IP branco .
Para bloquear completamente o acesso à API REST de um endereço IP específico ou de uma rede IP, adicione-os à Lista de Acesso de IP Negro .
Leia mais: Usando listas de acesso IP para proteger o WordPress
Como parar a enumeração do usuário da API REST
Para bloquear o acesso aos dados dos usuários e interromper a enumeração do usuário por meio da API REST, você precisa habilitar a configuração Bloquear acesso aos dados dos usuários por meio da API REST na guia Proteção. Esse recurso de segurança foi projetado para detectar e impedir que hackers escaneiem seu site em busca de logins de usuários e dados confidenciais de usuários.
Quando ativado, o Cerber bloqueia todas as solicitações para a API REST e retorna o erro HTTP 403. Você pode monitorar esses eventos na guia Atividade. Eles são registrados como "Solicitação para API REST negada".
O acesso aos dados dos usuários via WordPress REST API é sempre concedido em dois casos:
- Para contas de administrador, ou seja, se “Parar enumeração de usuários” por meio da API REST estiver ativado, todos os usuários com a função de administrador sempre terão acesso aos dados dos usuários
- Para todos os endereços IP na White IP Access List
O que é API REST?
Em poucas palavras, é uma tecnologia que permite que dois códigos (aplicativos) diferentes conversem entre si e troquem dados de forma padronizada. O uso da API REST permite que os desenvolvedores criem, leiam e atualizem o conteúdo do WordPress a partir de aplicativos externos executados em um computador remoto ou site. A API WP REST é habilitada por padrão a partir da versão 4.7.0 do WordPress.
Leia mais: Por que é importante restringir o acesso à WP REST API
Documentação dos desenvolvedores: https://developer.wordpress.org/rest-api/
Você sabia que pode gerenciar as configurações da API REST em qualquer número de sites remotamente? Ative um modo de site principal no site principal do Cerber.Hub e um modo de site gerenciado em seus outros sites para gerenciar todas as instâncias do WP Cerber em um painel.
Próximas etapas que fortalecerão a segurança do seu WordPress
- Como bloquear registros de usuários de spam
- Como bloquear envios de formulários de spam
- Como bloquear um usuário do WordPress
- Como bloquear o acesso de um endereço IP específico
- Como desativar usando um nome de usuário específico
O que é o Cerber Security, afinal? É uma solução de segurança completa para WordPress que evoluiu de um plug-in de tentativas de login de limite simples, mas eficaz.
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.