phpMyAdmin
 sql >> Base de Dados >  >> Database Tools >> phpMyAdmin

Como proteger o phpMyAdmin


A maior ameaça é que um invasor possa aproveitar uma vulnerabilidade como; passagem de diretório ou usando SQL Injection para chamar load_file() para ler o nome de usuário/senha em texto simples no arquivo de configuração e, em seguida, faça o login usando phpmyadmin ou pela porta tcp 3306. Como pentester, usei esse padrão de ataque para comprometer um sistema.

Aqui está uma ótima maneira de bloquear o phpmyadmin:
  • O PhpMyAdmin não tem proteção forte contra força bruta, então você deve usar uma senha longa gerada aleatoriamente.
  • NÃO PERMITIR LOGINS ROOT REMOTOS! Em vez disso, o phpmyadmin pode ser configurado para usar "Cookie Auth" para limitar qual usuário pode acessar o sistema. Se você precisar de alguns privilégios de root, crie uma conta personalizada que possa adicionar/descartar/criar, mas não tenha grant ou file_priv .
  • Remover file_priv permissões de cada conta. file_priv é um dos privilégios mais perigosos no MySQL porque permite que um invasor leia arquivos ou faça upload de um backdoor.
  • Endereço IP da lista de permissões que têm acesso à interface do phpmyadmin. Aqui está um exemplo de reulset .htaccess:
Order deny,allow
Deny from all
allow from 199.166.210.1

  • Não tenha um local de arquivo previsível como:http://127.0.0.1/phpmyadmin . Scanners de vulnerabilidade como Nessus/Nikto/Acunetix/w3af irão verificar isso.

  • Firewall fora da porta TCP 3306 para que ela não possa ser acessada por um invasor.

  • Use HTTPS, caso contrário, dados e senhas podem vazar para um invasor. Se você não quiser desembolsar os US $ 30 por um certificado, use um autoassinado. Você o aceitará uma vez e, mesmo que tenha sido alterado devido a um MITM, você será notificado.