Tips de SQL Injection : How to
Hola, compañeros de geeks.
Bueno quisiera dejar unos tips para aquellas personas que deseen probar, conocer y demás acerca de esta técnica, como mencione en mi post anterior, esta vulnerabilidad va mas ligada a la forma en que los desarrolladores hacen su trabajo.
Tip 1.
Primero dejar el link de un vídeo en msdn del señor Todd Miranda
How Do I: Prevent a SQL Injection Security Flaw in an ASP.NET Application?
En este vídeo nos muestran con lujo de detalles con realizar un ataque con esta técnica y también como podemos prevenirla.
A modo de dato se recomienda desconfiar de toda la data que se puede ingresar en nuestra aplicación, por medio de cajas de texto y demás controles que nos permiten capturar datos de los usuarios.
Tip 2.
Segundo es dejar el enlace de un articulo llamado.
How To: Protect From SQL Injection in ASP.NET
en este articulo podemos ver las distintas técnicas de desarrollo que podemos usar para limitar esta vulnerabilidad en nuestras aplicaciones.
Básicamente las técnicas son:
- Validar y restringir cada campo, por ejemplo no permitir que en un campo de números, se diligencie con letras.
- Usar procedimientos almacenados con parámetros.
- usar parámetros en las sentencias SQL. (un ejemplo del articulo)
1: using System.Data;
2: using System.Data.SqlClient;
3:
4: using (SqlConnection connection = new SqlConnection(connectionString))
5: { 6: DataSet userDataset = new DataSet();
7: SqlDataAdapter myDataAdapter = new SqlDataAdapter(
8: "SELECT au_lname, au_fname FROM Authors WHERE au_id = @au_id",
9: connection);
10: myCommand.SelectCommand.Parameters.Add("@au_id", SqlDbType.VarChar, 11); 11: myCommand.SelectCommand.Parameters["@au_id"].Value = SSN.Text;
12: myDataAdapter.Fill(userDataset);
13: }
Bueno espero que sea de utilidad, y les recomiendo ver el video, es muy bueno.
Romny