Adrian Eguez
Windows, Mobile and Web Developer with Node.js and Angular, Proffesor in Escuela Politécnica Nacional
TOP 10
Manticore labs
Vulnerabilidades en la Web
2018
MSc. Adrián Égüez
Open Web Application Security Project
Fuente: https://www.owasp.org/
Manticore labs
MSc. Adrián Égüez
Desarrollen, adquieran y mantengan aplicaciones y APIs en las que se pueda confiar
Comunidad
Open Source
Open Web Application Security Project
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Presentaciones
Herramientas Estándares
Libros seguridad, revisión y desarrollo de aplicaciones
Videos
CheatSheets
Bibliotecas de Seguridad
Investigaciones
Conferencias
Listas de correo
Manticore labs
¿Qué ha cambiado?
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Nodejs
Angular React
Microservicios
(confianza, contenedores, secretos)
Legacy Code
SPA
PWA
API
Manticore labs
Riesgos
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
A8:2017 – Deserialización Insegura,
A4:2017 – Entidades Externas XML (XXE)
A10:2017 – Registro y Monitoreo Insuficientes,
Manticore labs
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Manticore labs
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
¿Merecen atención?
Manticore labs
¿Cuales?
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Fáciles
Sin consecuencias
Dificiles
Quiebra
Manticore labs
Riesgo
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Manticore labs
TOP 10
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Identificar riesgos mas críticos organizaciones
En resumen (aplicarlo a su negocio)
Información sobre la probabilidad
Cada organización es única
Información sobre el impacto técnico
Manticore labs
TOP 10
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
A1: Inyección
A2: Perdida autenticación
A3: Exposición de datos sensibles
SQL, NoSQL LDAP
Sesiones mal implementadas
Hash / Crypto
Manticore labs
TOP 10
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
A4: Entidades Externas XML (XXE)
A5: Pérdida de Control de Acceso
A6: Configuración de Seguridad Incorrecta
Subir y Ejecutar código
UserAdmins
Innecesarias caracteristicas
Manticore labs
TOP 10
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
A7: Secuencia de Comandos en Sitios Cruzados XSS
A8: Deserialización Insegura
A9: Componentes con vulnerabilidades conocidas
Ejecutar JS en HTML
Código malicioso
Librerías
Manticore labs
TOP 10
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
A10: Registro y Monitoreo Insuficientes
Tiempo de detección 200 días
Manticore labs
Inyección
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Son comunes / Fáciles de encontrar
Web service / Variables de Entorno / Parámetros
Divulgación / Perdida / Corrupcioón / Denegación de acceso
E
P
D
T
Manticore labs
Dónde
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Consultas SQL / NoSQL / LDAP / XPath / Comando S.O. / encabezados SMPT / ORM
No validar filtrar datos / Consultas dinámicas /
Mal uso ORM /
E
P
D
T
Manticore labs
Herramientas de análisis
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
SAST
DAST
E
P
D
T
Manticore labs
Prevención
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
E
P
D
T
Separar los datos de los comandos y las consultas
ORM
Escape caracteres especiales
Utilice LIMIT
Manticore labs
Autenticación
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Son comunes / Medios manuales
Listas de Hash o Usuario y Password conocidos
Una cuenta de administrador es lo único necesario
E
P
D
T
Manticore labs
¿Es vulnerable?
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Ataques de fuerza bruta
Listas credenciales conocidas
Procesos inefectivos recuperar contraseña
E
P
D
T
Multi factor / Texto plano
Manticore labs
Escenarios
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Uso de listas de contraseñas conocidas
Relleno automático de credenciales
Rotación / Contraseña único factor
E
P
D
T
Tiempos de vida de las sesiones
Manticore labs
Prevención
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Prevención contraseñas debiles
Multi Factor / No credenciales por defecto
E
P
D
T
Tiempos de vida de las sesiones
Manticore labs
Datos Sensibles
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Mayor impacto / Explotabilidad variable
Man in the Middle / Ataque manual
Información personal sensible / Tarjetas de Crédito
E
P
D
T
Manticore labs
Necesidad de protección
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Algoritmos obsoletos, MD5, SHA1
Datos en Transito y en Almacenamiento
Rotación y gestión de claves criptográficas
E
P
D
T
¿Cifrado?
Manticore labs
Escenarios
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
No usar o forzar el uso de TLS / Cifradores débiles
Descifrado automático
Rotación y gestión de claves criptográficas
E
P
D
T
Encabezados web
Manticore labs
Prevención
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Definir controles para cada clasificación
Clasificar los datos procesados
No almacenar datos sensibles innecesarios / Tokenización
E
P
D
T
Cifrar / Deshabilitar el cache
Manticore labs
Entidades Externas XML
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Permite especificación de una entidad externa URI Referencia y Evalúa
Explotar procesadores XML
E
P
D
T
Extracción información / Ejecución / Escanning
Manticore labs
Necesidad de Protección
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Acepta XML / Carga XML / Inserta datos en un XML / Procesador
Preprocesadores SOAP / Prevention Cheatseet
E
P
D
T
SAML - XML / SSO
SOAP < 1.2 / Billion Laughs
Manticore labs
Escenarios
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Dependencias anidadas
Extraer datos del servidor
E
P
D
T
Escanear la red privada del servidor
Archivo infinito / DoS
Manticore labs
Prevención
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Datos menos complejos (JSON) / Evitar serialización Datos confidenciales
Actualizar bibliotecas y procesadores / SOAP > 1.2
E
P
D
T
Deshabilitar entidades externas
Whitelists / Filtrado / Sanitización
Manticore labs
Perdida de Control
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Detectabilidad manual o automática
Común por la falta de detección automática o pruebas funcionales
E
P
D
T
Actuar cómo administradores, usuarios u otros
Manticore labs
¿Es Vulnerable?
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Usuarios con sus permisos
Modificación de URL con herramientas de ataque o conexión a API's
E
P
D
T
Cambiar el FK y obtener permisos elevados
Reproducir JWT / Acceder CORS POST PUT DELETE
Manticore labs
Escenarios
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Datos no validados sentencia SQL
Acceder a API's y obtener información de otras cuentas
E
P
D
T
Acceder a URLs sin tener privilegios
Manticore labs
Prevención
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Si no es público, denegar el acceso / CORS
Implementar mecanismos de acceso y control y reutilizarlo
E
P
D
T
Invalidar JWT cuando finalice la sesión.
Manticore labs
Seguridad Incorrecta
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Acceder a vulnerabilidades no parcheadas / Cuentas por defecto / Conocer el negocio
Escaneres detectan en diferentes stacks tecnológicos configuraciones incorrectas
E
P
D
T
Acceso a algunos datos, funciones o servicios
Manticore labs
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Falta de Hardening / Permisos mal configurados
Habilitar características innecesarias
E
P
D
T
Cuentas por defecto y passwords predeterminadas
Mensajes demasiado informativos
¿Es vulnerable?
Manticore labs
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Ejemplos no eliminados de servidores con vulnerabilidades de seguridad conocidas
E
P
D
T
Listado de directorios permite obtener archivos, descompilarlos y hacer reingeniería inversa
Escenarios
Manticore labs
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Procesos seguros de instalación
E
P
D
T
Plataformas minimalistas y eliminación de funcionalidades no utilizadas
Entornos de seguridad iguales en QA Producción
Prevención
Manticore labs
XSS
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Herramientas automatizadas y KITs de explotación gratuitos
Se encuentra en 2/3 de las aplicaciones JSP J2EE PHP ASP
E
P
D
T
XSS Reflejado / DOM / Almacenado
Robar Credenciales / Sesiones / Instalación de software
Manticore labs
XSS
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Herramientas automatizadas y KITs de explotación gratuitos
Se encuentra en 2/3 de las aplicaciones JSP J2EE PHP ASP
E
P
D
T
XSS Reflejado / DOM / Almacenado
Robar Credenciales / Sesiones / Instalación de software
Manticore labs
Es vulnerable
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Reflejado app utiliza datos sin válidar transforman JS o HTML
E
P
D
T
Contenido dinámico controlable por el atacante
Almacenado app almacena datos proporcionados por el usuario
Manticore labs
Escenarios
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Datos no confiables en la construcción de HTML
E
P
D
T
Enviar sesiones a otros servidores / Keyloggers
Apropiación de la cuenta / Evasión autenticación factor múltiple / troyanos
Manticore labs
Prevención
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Frameworks seguros
E
P
D
T
Manticore labs
Deserialización
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Explotabilidad es difícil porque no siempre funcionan sin cambios al código fuente
Está en el TOP 10 por una encuesta / Descubre con ayuda manual
E
P
D
T
Ejecución remota de código
Manticore labs
¿Es vulnerable?
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Deserializar objetos de un atacante
Cambiar comportamiento de una aplicación con código remoto
E
P
D
T
Modifica estructuras de datos
RPC / IPC / Web Services / Brokers de Mensajes / Caching / Persistencia
Manticore labs
Escenarios
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Serializar estado del usuario y pasarlos en ambos sentidos
Super cookie con ID ROL etc.
E
P
D
T
Manticore labs
Prevención
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
NO ACEPTAR OBJETOS SERIALIZADOS
Firmas digitales
E
P
D
T
Cumplimiento estricto de verificación de tipo de dato
Registrar excepciones de serialización
Manticore labs
Vulnerabilidades Conocidas
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Sencillo exploits conocidos, otros requieren esfuerzo considerable
Muy difundidos, puede usar analizadores como retire.js
E
P
D
T
Depende de la vulnerabilidad
Manticore labs
¿Es vulnerable?
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Desconocimiento de los componentes que se utiliza
Software sin soporte o desactualizado / Sin parches o actualizaciones / Aplicación parches mensual trimestral
E
P
D
T
Falta de análisis de componentes ni de boletines de seguridad
Manticore labs
Escenarios
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Mismos privilegios que la aplicación, fallas en impactos serios
EJ: Struts
E
P
D
T
Dispositivos IoT difíciles de actualizar
Manticore labs
Prevención
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Eliminación archivos innecesarios
Inventario de versiones de componentes Dependency Check
E
P
D
T
Monitorear fuentes de vulnerabilidades / Componentes de orígenes oficiales
Manticore labs
Monitoreo
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Es la base de casi todos los grandes incidentes
Atacantes dependen de esto
E
P
D
T
Registrar lo suficiente / Exploración de vulnerabilidades
Examinar los registros después de pruebas de penetración
Manticore labs
Monitoreo
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Inicios de sesión / Fallos de sesión / Transacciones de alto valor
Registros poco claros / Inadecuados / En absoluto
E
P
D
T
No generar alertas con herramientas de Hackeo
APIs no monitoreadas
Manticore labs
Escenarios
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Pequeñas brechas pueden llevar a grandes brechas por falta de monitoreo y alertas
Escanear usuarios por contraseñas por defecto
E
P
D
T
Detección de malware no monitoreado
Manticore labs
Prevención
Fuente: https://www.owasp.org/
MSc. Adrián Égüez
Registrar eventos importantes
Alertar transacciones de alto impacto
E
P
D
T
Trazas de Auditoría en transacciones de alto valor
Gestión de Monitoreo y Alerta Efectivos / Respuesta o Plan de Recuperación de Incidentes
Manticore labs
MSc. Adrián Égüez
Manticore labs
By Adrian Eguez
Vulnerabilidades en la Web
Windows, Mobile and Web Developer with Node.js and Angular, Proffesor in Escuela Politécnica Nacional