martes, 8 de junio de 2010

¿Qué son las vulnerabilidades SQLi?

Una vulnerabilidad SQLi es una vulnerabilidad por inyección de SQL.

Básicamente, lo que significa, es que alguien puede meter información inesperada en las cajas de texto de tus formularios HTML (input) y que, si no es bien tratada por tu programación, podría llegar a introducir o leer información de la base de datos.

Casi siempre se intenta utilizar, esta vulnerabilidad, para lograr entrar con un usuario autorizado en la zona privada de tu web.

Se supone que el contenido de los campos "password" de los formularios serán "pegados" en tu programación para formar una SQL, que luego será lanzada contra la base de datos para saber si un usuario está autorizado o no. Alguien puede intentar poner un "password" "trampa" que haga que esa consulta SQL construida siempre sea cierta aunque no se sepa realmente la "password".

Si la programación (esto es cosa vuestra) no está bien realizada, podría ocurrir que cualquiera sin saber la contraseña entrase en esa zona privada.

Simplemente, échale una ojeada al código que construye esas SQL o comprueba que las "password" introducidas no tengan espacios en blanco, o comillas simples, o comillas dobles, o un igual (suelen ser los caracteres que se utilizan para hacer inyección SQL).

No hay comentarios: