Mindmap
ATAQUES SQL INJECTION A BASE DE DATOS
Inhalt der Mindmap
ATAQUES SQL INJECTION A BASE DE DATOS
Lenguaje SQL
- En aplicaciones web, los campos de tipo input, textarea y hidden.
- Identificando los parametros que se pasan mediante el metodo GET y POST.
- Identificando los parametros guardados en el codigo HTML, que se pueden guardar y abrir como fichero de texto
- En los paquetes transmitidos y capturados, que luego pueden ser alterados para realizar peticiones maliciosas al servidor.
Referencias a la sintaxis de SQL
- Referencias SQL orientadas a entender los ejemplos del apartado
- USE <nombre_de_bbdd> : Determina la base de datos sobre la que se realizara la consulta.
- SELECT <columna, [columna] > SELECT* : Seleccion de columnas; multiples valores se dan separados por comas.
- FROM < tabla[, tabla] > : El lenguaje SQL permite seleccionar datos de multiples tablas.
- WHERE <condicion> : Aplicacion de filtros en los datos que deben ser recogidos por las consultas, aplicando igualdad de valores y concatenando condiciones mediante sentencias AND u OR.
- INNER JOIN : Una manera de filtrar datos utilizando multiples tablas.
- ORDER BY : Permite ordenar los registros por las columnas deseadas, por defecto de manera ascendente.
- GROUP BY : Permite agrupar los registros recogidos en funcion de las columnas que se especifiquen.
- ALIAS : Para clarificar o abreviar los nombres de atributos o de tablas es posible dar un alias o sobrenombre a dichos parametros.
- UNION : Une dos sentencias SQL en una sola.
- TOP : Devuelve los N primeros numeros de la tabla, siendo N el numero recibido como argumento.
- DISTINCT : Omite los registros cuyos campos seleccionados cponciden totalmente.
- DELETE : Indica la accion de borrar registros, archivos, etc.
- UPDATE : Modifica valores de una tabla.
- INSERT : Inserta valores en una tabla.
- CAST Y CONVERT : Convierte las expresiones de tipos de datos en otros tipos de datos.
- Caracteres especiales o palabras reservadas utiles para las sentencias SQL inyectadas.
- ; Delimitador de consultas para lanzar la sentencia actual.
- , Delimitador de cadenas de datos de caracteres y fichas.
- -- Delimitador de comentarios.
- /*...*/ Delimitador de comentarios.
- xp_ sp_ : Da inicio al nombre de procedimientos almacenados extendidos de catalogo, como xp_ cmdshell.
- EXEC o EXECUTE : Permite llamar a un procedimiento almacenado.
- USE : Define el nombre de la base de datos sobre la que se va a lanzar la sentencia.
- + Caracter de concantenacion en TSQL.
- CREATE : Utilizado para crear objetos en la BD
- DROP : Utilizado para destruir objetos en la BD
- ALTER : Utilizado para modificar objetos en la BD
- KILL : Provoca la finalizacion de un proceso de usuario.
- Tecnicas de inyeccion
- @@error : Devuelve 0 si la instruccion TSQL anterior no encontro error
- @@tracount : Numero de transacciones activas de la conexion.
- Host_id : ID de la estacion de trabajo.
- Host_name : Nombre de la estacion de trabajo.
- fn_servershareddrives : Contiene los nombres de las unidades compartidas por el servidor.
- Referencias SQL orientadas a entender los ejemplos del apartado
Introduccion a <<SQL injection>>
- Ataque basico de inyeccion
- Añadiendo complejidad a la inyeccion
Ataques de <<SQL injection>>
- <<SQL injection>> basada en mensajes de error (MSSQL)
- Enumeracion basada en mensajes de error
- Obtener los nombres de las tablas y sus atributos
- sum(expresion) : Devuelve un valor numerico, que es la suma de todos los valores de una expresion recibida como parametro.
- count(expresion) : Devuelve un valor de valores de la expresion recibida como parametro.
- avg(expresion) : Devuelve el promedio de los valores de la expresion recibida como parametro.
- max(expresion) : Devuelve el mayor valor de la expresionrecibida como parametro.
- min(expresion) : Devuelve el menor valor de la expresion recibida como parametro.
- Identificar el tipo de datos de las columnas
- Leer el contenido de las columnas de una tabla
- Ataques con BULK INSERT
- Particularidades en MYSQL
- Particularidades en Oracle
<<Bling SQL injection>>
- Conociendo las tablas de sistema
- <<Blind SQLi>> basado en respuestas TRUE / FALSE
- <<Blind SQLi>> basado en retardos de tiempo
- Retardos de tiempo generados mediante funciones
- Retardos de tiempo generados mediante consultas pesadas
Ataques <<MYSQL injection>> para crear una WEBSHELL
- Clausulas de MYSQL necesarias para el ataque
- Shell en el servidor web
- Pasos del ataque
- Alternativas ante problemas en el ataque
Ataque contra servidor de base de datos mediante metasploit
- <<Metasploit Framework>>
- Escaneo en busca de servidor de BBDD
- Obtencion de credenciales del servidor BBDD
- Conseguir el control del servidor (shell)
XML injection
Informationen
- Beschreibung
- Mindmap am ATAQUES SQL INJECTION A BASE DE DATOS, erstellt von YINELLY PAOLA FERRER MARTINEZ am 08/05/2020.
- Erstellt von
- YINELLY PAOLA FERRER MARTINEZ
- Aufrufe
- 2
- Bewertung