De uns tempos para cá comecei a notar que mais gente está programando e conseqüentemente mais gente está entrando no mercado de trabalho precocemente. Estão iniciando sua viagem pelo maravilhoso mundo do desenvolvimento web muito inocentemente, no entanto não sabem eles - os desenvolvedores newbies ou negligentes - que existem usuários maliciosos olho no seu sistema.
"Vagando" pela web certa vez vi um Guest Book (Livros de Visita) daqueles típicos de bloggers e sites pessoais que ficam religiosamente dentro de uma tabela numa coluna da esquerda da página. Com alguns testes percebi que ele aceitava códigos HTML em mensagens enviados pelos usuários. Agora me digam vocês o que aconteceria se algum usuário mal intencionado colocasse lá um frame oculto carregando a home do mesmo site? Exatamente, um loop infinito que por sua vez causaria um tráfego de dados gigante - que na verdade é o principio do DoS: "entupir" as filas de requerimentos de servidores a afim de negar vagas nessa fila para uma requisição real, um exemplo simples disso seria:
E já engajando o próximo assunto (XSS), nesse mesmo caso se por acaso o site utilizasse algum sistema de login baseado em cookies algum usuário poderia seqüestrar todos os cookies ali trafegados, vejam um exemplo abaixo:
Então, o que antes parecia somente aceitar DoS também é susceptível a um tipo de ataque de Cross Site Script, ou em outra palavras, teríamos um script atravessando seu site.
[1] Comentário enviado por gustavo_marcon em 07/04/2004 - 19:19h
Cara, muito legal mesmo teu artigo, só achei que vc poderia ter dado uns toques de comandos que podem ser usados pra evitar por exemplo o SQL Injection, mas no mais, tá 10 mesmo. Parabéns.
[2] Comentário enviado por Ragen em 08/04/2004 - 00:31h
Olá Gustavo,
Note que logo abaixo de "O que é SQL injection" tem o que você quer "Escapando Strings", nessa parte é abordado como evitar os bendidos códigos maliciosos...
Só queria fazer mais um pequeno comentário:
Na parte onde eu falo sobre netcat eu fiz algumas pequenas mudanças desde a data de publicação do arquivo, por que eu deixo o assunto muito vago e sem nenhum exemplo concreto do seu uso....
[3] Comentário enviado por fabio em 11/04/2004 - 14:39h
Putz, acabou que com uma dica sua resolvi de forma trivial um problema que tinha no sistema de busca interno do site. Por exemplo, se você digitasse "sites celular" nada era encontrado. Daí mandei o sistema substituir espaços por %, agora buscas com palavras compostas funcionam. :)