Restringir o acesso ao WordPress API REST
É 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 ativar a proteção, vá para a guia Proteção e ative Bloquear o acesso à API REST do WordPress, exceto qualquer um dos itens a seguir .
Se você usar o Contact Form 7, o Jetpack ou outro plug-in que use a API REST, será necessário incluir na lista de permissões seus namespaces da API REST, conforme descrito abaixo.
Permitir acesso a um namespace da API REST específico
O que é namespace? Namespace é uma parte de um URL de solicitação que permite ao WordPress reconhecer qual plug-in ou parte do código deve atender a uma determinada solicitação da API REST. Para obter o namespace, pegue uma string entre / wp-json / e a próxima barra na 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 |
Caldera Forms | cf-api |
Yoast SEO | yoast |
Mochila a jato | jetpack |
Especifique exceções de namespace para a API REST, se necessário, conforme mostrado na captura de tela
Permitir que seus usuários usem a API REST
Ative Permitir API REST para usuários que efetuaram login se você quiser permitir o uso da API REST para qualquer usuário do WordPress autorizado (logado) sem limitação.
Restringir o acesso à API REST do WordPress por endereço IP ou rede IP
Para permitir o acesso à API REST para um endereço IP específico ou uma rede IP, adicione-os à Lista de Acesso IP Branco.
Para bloquear o acesso à API REST para um endereço IP específico ou uma rede IP, adicione-os à Lista de acesso IP preto.
Leia mais: Usando listas de acesso IP para proteger o WordPress
Proteção contra enumeração de usuário da API REST
Para parar a enumeração de usuários e bloquear o acesso aos detalhes dos usuários por meio da API REST, basta ativar a configuração Parar enumeração de usuários na guia WordPress de proteção. Esse recurso de segurança foi projetado para detectar e impedir que hackers varrem o site em busca de nomes de usuários e detalhes do usuário. Quando está habilitado, o Cerber Security bloqueia as enumerações de usuário da API REST e solicitações de enumeração de usuário tradicionais para páginas de arquivo de autor com URL como /? Author = n. Portanto, ninguém terá acesso aos detalhes do usuário por meio da API REST, a menos que você permita o acesso a eles, conforme descrito acima.
O que é a API REST, afinal?
Em suma, é uma tecnologia que permite que duas partes diferentes de código (aplicativos) conversem entre si e troquem dados de maneira padronizada. O uso da API REST permite que os desenvolvedores criem, leiam e atualizem o conteúdo do WordPress de aplicativos externos em execução em um computador ou site diferente. A API REST do WP é ativada por padrão, iniciando a versão 4.7.0 do WordPress.
Leia mais: Por que é importante restringir o acesso à API REST do WP?
Documentação para desenvolvedores: https://developer.wordpress.org/rest-api/
Próximas etapas para fortalecer sua segurança no 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
Qual é o Cerber Security, afinal? É uma solução de segurança completa para o WordPress, que é desenvolvida a partir de um plugin de tentativas de login 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.