Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

AndréMiranda

SQL Injection

Recommended Posts

Olá pessoal!!

 

Venho mais uma vez recorrer a vcs!!!

 

Hj de manhã, vi que uma tabela de um sistema daqui da empresa estavam com os campos preenchidos com <script=http://www.bnradw.com/bjs>/<script> e isso estava em todos os campos da tabela!! Tive que acertar na mão!!

 

Sofri um ataque de SQL Injection, né?

 

Li umas coisas de aspas simples trocar por aspas duplas, mas não entendi ao certo como consertar isso.

 

Tenho o código abaixo de uma página que lista as propostas de uma área da empresa. Percebam que na Query há uns "WHERE" com aspas simples... será ali o problema?? Como consertar isso??

 

rs_proposta_cmd.ActiveConnection = MM_conexaoDataBase_STRING

if rs_usuario("nivel") = "2" Then
rs_proposta_cmd.CommandText = "SELECT * FROM dbo.tb_prevendas WHERE origem='RJ' ORDER BY CDate(data_entrada) DESC, substring(data_entrada,4,2) DESC, substring(data_entrada,1,2) DESC" 

Elseif rs_usuario("nivel") = "3" Then
rs_proposta_cmd.CommandText = "SELECT * FROM dbo.tb_prevendas WHERE origem='SP' ORDER BY substring(data_entrada,7,4) DESC, substring(data_entrada,4,2) DESC, substring(data_entrada,1,2) DESC"

Como posso consertar isso, pessoal????

 

Abraços a todos!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

usa isso:

 

Function TratarCaracteres(Caracter)
	Caracter = Replace(Caracter, "'", "''")
	Caracter = Replace(Caracter, "script", "")
	Caracter = Replace(Caracter, "utmccn=(direct)", "")
	Caracter = Replace(Caracter, "insert", "")
	Caracter = Replace(Caracter, "INSERT", "")
	Caracter = Replace(Caracter, "select", "")
	Caracter = Replace(Caracter, "SELECT", "")
	Caracter = Replace(Caracter, "drop","")
	Caracter = Replace(Caracter, "DROP","")
	Caracter = Replace(Caracter, "--","")
	Caracter = Replace(Caracter, "xp_","")
	Caracter = Replace(Caracter, "XP_","")
	Caracter = Replace(Caracter, "<", "<")
	Caracter = Replace(Caracter, ">", ">")
	
	TratarCaracteres = Caracter
End Function
e ai você engloba sua variaveis

 

texto = TratarCaracteres(Request.Form("Campo"))

Compartilhar este post


Link para o post
Compartilhar em outros sites

uma dica no replace....

 

para ele não ser case sensitive basta fazer assim

 

var = replace(var,"teste","",1,-1,1)

 

ou seja, você pode ter na variavel 'var' o valor TESTE ou teste que ele fará o replace

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.