Devemos estar sempre atentos aos diferentes ataques de computador aos quais estamos expostos. Desta vez, vamos falar sobre um ataque de computador que ataca a disponibilidade de um serviço, É sobre Ataque DoS (negação de serviço). Este ataque pode ser feito de forma distribuída (DDoS), normalmente será realizado por meio de um Botnet. Los atacantes tienen como objetivo que los usuarios de un servicio no puedan utilizarlo, debido a que está saturado, seguro que has oído sobre los ataques que ha sufrido PlayStation Network, incluso es posible que debido a alguno de esos ataques cierto día no hayas podido jugar em linha.
Você foi capaz de ver que o Ataque DoS e DDoSUma diferença que encontramos entre um ataque e outro é que no primeiro usamos uma máquina e uma conexão e, no segundo, muitos computadores serão usados, então o ataque é muito mais difícil e eficaz.
ObservaçãoPara entender bem o ataque, é necessário que você saiba como funciona o TCP / IP, ou pelo menos tenha noções básicas de Redes.
Diferentes maneiras de realizar o ataque
Para aprender a segurança e ser capaz de se proteger, é necessário saber como os ataques são realizados. Neste ataque podemos ver que pode ser realizado de várias formas, aqui estão algumas delas, com uma breve explicação:
SYN FloodEste ataque consiste no envio de solicitações de conexão (pacotes com flag SYN ativo) para a vítima a partir de endereços IP de origem falsos, que responderão com pacotes contendo o ACK e flags SYN ativos, e aguardarão que a origem da conexão responda com o ACK sinalizador definido, mas isso nunca vai acontecer.
ICMP FloodNesse tipo, o invasor deseja consumir a largura de banda da vítima enviando vários pacotes ICMP grandes, ou seja, por meio de ping.
UDP FloodAqui, grandes quantidades de pacotes UDP serão criados, os quais serão enviados para a vítima em portas aleatórias.
Estouro de bufferTipo de ataque "clássico", o atacante enviará à vítima mais pacotes do que o buffer do serviço pode suportar, o que faz com que o serviço não responda às solicitações legítimas, pois está saturado.
Existem mais tipos, como Inundação HTTP, Amplificação NTPetc.
Exemplo de ataque DoS em Python
Agora veremos um pequeno exemplo de código em Python que será baseado no ataque de inundação SYN, o teste será realizado de forma controlada com máquinas virtuais.
import logging logging.getLogger ("scapy.runtime"). setLevel (logging.ERROR) de scapy.all import * conf.verb = 0 host = "192.168.56.1" port = 80 originIP = "192.168.1." endIP = 10 packet_number = 0 enquanto True: packet_number + = 1 packet = IP (src = (sourceIP + str (endIP)), dst = host) / TCP (sport = RandShort (), dport = port) send (packet, inter = 0,0002) print ("Pacote% d enviado"% packet_number) endIP + = 1 if (endIP == 200): endIP = 10O código é bastante simples, estamos usando a versão 3 do Python e usamos a biblioteca Scapy, que é muito poderosa e facilita as coisas para nós.
A primeira coisa que vemos é importar as bibliotecas necessárias, o registro é usado para evitar o aviso de que o Scapy inicia no IPv6. Então é usado conf.verb = 0, isso é feito para que Scapy não exiba informações.
Em seguida, a variável é criada hospedar, que nada mais é do que o IP do alvo de nosso ataque e a variável porta qual é o porto do nosso objetivo.
Para que nem sempre seja o mesmo endereço de origem, criei uma variável que tem a base (originIP) e outro que será adicionado no final (endIP), como você pode ver, eles são concatenados ao criar o pacote originIP + str (endIP).
A variável numero_do_pacote é simplesmente usado para controlar os pacotes que foram enviados.
A última parte é um loop infinito, que é aquele que cuida de tudo, criamos o pacote e enviamos, também mostramos que o pacote foi enviado, porque temos a informação, e atualizamos as variáveis endIP Y numero_do_pacote.
Se rodarmos o código e usar o WireShark, podemos ver como os pacotes são enviados, verificamos se o IP de origem é diferente a cada vez, assim como a porta.
Se olharmos para ela, a coluna Fonte da imagem anterior continua mudando, a coluna Destino não, pois é nossa vítima.
Contramedidas
Lamentavelmente empresas sofrem muitas perdas ao longo do ano devido a este tipo de ataque, por isso é muito importante que implementemos contra-medidas, abaixo estão algumas das que devemos levar em consideração:
- Configure o Firewall ou os sistemas IDS ou IPS corretamente
- Limite o número de pacotes TCP SYN por segundo
- Analise o tráfego da rede
- Pesquisa reversa de IP, serve para evitar spoofing
Se você quiser ler mais sobre questões de segurança, pode visitar a categoria dedicada à segurança no Solvetic.
Gostou e ajudou este tutorial?Você pode recompensar o autor pressionando este botão para dar a ele um ponto positivo