Tecnología

Inicio

Cómo comprobar la vulnerabilidad de inyección SQL

los programadores de PHP utilizan el lenguaje para construir las sentencias SQL dinámicas que luego se utilizan para consultar un servidor SQL para mostrar contenido dinámico. Debe comprobar su código PHP para cualquier vulnerabilidad de SQL para evitar el corte de inyección SQL. El corte de inyección SQL se aprovecha del carácter comillas para manipular la sentencia de SQL dinámico para ejecutar sentencias SQL maliciosos. Se revisa los formularios mediante la introducción de código de inyección SQL y cualquier página que devuelve errores de aplicar la función necesaria de PHP "mysql_real_escape_string".

Instrucciones

1 Abra un navegador Web y vaya a su sitio web. trabajos de inyección de SQL en los formularios en línea para navegar a una de sus formularios en línea para poner a prueba la página.

2 Escriba el código de inyección SQL para probar su formulario. Debe utilizar un carácter de comillas al comienzo del cuadro de texto formulario de entrada y escriba una sentencia de selección de SQL después de la cita. El código siguiente es un ejemplo de un corte de inyección SQL:

'; seleccionar * de los clientes;

El código anterior termina la entrada en el cuadro de texto e intenta ejecutar una consulta que roba datos de la tabla clientes.

3 Haga clic en el botón "Enviar" en el formulario para enviar la instrucción de entrada con formato incorrecto a su servidor MySQL. Si la página es susceptible a la inyección de SQL, se devuelve un error. Si usted tiene vulnerabilidades graves en su servidor, verá una lista de clientes de la mesa.

4 Abra la página PHP que contiene la instrucción SQL que devuelve el error en el editor de PHP preferido. Desplazarse por la página a la sentencia de SQL dinámico.

5 Agregar una línea adicional a la variable de consulta PHP. Por ejemplo, si su consulta dinámica utiliza el "$ consulta" variable de añadir el siguiente código directamente después de la variable para protegerlo de la inyección de SQL:

$ Consulta = mysql_real_escape_string ($ consulta);