3. Seguridad App y BD
Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 3
Introducción
1. Autenticación
2. Autorización
3. Ataques en la parte del cliente
4. Ejecución de Comandos
5. Revelación de Información
6. Ataques de Tipo Lógico
4. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 4
Introducción
5. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 5
Introducción
6. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 6
Introducción
7. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 7
Clasificación de los 10 principales riesgos de seguridad en la
web de OWASP
1. A1 – Inyección
2. A2 - Ruptura de autentificación
3. A3 - Exposición de datos sensibles
4. A4 - Entidades externas XML (XXE)
5. A5 - Control de acceso con fallo
6. A6 - Configuración de seguridad incorrecta
7. A7 - Cross-Site Scripting (XSS)
8. A8 - Deserialización insegura
9. A9 - Uso de componentes con vulnerabilidades conocidas
10. A10 - Registro y supervisión insuficientes
8. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 8
1. A1 – Inyección
Los fallos causados por inyección (como la inyección SQL) se producen
cuando se envían datos maliciosos a un intérprete, que pueden ser
interpretados como comandos o consultas que pueden permitir acciones
no deseadas.
¿Cómo prevenirlo?
Para evitar este tipo de ataques, es necesario validar si los datos que
trafican las APIs contienen comandos recursivos en SQL, JSON o XML,
entre otros, y evitar completamente el uso del intérprete, proporcionando
una interfaz parametrizada.
Cómo mitigar este riesgo con API Management
Puede aplicar interceptores con protección contra amenazas SQL,
protección contra amenazas JSON y protección contra amenazas XML.
9. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 9
1. A2 - Ruptura de autenticación
Los usuarios pueden apoderarse o comprometer la
autenticación mediante claves, contraseñas o cookies, con
diversas técnicas y obtener un acceso no autorizado.
¿Cómo prevenirlo?
Es importante utilizar una comunicación segura con SSL
bidireccional y estándares de autenticación (como OAuth)
Cómo mitigar este riesgo con API Management
Habilitar la comunicación SSL bidireccional y la autenticación
OAuth 2.0.
10. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 10
1. A3 - Exposición de datos sensibles
Los datos sensibles podrían quedar expuestos si se registran y no se cifran o se utilizan con
claves débiles en su generación y gestión, así como algoritmos o técnicas de hashing
deficientes.
¿Cómo prevenirlo?
es posible utilizar la ofuscación de registros y datos, cifrar el canal de comunicación y utilizar
SSL bidireccional.
Es importante no almacenar datos sensibles si no es necesario y cifrarlos, tanto en reposo
como en tránsito.
Desactive siempre la función "autocompletar" en los formularios y en la caché de las páginas
que contienen datos sensibles.
Cómo mitigar este riesgo con API Management
Además de la comunicación con SSL bidireccional, habilite la ofuscación de datos, la
ofuscación de registros y la criptografía.
11. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 11
1. A4 - Entidades externas XML (XXE)
Muchos procesadores XML antiguos permiten la especificación de una entidad
externa, abarcando un URI sin referencia y evaluado durante el procesamiento
XML. Este fallo permite extraer datos, realizar peticiones en el servidor, escanear
sistemas internos y realizar ataques DoS (Denegación de Servicio), entre otros
¿Cómo prevenirlo?
Aplique correcciones o actualice los procesadores XML, las bibliotecas y sus
dependencias, compruebe si la carga de XML o XSL realiza la validación, utilice la
validación de la lista blanca input y desactive el procesamiento de XXE y DTD.
Considere el uso de parches virtuales, seguridad de la API gateway o WAFs.
Cómo mitigar este riesgo con API Management
Habilite el módulo API de seguridad gateway , cree listas blancas y aplique el
interceptor para la protección contra amenazas XML.
12. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 12
1. A5 - Control de acceso con fallo
Ocurre cuando hay referencias internas para objetos (como un archivo,
carpeta. o registro) sin control de acceso, que pueden ser manipuladas
para un acceso no deseado.
¿Cómo prevenirlo?
Para mitigar este riesgo, es importante crear referencias indirectas a
objetos por usuario o sesión y verificar el acceso de fuentes no fiables
en el uso de referencias directas. El límite de la tasa de la API puede
minimizar los posibles daños. .
Cómo mitigar este riesgo con API Management
Aplique la autenticación con OAuth 2.0, la validación de acceso a los
recursos con Planes y el Límite de Tarifa
13. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 13
1. A6 - Configuración de seguridad incorrecta
Los usuarios pueden realizar acciones no deseadas debido a la falta de una
correcta configuración de seguridad.
¿Cómo prevenirlo?
El barrido automático y periódico es muy útil para detectar la falta de
actualizaciones, errores de configuración, uso de cuentas estandarizadas, etc. Es
importante contar con un proceso rápido y eficiente para implementar entornos
debidamente protegidos y mantenerlos actualizados, con una arquitectura que
ofrezca una separación segura de los componentes.. .
Cómo mitigar este riesgo con API Management
Creación y separación de Entornos, definición de Permisos de Despliegue, uso de
OAuth 2.0, creación y revocación de tokens, gestión centralizada y auditoría de
eventos.
14. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 14
1. A7 - Cross-Site Scripting (XSS)
En los ataques XSS, se añaden scripts antes de enviar los datos
al navegador y se ejecutan para secuestrar sesiones, redirigir a
sitios maliciosos o desfigurar páginas..
¿Cómo prevenirlo?
Debe comprobar las solicitudes y las respuestas para
asegurarse de que no contienen scripts... .
Cómo mitigar este riesgo con API Management
Aplicación específica del interceptor de protección contra
amenazas XSS para la verificación de patrones maliciosos..
15. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 15
1. A8 - Deserialización insegura
Las aplicaciones distribuidas con oyentes públicos o las aplicaciones que dependen del
mantenimiento del estado del cliente pueden probablemente adulterar los datos serializados.
¿Cómo prevenirlo?
No acepte objetos serializados de fuentes poco fiables o de serializaciones que sólo permitan
tipos de datos primitivos. Si eso no es posible, implemente comprobaciones de integridad o
criptografía en los objetos serializados para evitar la creación hostil de objetos o la
adulteración de datos. También se pueden aplicar restricciones de tipo estricto durante la
deserialización y antes de la creación del objeto. Otro punto es aislar el código de
deserialización, así como los ejecutados en entornos de muy bajos privilegios o contenedores
temporales. Es importante registrar en un log las excepciones y fallos de deserialización.
Restringir o monitorizar la conectividad de entrada y salida de los contenedores o servidores
que deserializan y configurar alertas para los casos en los que un usuario realice
constantemente la deserialización. .
Cómo mitigar este riesgo con API Management
Defina listas blancas para fuentes fiables, cree registros específicos para cada etapa del
funcionamiento de las API, realice el seguimiento de las llamadas y configure las alertas..
16. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 16
1. A9 - Uso de componentes con vulnerabilidades conocidas
El atacante puede identificar los componentes vulnerables a través del escaneo o
del análisis manual.
¿Cómo prevenirlo?
Utilizar herramientas para preparar un inventario de versiones y dependencias de
componentes (del lado del servidor y del lado del cliente). Supervise las
vulnerabilidades de los componentes desde fuentes públicas como NVD y utilice
software para el análisis automático. Además, es importante desactivar los
componentes que no se vayan a utilizar y aplicar actualizaciones y parches de
fuentes oficiales para evitar vulnerabilidades que puedan ser exploradas.
Cómo mitigar este riesgo con API Management
Aplique el interceptor de condiciones de coincidencia de cadenas para validar las
llamadas a las URL con vulnerabilidades conocidas.
17. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 17
1. A10 - Registro y supervisión insuficientes
El registro incorrecto de los fallos, la falta de alertas y el bloqueo permiten
al atacante seguir probando las vulnerabilidades hasta que una de ellas
sea explorable..
¿Cómo prevenirlo?
Utiliza formatos ampliamente utilizados como REST, GraphQL y JSON y
aplica los mecanismos de seguridad para garantizar una comunicación
segura, un fuerte esquema de autenticación y control de acceso, además
de las protecciones contra todo tipo de inyecciones.
Cómo mitigar este riesgo con API Management
Habilitar el rastreo de llamadas y el interceptor de registros, que puede
aplicarse en las etapas de procesamiento de las API, la configuración de
alertas y los paneles personalizados.
18. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 18
Datos de interés:
• NVD: Es el depósito del gobierno de EE. UU. De datos de
gestión de vulnerabilidades basados en estándares
representados mediante el Protocolo de automatización
de contenido de seguridad (SCAP). Estos datos permiten
la automatización de la gestión de vulnerabilidades, la
medición de la seguridad y el cumplimiento. El NVD
incluye bases de datos de referencias de listas de
verificación de seguridad, fallas de software relacionadas
con la seguridad, configuraciones incorrectas, nombres
de productos y métricas de impacto.
19. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 19
Datos de interés:
• OAuth: Es un estándar abierto que permite la autorización
segura mediante el uso de un API. En la actualidad se usa
desde octubre de 2012, en su versión OAuth 2.0, donde sus
principales mejoras son que ahora proporciona flujos de
autorización para aplicaciones web, de escritorio y teléfonos
móviles. Actualmente servicios como Google, Facebook, Azure
Active Directory, Github solo admiten el protocolo OAuth 2.0.
• Básicamente va a permitir que compartamos información de
nuestra cuenta con terceros. Es habitual hacerlo con Google o
Facebook, pero también otras plataformas como hemos
indicado. Esto va a facilitar el proceso y acortar los tiempos. Se
considera un estándar seguro y multiplataforma.
20. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 20
1. Autenticación
Un ataque a la autenticación es aquel que permite al atacante obtener
las credenciales de acceso a la aplicación mediante diversas técnicas.
Técnicas:
• Prueba y Error
• Ataque de fuerza bruta
• Ataque de diccionario
• Ataque de fuerza bruta de usuarios
• Ataque mixto
• Autenticación insuficiente
• Validación insuficiente en la recuperación de contraseñas
• Recuperación basada en preguntas predecibles
• Revelación de nombres de usuario u otra información
21. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 21
2. Autorización
Errores que surgen en sistemas que implementan de forma
incorrecta las medidas de autorización.
Casos:
• Autorización insuficiente
• Predicción de credenciales o sesión
• Periodo de expiración de sesión escaso
• Tiempo absoluto
• Tiempo de actividad
• Fijación de sesión. Ver gráfico
22. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 22
• Fijación de sesión.
23. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 23
3. Ataques en la parte del cliente
Son aquellos que no intentan realizar acciones maliciosas en el
servidor de la aplicación, sino en la parte del cliente que se
ejecuta o visualiza, por ejemplo, en el navegador.
Ellas son:
• Suplantación de contenido
• Cross-site scripting (XSS)
• Ataque persistente o almacenado
• Ataque no persistente o reflejado
• Ataque a través de DOM
• Contagio de ataques XSS
• Cross-site Request Forgery (CSRF)
• Clickjacking
24. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 24
• Clickjacking
25. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 25
3. Ejecución de comandos
Determinados ataques en las aplicaciones web no suponen accesos indebidos o
conseguir privilegios para realizar acciones en la misma, sino que van un poco más
allá permitiendo ejecutar comandos en el sistema operativo del servidor, en el
software instalado en el mismo o al que tiene acceso.
Algunas acciones son:
• Desbordamiento de buffer
• Desbordamiento de pila (stack overflow)
• Desbordamiento de montículo (heap overflow)
• Desbordamiento de enteros (integer overflow)
• LDAP Injection
• Comandos de Sistema Operativo
• SQL Injection
• Acceso a la aplicación mediante usuario y contraseña
• Obtención de contenido privado
• Borrado del contenido de una tabla
• Blind SQL Injection
• SSI Injection (Server-side Include)
• XPath Injection
26. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 26
4. Revelación de información
• Listado de directorio
• Información en buscadores
• Salto de directorios
• Elementos predecibles
• Inclusión de archivos
27. Tipologías de Ataques web
Luis Fernando Muñoz Pantoja - Universidad de Cundinamarca – 2021 - Diapositiva: 27
4. Ataques de tipo lógico
• Abuso de funcionalidad
• Envío de correo electrónico
• Bloqueo de cuentas
• Uso de aplicación como proxy
• Denegación de servicio
• Protección contra bots insuficiente
• Validación insuficiente de procesos