Um evento de negação de serviço (DoS) é um ciberataque em que hackers ou cibercriminosos procuram tornar uma máquina host, serviço online ou recurso de rede indisponível para os usuários pretendidos. Os ataques de negação distribuída de serviço (negação de serviço distribuída, DDoS) podem ser o tipo mais conhecido de incidente de hacking – os ataques GitHub de 2018 e Dyn DDoS de 2016 são os mais proeminentes – mas existem muitos outros tipos de ataques de negação de serviço que não envolvem necessariamente a abordagem distribuída ou de botnet. Em praticamente todos os casos, entretanto, os eventos de negação de serviço são caracterizados pela inundação da máquina ou serviço alvo com tráfego de entrada a ponto de os recursos de processamento ou de largura de banda ficarem sobrecarregados e colocados off-line.
Nos ataques convencionais de negação de serviço, o hacker transmite múltiplas solicitações à máquina ou serviço alvo com endereços de protocolo de Internet (IP) de retorno fictícios. Quando o servidor tenta autenticar esses endereços, ele encontra uma onda de respostas de códigos de erro, desencadeando uma cadeia recorrente de tráfego SMTP que pode saturar rapidamente o servidor. Da mesma forma, com um ataque Smurf, o hacker transmitiria pacotes para vários hosts com um endereço IP falsificado pertencente a essas máquinas alvo. Quando as máquinas host receptoras respondem, elas efetivamente se inundam com o tráfego de pacotes de resposta.
Em uma inundação SYN, um invasor aproveita o processo TCP 3-Way Handshake (SYN, SYN-ACK, ACK) para colocar um serviço offline. No handshake de 3 vias, o servidor A iniciaria uma mensagem de solicitação TCP SYNchronize para o servidor B. Ao receber a solicitação, o host B (a máquina de destino) envia um pacote SYNchronize-ACKnowledgement de volta ao servidor A. É neste ponto que a negação de ataque de serviço ocorre. Em uma troca legítima para estabelecer uma conexão de soquete TCP, o próximo passo seria o host A enviar uma mensagem ACKnowledge de volta ao host B, mas quando o hacker que controla o host A impede que isso aconteça, o handshake não pode ser concluído. O resultado é que o host B possui uma porta conectada que não está disponível para solicitações adicionais. Quando o invasor envia solicitações repetidas dessa natureza, todas as portas disponíveis no host B podem desligar rapidamente e ficar indisponíveis.
Inundações SYN, ataques de banana e outros tipos de hacks DoS convencionais ainda estão em uso hoje – e, claro, os ataques DDoS alimentados por botnets continuam sendo uma ameaça constante. Mas hackers mal-intencionados ampliaram nos últimos anos o número de máquinas e serviços que visam e expandiram consideravelmente a superfície de ameaças. Cada vez mais, as organizações estão sendo alvo de ataques de “degradação de serviço” de menor intensidade, que infligem lentidão dispendiosa nos serviços sem colocar os recursos totalmente off-line. Esse método de ataque tem se tornado cada vez mais comum à medida que mais e mais organizações passaram a contar com Amazon Web Services (AWS) e ofertas de nuvem semelhantes para potencializar suas operações na web.
Quando um grande varejista, provedor de serviços financeiros, marca de consumo ou empresa comercial semelhante hospeda seu website na AWS, Microsoft Azure ou outro operador de nuvem, o acordo será regido por um Acordo de Nível de Serviço. Com efeito, o operador de nuvem, por um determinado preço, promete disponibilizar os recursos de processamento, largura de banda e infraestrutura de suporte necessários para que aquele site suporte X quantidades de tráfego web, onde X seria medido como gigabytes de dados, número de tráfego de varejo transações, horas de tempo de atividade e métricas relacionadas. Se as cargas de tráfego excederem os níveis acordados, o que seria positivo se o tráfego fosse legítimo, o proprietário do site seria cobrado a uma taxa mais elevada. Esse processo geralmente é totalmente automatizado, como acontece com o Amazon CloudWatch, que possui recursos de escalonamento automático para aumentar ou diminuir dinamicamente os recursos de processamento conforme necessário.
Como se pode imaginar, os maus atores podem injetar-se nessas relações, direcionando tráfego ilegítimo para um site alvo e facilmente aumentando o custo de fazer negócios para uma organização alvo. Servidores “zumbis” pulsantes que enviam rajadas de tráfego intermitentes são frequentemente usados nesse tipo de ataque. Dado que as cargas de tráfego em questão são ocasionais e não obviamente provenientes de uma fonte maliciosa, assemelham-se muito a tráfego legítimo, o que significa que pode ser extremamente difícil para o pessoal da Cibersegurança descobri-las e impedi-las.
Outro conjunto de ferramentas usado neste tipo de incidente de negação de serviço ou degradação de serviço são os chamados aplicativos “stresser”, que foram originalmente projetados para ajudar os proprietários de sites a identificar pontos fracos em sua infraestrutura da web. Fáceis de obter e simples de usar, esses aplicativos, incluindo o WebHive, podem ser instalados em várias instâncias de nuvem para criar recursos DDoS formidáveis. Coordenadas dessa forma, essas ferramentas de ataque podem deixar grandes sites comerciais off-line por longos períodos.
Os ataques de negação de serviço mudaram e mudaram ao longo dos anos, mas os danos causados continuam a aumentar. Uma pesquisa do Ponemon Institute com grandes empresas de vários setores da indústria descobriu que uma empresa típica sofre quatro incidentes de negação de serviço anualmente e que o custo total médio por ano para lidar com DoS é de aproximadamente US$ 1,5 milhão. Implementar uma arquitetura de segurança que permita detectar, prevenir e responder a ataques DoS é uma etapa crítica em qualquer programa eficaz de Cibersegurança.