2012-02-06 13 views
7

Estoy buscando hacer que mi sitio sea seguro contra ataques de inyección SQL. ¿Alguien tiene buenos enlaces para hacer que el sitio sea seguro contra este tipo de ataques en un sitio ASP.NET (C#, formularios web)?Prevención de ataque de inyección SQL: dónde empiezo

EDIT:

Debo señalar en que estoy utilizando el Entity Framework

Respuesta

2

Esta es una gran serie que cubre las 10 principales amenazas de seguridad para aplicaciones web y cómo mitigarlos utilizando ASP.net: http://www.troyhunt.com/2010/05/owasp-top-10-for-net-developers-part-1.html

+1

Tiendo a vincular al ebook hecho de éstos. Pero solo una de las vulnerabilidades es la Inyección SQL, sobre la cual el OP preguntó. – Oded

+0

Buen punto - Agregado -> http://www.troyhunt.com/2011/12/free-ebook-owasp-top-10-for-net.html –

4

consulte los siguientes recursos:

Básicamente, como Oded ya se ha señalado, que se reduce a dejar de concatenar juntos las sentencias SQL - especialmente si eso implica datos introducidos por el usuario de en cajas de texto - y el uso de consultas parametrizadas en ADO.NET.

0

Utilizar procedimientos almacenados con parámetros y evitar SQL en línea siempre que sea posible ...

1

Es fácil. La mayoría de vulns inyección provienen de código que se parece a esto:

var myQuery="SELECT something FROM somewhere WHERE somefield="+userSuppliedData; 
//execute myQuery against db 
//now suppose userSuppliedData=="'';DROP TABLE somewhere;" 

Si está rodando mano sentencias SQL como este, usted está en riesgo. Considere usar un ORM o consultas parametrizadas.

Cuestiones relacionadas