A técnica de SQL Injection consiste em manipular as instruções SQL que executamos nas nossas aplicações, inserindo comentários caracteres que corresponde à comentários em SQL em um campo textbox, por exemplo.

Com isso o hacker consegue fazer operações diretamente no banco de dados excluindo registros, tabelas ou entrando no sistema sem permições.

Invadir um sistema utilizando técnicas de SQL Injection é uma coisa boba, mas tem muito desenvolvedor que ainda não leva em conta isso quando está programando.

Exemplo de SQL Injection

No código acima, por exemplo, caso a variável codigo recebesse qualquer string, ela seria incorporada ao comando, mesmo que fossem ‘‘, podendo comentar o restando do código ou inserir novos trechos.

SqlCommand objCmd = new SqlCommand(“SELECT NOME FROM CONTATOS WHERE CODIGO = ” + codigo, objConn);

Para resolver esse problema é simples. O mesmo código acima foi transposto abaixo, de forma a evitar vulnerabilidades em nossa aplicação.

SqlCommand objCmd = new SqlCommand(“SELECT NOME FROM CONTATOS WHERE CODIGO = @codigo” , objConn)objCmd.Parameters.AddWithValue(“@codigo“, codigo);

Claro que existem outras formas de se burlar um site e vários cuidados com a segurança devem ser tomados, mas isso já é assunto para um outro post ????

// Comente!

comentários