Inyección SQL
Un fallo en el que la entrada del usuario se añade directamente a una consulta de base de datos, permitiendo al atacante modificar la consulta para leer o eliminar datos.
- 01
Por qué importa
La inyección SQL es uno de los fallos conocidos más antiguos, pero sigue apareciendo; si tiene éxito, los datos de clientes, las contraseñas y los pedidos pueden salir de golpe. Aparece sobre todo en código antiguo escrito a mano y en funciones de búsqueda o filtros añadidas a toda prisa. Las consultas parametrizadas cierran este riesgo de raíz.
- 02
Ejemplo
El texto escrito en el cuadro de búsqueda de productos de una tienda se añade directamente a la consulta. Al escribir en el cuadro una expresión preparada, el atacante hace que se muestre la tabla de usuarios en lugar de la lista de productos.
- 03
Error frecuente
Creer que se está a salvo porque la entrada se limpia a mano o se eliminan las comillas. La forma segura son las consultas parametrizadas, en las que la entrada se envía por separado de la consulta, o una biblioteca de base de datos fiable.
- 04
Términos relacionados
Servicios y guías relacionados
Hablemos de tu proyecto.
Cuéntenos lo que necesita; definiremos el alcance juntos.