Inyección SQL

Con las circunstancias que han ocurrido en la vida, nos hemos visto obligado a utilizar más la informática. Como es algo nuevo y ha llegado muy rápido no sabemos cómo funciona al 100% y menos de cómo protegernos. A causa de esto, muchos aprovechan la poca información para realizar fines malignos. En este post os vamos hablar sobre uno de esos ataques, específicamente el Inyección SQL.

¿Qué es la inyección SQL?

Es un tipo de ataque, específicamente hacia las empresas, sus objetivos principales son las bases de datos.

¿En qué consiste?

Consiste en filtrar instrucciones SQL (Lenguaje de programación de las bases de datos) incrustadas con otras instrucciones.

inyeccion sql

¿Cómo funciona?

En las páginas donde se tiene que iniciar sesión o realizar una búsqueda en el botón “buscar” se puede inyectar código.

La base de datos esta preparada para leer la instrucción y ejecutarla de inmediato.

Por ejemplo, si es en el caso de iniciar sesión, el usuario debe de introducir el usuario y la contraseña. La base de datos lee los datos recibidos lo compara con sus datos y si son correcto lo deja pasar.

Pero si escribimos un nombre de usuario seguido con una instrucción de SQL, la base de datos genera una consulta para comparar el nombre de usuario y luego sigue leyendo la instrucción que nosotros le hemos incrustado y la ejecuta.

Dicha instrucción incrustada puede ir desde pedir el nombre de todos los usuarios registrados, hasta borrar la tabla usuarios, es decir, es un ataque muy potente y peligroso.

¿Cómo defendernos?

Según el lenguaje de programación que estemos usando se puede defender de una forma u otra.

Por ejemplo, en el lenguaje PHP, se utiliza la función “mysql_real_escape_string”, gracias a dicha función se analiza previamente las instrucciones.