GoConqr has a new look! Let us know what you think.

Mind map

ATAQUES SQL INJECTION A BASE DE DATOS

YINELLY PAOLA FERRER MARTINEZ Spanish

Map content

ATAQUES SQL INJECTION A BASE DE DATOS

  1. 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.
  2. 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.
  3. Introduccion a <<SQL injection>>

    • Ataque basico de inyeccion
    • Añadiendo complejidad a la inyeccion
  4. 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
  5. <<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
  6. 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
  7. 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)
  8. XML injection

Information

Description
Mind Map on ATAQUES SQL INJECTION A BASE DE DATOS, created by YINELLY PAOLA FERRER MARTINEZ on 08/05/2020.
Views
2
Rating

Feedback

What is it about?

What do you think of the new look?

How do you like it?