Site invadido, procurando conselhos de segurança [duplicados]

11

No último final de semana, o site da minha empresa foi invadido.

Eles fizeram a coisa mais legal de fazer isso em uma noite de sexta-feira, então só notamos o ataque na manhã de segunda-feira. O engraçado é que mudamos do Windows para o Linux recentemente porque era mais estável e seguro. Vai saber. E sim, nos colocamos na lista negra do Firefox e do Chrome.

Como não sou especialista em Linux, estou procurando conselhos sobre como evitar problemas como esse no futuro. Que medidas você toma para proteger seus sistemas? Parece que tínhamos senhas fracas, mas o Linux não deveria bloquear a conta depois de alguns logins com falha? Eles tentaram mais de 20 combinações ...

Além disso, estou procurando uma ferramenta (ou serviço) semelhante ao pingdom, mas aplicada à segurança. Se meu site já foi invadido, me avise. Isso é uma coisa dessas? Um monitor de hackers? :)

Outra coisa, como você notifica seus clientes sobre esses problemas? Você apenas ignora e espera que ninguém tenha notado? E-mail explicando o que aconteceu?

* postar como anônimo para evitar mais exposição ruim à minha empresa, o que já é ruim ...

    
por Community 03.07.2009 / 02:01

11 respostas

2

No que diz respeito a um serviço semelhante ao pingdom, mas aplicado à segurança, sugiro o monitor de integridade de rede gratuito da Sucuri.

O que isso faz? Ele monitora seu site (e domínios) em tempo real e avisa se eles estão sempre desfigurado, na lista negra, hackeado, etc. Link: link

Como o nome indica, ele monitora a integridade da sua presença 'internet'.

* disclaimer: Eu desenvolvi isso.

    
por 03.07.2009 / 03:25
23

Um sistema operacional não é "estável e seguro". Uma infraestrutura bem configurada e bem administrada pode ser mais segura do que uma que não seja, mas a segurança não é booleana. Você não pode "comprar segurança" ou "instalar segurança" usando um determinado produto / tecnologia.

Você não é um "especialista em Linux", portanto, faz sentido que você precise contratar / contratar alguém que possa configurar bem seus servidores, do ponto de vista da segurança. Não é algo que você pode fazer e "ser feito". Patches estão sendo lançados o tempo todo para vulnerabilidades e bugs recém-descobertos. Se você não tiver um funcionário encarregado de acompanhá-lo, realmente precisará considerar a inscrição em algum tipo de serviço "gerenciado" para manter seus computadores servidores. Essa é uma preocupação constante e precisa ser incluída no orçamento / TCO do sistema como um todo.

Existem "monitores hackers", até certo ponto. Sistemas de detecção de intrusão (IDS), sistemas de prevenção de intrusão (IPS), etc, preenchem esse nicho. É uma corrida armamentista, no entanto. Você não pode simplesmente comprar um produto IDS / IPS de prateleira, pagar alguém para colocá-lo, depois sentar e se sentir seguro. Assim como manter o software do sistema operacional e o software aplicativo corrigidos, a infra-estrutura do "monitor de hackers" também deve ser atualizada.

Você precisa falar com um advogado. Você pode ter clientes localizados em lugares onde você é obrigado a divulgar tais ocorrências por lei. Mesmo que você não seja, com certeza me parece inseguro não permitir que seus clientes saibam se seus dados foram colocados em risco. Há o dano ao "seu bom nome" agora ao divulgar o hack, mas há uma multiplicidade desse dano se for revelado mais tarde que você tentou encobri-lo - especialmente se você infringir a lei ao fazê-lo.

Material prático:

Suas máquinas invadidas são lixo. Eles precisam ser recarregados a partir de um backup em bom estado ou, melhor ainda, recarregados de binários limpos do SO e redigitados com dados. Isso é como "limpeza de malware", exceto pior, porque é muito mais provável que seu adversário seja um ser pensante em vez de um software estúpido (embora você possa ter sido hackeado por um "bot"). A chance de que haja "portas dos fundos" em seus servidores é real.

Os dados nos computadores servidores devem ser considerados como tendo sido divulgados ao público. Mesmo que não seja agora, poderia ser.

Quaisquer credenciais para outros computadores armazenados nos computadores invadidos são públicas. Comece a colocar essas senhas em outros computadores alterados AGORA e verifique se os outros computadores estão intactos. (Alguém mais usa o Tripwire? Isso certamente seria legal nesta ocasião ...)

Você tem uma bagunça. Lide bem com isso e você sairá melhor. Lide mal com isso e, da próxima vez, talvez você não tenha uma empresa.

No futuro, você deve usar autenticação strong e protocolos de gerenciamento criptografados (SSH, autenticação baseada em chave pública). Eu já sugeri que você obtenha um "especialista em Linux", mesmo que seja apenas em contrato, para você começar a seguir o caminho certo. Eu não posso encorajar isso o suficiente. Você poderá ver, com essa violação, como isso teria sido "pago por si".

Todas as coisas comuns se aplicam:

  • Não execute serviços desnecessários.
  • Desativar credenciais padrão.
  • Siga o princípio do menor privilégio.
  • Testou backups off-site e off-site.
  • Saiba quais são os requisitos legais para: divulgar a violação.
  • Mantenha seus sistemas / aplicativos atualizados.
por 03.07.2009 / 02:22
19

Parece que temos senhas fracas ...

... mudamos do Windows para o Linux recentemente porque era mais estável e seguro. Vai a figura.

As senhas fracas são independentes da plataforma.

O Linux é mais flexível que o Windows em muitos cenários e, portanto, pode ser mais seguro quando surgem determinadas situações. Mudar do Windows para o Linux sem nenhum motivo real, especialmente quando você não está familiarizado com o ambiente, é uma má chamada. Se você executar um servidor voltado para a Internet e não entender como os serviços nesse servidor funcionam, seja o Windows, o Solaris, o RHEL ou o BSD, você está solicitando problemas.

Quanto a como contar aos seus clientes, se algum dos seus dados foi exposto ou mesmo POTENCIALMENTE exposto, AT ALL, chame-os o mais rápido possível. Sem e-mail, sem esperança de que isso desapareça. Use seu telefone que está na sua mesa.

Além das repercussões legais, você estava fornecendo um serviço para eles que, sem dúvida, estavam usando para fornecer serviços para os outros de alguma forma. Você deve a eles divulgar qualquer possível violação de dados para que eles possam ajustar seu fluxo de trabalho de acordo e notificar qualquer pessoa a jusante deles que isso possa afetar.

    
por 03.07.2009 / 02:43
14

O Linux como qualquer plataforma é tão seguro quanto as pessoas que administram os sistemas. Se você tivesse mais experiência com o Windows, mudar para o Linux provavelmente não seria a melhor ideia. Você pode configurar o Windows para ser tão seguro quanto o Linux, desde que você tome as medidas corretas para proteger o ambiente, que inclui firewalls entre a Internet pública e sua rede interna, e proteja as VPNs para conectar da sua casa à rede interna. >

Dependendo do nível da violação, determinará o que você informa aos seus clientes. Se nenhum dado do cliente foi coletado, você pode fornecer aos seus clientes apenas algumas informações básicas sobre o que aconteceu. No entanto, se os dados do Cliente foram acessados, você agora tem algumas leis de notificação de estado para lidar, dependendo do estado em que sua empresa se encontra e dos estados em que seus clientes estão.

    
por 03.07.2009 / 02:21
11

The funny thing is that we switched from Windows to Linux recently because it was supposed to be more stable and secure. Go figure.

Vai a figura, de fato. Você mudou para um sistema em que você tem pouca experiência, e você foi mordido na bunda. A mesma coisa aconteceria se você comprasse um carro esportivo de alta potência depois de pedalar toda a sua vida - pode ser mais poderoso, mas nas mãos erradas também é perigoso.

It seems we had weak passwords, but shouldn't Linux block the account after a few failed logins? They tried more than 20 combinations...

Ele pode ser facilmente configurado para isso, por meio de complementos como denyhosts . Saber instalar essas coisas é um daqueles bits em que ser um especialista nos sistemas que você está usando é útil.

In addition to that, I am looking for a tool (or service) similar to pingdom but applied to security. If my site is ever hacked, alert me. Is that such a thing? A Hacking monitor? :)

Existem alguns aplicativos de detecção de intrusão lá fora, mas novos métodos de quebrar um servidor aparecem o tempo todo. Nada será 100% confiável na detecção de intrusões bem-sucedidas.

Another thing, how do you notify your clients about such issues? Do you just ignore and hope no one noticed? Email explaining what happened?

A honestidade lhe servirá melhor a longo prazo. Empresas que são honestas, proativas e comunicativas contra tempestades mais desagradáveis do que empresas que escondem coisas de seus clientes. As interrupções podem ser evitadas, mas não se as pessoas pagantes se sentirem enganadas.

    
por 03.07.2009 / 02:53
6

A invasão de seu site provavelmente teve muito pouco a ver com o sistema operacional subjacente e mais a ver com o código em execução no seu site. Tudo o que precisamos é de uma única injeção de SQL e você é o histórico.

Como você estava na lista negra do Google, presumo que alguém tenha conseguido configurar um script mal-intencionado em seu servidor. Nesse caso, você pode tentar algo como mod_security , não é fácil configurar, mas vale a pena tentar. No entanto, é de suma importância garantir que seu código esteja livre desses tipos de vulnerabilidades.

Por outro lado, se era uma vulnerabilidade em seu sistema operacional, você pode tentar mudar as distribuições para algo destinado a servidor web, como FreeBSD, CentOS ou RHEL, desde que você não esteja usando um. Você pode querer considerar fortalecer o SELinux ou adicionar algum tipo de Sistema de Detecção / Prevenção de Intrusão.

Em muitos lugares, é um requisito legal notificar seus clientes sobre violações de segurança se informações pessoais forem potencialmente comprometidas. Você pode querer investigar isso.

Mais alguns detalhes seriam úteis para responder sua pergunta mais à sua situação específica.

Ehtyar.

    
por 03.07.2009 / 02:19
6

Outros já cobriram a maioria dos pontos importantes. Mas, para acrescentar ao que eles disseram, a segurança é tão strong quanto o elo mais fraco da cadeia. Isso é quase sempre o elemento humano envolvido.

Assumindo que este foi um ataque ssh de força bruta, se ele apenas levou 20 tentativas, suas senhas eram praticamente inexistentes. Esses ataques são quase sempre ataques automatizados e são muito fáceis de bloquear com as seguintes regras de iptable.

sudo iptables -A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH  
sudo iptables -A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 3 --rttl --name SSH -j DROP

Estas regras permitirão 3 conexões ssh de um endereço IP em eth0 em 60 segundos e então bloquearão o endereço IP por 60 segundos. Isso normalmente é suficiente para fazer com que o ataque automatizado passe para outro host.

Você precisará garantir que essas regras de iptable sejam restauradas quando você reinicializar. Diferentes distribuições têm diferentes maneiras de fazer isso, ou então nos permitem saber qual distro você está executando e alguém pode fornecer essas informações.

    
por 03.07.2009 / 02:44
6

Como um administrador do Windows que usa o Linux para determinados trabalhos, eu gostaria apenas de acrescentar que você cometeu um erro fundamental. Você trocou o sistema operacional por causa da reputação de estabilidade e confiabilidade do Linux e esperava que ele assumisse sua responsabilidade. Na minha máquina de teste demora quase 12 horas para quebrar minha senha atual do Windows. Eu não testei minha senha do Linux, mas é igualmente complexa (mas não é a mesma). O ponto é que eu não tomo medidas menores simplesmente porque o sistema operacional é mais seguro. No mínimo, sou mais cuidadoso com o Linux porque tenho menos experiência com ele e, portanto, tenho mais chances de ignorar alguma coisa.

    
por 03.07.2009 / 05:06
1

Sempre gostei do conselho: fechar todas as portas, não deixar nenhum tráfego passar, de qualquer forma. Então, conforme necessário, abra gradualmente apenas as portas necessárias e nada mais.

Embora isso não seja necessariamente para mantê-lo seguro, ele o manterá familiarizado com seu sistema e garantirá que apenas o mínimo esteja aberto.

    
por 12.07.2009 / 21:53
0

Como você não especificou o tipo exato de "hack", acho que posso assumir que você foi comprometido pela força bruta do SSH. Aqui estão algumas dicas gerais:

  • Use o SELinux ou o AppArmor para restringir o acesso por processo, especialmente o apache e o mysql
  • Use mod_evasive e mod_security no apache
  • Não execute o SSH na porta padrão
  • Desative o login root por meio do ssh e use uma senha de root muito strong (como: 6uF3ceDa7u, bRusteth6F, breGUfE4aT, 7Ub8R9Then)
  • Não permitir login de senha ( use as teclas ) -OU- use ssh-guard, listas negras e regras iptable para parar o acesso repetitivo
por 03.07.2009 / 02:21
0

Eu postei alguns comentários sobre os vários conselhos específicos que foram oferecidos para tentar evitar futuros ataques. Eu me encontrei em uma situação semelhante há pouco mais de um ano, e certamente analisar o ataque para melhorar sua configuração é importante, mas agora você deve estar preocupado com os servidores que você está executando. Como você sabe que pode confiar em alguma coisa neles? Se você não pode, então você precisa limpá-los.

    
por 03.07.2009 / 03:32