Entenda como um site sai do ar por se defender de ataques de hackers
Se você tem alguma dúvida sobre segurança da informação (antivírus, invasões, cibercrime, roubo de dados, etc), vá até o fim da reportagem e utilize a seção de comentários. A coluna responde perguntas deixadas por leitores todas as quartas-feiras.
Uma reportagem do G1 mostrou que o site da Rio+20 ficou fora do ar por quase 9 horas devido a medidas que a página adotou para se defender de indivíduos que tentavam sobrecarregar a página de acessos. Mas por que um site pode sair do ar para algumas pessoas por conta de uma defesa?
Defender-se de um ataque de negação de serviço – que tira um site do ar por meio de sobrecarga – não é uma tarefa divertida, e às vezes pode ser impossível sem o auxílio de outras redes.
A matemática é simples: se um site tiver uma conexão de 10 Mbps com a internet e os acessos precisaram de, por exemplo, 12 Mbps, ninguém mais vai conseguir acessar o site. Então o site precisa de ajuda para lidar com o tráfego falso extra para receber apenas a conexão legítima. É um problema semelhante ao dos antivírus, que precisam saber qual arquivo é bom e qual é ruim.
Tabela mostra site do Rio+20 off-line, mas só em algumas cidades. (Foto: Reprodução)
Na internet, todos têm provedores ou interconexões. Embora você tenha apenas uma única conexão com a internet, o seu provedor provavelmente tem várias e em velocidades diferentes. Por exemplo, seu provedor pode ter uma interconexão mais rápida com um provedor dos Estados Unidos do que com uma rede que chega até o Japão. Pode haver diferenças dentro do próprio país, inclusive.
Lembre-se que a internet é a conexão de várias redes diferentes. Essa conexão entre as redes ocorre muitas vezes em pontos de troca de tráfego (PTT). O site PTT.br reúne algumas informações sobre os PTTs brasileiros, mostrando quem participa deles e o volume de tráfego.
Ataques de negação de serviço sobrecarregam um alvo com solicitações falsas. (Foto: Arte/G1)
Dito isso, voltamos ao site que tem apenas uma conexão de 10 Mbps e está sofrendo um ataque de 12 Mbps. O que o site pode fazer é pedir ajuda ao provedor de acesso, que tem uma conexão muito mais rápida. O provedor poderá fazer um bloqueio simples diretamente nos pontos mais extremos da rede, nos quais a velocidade é maior.
Se isso não está claro para você, imagine um sistema de distribuição de água: a caixa d’água precisa ter condições de abastecer o sistema ou não haverá nada para ser distribuído – o provedor é caixa d’água e as torneiras são os vários clientes. Essa analogia tem várias falhas, mas é boa para visualizar o que acontece.
Se o bloqueio contiver parte do ataque, nem que seja apenas 7 Mbps dos 12 Mbps, chegará apenas 5 Mbps do ataque ao site alvo. Logo, o site ainda terá 5 Mbps livres para atender os internautas verdadeiros.
O problema é que o bloqueio não é perfeito. Exceto em ataques muito simples, os endereços de IP envolvidos são muitos, impedindo que o provedor consiga bloquear um a um. Isso obriga o provedor a muitas vezes a bloquear um país inteiro de acessar a página. Quem for acessar o site do país bloqueado terá problemas, mesmo que outros visitantes estejam acessando o site normalmente. Como um antivírus, o sistema pode identificar uma conexão legítima como falsa e bloqueá-la incorretamente.
Em uma proteção mais sofisticada, um provedor usa um sistema que avalia cada conexão individualmente. Nessa situação, apenas as conexões realmente indesejadas são bloqueadas. Mas essa tecnologia requer que o ataque seja cuidadosamente analisado e também que o provedor disponha de um sistema de proteção capaz de lidar com o grande volume de dados. Se isso não ocorrer, uma “fila” será gerada e o site alvo ficará lento ou até inacessível.
Null routeSe o ataque for tão agressivo que nem mesmo o provedor tiver condições de segurar o ataque, entra em cena um recurso chamado de “null routing”. Por exemplo, se o site de 10 Mbps estiver sendo atacado com uma sobrecarga de 1 Gbps, ou seja, 1.000 Mbps*, isso não irá apenas derrubar o site, mas pode prejudicar outros clientes do provedor, e mesmo o bloqueio pode se tornar impraticável.
Nesses casos, o provedor adota o “null route”. É bastante simples: o provedor configura sua rede de tal maneira que o site alvo deixa de existir. Ou seja, o provedor anula a “rota” para o endereço IP atacado (“null”, nulo; “route”, rota). A técnica também é chamada de “blackhole filtering” ou “filtro de buraco negro”.
O null route é extremamente rápido e para o ataque antes que ele chegue na rede interna do provedor. Ele também pode ser facilmente configurado nos provedores “acima” do provedor, caso seja necessário. Mas o site ficará completamente fora do ar. O “buraco negro” também pode ser feito com uso de um protocolo chamado BGP, que torna o alvo inexistente em todos os provedores da internet.
A defesa ideal
Os mecanismos mais avançados de proteção contra negação de serviço hoje envolvem o uso de uma rede que faz a intermediação entre o ataque e o site alvo. Essa rede “limpa” os acessos de diversas formas – cada fornecedor de serviço tem técnicas próprias – para entregar ao site alvo apenas o tráfego legítimo.
Essa rede de defesa é normalmente distribuída ao redor do mundo, muitas vezes usando um protocolo chamado anycast no qual vários computadores compartilham um mesmo endereço IP. Isso é bom porque em muitos casos os ataques partem de computadores domésticos que foram infectados. O ataque fica fragmentado – todos pensam que estão acessando o mesmo IP, mas na realidade são máquinas diferentes, em redes diferentes. Dessa forma, é mais fácil lidar com vários pequenos ataques ao redor do mundo.
No entanto, nem sempre essa infraestrutura está disponível para os sites atacados. E a alternativa acaba sendo um bloqueio rudimentar ou um null route, que inevitavelmente vão tornar a página inacessível, pelo menos para algumas pessoas.