Smurf é um simples attack baseado em IP spoofing e Broadcast. Um único pacote (conhecido como ICMP Echo Request) é enviado como um direcionado broadcast para uma subnet na Internet. Todas os computadores naquela subnet respondera para esse direcionado broadcast. Neste caso o IP source deste direcionado broadcast certamente serài trocado (técnica spoofing) pelo endereço IP da vitima escolhida pelo *hacker. Dessa maneira quando os computadores que receberem o broadcast direcionado, responderão com ICMP Echo Reply para o endereço IP (spoofed) contido naquele broadcast. Dependendo do numero de computadores naquela subnet dezenas, centenas ou ate milhares de pacotes ICMP Echo Reply serão enviado para o endereço IP da vitima fazendo com que a conexão seja bloqueada ou simplesmente tornando a conexão lenta demais. Esse técnica pode ser aplicada em conjunto com vários outros *hackers para que o efeito seja ainda maior e duradouro. Para a vitima na ha muito o que fazer a não ser contatar o responsável pela subnet que esta servido de amplificador de Smurf ( Smurf Amplifier).
Este endereço mantém uma lista dos Smurf Amplifiers disponíveis na internet.
http://www.powertech.no/smurf/ (http://www.powertech.no/smurf/)
Exemplo: O atacante envia um pacote de ICMP Echo Request, porem a vitima que recebe o ICMP Echo Replay.
(//http://www.informabr.com.br/TCP/smurfv1.jpg)
Dica: Para entender como funciona o Smurf é só efetuar um ping na sua própria rede e visualizar o resultado com o TCPdump/Windump.
Exemplo: Execute o windump para capturar somente pacotes de icmp. c:\>windump icmp
Use o comando ping para efetuar o Smurf Attack. c:\>ping 192.168.0.255
OBS. Use duas janelas de DOS prompt (uma para visualizar o resultado ping com o windump e outra para efetuar o comando ping). O endereço de IP usado com o comando ping (192.168.0.255) devera ser o endereço IP de broadcast da sua rede, esse usado acima é só um exemplo de broadcast da classe C.
O resultado desse comando será o envio de um ICMP Echo Request para o endereço de IP escolhido e o recebimento de vários ICMP Echo Replay da maquinas que estiverem conectadas sua rede.
Exemplo:
c:\>ping 192.168.0.255
10:47:12.618303 claudio > 192.168.0.255: icmp: echo request
10:47:12.618483 ylan > claudio: icmp: echo reply (DF)
10:47:12.618532 madonna > claudio: icmp: echo reply (DF)
10:47:12.618560 wave > claudio: icmp: echo reply (DF)
10:47:12.618577 unix_server > claudio: icmp: echo reply (DF)
10:47:12.618683 adsl-xx-xx-19-42.xxxxxxx.com > claudio: icmp: echo reply
10:47:12.620849 hp4050 > claudio: icmp: echo reply
Caso você esteja conectado via modem ou não esta conectado em rede, é só pingar um dos endereços de IPs listados no link acima citado e o resultado será o mesmo.
Alguns exemplos de ICMP_echo_request são o Ping e o Tracerout.
Mas os pacotes ICMP geralmente são muito pequenos e simples, e isso não colabora muito para o ataque.
Existe uma técnica (Que não me lembro o nome no momento

), que consiste em enviar pacotes spoofados para um PC com o serviço Echo ativo. Vou explicar mais detalhadamente. O echo roda na porta 7 (Tanto TCP como UDP) e o que ele faz, é simplesmente responder um pacote que chega nele (Quase como um ICMP_echo_request), agora imaginemos, dois PCs com esse serviço ativo, basta o *Hacker* enviar um pacote spoofado para o PC1 (Com o echo ativo) com o IP do PC2 (Também com o echo ativo), o que vai acontecer? O pacote vai ficar em loop, repetindo o trajeto durante um bom tempo (Se não "infinitamente"), agora imagina milhares desses pacotes rodando entre os dois PCs, destruição total, um dos dois vai arriar, com certeza.
Obs: Desculpem-me por não lembrar o nome da técnica, se alguém souber, posta aqui, caso contrário, quando lembrar eu posto.
HadeS