Como o admin-ajax.php funciona?

14

Estamos tendo alguns problemas com um desenvolvedor externo.

Queremos limitar o acesso ao wp-adminsite apenas ao acesso interno (via VPN ). Simplesmente para que não seja atacado por usuários externos. Podemos enumerar os administradores do site e não queremos que eles sejam fraudados.

Nosso desenvolvedor está dizendo que não podemos fazer isso porque o site precisa ter a página de administrador acessível externamente para que a página funcione. especificamente a admin-ajaxpágina.

O que a admin-ajax.phppágina faz?

Está localizado na seção de administração do WordPress. É acessado não autenticado pelos usuários finais? É uma prática insegura disponibilizá-lo para usuários externos?

usuario
fonte
ajax-admin.phpmanipula .. solicitações ajax. Limpe seu título e a pergunta em geral, wordpress.stackexchange.com/faq
Wyck

Respostas:

6

admin-ajax.phpfaz parte da API AJAX do WordPress e, sim, lida com solicitações de back-end e front-end. Tente não se preocupar com o fato de que ele está em wp-admin. Eu acho que é um lugar estranho para ele também, mas não é um problema de segurança em si. Como isso se relaciona com "enumerar os administradores", eu não sei.

s_ha_dum
fonte
você recomendaria que a página de administração do wp fosse disponibilizada externamente? e você sabe se isso atrapalharia alguma coisa com o administrador do ajax?
nick
Não tenho 100% de certeza do que isso significa, mas se você precisar que o acesso aos arquivos wp-adminseja do IP da sua VPN, sim, isso deve atrapalhar o AJAX. As chamadas AJAX são do navegador do usuário, portanto, vêm do IP do usuário.
s_ha_dum
1
Você pode explicar por que, especificamente, não é um problema de segurança para nós n00bs? Caso contrário, resposta decente.
Daaxix 28/04
3

Para usuários não autenticados e não confiáveis, convém fazer duas exceções específicas à sua VPN / Firewall / Apache .htaccess, que são:

  • example.com/wp-admin/admin-post.php
  • example.com/wp-admin/admin-ajax.php

Esses são dois pontos de extremidade automáticos usados ​​por muitos pelo WP interno e também por vários plugins.

Aqui está uma explicação do que admin-post.phpfaz:

admin-ajax.phpfunciona de maneira muito semelhante, e uma explicação útil está aqui .

haz
fonte
2

Minha opinião pessoal é que essa é uma péssima idéia para Deus. Há cerca de dois meses, nosso diretor de desenvolvimento insistiu em fazer exatamente isso, muito contra os conselhos da equipe de desenvolvimento. É um pesadelo genuíno e uma dor incrível para nós, além de matar o Ajax todos juntos, apresenta tantos problemas de administração para nós.

Temos 40 funcionários regulares e 4 desenvolvedores tentando usar a vpn às vezes e isso simplesmente gagueja, além de todos os usuários agora exigirem dois conjuntos de senhas, uma para wp e outra para vpn, e essa não é apenas uma senha compartilhada, é individual. significa de que outra forma você faria uma auditoria de segurança. É difícil o suficiente lembrar uma senha segura, muito menos duas.

Adicione ao problema que muitas pessoas não sabem como usar uma VPN e geralmente isso causa mais problemas.

Em última análise, é uma péssima ideia e é frequentemente apresentada pela gerência ou superior que não conhece nem entende o WordPress. Eles vêem isso de uma maneira terrível: por ser de código aberto, também deve ser um problema de segurança, repleto de explorações facilmente acessadas e assim por diante ... está ficando velho.

O WordPress é seguro e manter o wp-admin por trás de uma VPN não é apenas o medo de fazer propaganda, é um pesadelo para todos os membros da equipe

Por que os tipos de gerenciamento não confiam no que diz respeito ao WordPress, eles parecem esquecer que os principais sites usam o WordPress e não usam vpns, veja mashable, por exemplo.

Então, para recapitular:

O Ajax não funciona atrás de uma VPN.

Vpn é uma péssima idéia pelos motivos mencionados acima

O WordPress é seguro e permanecerá assim, se você o mantiver atualizado e com os plugins.

Ouça o seu desenvolvedor, você paga pela experiência deles. Posso prometer-lhe que nada prejudica uma relação de trabalho, como não colocar sua confiança em um indivíduo e ter que verificar seus conhecimentos.

Se você optar pela vpn, compre licenças de usuário suficientes.


fonte
11
Ainda não tenho pontos suficientes para te rebaixar, mas teria se tivesse. Você fala alto sobre confiar em seus desenvolvedores, mas em nenhum lugar você diz 1) o que faz ou 2) por que está tudo bem no wp-admin. Não estou impressionado com esta resposta.
Daaxix 28/04
Plugins vulneráveis ​​podem ser explorados com admin-ajax.php, dependendo de como o plugin é desenvolvido. Muitos plug-ins não passam por análise de código estático ou dinâmico para teste de vulnerabilidade. O núcleo do WordPress também está constantemente corrigindo vulnerabilidades. Se você seguir as diretrizes de segurança do WordPress, que incluem proteção, como restringir o wp-admin, manter tudo atualizado e limitar os plugins instalados, sua exposição é mais limitada. Você não é, no entanto, 100% seguro.
tacotuesday