Foros del Web » Programando para Internet » ASPX (.net) »

SQL-Injection en ASP.NET

Estas en el tema de SQL-Injection en ASP.NET en el foro de ASPX (.net) en Foros del Web. Hola, ¿Qué protección ofrece ASP.NET frente al SQL Injection? Porque sí sé que en ASP normal era (y es) muy fácil. ¿Qué protecciones adicionales pondríais? ...
  #1 (permalink)  
Antiguo 04/07/2009, 04:16
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 3 meses
Puntos: 6
SQL-Injection en ASP.NET

Hola,

¿Qué protección ofrece ASP.NET frente al SQL Injection? Porque sí sé que en ASP normal era (y es) muy fácil.

¿Qué protecciones adicionales pondríais?

Gracias
  #2 (permalink)  
Antiguo 04/07/2009, 08:45
Avatar de dwaks  
Fecha de Ingreso: agosto-2002
Ubicación: Panamá
Mensajes: 962
Antigüedad: 21 años, 9 meses
Puntos: 15
Respuesta: SQL-Injection en ASP.NET

Si usas las librerias Linq to dataBase lo trae todo incorporado, si usas querys directos en codigo ya sea llamando storeprocedure ó el query puro entonces nunca pongas esto así:

string query = "select * from tabla where id = 5";

Lo que pones es así:

string query = "select * from tabla where id = @id";

Y le mandas como parametro el valor de @id así:
SqlCommand cmd = new SqlCommand();
cmd.Connection = oCon;
cmd.CommandText = query;

cmd.Parameters.AddWithValue("@id", 5);

Así se protege y recomienda Microsoft que se haga uso de los querys.

Saludos,
  #3 (permalink)  
Antiguo 04/07/2009, 11:35
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 3 meses
Puntos: 6
Respuesta: SQL-Injection en ASP.NET

Sí, así lo he hecho yo cuando lo he utilizado. Pero, ¿eso de parámetros entonces es efectivo, ya no te pueden meter código malicioso? ¿Está en otros lenguajes de programación web (php o asp)?

¿Y las librerías Linq to Database las recomiendas? ¿Para qué sirven?
  #4 (permalink)  
Antiguo 04/07/2009, 11:39
Avatar de dwaks  
Fecha de Ingreso: agosto-2002
Ubicación: Panamá
Mensajes: 962
Antigüedad: 21 años, 9 meses
Puntos: 15
Respuesta: SQL-Injection en ASP.NET

Linq to Database es nuevo en el 3.5, bueno la verdad microsoft comunico que el Linq ya no lo usarán con DataBase en el futuro por errores que muestra.

Pero si usando Parameters es una buena practica porque si te tiran Sql Injection simplemente el filtra todo eso.

Saludos,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:23.