¿Qué significan las advertencias de seguridad de cflint?

0

Voy a utilizar la herramienta de código abierto cflint , pero me gustaría saber qué significan realmente algunas de las advertencias que enumera o qué implican. Las advertencias en cuestión son las relacionadas con la seguridad:

  

QUERYPARAM_REQ - La instrucción SetSql () debe usar .addParam ()

y

  

CFQUERYPARAM_REQ - cfquery debe usar < cfqueryparam >

Teniendo en cuenta estas advertencias, ¿qué problema indican con la seguridad de un programa? Entiendo qué solución están sugiriendo, pero ¿qué problema causa esta seguridad?

    
pregunta cluemein 24.05.2017 - 17:18
fuente

1 respuesta

0

Parece que le está pidiendo que utilice consultas SQL parametrizadas para evitar la inyección de SQL . El uso de SQL parametrizado evita los ataques de inyección de primer orden de SQL al tratar la entrada como un parámetro, en lugar de solo concatenar cadenas. Por ejemplo, considere la siguiente consulta:

  

"Seleccione * de dbo.Users donde Lastname = '{value}';"

Suponga que un usuario malintencionado está intentando ingresar "'o 1 = 1; -". Usando la concatenación regular, esta consulta se convierte en

  

Seleccione * de dbo.Users donde Lastname = '' o 1 = 1; -;

y la aplicación devolverá todas las filas de la tabla de usuarios. Con SQL parametrizado, la consulta se convertirá

  

Seleccione * de dbo.Users donde Lastname = '' 'o 1 = 1; - ';

y solo devolverá filas donde el apellido coincida con "'o 1 = 1; -".

Esta publicación de desbordamiento de pila también puede tener alguna información útil.

    
respondido por el user52472 24.05.2017 - 18:30
fuente

Lea otras preguntas en las etiquetas