Sqlmap es una herramienta de prueba de penetración de código abierto que automatiza el proceso de detección y explotación de vulnerabilidades de inyección SQL y toma de servidores de bases de datos. Viene con un potente motor de detección, muchas funciones de nicho para el mejor probador de penetración y una amplia gama de interruptores que van desde la toma de huellas dactilares de la base de datos, la obtención de datos de la base de datos hasta el acceso al sistema de archivos subyacente y la ejecución de comandos en el sistema operativo a través de out- conexiones fuera de banda.
Las características implementadas en sqlmap incluyen:
- Soporte completo para los sistemas de administración de bases de datos MySQL , Oracle , PostgreSQL , Microsoft SQL Server , Microsoft Access , IBM DB2 , SQLite , Firebird , Sybase , SAP MaxDB y HSQLDB .
- Soporte completo para cinco técnicas de inyección de SQL: ciego basado en booleanos, ciego basado en tiempo, basado en errores , consultas UNION y consultas apiladas .
- Soporte para conectarse directamente a la base de datos sin pasar por una inyección de SQL, al proporcionar las credenciales de DBMS, la dirección IP, el puerto y el nombre de la base de datos.
- Es posible proporcionar una sola URL de destino, obtener la lista de objetivos de los archivos de registro de solicitudes de proxy de Burp o WebScarab , obtener la solicitud HTTP completa de un archivo de texto u obtener la lista de objetivos proporcionando sqlmap con un tonto de Google que consulta a Google motor de búsqueda y analiza su página de resultados. También puede definir un ámbito basado en expresiones regulares que se utiliza para identificar cuál de las direcciones analizadas probar.
- Las pruebas proporcionaron parámetros GET , parámetros POST , valores de encabezado de cookie HTTP, valor de encabezado de agente de usuario HTTP y valor de encabezado de referencia HTTP para identificar y explotar vulnerabilidades de inyección SQL. También es posible especificar una lista separada por comas de parámetros específicos para probar.
- Opción para especificar el número máximo de solicitudes HTTP(S) simultáneas (multihilo) para acelerar las técnicas de inyección ciega de SQL. Viceversa, también es posible especificar la cantidad de segundos que se mantendrán entre cada solicitud HTTP(S). También se implementan otros interruptores de optimización para acelerar la explotación.
Cookie
Soporte de cadena de encabezado HTTP , útil cuando la aplicación web requiere autenticación basada en cookies y usted tiene dichos datos o en caso de que solo desee probar y explotar la inyección de SQL en dichos valores de encabezado. También puede especificar que siempre se codifique como URL la cookie.- Maneja automáticamente el encabezado HTTP
Set-Cookie
de la aplicación, restableciendo la sesión si caduca. También se admite la prueba y la explotación de estos valores. Viceversa, también puede obligar a ignorar cualquier encabezado de Set-Cookie . - Protocolo HTTP Soporte de autenticaciones Basic, Digest, NTLM y Certificate .
- Compatibilidad con proxy HTTPS para pasar las solicitudes a la aplicación de destino que también funciona con solicitudes HTTPS y con servidores proxy autenticados.
- Opciones para falsificar el valor del encabezado HTTP
Referer
y el valor del encabezado HTTPUser-Agent
especificado por el usuario o seleccionado aleatoriamente de un archivo de texto. - Soporte para aumentar el nivel de verbosidad de los mensajes de salida : existen siete niveles de verbosidad.
- Soporte para analizar formularios HTML desde la URL de destino y falsificar solicitudes HTTP(S) contra esas páginas para probar los parámetros del formulario contra vulnerabilidades.
- Granularidad y flexibilidad en términos de interruptores y funciones del usuario.
- Soporte de tiempo estimado de llegada para cada consulta, actualizado en tiempo real, para proporcionar al usuario una visión general de cuánto tiempo llevará recuperar el resultado de las consultas.
- Guarda automáticamente la sesión (consultas y su salida, incluso si se recupera parcialmente) en un archivo de texto en tiempo real mientras obtiene los datos y reanuda la inyección analizando el archivo de la sesión.
- Soporte para leer opciones desde un archivo INI de configuración en lugar de especificar cada vez todos los cambios en la línea de comando. Soporte también para generar un archivo de configuración basado en los conmutadores de línea de comandos proporcionados.
- Compatibilidad con la replicación de la estructura y las entradas de las tablas de la base de datos back-end en una base de datos SQLite 3 local.
- Opción para actualizar sqlmap a la última versión de desarrollo desde el repositorio de subversion.
- Soporte para analizar respuestas HTTP(S) y mostrar cualquier mensaje de error de DBMS al usuario.
- Integración con otros proyectos open source de seguridad informática, Metasploit y w3af .
- Más …
Es especialista en ciberseguridad con más de 16 años de experiencia en seguridad de la información. Conoce muy bien la inteligencia de amenazas, la gestión de riesgos, la evaluación de vulnerabilidades y las pruebas de penetración, el análisis forense cibernético y la tecnología de seguridad en la nube (AWS, Azure, Google Cloud). Ocupó varios puestos de investigador de ciberseguridad en diferentes empresas. Tiene experiencia en diferentes industrias como finanzas, atención médica, marketing, gobierno, finanzas turísticas, aerolíneas, telecomunicaciones y biometría.