SQL Injection con ejemplos
June 7th, 2006Vía Digg leo un artículo sobre inyección de SQL cuya lectura recomiendo a todas aquellas personas que no hayan oído hablar del tema. El artículo está centrado en mostrar posibles vulnerabilidades de aplicaciones desarrolladas sobre ASP.NET y SQL Server, pero muchos de los conceptos que se muestran son aplicables a otras bases de datos y plataformas de desarrollo, como MySQL y PHP.
En el artículo se muestran vulnerabilidades básicas como el uso de cadenas similares a ' OR 1=1; -- como nombre de usuario para conseguir acceso a muchos sitios que requieren autenticación, y continúa aportando más ejemplos que permiten extraer información sobre la estructura de tablas y campos de la base de datos, mecanismos para insertar o modificar información que permitirían crear nuevas cuentas de usuario o modificar las existentes, o ataques más destructivos y muchas veces más sencillos, como la eliminación o vaciado de tablas.
El desarrollo de aplicaciones web no es algo tan fácil como muchos desarrolladores piensan, y es que hay multitud de cuestiones a tener en cuenta, cuestiones entre las que la seguridad toma un papel fundamental. Sin embargo la mayoría de estos riesgos, como los ataques basados en cross-site-scripting (XSS) o SQL Injection, podrían ser evitados de una forma bastante amplia siendo estrictos en el tratamiento que se hace de los datos que envían los usuarios, teniendo en cuenta que el usuario no tiene porque enviar los datos como esperamos, que bien puede equivocarse o intentar ataques de forma premeditada. Para ello es básico, en cada programa que interactúe con el usuario, tener muy claras las variables que se aceptan, comprobar sus contenidos con reglas de validación, controlar los mensajes de error que devuelve el programa para no dar más información de la necesaria, y ponernos en la piel del atacante pensando cómo podríamos sobrepasar estas medidas.
Si esto del SQL Injection te ha abierto la curiosidad te recomiendo también la lectura de este otro PDF con información similar a la del artículo, aunque algo más extensa.
delicious
menéame
fresqui

June 7th, 2006 a las 6:20 pm
SQL Injection con ejemplos
interesante articulo de introduccion a los ataques de injeccion de codigo sql.
June 9th, 2006 a las 3:42 am
Hola que tal, buen documento pero les recomiendo la operacion net protector de microsft, donde se trabajan seguridad
http://www.microsoft.com/spanish/msdn/latam/netpro/
June 13th, 2006 a las 9:39 pm
estoy de acuerdo con Rommy Duarte
August 18th, 2006 a las 9:57 am
Bueno, esa es una buena referencia, aunque muy centrada en microsoft. Es importante tener en cuenta que el SQL Injection suele aprovechar características propias de las diferentes bases de datos y lenguajes de programación, por lo que si sueles usar otras bases de datos diferentes a SQLServer, o lenguajes diferentes, conviene que no limites la información a un solo web, y que investigues posibles fuentes de problemas en la plataforma en la estés desarrollando. Ya se sabe, más vale prevenir que curar…
August 21st, 2006 a las 2:00 pm
Un buen documento
http://ruleta.carookee.com
October 13th, 2006 a las 10:58 pm
[…] Las inyecciones SQL, son un tema que todo programador debe tener en cuenta, debido a que TODO sistema realizado para acceso Web que interactúe con bases de datos y datos originarios de formularios requiere su atención. No es un tema dificil de entender ya que está ampliamente documentado en la Web. Pero, no obstante, para muchos es un dolor de cabeza, por lo que trataré de reducirles todo a un sencillo y único paso: Filtrar todo dato originario del exterior. […]
October 28th, 2006 a las 1:03 am
Interesante!!
November 20th, 2006 a las 4:43 pm
[…] Algo de SQL Injection Noviembre 20th, 2006 VÃa EsLoMas.com me encuentro con este articulo sobre ataques a SQL vÃa inyección de código, y no solo nos estamos refiriendo a ataques en ASP.NET y SQL Server, sino que también los mismos ejemplos pueden ser puestos en practica con portales un tanto descuidados que utilicen MySQL y PHP. […]
September 17th, 2007 a las 6:03 am
esta muy bueno el documento sobre todo para mi q aun estoy empesando a aprender sobre la seguridad en la red…
August 26th, 2008 a las 11:40 pm
Como se le pueden hacer pruebas a SQL Injection?