# SQL Slammer

SQL Slammer é um worm de computador que causou um Ataque de negação de serviço em alguns hosts da Internet e dramaticamente abrandou o tráfego geral da Internet, começando às 05:30 UTC em 25 de janeiro de 2003. Ele espalhou-se rapidamente, infectando a maioria de suas 75.000 vítimas dentro de dez minutos. Assim chamado por Christopher J. Rouland, o CTO da ISS, Slammer foi trazido à atenção do público por Michael Bacarella (veja notas abaixo). Embora intitulado "SQL slammer Worm", o programa não usou a linguagem SQL; que explorou um erro de buffer overflow no Microsoft's flagship do SQL Server e banco de dados Desktop Engine os produtos da Microsoft, para os quais um patch foi lançado seis meses antes, em MS02-039. Outros nomes incluem W32.SQLExp.Worm, DDOS.SQLP1434.A, the Sapphire Worm, SQL_HEL, W32/SQLSlammer e Helkern.[1]

## Detalhes técnicos

O worm foi baseado no código de prova de conceito demonstrado na Black Hat Briefings porDavid Litchfield, que inicialmente haviam descoberto a vulnerabilidade overflow de buffer que o worm explorou. é um pequeno pedaço de código que gera endereços IP aleatórios e envia a si mesmo para esses endereços. Se um endereço selecionado pertence a um host que está executando uma cópia não publicada do Serviço de Resolução do Microsoft SQL Server que esta ouvindo a porta UDP 1434, o anfitrião imediatamente torna-se infectado e começa a pulverização da Internet com mais cópias do worm.
Home PCs normalmente não são vulneráveis a este vírus, a menos que tenham o MSDE instalado. O worm é tão pequeno que não contém código para gravar a si mesmo para o disco, ele só permanece na memória, e é fácil de remover. Por exemplo, a Symantec oferece um utilitário de remoção (ver link externo abaixo), ou pode até mesmo ser removido por reiniciar o SQL Server (embora a máquina deverá ser reinfectado imediatamente).
O worm foi possível graças a um software de vulnerabilidade de segurança no SQL Server relatada pela primeira vez pela Microsoft em 24 de julho de 2002. Um patch tinha sido disponível a partir da Microsoft para seis meses antes do lançamento do worm, mas muitas instalações não tinha sido corrigido, incluindo muitos na Microsoft.
A lentidão foi causada pelo colapso de inúmeros roteadores devido ao bombardeamento extremamente alto de tráfego de servidores infectados. Normalmente, quando o tráfego é muito alto para roteadores lidarem, os roteadores são programados para atrasar ou interromper temporariamente o tráfego de rede. Em vez disso, alguns roteadores caíram (tornaram-se inutilizáveis), e o "próximo", roteadores, notamos que esses roteadores tinha parado e não deve ser contactado (aka "removida da routing table"). Roteadores infectados começaram a enviar avisos para para outros roteadores que eram reconhecidos por eles. A inundação de atualização da routing ta avisos causou alguns roteadores adicionais para falhar, para agravar o problema. Eventualmente, caiu roteadores mantenedores reiniciado-los, levando-os a anunciar o seu estado, levando a uma nova onda de atualizações de tabela de roteamento. Logo, uma parcela significativa de largura de banda de Internet foi consumido por roteadores se comunicam umas com as outras para atualização de suas tabelas de roteamento, e comum o tráfego de dados mais lenta ou, em alguns casos, parou completamente. Ironicamente, porque o SQL Slammer worm foi tão pequeno em tamanho, às vezes era capaz de passar quando o tráfego legítimo não foi.
Dois aspectos-chave contribuiu para o SQL Slammer rápida propagação. O worm infectado novos anfitriões sobre os sem sessão UDP protocolo, e todo o worm (apenas 376 bytes) cabe dentro de um único pacote. Como resultado, cada host infectado poderia em vez de simplesmente "disparar e esquecer" pacotes", tão rapidamente quanto possível (geralmente centenas por segundo).