Como posso combater todos esses ataques de força bruta?

5

Eu tenho 3 servidores dedicados, todos rodando o CentOS que estão fisicamente localizados no Canadá.

No servidor mais recente, o cPHulk começou a detectar (e a lista negra) tentativas de login malsucedidas. Começou o dia em que o servidor foi colocado online. Desde então, recebo de 15 a 30 e-mails diariamente do cPHulk, informando que houve um "grande número de tentativas de login com falha".

Notei que todas as tentativas estavam vindo da China, então eu instalei o csf e bloqueei totalmente a China. Alguns dias depois, os ataques voltaram, mas de diferentes países. Até agora eu bloqueei quatro países por desespero, mas sei que isso não é uma solução legítima. Agora eles estão vindo de países que não posso me permitir bloquear porque posso esperar tráfego legítimo desses países.

Também estou recebendo ataques de IPs que não parecem estar associados a um país, como nesta captura de tela:

Não estou preocupado que eles consigam adivinhar a senha, pois a senha que uso é muito strong.

Então, minhas perguntas são: por que eles estão segmentando meu servidor e como eles o encontraram tão rapidamente? Como posso atenuar essas tentativas de login sem bloquear países inteiros? E onde está esse IP na captura de tela? Meu único palpite é que, de alguma forma, recebi um IP com uma reputação terrível, mas minha experiência e conhecimento de administrador de servidor é um pouco limitada, então nem sei a plausibilidade disso.

    
por Brian 15.06.2015 / 17:38

3 respostas

9

Como Michael Hampton disse, eles fazem isso para todos. Seus scripts detectaram um endereço IP escutando em uma porta e estão lançando nomes de usuários e senhas para ver se há algo errado. Este é um mapa de ataques ao vivo.

Se os e-mails incomodarem você, você poderá colocar na lista de permissões os IPs de login permitidos e enviá-lo por e-mail quando alguém fizer login em um site que não esteja na lista de permissões.

Quanto ao IP na captura de tela, 0.42.0.0 :

The address 0.0.0.0 may only be used as the address of an outgoing packet when a computer is learning which IP address it should use. It is never used as a destination address. Addresses starting with "0." are sometimes used for broadcasts to directly connected devices.

If you see addresses starting with a "0." in logs they are probably in use on your network, which might be as small as a computer connected to a home gateway.

This block was assigned by the IETF, the organization that develops Internet protocols, in the Standard document, RFC 1122, and is further documented in the Best Current Practice document RFC 6890. IANA is listed as the registrant to make it clear that this network is not assigned to any single organization.

These documents can be found at: http://datatracker.ietf.org/doc/rfc1122 http://datatracker.ietf.org/doc/rfc6890

    
por 15.06.2015 / 17:43
3

Estou surpreso que ninguém tenha inventado isso, mas uma maneira drástica de se livrar desses ataques muito comuns de força bruta é montar um daemon com porta batendo como knockd . Assim, a menos que o atacante varra sua máquina com uma sequência específica de portas na ordem correta, ela nem encontrará uma porta SSH aberta. Para usuários legítimos, muitos clientes SSH suportam isso e são capazes de acionar a seqüência de portas correta antes de se conectarem ao servidor ssh.

Mas, obviamente, a autenticação não trivial com uma cadeia fail2ban em execução e tempos de localização e proibição adequados é suficiente em quase todos os casos.

    
por 17.06.2015 / 12:30
-3

Se for apenas sobre sshd - veja, por exemplo aqui link .

Preciso usar o nome de usuário e a senha, não as chaves. Para ser mais seguro, inicio o sshd em uma porta não padrão, que parece atrapalhar o > 99% ou mais de ataques. Em seguida, defina LoginGraceTime em suas configurações de sshd, digamos 10 Isso significa que, após três tentativas malsucedidas, a próxima tentativa só poderá ser feita após 10 segundos , o que dará uma tentativa de autenticação 10 segundos antes do fechamento a conexão. Então, a força bruta não é mais que forceful:) .Também certifique-se de definir PermitRootLogin no .

    
por 15.06.2015 / 17:56