SQL INJECTION

DS2T 29/02/2012 09:14:01
#396006
Bom dia amigos.

Quero saber se a unica forma de se prevenir de SQL Injection numa SQL do tipo:
 Select * from Tabela Where Campo1=[ô]VALOR[ô] And Campo2=[ô]VALOR2[ô] 

é bloqueando as aspas simples.

Onde Valor e Valor2 são valores que o usuário fornece.

Só bloquear o uso de aspas é totalmente garantido? Se não for, quais os outros meios de prevenção? E por que tal prevenções se fazem uteis?

Muito obrigado!
LLAIA 29/02/2012 12:05:20
#396034
Resposta escolhida
Só aspas simlpes creio que não, pois podemos executar certas instruções DML sem aspas como por exemplo: DELETE FROM TABELA WHERE ID=50.

Muitos usam expressões regulares para evitar sql injection: http://social.msdn.microsoft.com/Forums/pt-BR/asppt/thread/2c93d485-5baf-40af-921d-4a86d577a733/

Por que são úteis? Já imaginou o inferno alguém deletando uma tabela ou dando sumiço nos dados em produção?
Tópico encerrado , respostas não são mais permitidas