sql >> Base de Datos >  >> RDS >> Mysql

mysql PDO y procedimiento almacenado inyección SQL dinámica

Sí, claro.

¿Qué pasa si in_var es igual a la contraseña de ' UNION SELECT password from admins -- ?

Para evitar eso, no debe usar un culto de carga declaración preparada pero real, sustituyendo su variable con un marcador de posición.

SET @query = CONCAT("SELECT * FROM my_table  WHERE my_column = ? LIMIT 1;");

PREPARE stmt FROM @query;
EXECUTE stmt USING @in_var;