Ciberataques: 7 lições do MilitarySingles.com

Author Photo
8:00 am - 24 de maio de 2012

Quer impedir que hackers roubem dados sigilosos sobre seus usuários? Então você deve criptografar as senhas armazenadas, passar todos os conteúdos carregados pelos usuários por um rigoroso controle de segurança e promover mecanismos para detectar quando uma tentativa de violação está em andamento.

Essas são apenas algumas das conclusões destacadas em um novo estudo do fornecedor de firewall para web Imperva, que analisa o ataque acorrido em março de 2012 ao site MilitarySingles.com por parte do LulzSec. Em última análise, o grupo hacktivista divulgou informações sigilosas sobre 170 mil membros do site de namoro online.

Como os operadores de website podem proteger seus sites de hackers? Comece por aqui:

1. Obtenha detecção de violação

Inicialmente, o MilitarySingles.com não iria admitir – ou talvez não sabia – que tinha sido hackeado, que os delatores levaram à alteração de dados no site e, em seguida, publicaram uma versão decifrada da sua base de dados do usuário. Mas não espere que os hackers digam quando você foi atacado, especialmente, se é por razões comerciais ou econômicas, aconselhou Tal Be’ery, pesquisadora de segurança web da Imperva. “Um ataque de negação de serviço é visível, você pode ver que o site não está disponível”, afirma a especialista. “Mas quando todos os dados são roubados – o que é um problema muito mais grave e sério – o hacker pode fazê-lo sem deixar qualquer vestígio, se você não tiver o equipamento certo.”

2. Os ataques DDoS continuam a ser um último recurso

Um estudo recente da Imperva sobre um ataque anônimo contra o site do Vaticano constatou que embora hacktivistas lançam ataques do tipo DDoS, muitas vezes, essa não é sua escolha de ataque em primeiro lugar. “Hacktivistas preferem cortar sites com as vulnerabilidades das aplicações web, porque se há vulnerabilidades é muito mais fácil do que criar um ataque de negação de serviço”, avalia Be’ery. “Você poderia dizer que um ataque de negação de serviço é o último recurso de um atacante, ele só é usado quando o grupo não encontrou nenhuma maneira mais fácil de invadir o servidor.”

3. Não confie na funcionalidade Web 2.0

Com o MilitarySingles.com, ?atacantes abusaram de um mecanismo de upload de arquivos que só devia ser utilizado para fotos e foram capazes de fazer upload de um arquivo executável para dominar o servidor”, disse. “Você não pode imaginar um site de namoro sem imagens, então você deve incluir essa funcionalidade, mas você também deve fazê-lo com segurança”, avalia Be’ery. “Web 2.0 é tudo sobre o compartilhamento de conteúdo do usuário, mas quando você permite que usuários façam upload de dados arbitrários em seus servidores Web, este é um problema, porque normalmente um arquivo em seu servidor é algo que é confiável.” E, não menos pelo sistema operacional do servidor.

4. Separe os arquivos enviados

Com um servidor tendendo a confiar em arquivos armazenados no servidor, faça igual ao Facebook e o Google: mantenha o conteúdo carregado pelo usuário longe de servidores críticos. “Você pode ver que as imagens no Facebook não são servidas pelo Facebook.com, mas por um nome de domínio diferente, e há diferentes servidores, permissões e ambientes”, conta.

5. Valide todo conteúdo fornecido pelo usuário

Na avaliação de arquivos, não basta confiar em mecanismos de validação do cliente. No caso de MilitarySingles.com, por exemplo, “o site estava tentando validar o arquivo enviado com a foto, mas foi usado o mecanismo do lado do cliente “, explicou Be’ery. Esses controles – tipicamente tratados usando JavaScript – são úteis para a verificação de erros e ajudam os usuários a avisar se eles estão carregando o tipo errado de arquivo, mas um invasor pode facilmente derrotar tal mecanismo, de acordo com a especialista. Da mesma forma, faça todas as verificações de segurança no lado do servidor também.

6. Aplique hashing de senha modernas

Depois de explorar o site MilitarySingles.com, os atacantes acessaram um banco de dados contendo as senhas dos usuários, que foram criptografadas usando o algoritmo MD5. “Elas não foram armazenadas em texto sem formatação, mas MD5 é um algoritmo ultrapassado nos dias de hoje – conhecido por ser quebrado desde 2004?, considera Be’ery. “Então hash é uma boa maneira de armazenar as senhas, mas você precisa usar algoritmos atualizados … e SHA-256 é um bom candidato.”

7. Senhas criptografadas

O site também falhava ao não criptografar suas senhas, o que teria tornado ainda mais difícil de decifrar. “Salt [criptografar] significa usar uma sequência arbitrária que você pode concatenar a senha antes de hash, e isso realmente cria uma senha única”, disse Be’ery. “Caso você não use qualquer criptografia, isso significa que se um usuário utilizar qualquer senha popular, como ‘123456 ‘… então todas as senhas ‘123456’ vão acabar com o mesmo hash. Isso facilita para um atacante detectar e crackear.?

Newsletter de tecnologia para você

Os melhores conteúdos do IT Forum na sua caixa de entrada.