Ver Mensaje Individual
  #28 (permalink)  
Antiguo 30/06/2008, 11:42
Avatar de @padawan@
@padawan@
 
Fecha de Ingreso: julio-2005
Mensajes: 393
Antigüedad: 21 años, 3 meses
Puntos: 6
Respuesta: Ayuda por favor...

Me han vuelto a atacar, la verdad es que ya estoy resignado a tener que estar atento a que me ataquen de vuelta he intentado todo lo que estaba a mi alcance, y no logro dar con la solucion me siguen bombeando inyecciones sql,.

Esta vez se me metieron con el siguiente direccion:
http:// www. adwsupp. com/b . js


Este es el codigo de las funciones que estoy usando para filtrar cualquier tipo de ataque mediante sql injection, pero parece ser que no funciona.




Código PHP:

Function SqlFiltro(s)
            If ((
Not IsNull(s)) And (s <> "")) Then
                        tmp 
= Replace(Trim(s), "'", "''")
                        
tmp = Replace(tmp, """", "&quot;")
                        
SqlFiltro = CompararEntrada(tmp)
            
End If
End Function

function 
CompararEntrada(str)
            
dim tmp
            tmp 
= str
            tmp 
= FiltroEntrada(tmp, "/script")
            
tmp = FiltroEntrada(tmp, "insert into")
            
tmp = FiltroEntrada(tmp, "delete from")
            
tmp = FiltroEntrada(tmp, "drop table")
            
tmp = FiltroEntrada(tmp, "exec(")
            
tmp = FiltroEntrada(tmp, "declare")
            
tmp = FiltroEntrada(tmp, "cast(")
            
tmp = FiltroEntrada(tmp, "varchar")
            
tmp = FiltroEntrada(tmp, "sp_")
            
tmp = FiltroEntrada(tmp, "xp_")
            
tmp = FiltroEntrada(tmp, "@@")
            
tmp = FiltroEntrada(tmp, "onmouseover")
            
tmp = FiltroEntrada(tmp, "--")
            
tmp = FiltroEntrada(tmp, "flyzhu.9966.org")
            
tmp = FiltroEntrada(tmp, "9966.org")
            
tmp = FiltroEntrada(tmp, "<script")
            
tmp = FiltroEntrada(tmp, "<script src=http://flyzhu.9966.org/us/Help.asp></script>")
            
tmp = FiltroEntrada(tmp, "www.tag58.com")
            
tmp = FiltroEntrada(tmp, "tag58.com")
            
tmp = FiltroEntrada(tmp, "<script src=http://www.tag58.com/b.js></script>")
            
tmp = FiltroEntrada(tmp, "update <tablas que uno tenga>")

            
tmp = FiltroEntrada(tmp, "b.js")
            
            
            
            
CompararEntrada = tmp
end 
function


function 
FiltroEntrada(str, filterStr)
            if 
instr(lcase(str), filterStr) <> 0 then
                        logHakeo
(str)
                        
Response.Redirect("http://www.sitio.com/CodigoMalicioso.asp") 
            else
                        
FiltroEntrada = str
            end 
if
end function


sub logHakeo(s)
            
set fso = server.createobject("scripting.filesystemobject")
            
set wf = fso.opentextfile(server.mappath("logHack.txt"), 8, true)
            
wf.writeline(Now)
            
wf.writeline("----------------------------")
            for 
each x in Request.ServerVariables
                        wf
.writeline(x & ": " & Request.ServerVariables(x))
            
next
            wf
.writeline("----------------------------")
            
wf.writeline(")" & vbcrlf & s & vbcrlf)
            
wf.writeline("============================")
            
wf.close
            set wf 
= nothing
            set fso 
= nothing
end sub 

Mediante la funcion SqlFltro puedo filtrar cualquier cosa que se quiera meter:

Var = SqlFiltro(Request.FOrm(txtVar1))

Pero parece ser que no es suficiente y no encuentro solucion, la verdad no se que es.

Creo que los permisos en la base de datos estan correctos, no se que mas hacer.