..


Enlaces patrocinados

Comprobar la vulnerabilidad a ataques de inyección SQL a través de sqlmap

Artículo escrito por Mark Frison
Página 1 de 4

Entre las vulnerabilidades de las aplicaciones más grave y extendida una nota de la preocupación de inyección SQL. Aunque la teoría y las recomendaciones sobre cambios específicos que se han experimentado en los últimos diez / quince años, esta clase de vulnerabilidad sigue siendo una pesadilla mayor para los programadores y los encargados del mantenimiento de las aplicaciones web y, al mismo tiempo, uno de los destino más atractivo para los atacantes y los internos externa, y su importancia es probable que sea con carácter permanente en los distintos lista de las diez vulnerabilidades indicado por OWASP (Open Application Security Project Web).

En este artículo presentamos sqlmap, una poderosa herramienta de código abierto para automatizar el proceso de descubrimiento y explotación de inyección de SQL, la adaptación a los DBMS como objetivo la aplicación back-end.

Requisitos previos

Este artículo está destinado a los lectores ya tienen conocimientos básicos de SQL Injection, en este texto se tratará de las causas de la vulnerabilidad y / o las medidas para evitarlo, no se presentó, así como el lenguaje SQL, el conocimiento de que, aunque base, se considera un requisito previo necesario a un artículo de éxito.

sqlmap

sqlmap es una herramienta de código abierto que promete automatizar las etapas de descubrimiento y de la vulnerabilidad explota clasificados como "inyección SQL", desarrollada completamente en Python, sqlmap lo tanto está disponible para todos los sistemas operativos más importantes. sqlmap es una completa herramienta para el análisis de inyección SQL como:

  • es capaz de detectar el tipo de objetivo SGBD (DBMS toma de huellas dactilares), adaptando su comportamiento en consecuencia;
  • implementa diferentes estrategias, a menudo complejas para analizar a mano, para poner de relieve las vulnerabilidades;
  • identificar las vulnerabilidades, exploits DBMS permite una rápida y, si las condiciones de contorno lo permitan, el sistema host.

Obtener sqlmap

Dada su enorme popularidad, se sqlmap es extremadamente simple, y suelen proceder a una descarga directa desde el sitio alojado en SourceForge, donde se puede descargar un archivo (independiente de la plataforma) o un paquete binario para la mayoría de las distribuciones de GBU / Linux o Windows .

Para aquellos que quieran utilizar y probar la última versión de desarrollo, se puede proceder a la comprobación del repositorio de Subversion mediante el comando:

 



 svn checkout https://svn.sqlmap.org/sqlmap/trunk/sqlmap sqlmap-dev

 
Tenga en cuenta que el código está desarrollando, el repositorio Subversion a menudo contiene versiones de sufrimiento sqlmap de errores que pueden afectar significativamente el funcionamiento del software.

Estrategias de investigación

sqlmap implementa tres estrategias para verificar la existencia de una vulnerabilidad en SQL Injection:

  • UNION ALL: El Príncipe de las técnicas de explotación de una inyección SQL consiste en utilizar un UNION ALL para conectarse a los datos del resultado legítimo de una consulta en segundo lugar, insertar los parámetros sqlmap vulnerables aplicación en una cadena de consulta que contiene UNION ALL SELECT que 'a', null ..., la identificación de los resultados si la ejecución se ha realizado correctamente;
  • Consultas apilados: medios para consultar varias consultas apilados, apilarlos en una sola llamada. Contrariamente a las afirmaciones de muchos, no es para determinar si el DBMS puede utilizar esta técnica, pero la pareja DBMS / Web Framework: ejemplo más conocido es el MS SQL Server ASP / ASP.NET y PHP, pero esta característica es también están disponibles en PostgreSQL con ASP / ASP.NET / PHP y MySQL con ASP.NET. Si las consultas apilados están habilitados y la aplicación es vulnerable, es posible insertar código SQL arbitrario simplemente mediante la interrupción de la consulta actual mediante la introducción de un nuevo y seguir (por ejemplo '; SELECT ..., -);
  • De inyección SQL ciega inferencial, inyección SQL, no todos son fácilmente reconocibles: la salida más obvia mostrar información de error en la página web que permiten una fácil identificación y explota, mejor que otros en ambientes configurado, la salida no muestra ninguna diferencia si la consulta tiene errores de sintaxis. Estos últimos son mucho más difíciles de identificar y explotar debido a que el atacante necesariamente debe proceder "a ciegas", pero en cualquier caso, hay algunas pruebas basadas en la lógica booleana y los tiempos de respuesta que permitan determinar con un alto grado de confianza de la presencia de una inyección SQL, sqlmap implementa varios cheques de este tipo, destinada a cubrir la mayor parte de la serie.

En la misma categoría ...
E-Learning
MS Access (Avanzado) MS Access (Avanzado)
Aprenda a crear y gestionar bases de datos rápida y fácilmente. A partir de 29 €.
OpenOffice (Ebook) OpenOffice (Ebook)
El software de código abierto para la gestión del trabajo de oficina. A tan sólo 25 €.
Web Marketing (Curso) Web Marketing (Curso)
Promoción del sitio, los motores de búsqueda y marketing. A partir de 39 €.
Enlaces patrocinados