Ciberseguridad en Servicios y Aplicaciones.
0. Introducción
Estos son los apuntes de la asignatura Ciberseguridad en Servicios y Aplicaciones, impartida por la Universidad de Málaga.
En esta página se proporcionará un breve resumen del contenido de cada tema.
1. Fundamentos de Seguridad.
En este tema se repasan los conceptos básicos que rodean la ciberseguridad. El índice de este tema:
- Introducción.
- Seguridad de la información: Conceptos.
- Ciclo de vida de la Seguridad.
- Modelo básico de escenario de Seguridad.
- Ataques básicos.
- Servicios y mecanismos de Seguridad.
- Las cinco categorías fundamentales.
- Confidencialidad.
- Integridad.
- Autenticidad
- Autenticación (Control de Acceso).
- No repudio.
- Jerarquía (Servicios, Protocolos, Mecanismos, Técnicas, etc.)
- Las cinco categorías fundamentales.
2. Técnicas Criptográficas Básicas y servicios de seguridad asociados.
En este tema se estudian las diferentes técnicas criptográficas básicas (Clásicas, Simétricas y Asimétricas), además de otros servicios asociados, como las funciones HASH o las funciones MAC. El índice es el siguiente:
- Criptografía clásica.
- Cifrado por sustitución y transposición. Ejemplos.
- Cifrado Producto.
- Cifrado Vernman (one-time-pad).
- Algoritmos simétricos (clave privada).
- Fundamentos.
- Algoritmo DES.
- Algoritmo triple-DES.
- Otros algoritmos simétricos.
- Modos de operación para algoritmos simétricos.
- Ventajas y desventajas de los algoritmos simétricos.
- Algoritmos asimétricos (clave pública)
- Cifrado / Descifrado.
- Firma digital.
- Intercambio de claves.
- Algoritmo de Diffie-Hellman.
- Algoritmo RSA.
- Otras primitivas criptográficas.
- Funciones HASH.
- Códigos de autenticación de mensajes.
3. Esquemas, Protocolos y Mecanismos de Soporte.
- Primera Parte: Gestión de claves y protocolos de soporte.
- El problema de la distribución de claves simétricas.
- Mecanismos contra ataques de repetición.
- Timestamps.
- Nonces (núnicos).
- Combinación de ambas estrategias.
- Modelos de KDC: Simple, PULL y PUSH.
- Modelo simple — “La Rana de la Boca Grande”.
- Modelo PULL.
- Modelo PUSH.
- Protocolo Needham-Schroeder.
- Amended Needham-Schroeder.
- Protocolo Otway-Rees.
- Protocolo Kerberos — Single Sign-On (SSO).
- Protocolos avanzados (combinaciones PULL + PUSH).
- Yahalom.
- Neuman-Stubblebine.
- Kao-Chow.
- Segunda Parte: PKI y Certificados.
- El problema de la autenticidad de la clave pública.
- Estructura del certificado X.509.
- Uso de claves: X.509v3 Key Usage.
- Infraestructura de Clave Pública (PKI) y cadenas de confianza.
- Revocación de certificados — CRL y OCSP.
- Tercera Parte: Tarjetas inteligentes y DNI electrónico.
- Tarjetas inteligentes (smartcards) — clasificación
- El DNI electrónico (DNI-e)
- Hardware — chip ST19WL34 y acelerador criptográfico
- Zonas de memoria — pública, privada y de seguridad
- Generación y custodia de claves privadas
- Revocación y validación — OCSP en el DNI-e
- Cuarta Parte: Mecanismos de autenticación
- Mecanismos de autenticación de usuarios
- Clasificación de factores de autenticación
- Factor CONOZCO — Autenticación por contraseña
- Salt: almacenamiento seguro de contraseñas
bcrypt— función hash adaptativa- Principios del salt (resumen)
- Factor TENGO — Tokens físicos
- Ejemplo: DNI electrónico (DNI-e)
- Factor SOY — Autenticación biométrica
- Comparativa de factores de autenticación
- Autenticación de doble factor (2FA)
- Autenticación basada en códigos QR
- Single Sign-On (SSO)
- Mecanismos de control de acceso
- Fundamentos del control de acceso
- Elementos básicos del control de acceso
- Categorías de mecanismos de control de acceso
- DAC — Control de acceso discrecional
- Matriz de acceso
- Access Control List (ACL) — descomposición por columnas
- Ticket de capacidades (Capability List) — descomposición por filas
- MAC — Control de acceso obligatorio
- RBAC — Control de acceso basado en roles
- Entidades del modelo RBAC
- Restricciones en RBAC
- Extensiones del modelo NIST
- ABAC — Control de acceso basado en atributos
- Modelos adicionales de control de acceso
- CapBAC — Control de acceso basado en capacidades
- Risk-Based Access Control
- OrBAC — Control de acceso basado en la organización
- Comparativa global de modelos de control de acceso
- Quinta parte: Protocolos criptográficos avanzados
- Introducción a los protocolos criptográficos
- Protocolo de división de secretos
- Concepto
- Ejemplo con 2 personas (XOR)
- Extensión a 4 personas
- Protocolo de compartición de secretos (Secret Sharing)
- Fundamento matemático: interpolación polinómica
- Ejemplo — esquema umbral (3, 5)
- Comparativa: división vs. compartición
- Protocolos de bit-commitment
- Solución con criptografía simétrica
- Solución con funciones hash
- Protocolos de lanzamiento de moneda
- Concepto
- Solución con criptografía asimétrica
- Protocolo de póker mental
4. Seguridad y Privacidad en Aplicaciones Telemáticas.
- Primera parte: Herramientas de seguridad y comunicación segura
- Red Team y Blue Team
- Red Team
- Blue Team
- Herramientas Red Team
- Sistemas operativos especializados
- Kali Linux
- Parrot Security OS
- Principales herramientas en Linux
- Descripción detallada de herramientas clave
- Hydra — fuerza bruta
- Nmap y Zenmap — rastreo y fingerprinting
- Wireshark — captura de tráfico (sniffing)
- Scapy — manipulación de paquetes
- Ettercap — ataques Man-in-the-Middle
- MITRE ATT&CK
- Sistemas operativos especializados
- Seguridad en email: PGP y S/MIME
- PGP (Pretty Good Privacy)
- Servicios de PGP
- Esquema de transmisión PGP
- Gestión de claves: anillos de claves
- OpenPGP y aplicaciones
- S/MIME (Secure/Multipurpose Internet Mail Extension)
- Modelo de confianza S/MIME
- Algoritmos criptográficos S/MIME
- PGP (Pretty Good Privacy)
- Conexión remota segura
- Telnet y FTP — protocolos inseguros
- SSH: Secure Shell v2
- Arquitectura de capas de SSH
- Protección contra ataques
- Clientes SSH
- SFTP y FTPS — transferencia segura de ficheros
- SFTP (SSH File Transfer Protocol)
- FTPS (FTP Secure)
- Comparativa SSH / SFTP / FTPS vs Telnet / FTP
- Herramientas de cifrado
- Herramientas open-source
- TrueCrypt
- DiskCryptor
- VeraCrypt
- Herramientas de esteganografía
- Herramientas propietarias
- BitLocker
- Herramientas open-source
- Segunda parte: Seguridad en pagos electrónicos
- Conceptos generales
- Introducción
- Participantes en un pago electrónico
- Clasificación de los sistemas de pago
- Por el momento en que el vendedor contacta con el banco
- Por el momento en que se retira el dinero de la cuenta del comprador
- Por la cantidad implicada en la transacción
- Problemas de seguridad y soluciones
- Breve historia: el papel de SS
- Introducción
- Protocolo SET (Secure Electronic Transaction)
- Servicios de seguridad que proporciona
- Participantes en SET
- Pasos del protocolo SET
- Firma dual (innovación técnica de SET)
- Ventajas y desventajas de SET
- Protocolo CyberCash
- Pasos del protocolo CyberCash
- Problemas de CyberCash
- Protocolo iKP (i-Key Protocol)
- Elementos intercambiados en iKP
- Protocolo 1KP
- Protocolo 2KP
- Micropagos y protocolo Millicent
- El problema de los micropagos
- Protocolo Millicent
- Tercera parte: Privacidad de los usuarios en aplicaciones
- Conceptos generales de privacidad
- Definición de privacidad
- Privacidad ≠ confidencialidad
- Formas de violar la privacidad
- Rastreo de actividad en la red
- Análisis de tráfico
- Enfoques para proteger la privacidad
- Propiedades de la privacidad
- Tipos de anonimato
- Técnicas para conseguir privacidad
- Privacidad basada en esquemas avanzados de firma digital
- Firma ciega (Blind Signature)
- Firma de grupo
- Firma de anillo
- Privacidad basada en protocolos criptográficos y de enrutado
- Proxy
- Mix Networks (mezcladores)
- Onion Routing y Tor
- Onion Routing
- Tor — segunda generación de Onion Routing
- Crowds y Hordes
- Crowds
- Hordes
- Comparativa de protocolos de privacidad
5. Seguridad en redes TCP/IP (SSL/TLS)
- Introducción y motivación
- Amenazas y consecuencias
- Dos enfoques iniciales: SHTTP frente a SSL
- Evolución histórica de SSL/TLS
- Servicios de seguridad y arquitectura de SSL
- Servicios proporcionados
- Independencia del protocolo de aplicación
- Criptografía híbrida
- Sesión y conexión SSL
- Arquitectura en dos subcapas
- SSL Record Protocol
- Formato del SSL record
- Procesamiento del fragmento
- SSL Handshake Protocol
- Formato de los mensajes de handshake
- Las cuatro fases del handshake
- Tabla de mensajes del handshake
- Ejemplo: formato de
ClientHelloyClientKeyExchange
- Establecimiento de la clave de sesión
- Parámetros que intervienen en la derivación
- Intercambio de claves con RSA
- Intercambio de claves con Diffie-Hellman
- DHE — Diffie-Hellman efímero y Perfect Forward Secrecy
- DHE-RSA: combinando autenticación e intercambio efímero
- Subprotocolos auxiliares
- SSL Change Cipher Spec Protocol
- SSL Alert Protocol
- SSL Record Protocol
- TLS 1.2 y TLS 1.3
- TLS 1.2
- TLS 1.3
- Comparativa TLS 1.2 vs TLS 1.3
- DTLS — Datagram Transport Layer Security
- Motivación
- Adaptaciones respecto a TLS
- Síntesis y modelo mental