Ver Mensaje Individual
  #6 (permalink)  
Antiguo 22/08/2013, 08:09
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: problema con la sintaxis procedimiento almacenado

Hola nestor_rupay:

Cita:
me podrias apoyar con un ejemplo de un procedimiento almacenado para evitar inyección de código.
te lo agradecere.
En mi post te dí una idea de cómo evitar el SQL inyection, pero creo que no pusiste atención:

Código:
lee un poco acerca de este tema y cómo evitarle... checa cómo se utiliza la cláusula USING para la definición de parámetros...
Si checas esta liga estoy seguro de que encontrarás algo que te pueda servir.

http://lmgtfy.com/?q=evitar+sql+inyection+en+mysql

En realidad hay muchas maneras de hacerlo, y el peligro radica en cómo estás capturando los valores de tus parámetros... este tipo de ataques por lo general se presenta cuando el usuario tiene la posibilidad de enviar estos parámetros con cualquier valor... Observa tu consulta, tienes algo como esto:


Cita:
... WHERE columna_codigo, ' = ', var_codigo);
imagina que el valor de los parámetros sea 1 y 1... por lo tanto tu consulta quedaría así:

Código:
... WHERE 1 = 1
Lo que equivale a decir que actualice TODOS LOS REGISTROS DE TU TABLA . El uso de parámetros en las consultas es un método que te puede ayudar a prevenir estos ataques, pero no es el único.

Tú puedes utilizar tus propias validaciones, por ejemplo para que los parámetros no contengan palabras reservadas, o caracteres especiales como (#, ;, ', ") o simplemente no dejar abiertos los campos para los parámetros y hacerlos mediante combos de selección... es decir, hay mucha tela de donde cortar, ponte a investigar un poco y estoy seguro que encontrarás algo que te sirva,

Con respecto al error, bueno, el compañero gnzsoloyo ya te ayudo con algunos posibles errores, insisto, es cuestión de que evalúes exactamente lo que estás tratando de ejecutar para ver donde está el problema.

Saludos
Leo.