Como posso evitar ataques em minha instalação do SQL Server?

3

No mês passado, notei em meu visualizador de eventos em um servidor SQL muitas auditorias de falhas. Parece um ataque de força bruta de um ip na china tentando fazer login na conta sa que eu desabilitei. Eu bloqueei no firewall da minha rede, mas uma semana depois eu estou recebendo o mesmo ataque de outro ip também baseado na China. Até agora eu bloqueei 6 ips. Existe algo que eu possa fazer para evitar esse ataque? Eu continuo bloqueando ips?

Este servidor precisa estar voltado para a internet porque eu tenho desenvolvedores externos acessando-o. Eu vou olhar para as configurações do firewall. Eu estou usando um cisco asa.

    
por Mark Henderson 21.10.2010 / 22:02

9 respostas

13

A menos que você tenha um bom motivo, não coloque seu servidor SQL no limite de sua rede.

Eu vejo que você acha que precisa de SQL na Internet porque os desenvolvedores precisam de acesso. Isso não é uma boa razão para disponibilizar o SQL para a Internet. Você tem várias opções para permitir que seus desenvolvedores acessem o servidor sem tornar o servidor SQL acessível. Eles poderiam SSH para o servidor e executar comandos SQL via linha de comando. Eles poderiam usar uma VPN para se conectar ao servidor e executar qualquer aplicativo. Você pode até mesmo bloquear o firewall para permitir o acesso apenas de seus desenvolvedores. Muitas opções mais seguras estão disponíveis para você.

Apenas para o registro, meu favorito seria o acesso SSH usando chaves para autenticação. Isso permite mais opções de segurança, e seus desenvolvedores podem usar o SSH para encapsular o servidor, se necessário, com acesso à linha de comando quando não estiver. Você pode proteger o servidor contra os desenvolvedores usando chroot, jail ou apenas permissões antigas

    
por 21.10.2010 / 22:10
4

A resposta é não exponha seu servidor SQL à Internet diretamente.

A outra resposta ao longo destas linhas, que eu votei disse: "A menos que você tenha que", mas eu não concordo com essa parte da resposta:  Se você acha que precisa colocar o servidor SQL na Web diretamente, reprojetar seu aplicativo até não precisar mais fazer isso. Como um mínimo absoluto, se disser que você tem apenas um servidor e ele executa tudo, desative o firewall e não exponha as portas do servidor SQL (ou qualquer outra coisa que você não precise absolutamente) para o mundo externo. / p>

Isso não é apenas uma coisa do SQL Server, ou de uma coisa da Microsoft, ou de uma aplicação web, é o senso comum de segurança básica; Uma das primeiras coisas que você faz para proteger um sistema é minimizar a "superfície de ataque" que os hackers podem "ver".

    
por 21.10.2010 / 23:16
2

Você não deve ter algo como o SQL Server diretamente acessível à rede pública. Se os usuários externos precisarem de acesso, ainda bloqueiem o servidor SQL da rede pública, mas darão acesso aos desenvolvedores por meio de algum tipo de configuração VPN (por exemplo, uma configuração OpenVPN ou tunelamento via SSH) - dessa forma você não obterá conexão bruit-force tentativas de pessoas / código mal-intencionados e você obtém a vantagem adicional de que toda a comunicação entre eles e seu servidor é criptografada (e, com as opções corretas de SSH ou VPN, compactadas, o que poderia fazer uma diferença significativa).

    
por 22.10.2010 / 00:47
1

É essencial não permitir o acesso público ao servidor. Mantenha-o atrás de um firewall ou NAT. Tenho certeza de que alguém poderia te dar uma resposta mais extensa, mas achei que valeu a pena mencionar.

    
por 21.10.2010 / 23:42
0

Se você precisar tornar seu servidor SQL visível, informe ao seu firewall para bloquear tentativas repetidas de falha. Não sei o que você está usando, mas qualquer pacote de firewall decente permitirá que você configure algo nesse sentido.

    
por 21.10.2010 / 22:26
0

Se você não puder fazer o firewall, mude a porta do padrão de 1433 para outra coisa - a maioria dessas tentativas será automática e não considerará tentar portas diferentes.

    
por 21.10.2010 / 22:33
0

Eu concordo aqui, se a caixa SQL não precisar ser externa, desative-a ou adicione uma interface de rede secundária, chame-a para serviços sql na rede de back-end e limite o acesso no adaptador de interface de internet.

    
por 21.10.2010 / 22:36
0

Existem dois modos de autenticação usados no SQL Server: autenticação do Windows e modo misto (permite a autenticação do Windows e a autenticação do SQL Server) O primeiro modo é menos vulnerável a ataques de força bruta, pois é provável que o invasor execute um bloqueio de login (o recurso de Política de bloqueio de conta) após um número finito de tentativas de ataque. Todo ambiente de produção, se estiver usando o modo de Autenticação do Windows, deve utilizar o recurso de política de bloqueio, já que impossibilita ataques de força bruta

Quando se trata de vulnerabilidade de ataque de força bruta de autenticação do SQL Server, a situação não é tão favorável. A Autenticação do SQL Server não possui recursos que permitam detectar quando o sistema está sob um ataque de força bruta. Além disso, o SQL Server é muito responsivo quando se trata de validar as credenciais de autenticação do SQL Server. Ele pode lidar facilmente com tentativas de login repetidas, agressivas e de força bruta sem um desempenho geral negativo que possa indicar tais ataques. Isso significa que a Autenticação do SQL Server é um alvo perfeito para a quebra de senhas por meio de ataques de força bruta

Para proteger seu SQL Server contra ataques de força bruta, considere o seguinte:

• Não use o modo Autenticação do SQL Server - force o invasor a atingir o bloqueio de login por meio da Autenticação do Windows

• Caso você precise usar o modo de Autenticação do SQL Server, desative ou remova o logon de SA - dessa forma, o invasor deve adivinhar e emparelhar o nome de usuário e a senha

    
por 01.10.2013 / 13:03
0

Você pode bloquear o sql com um firewall, ele não precisa de conexão com a internet, ele está se comunicando com o apache que tem toda a conexão à internet que ele precisa, sugiro instalar o netlimiter, e você pode fazer backup dos arquivos e fazer uma verificação de vírus. pref com varredura de boot avast.

Boa sorte.

PS Eu não recomendo qualquer compilação em janelas de firewall do sistema operacional Apple ou Linux.

    
por 05.07.2014 / 23:14