MySQL - conexão e segurança

1

Eu queria saber se alguém poderia me dizer se há algum potencial calote de segurança que poderia ocorrer conectando-se a um banco de dados sql que não reside em 'localhost', ou seja, via endereço IP?

    
por Warner 14.04.2010 / 18:45

4 respostas

1

Todos os dados contidos em seu banco de dados podem ser comprometidos, assim como potencialmente até mesmo o sistema, se uma vulnerabilidade de segurança desse tipo for descoberta no MySQL.

Geralmente, é melhor não deixar seu banco de dados acessível em um IP publicamente roteável. Se não for possível segregar em uma rede privada, aconselha-se pelo menos impedir o acesso por firewall no sistema local.

Se você filtrar o acesso, gerenciar adequadamente o acesso e atualizar regularmente, poderá minimizar o risco.

    
por 14.04.2010 / 19:41
1

Há duas preocupações de segurança semelhantes a qualquer aplicativo de rede.

  1. Senha - sua senha é difícil de adivinhar?
  2. Sniffing de rede - a rede é segura entre o seu computador e o servidor MySQL? Caso contrário, os dados podem ser detectados. (Se você estiver usando uma versão recente do MySQL, a senha é criptografada, mas os dados não são.) Se isso for uma preocupação, você pode considerar SSL .
por 14.04.2010 / 19:44
0

Eu não sabia se você queria dizer: A - Seu computador pode ser atacado conectando-se a um banco de dados SQL remoto B - É uma boa prática de segurança ter um banco de dados SQL escutando um endereço IP

No caso de A, se você estiver se conectando a um banco de dados SQL com um cliente vulnerável, então sim, você poderá ser atacado.

No caso de B, existem muitas possíveis violações de segurança que podem ocorrer por meio da conexão com um banco de dados SQL remoto.

    
por 14.04.2010 / 21:13
0

Sim, violações ocorrem ao não proteger a conexão com seu banco de dados. Esta é uma questão secuirty de rede mais do que uma questão securty do aplicativo. Assim, essa resposta é totalmente dependente da topografia de sua rede.

Se um segmento da sua rede pode ser acessado por um invasor, você deve se proteger com criptografia. Por exemplo, você tem um indivíduo mal-intencionado que comprometeu uma máquina em sua rede e, em seguida, pode realizar um ataque ARP Spoofing a " Sniff "ou até dispositivos MITM em uma rede comutada. Isso pode ser usado para ver todos os dados que entram e saem do banco de dados ou modificar a resposta do banco de dados para uma consulta específica (como um login!). Se a conexão de rede com o seu banco de dados for uma única conexão torcida rj45 ao seu servidor httpd, todos residindo dentro de um gabinete trancado, então você não precisa se preocupar com um hacker farejando isso. Mas se o seu httpd estiver em uma rede Wi-Fi e se conectando a um banco de dados na China, convém pensar em criptografia.

Você deve se conectar ao seu banco de dados MySQL usando a capacidade SSL integrada do MySQL . Isso garante que todos os dados transferidos sejam altamente protegidos. Você deve criar certificados x509 auto-assinados e codificá-los. Isso é gratuito e você não precisa de uma CA como a Verisign para isso. Se houver uma exceção de certificado, então há um MITM e, portanto, isso impede você de derramar a senha.

Outra opção é uma VPN , e isso é mais adequado se você tiver vários daemons que exigem conexões ponto a ponto seguras.

    
por 15.04.2010 / 02:28