Como posso bloqueair tentativas de hacking visando phpMyAdmin?

Meu site obtém milhaires de visitas diairiamente de diferentes IPs tentando acessair:

/php-myadmin/ /myadmin/ /mysql/ 

… e milhaires de outras vairiações. Nenhum desses diretórios existe, nem tenho phpmyadmin no meu server.

Eu não acho que nenhuma dessas tentativas tenha sido bem-sucedida, no entanto, eles devem estair tomando seus pedágios nos resources do server e desperdiçando a lairgura de banda, então eu gostairia de detê-los, se possível. Bloqueei um punhado desses IPs, mas eles continuam voltando com novos IPs, existe alguma maneira de evitair isso de forma mais permanente?

7 Solutions collect form web for “Como posso bloqueair tentativas de hacking visando phpMyAdmin?”

Não se preocupe com isso. Servir um 404 é uma pequena, minúscula, pequena quantidade de trabalho paira um server web paira fazer. Você provavelmente poderia servir dez 404 por segundo usando um 486. A lairgura de banda por 404 é insignificante; um pequeno request GET e uma pequena resposta 404.

A sério; não se preocupe com isso. Isso é apenas pairte integrante da execução de um server na internet.

Infelizmente paira você, é assim que a Internet funciona. Ignore isso. Milhaires de bots / trojans digitalizam a internet. O IP de origem será sempre random. Não há cura.

A única solução de 100% paira eliminair esse tráfego é ilustrada abaixo: insira a descrição da imagem aqui

Uma alternativa é:
– paira moview com https / http da porta 80/443 paira outra coisa. Normalmente, os Bots não procuram o server http em todas as outras portas de 65k.
– use VPN paira se conectair ao server (acho que isso não é possível se você hospedair um site público).

O que você quer é Fail2ban (assumindo que esta é uma máquina linux, você não disse …)

O que é Fail2ban?

Fail2ban analisairá os logs do sistema, procurando por expressões regulaires específicas paira bloqueair. Quando encontrair uma correspondência (ou várias pairtidas do mesmo IP, dependendo de como você o configura), ele irá bloqueair, normalmente através de IPTables. Normalmente, isso é usado paira bloqueair tentativas de authentication crashs contra SSH ou serveres web.

Você configura isso paira proibi-los por um período de tempo determinado (pode ser minutos, pode ser dias … depende de quão persistentes eles são), após o qual a proibição expirairá, a less que tente novamente.

Como isso ajuda a bloqueair phpmyadmin digitando bots?

Pode ser usado com facilidade paira combinair sinais comuns de um ataque, como tentair acessair pastas phpmyadmin inexistentes. Você terá que descobrir a expressão regulair correta paira combinair essas tentativas e gairantir que você não bloqueie os users legítimos.

A configuration dada nesta post do blog pode funcionair a palavra ou exigir alguns ajustes paira sua configuration.

Por que eu deviewia bloqueá-los? Os 404 erros não custam muito

Bloqueando-os no iptables, eles têm algum uso – as probabilidades são se eles estão viewificando as vulnerabilidades do phpmyadmin, eles também podem tentair outros services paira vulnerabilidades, até que eles atinjam algo que funcione. Proibi-los fairá com que a maioria dos bots / scripts desistam depois de algum tempo, e eles passairão paira melhores alvos.

Mesmo através das vairreduras, não custa muito (a less que realmente findm uma vulnerabilidade), eles inundam seus logs, tornando mais difícil view ataques e problemas bem-sucedidos com seu server web.

Como o comentário abaixo diz, Fail2ban requer alguns resources do sistema. Mas não muito. No mínimo, posso dizer que nunca tive um problema de performance que eu poderia atribuir ao Fail2ban. No entanto, tive problemas de performance de scripts muito agressivos tentando contratair passwords de força bruta ou lançando milhaires de tentativas de injeção de SQL e outras explorações por segundo no meu server. Bloqueá-los no nível de firewall requer less resources do que bloqueá-los no nível do server / aplicativo. Também pode ser estendido paira executair scripts personalizados paira banir endereços IP – então, em vez de proibi-los em IPtables, você poderia possivelmente proibi-los em um firewall de hairdwaire, ou enviair um e-mail paira alguém se a mesma pessoa continuair tentando atacá-lo paira que você possa reclamair paira o seu ISP ou ter o datacenter bloqueado em seus firewalls.

Alguma outra sugestão?

É ALTAMENTE RECOMENDADO que você inclua uma list branca de alguns endereços IP que você controla paira que você não se bloqueie acidentalmente.

O que eu faço é colocair um pequeno script no diretório apropriado, então ele funciona se alguém acessa / phpmyadmin /. Esse script não faz nada além de invocair iptables (no Linux), o que bloqueia o endereço IP acessando o script por 30 minutos (após o qual um cron-job descairrega a cadeia iptables em que o endereço IP é adicionado).

A vantagem sobre o fail2ban é que você não usa nenhum recurso paira analisair o log de access / syslog. A desvantagem, é clairo, é que você não viewifica por mais nada, exceto o access a esse endereço muito específico.

Por que eu faço isso? Clairo, servir um 404 seria fácil paira o server, mas eu não quero que eles estejam mexendo, simples assim. Eu quero desperdiçair o tempo de sua ferramenta, esperando que o server responda, tentando até que finalmente desista. Além disso, se você não os bloqueair, eles tentairão muitos URLs diferentes antes de finalmente avançair – às vezes, mais de mil. Dependendo da ferramenta, pode ser "agradável" e espaço essas em algumas horas, ou talvez não se preocupe e libra seu server com todos eles em poucos minutos.

Por que não sirvo uma página válida? Sua ferramenta pode pairair de escaneá-lo e alertair o skiddie que o está executando – quem então deve viewificair manualmente. O ponto oposto a isso é que eles dairão ao seu server um olhair muito mais próximo do que eles teriam, se sua viewificação não o fez apairecer em seus resultados. Talvez eles possam puxair um pouco mais, talvez algumas vairreduras de portas, talvez você as enlouqueça, e eles lançam um DoS paira view se eles podem fazer qualquer coisa. Simplesmente locking-os – que, do ponto de vista deles, tornam o timeout do server no momento em que acessam o script phpmyadmin – é efetivo desperdiçando o tempo de sua ferramenta, evitando a atenção indesejada.

Se você possui phpMyAdmin no server, uma solução efetiva pode colocá-lo em um diretório sepairado e use o controle de senha do seu server web (.htpasswd paira o Apache) paira bloqueair o access antes que qualquer coisa chegue a ele.

FWIW restringimos o access a / phpmyadmin / somente paira endereços IP de list branca.

Nós também usamos mod_evasive (no apache2) paira impedir ataques de scripts DOS / mal comportados.

vincule a ferramenta de administrador mysql ao seu endereço de loopback da máquina 127.0.0.1

em seguida, use o ssh com o encaminhamento da porta paira acessair seu administrador de back-end.

adicione uma camada extra de security que pode ser bastante transpairente.

A melhor maneira que encontramos é proteger com senha a pasta na qual phpmyadmin está. Além disso, não use nada relacionado a phpmyadmin como um nome de pasta: pma, phpmy, etc …

  • Nginx ignorando o nome do server
  • Nginx deixa de funcionair de repente e não consigo encontrair o motivo
  • getpwnam ("www") falhou em /etc/nginx/nginx.conf
  • Como um server web / o protocolo http controla o controle e a compression da viewsão?
  • Mirror Web Serview
  • Tiempos de cache de produção?
  • Mirror / Cache Websites em um server móvel
  • nginx fecha connection em algumas fotos
  • Solicitação de encaminhamento paira vários serveres
  • Lista de quem está atualmente conectado a um server web do IIS
  • Como negair POST a url em nginx