Tecnología

Inicio

Describir un ataque de inyección SQL

Describir un ataque de inyección SQL


Bases de datos que utilizan el lenguaje estructurado de consultas, o la arquitectura de SQL, ofrecen a los usuarios una opción de bajo costo base de datos compatible con la web, y muchos sitios web se basan en bases de datos SQL para almacenar información. A pesar de la popularidad de estas herramientas de la Web, los hackers pueden utilizar técnicas como ataques de inyección SQL para manipular bases de datos e incluso acabar con todo los sitios web.

Función

Sitios web con frecuencia interactúan con bases de datos en el mismo servidor web, y muchos sitios web utilizan un lenguaje estructurado de consultas para almacenar y recuperar datos. Muchos diseñadores de páginas web, de acuerdo con el sitio web de la programación del sitio Point, utilizar formularios para solicitar la opinión de los usuarios y consultar la base de datos con la información proporcionada por el usuario. El lenguaje de marcado de hipertexto o HTML, formulario y luego pasa esta información a la base de datos para realizar una función prevista. En lugar de información legítima, sin embargo, los piratas informáticos inteligentes pueden introducir comandos SQL en estos campos de formulario web y, en función de código de programación del hacker, estos comandos pueden realizar una variedad de funciones que van desde la confirmación de los datos para borrar toda la base de datos. Debido a estas intrusiones funcionan mediante la inyección de código en los campos de otro modo inofensivas pasados ​​a una base de datos SQL, las actividades de los hackers se conocen como ataques de inyección SQL.

tipos

ataques de inyección SQL van desde ciega y pasiva y activa para maliciosa. Sitio Punto describió un ataque pasivo ciego en el que los usuarios utilizan la escritura de inicio de sesión de un sitio web para verificar que el sitio aceptaría un nombre de usuario específico. En ese ataque, un hacker no están familiarizados con el sitio web supuso un nombre de usuario común y proporciona un código de evaluación de SQL que devolver una respuesta de "True". Cuando el sitio web pasa esta información a la base de datos, la base de datos devuelve una lista de búsqueda de nombres de usuario con una contraseña poblada. En un artículo de 2007, consultor de software Stephen Friedi describió un ataque malicioso activo en el que un hacker utiliza código SQL en un sitio web de formulario de conexión para crear una nueva cuenta de usuario en el sitio. En este ataque, el hacker entró en un campo nulo con una orden válida de SQL "Insertar" para crear un nuevo registro de usuario.

efectos

Los efectos de un ataque de inyección SQL varían considerablemente dependiendo de la intención del usuario remoto. En un ataque pasivo, un hacker puede confirmar simplemente una cuenta de usuario o recuperar una lista de datos para revender en el mercado negro. En un ataque más malicioso, un hacker puede utilizar técnicas de inyección SQL para modificar los registros en la base de datos o incluso eliminar tablas enteras. Si el hacker elimina una tabla que almacena la información de pago, por ejemplo, la empresa puede llegar a ser incapaces de cobrar el pago de los clientes. Si el hacker elimina una tabla necesaria para el funcionamiento sitio web, el sitio puede devolver un error cuando los usuarios intentan acceder a la página.

precauciones

Aunque ninguna base de datos conectada a Internet puede ser completamente protegida, Friedi ofreció varias precauciones webmasters pueden utilizar para protegerse contra los ataques de inyección SQL. Los diseñadores web deberían utilizar las evaluaciones condicionales para desinfectar la entrada del usuario, utilizando el código en el formulario de la página para no permitir la entrada que no cae en un formato predefinido. Microsoft recomienda tomar la seguridad un paso más para promulgar varias capas de validación, además de prevenir la concatenación de múltiples consultas. Al validar la entrada del usuario y la prohibición de la base de datos de aceptar comandos que los hackers entran después de consultas válidas, los administradores de bases pueden frustrar un gran número de ataques de inyección SQL.