Fundamentos de Criptografía, Seguridad en Redes y Sistemas de Detección de Intrusos
Criptografía y Mecanismos de Autenticación
Criptosistemas
Definiremos un criptosistema formalmente mediante los siguientes componentes:
- M: representa el conjunto de todos los mensajes sin cifrar (texto en claro) que pueden ser enviados.
- C: representa el conjunto de todos los posibles mensajes cifrados o criptogramas.
- K: representa el conjunto de claves que se pueden emplear en el criptosistema.
- E: es el conjunto de transformaciones de cifrado o familia de funciones que se aplica a cada elemento de M para obtener un elemento de C.
- D: es el conjunto de transformaciones de descifrado, análogo e inverso a E.
Todo criptosistema ha de cumplir rigurosamente la siguiente condición matemática:
Dk(Ek(m)) = m
Existen dos tipos fundamentales de criptosistemas:
- Criptosistemas simétricos o de clave privada: son aquellos que emplean la misma clave k tanto para cifrar como para descifrar.
- Criptosistemas asimétricos o de clave pública: emplean una doble clave (Kpriv, Kpub), donde una se conoce como clave privada y la otra como clave pública.
Resolución del Repudio y Firmas Digitales
Básicamente, lo que se requiere es un sistema mediante el cual una parte pueda enviar un mensaje «firmado» a otra parte de modo que:
- El receptor pueda verificar la identidad proclamada del transmisor.
- El transmisor no pueda repudiar después el contenido del mensaje (no repudio).
- El receptor no haya podido confeccionar el mensaje por sí mismo.
Mecanismo de Generación de la Firma Electrónica
- Se calcula un valor resumen (hash) del documento, utilizando algún algoritmo criptográfico como SHA.
- Este valor resumen se cifra utilizando la clave privada del emisor (procedente de su pareja de claves pública-privada).
- El resultado de este cifrado es lo que se conoce formalmente como la firma digital del documento.
Proceso de Comprobación y Verificación de una Firma Digital
- La firma se descifra utilizando la clave pública del firmante, obteniendo el valor resumen original.
- Se obtiene de nuevo el valor resumen del documento recibido utilizando el mismo algoritmo que en el proceso de cifrado (por ejemplo, SHA).
- Se comparan los dos valores resúmenes obtenidos en los pasos anteriores: si ambos coinciden, la firma es totalmente válida; si son distintos, la firma será considerada nula o alterada.
Certificados Digitales
Un certificado digital es un documento electrónico mediante el cual un tercero de confianza (Autoridad de Certificación) garantiza la vinculación entre la identidad de un sujeto o entidad y su clave pública. Este tipo de certificado se emplea para comprobar fehacientemente que una clave pública pertenece a un individuo o entidad concreta.
El certificado debe contener:
- La identidad del propietario del certificado (identidad a certificar).
- La clave pública asociada a esa identidad.
- La identidad de la entidad emisora que expide y firma el certificado.
- El algoritmo criptográfico usado para firmar el certificado.
Los dos primeros apartados constituyen el contenido fundamental del certificado (identidad y clave pública asociada), mientras que los otros dos son datos imprescindibles para poder validar la autenticidad y vigencia del propio certificado.
Seguridad Perimetral, Amenazas y Protocolos Seguros
Amenazas Internas y Externas
- Amenaza externa o de acceso remoto: los atacantes son externos a la red privada o interna de una organización y logran introducirse desde redes públicas. Los objetivos predilectos de ataque suelen ser servidores y routers accesibles desde el exterior, los cuales sirven habitualmente de pasarela de acceso a la red corporativa.
- Amenaza interna o corporativa: los atacantes acceden sin autorización o pertenecen directamente a la red privada de la organización. De esta forma pueden comprometer gravemente la seguridad y, sobre todo, la información y la disponibilidad de los servicios internos.
Propuestas de Protección frente a Amenazas Internas
- Realizar un diseño correcto de direccionamiento, parcelación y segmentación de subredes.
- Establecer políticas de administración de direccionamiento estático para servidores y routers críticos.
- Monitorización exhaustiva del tráfico de red, del direccionamiento dinámico y de las tablas ARP.
- Modificación estricta de las configuraciones de seguridad por defecto, especialmente contraseñas y credenciales predeterminadas.
- Emplear el máximo nivel de seguridad y cifrado robusto en todas las redes inalámbricas corporativas.
Tipos de Sistemas de Detección de Intrusos (IDS)
Los Sistemas de Detección de Intrusos (SDI / IDS) se pueden clasificar según su técnica de detección:
- Modelo de detección de mal uso o firmas: consiste en observar y comparar cualquier proceso o paquete que intente explotar puntos débiles o patrones de ataque conocidos en un sistema específico.
- Modelo de detección de anomalías: se basa en monitorizar constantemente el sistema para detectar desviaciones respecto a los patrones normales de utilización y comportamiento habitual del mismo.
Asimismo, según el ámbito de monitorización, existen:
- N-IDS (Network IDS): sistemas orientados a la red, encargados de garantizar y analizar el tráfico y la seguridad dentro del segmento de red.
- H-IDS (Host IDS): sistemas orientados al host, encargados de velar por la seguridad, integridad y eventos en una máquina o servidor en particular.
Características Deseables de un IDS
- Debe ejecutarse continuamente sin necesidad de intervención o supervisión permanente de un operador humano.
- Debe ser altamente confiable, lo suficiente como para funcionar de manera estable en segundo plano (background).
- Debe ser tolerante a fallos, recuperándose de caídas sin tener que reconstruir su base de datos de conocimiento al reiniciarse.
- El sistema debe contar con capacidad de automonitorización y comprobación de su propio estado.
- Debe ser ligero; es decir, su sobrecarga de ejecución no debe degradar el rendimiento del sistema anfitrión.
- Debe ser capaz de observar desviaciones respecto al comportamiento estándar.
- Debe poder adaptarse con flexibilidad al comportamiento cambiante del entorno o sistema.
- Debe ser difícil de engañar o eludir por parte de atacantes avanzados.
Seguridad en las Comunicaciones
- SSH (Secure Shell): protocolo diseñado para facilitar las comunicaciones seguras entre dos sistemas mediante una arquitectura cliente/servidor, permitiendo a los usuarios autenticarse y conectarse a un host de forma remota y cifrada.
- TLS/SSL (Transport Layer Security / Secure Sockets Layer): protocolos destinados a proporcionar comunicaciones seguras a través de Internet, implementando un modelo de autenticación mutua, integridad y privacidad de la información entre extremos mediante criptografía.
- VPN (Virtual Private Network): red privada virtual que permite extender un canal seguro de comunicación para los paquetes de datos hacia diferentes sedes o puntos remotos, utilizando infraestructuras públicas de transporte (como Internet) pero manteniendo la confidencialidad e integridad de una red local privada.