Eglain Antonio Mena EXPLOTACIÓN DE VULNERABILIDADES SQLI

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 13

Asignatura Datos del alumno Fecha

Apellidos: Mena Lemos


Seguridad en Bases
de Datos y
05/01/2019
Almacenamiento de
Nombre: Eglain Antonio
Datos Masivos

EXPLOTACIÓN DE VULNERABILIDADES SQLI

PRESENTADO POR
EGLAIN ANTONIO MENA LEMOS

UNIVERSIDAD INTERNACIONAL DE LA RIOJA EN MEXICO S.A (UNIR MEXICO)


SEGURIDAD EN BASES DE DATOS Y ALMACENAMIENTO DE DATOS MASIVOS
MAESTRIA EN SEGURIDAD INFORMATICA
QUIBDO-CHOCO
COLOMBIA
2019
Asignatura Datos del alumno Fecha
Apellidos: Mena Lemos
Seguridad en Bases
de Datos y
05/01/2019
Almacenamiento de
Nombre: Eglain Antonio
Datos Masivos

1. INTRODUCCIÓN

Como primero se instaló el Sistema Gestor de Base de Datos SGBD MYSQL, con el objetivo
principal de Explotar vulnerabilidades que afectan a sus bases de datos y poder auditar la
seguridad e implementar una guía de seguridad de la misma, con el uso de las buenas
prácticas de seguridad

En esta actividad, se analizará la seguridad del SGBD MYSQL haciendo uso de la


aplicación WAVSEP proporcionada en la guía, y los ataques SQLI utilizando los Exploit
que se recomiendan dentro de la categoría de ataques SQLI de WAVSEP Instalación de
aplicaciones

A continuación, se detallará de manera sencilla la instalación de las aplicaciones que se


utilizaron según la actividad propuesta y los manuales facilitados en la misma, con el
objetivo de realizar la explotación de los siguientes 3 casos:

Evaluation of SQLI injection detection accuracy – POST- Erroneous 200 responses:


Case01-InjectionInLogin-String-LoginBypass-With200Errors.jsp
Case02-InjectionInSearch-String-UnionExploit-With200Errors.jsp
Case05-InjectionInSearchOrderBy-String-BinaryDeliberateRuntimeError-
With200Errors.jsp
Asignatura Datos del alumno Fecha
Apellidos: Mena Lemos
Seguridad en Bases
de Datos y
05/01/2019
Almacenamiento de
Nombre: Eglain Antonio
Datos Masivos

2. INSTALACIÓN DEL SERVIDOR TOMCAT


Asignatura Datos del alumno Fecha
Apellidos: Mena Lemos
Seguridad en Bases
de Datos y
05/01/2019
Almacenamiento de
Nombre: Eglain Antonio
Datos Masivos

Instalación MySQL Community Server 5.5.62


Asignatura Datos del alumno Fecha
Apellidos: Mena Lemos
Seguridad en Bases
de Datos y
05/01/2019
Almacenamiento de
Nombre: Eglain Antonio
Datos Masivos

Password: toor
bases de datos creadas

Inicie el script de instalación:

Configuración correcta.
Asignatura Datos del alumno Fecha
Apellidos: Mena Lemos
Seguridad en Bases
de Datos y
05/01/2019
Almacenamiento de
Nombre: Eglain Antonio
Datos Masivos

Acceda a la aplicación en: http://localhost:8080/wavsep/ 

Se accede a los ejemplos de vulnerabilidad de aplicación web activa en:


http://localhost:8080/wavsep/active/index-main.jsp

Las páginas en esta sección solo deben contener vulnerabilidades detectables por escáneres
pasivos.

Para realizar la explotación de los siguientes 3 casos, según la actividad propuesta por el
docente, se acceder al siguiente enlace, que es en donde se encuentra el *.jsp referenciado:
Asignatura Datos del alumno Fecha
Apellidos: Mena Lemos
Seguridad en Bases
de Datos y
05/01/2019
Almacenamiento de
Nombre: Eglain Antonio
Datos Masivos

http://localhost:8080/wavsep/active/SQL-Injection/SInjection-Detection-Evaluation-
POST-200Error/index.jsp
Asignatura Datos del alumno Fecha
Apellidos: Mena Lemos
Seguridad en Bases
de Datos y
05/01/2019
Almacenamiento de
Nombre: Eglain Antonio
Datos Masivos

3. CASOS DE PRUEBA DE INYECCIÓN

3.1 Para el caso 1, donde se puede evidenciar el ataque (InjectionInLogin-


String-LoginBypass-With200Errors.jsp)
Inyección en valores de cadena en el alcance de una consulta dentro de una página de
inicio de sesión con respuestas erróneas.

En este tipo de caso, lo que se refleja es la manera de vulnerar inyectando caracteres en los
campos de nombre de usuario y contraseña, como se puede evidenciar en los siguientes
exploit.

Exploit (both input fields): 'or'7'='7


Independent Exploit 1: ' or 7=7-- 
Independent Exploit 2: ' or 7=7# 
Independent Exploit 3: ' or 7=7/* 

En cada caso del método de ataque, se puede visualizar que los Exploit mencionados en el
apartado funciona correctamente para la respectiva inyección.
Asignatura Datos del alumno Fecha
Apellidos: Mena Lemos
Seguridad en Bases
de Datos y
05/01/2019
Almacenamiento de
Nombre: Eglain Antonio
Datos Masivos

En el caso del Independent Exploit 3: ' or 7=7/*  no funciona correctamente, como se


puede evidenciar en la siguiente figura.

3.2Para el caso 2, donde se puede evidenciar el ataque (InjectionInSearch-


String-UnionExploit-With200Errors.jsp)

Inyección en valores de cadena en el alcance de una consulta dentro de una página de


búsqueda con respuestas erróneas.

En este tipo de caso, lo que se refleja es la manera de vulnerar inyectando una sentencia en
SQL como es la Union y conservando la estructura del mensaje de los caracteres en el
campo designado para el mensaje, como se puede evidenciar en los siguientes exploit.

' UNION SELECT [int], [string], [string] FROM [table] [comment mark][space]
Exploit: 'or'7'='7
MSSQL Exploit: ' UNION SELECT id, name, 'jfks' FROM sysobjects-- 
MySQL Exploit: ' UNION SELECT 1, table_name, 'jfks' FROM
information_schema.tables-- 
MySQL Exploit (No Comments): ' UNION SELECT 1, table_name, 'jfks' FROM
information_schema.tables WHERE table_name like'% 
Asignatura Datos del alumno Fecha
Apellidos: Mena Lemos
Seguridad en Bases
de Datos y
05/01/2019
Almacenamiento de
Nombre: Eglain Antonio
Datos Masivos

Se introduce los parámetros ' UNION SELECT 1, table_name, 'jfks' FROM


information_schema.tables-- y se pede evidenciar que genera un error de sintaxis, por
lo tanto, no se puede acceder a la base de datos.

Los parámetros correctos ' UNION SELECT 1, table_name, 'jfks' FROM


information_schema.tables WHERE table_name like'%  y se puede evidenciar el
acceso a la tabla con las columnas de Título y mensaje.
Asignatura Datos del alumno Fecha
Apellidos: Mena Lemos
Seguridad en Bases
de Datos y
05/01/2019
Almacenamiento de
Nombre: Eglain Antonio
Datos Masivos

Las medidas de corrección pueden ser:


 Desactivar lógicamente los errores que se muestren en pantalla.
 Usar consultas parametrizadas.
 Utilizar herramientas como SQLMap o GreenSQL.

3.3Para el caso 5, donde se puede evidenciar el ataque


(InjectionInSearchOrderBy-String-BinaryDeliberateRuntimeError-
With200Errors.jsp)

Inyección en una cláusula orden por en el alcance de una consulta dentro de una página de
búsqueda con respuestas erróneas que tiene que ver con sentencias de tipo order by.

A single result in the subquery (or none) will not cause a runtime exception, more will
MSSQL Exploit: (SELECT 1 FROM sysobjects WHERE name like'sysusers')-- 
MySQL Exploit (No Comments): (SELECT 1 FROM information_schema.`TABLES`
WHERE TABLE_NAME like'FILES') 
Asignatura Datos del alumno Fecha
Apellidos: Mena Lemos
Seguridad en Bases
de Datos y
05/01/2019
Almacenamiento de
Nombre: Eglain Antonio
Datos Masivos

Se hace uso de la sentencia (SELECT 1 FROM sysobjects WHERE name like'sysusers')--


según los exploit para la respectiva inyección para vulnerar la base de datos.

Arroja un error de sintaxis, por ente, no se puede acceder a la base de datos.

Se hace uso de la sentencia (SELECT 1 FROM information_schema.`TABLES` WHERE


TABLE_NAME like'FILES') según los exploit para la respectiva inyección para vulnerar la
base de datos.

A lo anterior, se puede acceder a la base de datos y poder obtener información.

Las medidas de corrección pueden ser:


 Desactivar lógicamente los errores que se muestren en pantalla.
 Usar consultas parametrizadas.
Asignatura Datos del alumno Fecha
Apellidos: Mena Lemos
Seguridad en Bases
de Datos y
05/01/2019
Almacenamiento de
Nombre: Eglain Antonio
Datos Masivos

 Utilizar herramientas como SQLMap o GreenSQL.

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy