Tips para evitar SQL Injection

Páginas: 2 (377 palabras) Publicado: 25 de julio de 2013
Tips para evitar SQL Injection
En un gran porcentaje, la mayoría de nuestras aplicaciones necesitan acceder a las bases de datos para realizar consultas, actualizaciones e incluso eliminaciones denuestros registros. El problema es cuando alguien desde fuera intenta hacer esas tareas por nosotros ;)
Voy a indicar algunas reglas a la hora de tratar los valores ajenos a nosotros desde el ladodel servidor, para evitar este tipo de catástrofes. Por otro lado, cualquier tip adicional será bienvenido :D
Convierte siempre el valor a su tipo correspondiente
Si estamos esperando un valor de tiponumérico, deberíamos intentar parsear este valor a dicho tipo para asegurarnos de que no incluye texto adicional:

1
2
3
4
5
6
var id = Request.QueryString["id"];
 
int result;
 
if(Int32.TryParse(id, out result))
    //Do things
Parametrizar las consultas SQL
Un error muy común es hacer uso de los valores que nos llegan sin especificar ningún tipo para el mismo. Algo parecido aesto:
1
2
var id = Request.QueryString["id"];
var query = "SELECT * FROM HOUSES WHERE ID=" + id;
Para evitarlo, podemos parametrizar las sentencias SQL y poder especificar de esta manera el tipoque estamos esperando para cada parámetro.
1
2
3
4
5
6
7
8
9
10
11
var objConnection = new OleDbConnection(strDbConnectionString);
 
objConnection.Open();
 
const string query = "SELECT* FROM HOUSES WHERE ID=?";
 
var objCommand = new OleDbCommand(query, objConnection);
var id = new OleDbParameter("@idParam", OleDbType.Integer) { Value = id};
objCommand.Parameters.Add(id);
 var objReader = objCommand.ExecuteReader();;

Usar una cuenta con permisos restringidos a la base de datos
Otro dato importante a tener muy en cuenta es asegurarnos de que la cuenta de usuarioutilizada por nuestra aplicación tiene los permisos necesarios para poder acceder y/o modificar unos datos concretos pero también que sea lo suficiente restrictiva para no alterar otro tipo de datos....
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Tips Para Evitar Una Violacion
  • Sql injection
  • Sql Injection
  • Sql Injection
  • sql injection
  • SQL Injection
  • Herramientas Para Sql Injection
  • tips para evitar colicos

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS