Information">
Gestión de La Seguridad Informatica en La Empresa
Gestión de La Seguridad Informatica en La Empresa
Gestión de La Seguridad Informatica en La Empresa
©Clictic S.L.
Tabla de contenido
TEMA 1. INTRODUCCIÓN A LA SEGURIDAD ......................................................................... 8
1.1. Introducción a la seguridad de información ............................................................. 8
1.1.1 ACTIVOS DE INFORMACIÓN ................................................................................ 8
1.1.2. IMPORTANCIA DE LA SEGURIDAD DE LA INFORMACIÓN ................................. 9
1.2. Modelo del ciclo de vida de la seguridad de la información ................................. 10
1.2.1. FASES DEL CICLO DE VIDA DE LA SEGURIDAD DE LA INFORMACIÓN ............. 10
1.3. Confidencialidad, integridad y disponibilidad. Principios de la seguridad de la
información...................................................................................................................... 11
1.3.1. PRINCIPIOS DE LA SEGURIDAD DE LA INFORMACIÓN .................................... 11
1.4. Políticas de seguridad .............................................................................................. 12
1.5. Tácticas de ataque ................................................................................................... 12
1.6. Concepto de hacking................................................................................................ 15
1.7. Árbol de ataque ........................................................................................................ 15
1.7.1. ANÁLISIS DEL ESCENARIO ................................................................................. 15
1.8. Lista de amenazas para la seguridad de la información ........................................ 17
1.9. Vulnerabilidades ....................................................................................................... 18
1.10. Vulnerabilidades en sistema windows .................................................................. 18
1.11. Vulnerabilidades en aplicaciones multiplataforma .............................................. 19
1.11.1 PLATAFORMAS HARDWARE ............................................................................ 19
1.11.2. PLATAFORMAS SOFTWARE ............................................................................ 19
1.11.3. APLICACIONES MULTIPLATAFORMAS ............................................................ 20
1.11.4. VULNERABILIDADES DE LAS APLICACIONES MULTIPLATAFORMA ............... 20
1.12. Vulnerabilidades en sistemas UNIX y MAC OS ..................................................... 21
1.12.1. SISTEMA OPERATIVO UNIX ............................................................................. 21
1.12.2. SISTEMA MAC OS ............................................................................................ 22
1.13. Buenas prácticas y salvaguardas para la seguridad de la red .............................. 22
1.14. Recomendaciones para la seguridad de su red .................................................... 23
TEMA 2. POLÍTICAS DE SEGURIDAD .................................................................................... 25
2.1. INTRODUCCIÓN A LAS POLÍTICAS DE SEGURIDAD ................................................. 25
2.2. ¿por qué son importantes las políticas? ................................................................. 26
2.3. Qué debe de contener una política de seguridad .................................................. 27
2.4. Lo que no debe contener una política de seguridad .............................................. 30
2.5. Cómo conformar una política de seguridad informática ....................................... 30
2.6. Hacer que se cumplan las decisiones sobre estrategia y política .......................... 34
TEMA 3. AUDITORIA Y NORMATIVA DE SEGURIDAD. ........................................................ 35
2
©Clictic S.L.
3.1. Introducción a la auditoría de seguridad de la información y a los sistemas de
gestión de seguridad de la información ......................................................................... 35
3.2. Ciclo del sistema de gestión de seguridad de la información ................................ 36
3.3. Seguridad de la información .................................................................................... 37
3.4. Definiciones y clasificación de los activos ............................................................... 38
3.5. Seguridad humana, seguridad física y del entorno ................................................ 39
3.5.1. SEGURIDAD HUMANA ...................................................................................... 39
3.5.2. SEGURIDAD FÍSICA ............................................................................................ 41
3.5.3. SEGURIDAD DEL ENTORNO .............................................................................. 41
3.6. Gestión de comunicaciones y operaciones ............................................................ 43
3.6.1. COMUNICACIÓN ............................................................................................... 43
3.6.2. TIPOS DE COMUNICACIÓN ............................................................................... 44
3.6.3. PROCESO DE COMUNICACIÓN ......................................................................... 44
3.6.4. GESTIÓN DE COMUNICACIÓN .......................................................................... 44
3.6.5. CLASIFICACIÓN DEL PROCESO DE COMUNICACIÓN ....................................... 45
3.6.6. FASES PARA DESARROLLAR UN SISTEMA DE COMUNICACIÓN EFICIENTE .... 45
3.6.7. GESTIÓN DE OPERACIONES .............................................................................. 45
3.7. Control de accesos ................................................................................................... 46
3.8. GESTIÓN DE CONTINUIDAD DEL NEGOCIO ............................................................. 47
3.9 conformidad y legalidad ........................................................................................... 49
3.9.1 CONFORMIDAD .................................................................................................. 49
3.9.2. LEGALIDAD ........................................................................................................ 49
TEMA 4. ESTRATEGIAS DE SEGURIDAD. ............................................................................. 51
4.1. Menor privilegio ....................................................................................................... 51
4.2. Defensa en profundidad .......................................................................................... 54
4.3. Punto de choque ...................................................................................................... 56
4.4. El eslabón más débil ................................................................................................. 57
4.5. Postura de fallo seguro ............................................................................................ 58
4.6. Postura de negación establecida: todo aquello no expresamente permitido está
prohibido.......................................................................................................................... 59
4.7. Postura de permiso establecido: todo aquello no expresamente prohibido está
permitido ......................................................................................................................... 60
4.8. Participación universal ............................................................................................. 60
4.9. Diversificación de la defensa ................................................................................... 61
4.10. Simplicidad ............................................................................................................. 63
5. EXPLORACIÓN DE RED ................................................................................................ 64
3
©Clictic S.L.
5.1. EXPLORACIÓN DE RED.......................................................................................... 64
5.1.1. FUNDAMENTOS DE REDES ........................................................................... 65
5.1.2. PROTOCOLO CSMA/CD ..................................................................................... 73
5.1.3. PRINCIPALES PROTOCOLOS. IP, TCP, UDP Y ICMP .......................................... 73
5.2. INVENTARIO DE RED. HERRAMIENTAS DEL RECONOCIMIENTO............................ 78
5.2.1 INVENTARIO DE RED. DETECCIÓN DE HOSTS ACTIVOS .................................... 79
5.2.2. INVENTARIO DE RED. DETECCIÓN DE PUERTOS Y SERVICIOS ........................ 80
5.2.3. INVENTARIO DE RED. DETECCIÓN DE SISTEMAS OPERATIVOS
(FINGERPRINTING) ...................................................................................................... 81
5.2.4. INVENTARIO DE RED. OPTIMIZACIÓN .............................................................. 82
5.2.5. INVENTARIO DE RED. EVASIÓN Y SPOOFING ................................................... 82
5.2.6. HERRAMIENTAS DEL RECONOCIMIENTO ........................................................ 83
5.3. NMAP Y SCANLINE.................................................................................................... 85
5.3.1. NMAP ................................................................................................................. 85
5.3.2 NMAP COMANDOS BÁSICOS ............................................................................. 87
5.3.3. DETECCIÓN DE NODOS ACTIVOS EN LA RED ................................................... 90
5.3.4. DETECCIÓN DE SISTEMAS OPERATIVOS .......................................................... 98
5.3.5. DETECCIÓN DE SERVICIOS, APLICACIONES Y SUS VERSIONES. ....................... 99
5.3.6. SCRIPTS NSE (NMAP SCRIPTING ENGINE) ...................................................... 102
5.3.7. RENDIMIENTO Y MEJORA DE DESEMPEÑO NMAP ....................................... 104
5.3.8. TÉCNICAS DE EVASIÓN CON NMAP ............................................................... 105
5.3.9. OPCIONES DE FORMATO DE SALIDA .............................................................. 108
5.3.10. SCANLINE....................................................................................................... 112
5.4. RECONOCIMIENTO. LIMITAR EXPLORAR .............................................................. 114
5.4.1. POLÍTICAS DE LA EMPRESA............................................................................. 114
5.4.2. LIMITAR Y EXPLORAR ...................................................................................... 115
5.5. RECONOCIMIENTO. EXPLORACIÓN ....................................................................... 115
5.5.1 ESCENARIO SISTEMA OPERATIVO DESACTUALIZADO .................................... 115
5.6. RECONOCIMIENTO. ENUMERAR ........................................................................... 117
6. ATAQUES REMOTOS Y LOCALES ................................................................................... 118
6.1. ATAQUES REMOTOS Y LOCALES ............................................................................ 118
6.1.1 CLASIFICACIÓN DE LOS ATAQUES ................................................................... 118
6.2. ATAQUES REMOTOS EN UNIX ............................................................................... 120
6.3. ATAQUES REMOTOS SOBRE SERVICIOS INSEGUROS EN UNIX............................. 127
6.3.1 INTRODUCCIÓN ................................................................................................ 127
6.3.2. ATAQUES REMOTOS A TRAVÉS DE SERVICIOS TCP ....................................... 127
4
©Clictic S.L.
6.3.3. ATAQUES REMOTOS A TRAVÉS DE PUERTOS UDP ........................................ 131
6.3.4. ATAQUES REMOTOS A UNIX........................................................................... 132
6.4. ATAQUES LOCALES EN UNIX .................................................................................. 133
6.4.1 ATAQUES FÍSICOS ............................................................................................. 133
6.4.2 ATAQUES EN EL COMANDO DE ARRANQUE................................................... 133
6.4.3 INTERRUPCIÓN DEL ARRANQUE ..................................................................... 134
6.4.4 ATAQUES EN EL PROTECTOR DE PANTALLA ................................................... 134
6.4.5 ABUSO DE RUTAS ............................................................................................. 134
6.4.6 ATAQUES A LAS CONTRASEÑAS ...................................................................... 134
6.4.7 ABUSO DE SUID ................................................................................................ 137
6.4.8 ABUSO DE /TMP Y SYMLINK/HARDLINK ......................................................... 137
6.4.9 ESCAPE DEL BLOQUEO CAUSADO POR CHROOT ........................................... 138
6.4.10 ATAQUES DENIAL-OF-SERVICE ...................................................................... 140
6.5. ¿QUÉ HACER SI RECIBIMOS UN ATAQUE? ............................................................ 143
7. SEGURIDAD EN REDES INALÁMBRICAS ........................................................................ 145
7.1. INTRODUCCIÓN ...................................................................................................... 145
7.2. INTRODUCCIÓN AL ESTÁNDAR INALÁMBRICO 802.11 – WIFI ............................. 145
7.2.1. VERSIONES DE IEEE 802.11 ............................................................................ 146
7.3. TOPOLOGÍAS ........................................................................................................... 148
7.3.1. LAS REDES INALÁMBRICAS ............................................................................. 148
7.3.2. TOPOLOGÍA DE LAS REDES WIFI ..................................................................... 149
7.4. SEGURIDAD EN REDES WIRELESS. REDES ABIERTAS ............................................ 150
7.4.1. SEGURIDAD DE REDES WIRELESS ................................................................... 150
7.4.2. REDES ABIERTAS.............................................................................................. 151
7.5. WEP ......................................................................................................................... 151
7.5.1. PRIVACIDAD EQUIVALENTE AL CABLEADO WEP ........................................... 151
7.5.2. CONFIDENCIALIDAD WEP ............................................................................... 151
7.5.3. INTEGRIDAD WEP............................................................................................ 152
7.5.4. AUTENTICACIÓN WEP..................................................................................... 152
7.6. WEP. ATAQUES ....................................................................................................... 153
7.6.1. VULNERABILIDADES DEL ESTÁNDAR WEP ..................................................... 153
7.6.2. DEMOSTRACIÓN DE ATAQUES ....................................................................... 154
7.7 OTROS MECANISMOS DE CIFRADO ........................................................................ 160
7.7.1 WIRELESS PROTECTED ACCESS (WPA) ............................................................ 160
7.7.2 WIRELESS PROTECTED ACCESS VERSIÓN 2 (WPA2) ....................................... 161
5
©Clictic S.L.
7.7.3 WI-FI PROTECTED SETUP (WPS) ...................................................................... 162
8. CRIPTOGRAFÍA Y CRIPTOANÁLISIS ................................................................................ 163
8.1. CRIPTOGRAFÍA Y CRIPTOANÁLISIS: INTRODUCCIÓN Y DEFINICIÓN .................... 163
8.1.1. INTRODUCCIÓN ............................................................................................... 163
8.1.2. CRIPTOGRAFÍA................................................................................................. 163
8.1.3. CRIPTOANÁLISIS .............................................................................................. 165
8.1.4 VULNERABILIDADES ......................................................................................... 165
8.1.5. TIPOS DE ATAQUE ........................................................................................... 167
8.1.6. MÉTODOS ESTADÍSTICOS DE CRIPTOANÁLISIS .............................................. 168
8.2. CIFRADO Y DESCIFRADO ........................................................................................ 172
8.2.1. CIFRADO Y DESCIFRADO ................................................................................. 172
8.2.2. CIFRADO SIMÉTRICO ....................................................................................... 172
8.2.3. SISTEMA DE CIFRADO ASIMÉTRICO ............................................................... 173
8.3. EJEMPLO DE CIFRADO: RELLENO DE UNA SOLA VEZ Y CRIPTOGRAFÍA CLÁSICA 173
8.3.1 RELLENO DE UNA SOLA VEZ ............................................................................ 173
8.3.2. CRIPTOGRAFÍA CLÁSICA .................................................................................. 175
8.3.3. CIFRADOS CLÁSICOS ....................................................................................... 175
8.3.4. TIPOS DE CIFRADO .......................................................................................... 178
8.4. EJEMPLO DE CIFRADO: CRIPTOGRAFÍA MODERNA .............................................. 180
8.4.1. ADVANCED ENCRYPTION STANDARD ............................................................ 180
8.4.2. CIFRADO EN LINUX.......................................................................................... 182
8.5. COMENTARIOS SOBRE CLAVES PÚBLICAS Y PRIVADAS: SESIONES ...................... 184
8.5.1 CRIPTOGRAFÍA BASADA EN CLAVES PÚBLICAS Y PRIVADAS .......................... 184
8.5.2 MÉTODOS DE CRIPTOGRAFÍA BASADA EN CLAVES PÚBLICAS ....................... 184
8.5.3. INFRAESTRUCTURA DE LLAVES PÚBLICAS ..................................................... 185
8.5.4. CLAVE DE SESIONES ........................................................................................ 186
9. AUTENTICACIÓN ............................................................................................................ 188
9.1. VALIDACIÓN DE IDENTIFICACIÓN DE REDES ......................................................... 188
9.1.1. DEFINICIÓN DE AUTENTICACIÓN ................................................................... 188
9.1.2. AUTENTICACIÓN VS IDENTIFICACIÓN ............................................................ 189
9.1.3. AUTENTICACIÓN DENTRO DE LA GESTIÓN DE SEGURIDAD DE REDES ........ 190
9.1.4. COMPONENTES PRINCIPALES DE AAA ........................................................... 191
9.1.4. CASO TÍPICO DE PROCESO AAA ...................................................................... 192
9.2. MÉTODOS DE AUTENTICACIÓN DE RED................................................................ 193
9.2.1. AUTENTICACIÓN MUTUA ............................................................................... 194
6
©Clictic S.L.
9.2.2. AUTENTICACIÓN UNIDIRECCIONAL ............................................................... 194
9.2.3. CIFRADO .......................................................................................................... 195
9.3. VERIFICACIÓN DE IDENTIFICACIÓN BASADA EN CLAVE COMPARTIDA ............... 195
9.3.1. PROTOCOLO .................................................................................................... 195
9.4. ESTABLECIMIENTO DE UN CLAVE COMPARTIDA: INTERCAMBIO DE CLAVES
DIFFIE-HELLMAN ........................................................................................................... 196
9.4.1. INTERCAMBIO DE CLAVES DIFFIE-HELLMAN ................................................. 196
9.4.1 EJEMPLO DE INTERCAMBIO DE CLAVES DIFFIE-HELLMAN ............................ 197
9.5. VALIDACIÓN DE IDENTIFICACIÓN USANDO UN CENTRO DE DISTRIBUCIÓN DE
CLAVES ........................................................................................................................... 198
9.6. PROTOCOLO DE AUTENTICACIÓN KERBEROS. ...................................................... 198
9.7. VALIDACIÓN DE IDENTIFICACIÓN DE CLAVE PÚBLICA. ........................................ 201
9.7.1 SERVICIOS DE SEGURIDAD ............................................................................... 201
9.8. VALIDACIÓN DE IDENTIFICACIÓN DE CLAVE PÚBLICA: PROTOCOLO DE
INTERBLOQUEO ............................................................................................................. 203
7
©Clictic S.L.
TEMA 1. INTRODUCCIÓN A LA SEGURIDAD
1.1. INTRODUCCIÓN A LA SEGURIDAD DE INFORMACIÓN
Se conoce como seguridad de la información al conjunto de reglas o estrategias que
prevén ciertas acciones como el acceso, el uso, la exposición y/o la destrucción de
forma no autorizada de la información. Tiene como objetivo principal proteger la
integridad, disponibilidad y confidencialidad de los datos de tal forma que no interfiera
ni dificulte la productividad de una empresa. Para ello se centra en implementar, de
manera eficiente, dichas estrategias para poder identificar los activos, las amenazas y
vulnerabilidades, los posibles impactos potenciales y los controles que se puedan
realizar; así como evaluar cuán eficaz es el plan de riesgo.
8
©Clictic S.L.
Herramientas de bases de datos
Planificación de recursos empresariales
Middleware
Activos físicos
o Edificios y oficinas
o Cajas de seguridad
o Dispositivos de almacenamiento
o Habitaciones de equipos y servidores
o Salas de almacenamiento de medios físicos.
o Activos humanos
Personal y directivos
Abogados
Administradores de sistemas y de seguridad
Auditores
Arquitectos de software y desarrolladores
o Hardware
Dispositivos de red
Módems
Computadores de mesa
Computadores centrales
9
©Clictic S.L.
1.2. MODELO DEL CICLO DE VIDA DE LA SEGURIDAD DE LA INFORMACIÓN
Este modelo se define como el método continuo que está orientado a la constante
disminución del riesgo con la finalidad de mantener la seguridad de la información en
las organizaciones. Está compuesto por varias fases que se detallan a continuación.
El análisis de estas debilidades no solo se debe centrar en las áreas técnicas donde se
prueba el diseño de seguridad en las redes y la seguridad física, sino que también debe
abarcar las áreas no técnicas como la seguridad exterior, del edificio, de la basura, etc
❏ Diseño
En la fase de diseño se definen políticas para establecer qué prácticas son aceptadas o
no y qué actividades requieren determinados procesos o personas para ser ejecutadas.
De esta forma se crea el concepto de “personal autorizado”. Estas configuraciones
normalmente están basadas en estándares de la industria.
Una vez definidas las políticas se procede a publicarlas mediante boletines, vía e-mail y
se crean espacios para proponer sugerencias o aportar comentarios.
❏ Implementación
Durante la fase de implementación se aplican las tecnologías que permitan desarrollar
las políticas generadas y alcanzar los objetivos planteados. Se procede a la instalación
de antivirus, a la aplicación de filtros de páginas web, al bloqueo de datos adjuntos, a la
configuración de firewalls y a la utilización de otras herramientas que aporten seguridad
a la información de la compañía.
❏ Administración y soporte
Una vez realizada la fase de implementación, se procede al comienzo de la fase de
administración y soporte para brindar apoyo cuando surja algún evento que pueda
perjudicar o comprometer la seguridad de la empresa. Se actúa según las políticas
definidas previamente y se centra en aportar la solución al problema junto con la
aplicación de responsabilidades en caso de haberlas.
Durante este tipo de eventualidades hay que prestar atención a los siguientes aspectos:
Organización
Identificación
Encapsulamiento
Erradicación
Recuperación
Experiencia ganada
10
©Clictic S.L.
❏ Capacitación continua
Por último y no menos importante, para reducir los incidentes que puedan afectar la
seguridad de la empresa, este proceso debe mantenerse a lo largo de la vida de la
compañía y el ciclo de vida de la seguridad de la información debe desarrollarse en todo
momento a medida que la organización se expande y crece.
Confidencialidad
Seguridad
de la
información
Integridad Disponibilidad
Confidencialidad
Evita que se exponga la seguridad de la empresa impidiendo la divulgación de la
información a terceros que no estén autorizados.
Integridad
Garantiza que la información no esté modificada por terceros no autorizados. Se
considera violación de la integridad de la información si un programa, proceso o
empleado no autorizado modifica o destruye parte de la información.
Disponibilidad
Garantiza que la información requerida es accesible y está disponible para el personal
autorizado y que permanece en correcto funcionamiento sin interrupciones. Depende
de la eficacia del sistema de seguridad que se haya implementado en la compañía.
11
©Clictic S.L.
1.4. POLÍTICAS DE SEGURIDAD
Las políticas de seguridad son el conjunto de reglas o normas que se establecen para
afrontar los riesgos de seguridad. Su objetivo es mantener un estándar que ajuste a las
necesidades de la empresa.
Estas políticas indican qué es lo que se debe proteger, por qué y de quién. Es necesario
definir lo que está permitido y lo que no para establecer las limitaciones y las respuestas
en caso de sobrepasar estos límites, así como identificar los riesgos a los que se
encuentra sometida la empresa.
Definición de
necesidades
Definición de
acciones P.S. Implementación
Auditoría de
seguridad
12
©Clictic S.L.
Por lo general, este tipo de ataques se realizan para obtener compensación económica;
pero también existen otro tipo de ataques que autorizan las empresas para comprobar
la seguridad y detectar posibles vulnerabilidades del sistema.
Ingeniería social:
Consiste en estrategias de manipulación de usuarios legítimos para obtener información
sensible como claves de acceso, la manera en la que opera el sistema y sus niveles de
seguridad. Los intrusos normalmente se hacen pasar por técnicos, falsos clientes o
empleados de entidades bancarias para conseguir estos datos.
Tácticas no presenciales
•Observación
•Por encima de hombro
Técnicas pasivas
•Recuperación de contraseñas.
•IRC o chats.
•Ing. social y mail.
•Teléfonos, carta o fax.
Técnicas presenciales no agresivas
•Seguimiento a personas y vehículos.
•Buscar en la basura.
•Ing. social.
•Vigilancia de edificios.
Métodos agresivos
•Suplantación de personalidad.
•Presión psicológica.
•Chantaje o extorsión.
Tácticas de ingeniería social
Ataques de Autenticación:
Se basa en la realización de tácticas necesarias para engañar al sistema y acceder a él.
Puede ser mediante la obtención del usuario y contraseña, o de las sesiones que ya ha
establecido la víctima. El nombre de este ataque se debe a la confirmación utilizada por
los servicios para identificar a un usuario legítimo.
13
©Clictic S.L.
Trashing:
Se basa en la obtención de datos para uso indebido a través de material desechado.
Puede ser lógico, mediante el análisis de documentos en los ordenadores (papelera de
reciclaje, historial de navegación, archivos que almacenan cookies, etc.); o físico,
mediante el registro de papeles descartados. Este último podría realizarse en sitios
como universidades y colegios, donde no se cuenta con un alto grado de
confidencialidad.
Ataques de Monitorización:
Se basa en la monitorización de las acciones del usuario y el sistema para observarlos e
interactuar con los fallos y conseguir posibles accesos futuros.
Ataques de ransomware:
A través de este ataque, los intrusos bloquean el acceso a un determinado sistema
informático mediante el software malicioso con el objetivo de reclamar dinero para
retirar dicho bloqueo.
Ataques de modificación:
Como su nombre indica, se basa en la modificación del software o de los datos de
manera no autorizada. Si el atacante posee permisos de administrador puede llegar a
cambiar, e incluso, eliminar información necesaria para el funcionamiento del sistema.
Ataques network-probes:
Con este ataque se instalan sondas de red para conseguir acceso a los ordenadores
mediante puntos vulnerables. No suponen un peligro inmediato pero sí dejan evidencia
de puntos de entrada al sistema.
14
©Clictic S.L.
1.6. CONCEPTO DE HACKING
Este concepto de hacking se conoce como la búsqueda continua de conocimientos que
estén relacionados con la rama informática para aprender a encontrar vulnerabilidades
en la seguridad de los sistemas de información. Los hackers son aquellas personas que
resultan ser expertos en la materia y se dedican a este tipo de operaciones. Este
término está relacionado a toda persona que sea capaz de modificar el uso de los
recursos para utilizarlos en aquellas actividades que no fueron creadas con ese fin.
También, el concepto de hacker puede aplicarse a los expertos informáticos que
utilizan estos conocimientos avanzados para superar ciertas circunstancias relacionadas
con la seguridad informática.
Por otra parte, este concepto puede tener connotaciones negativas, muchas veces
provocadas por los medios de comunicación, cuando se asocia al hacker con actividades
criminales y delictivas. Sin embargo, las actividades realizadas por los hackers no
necesariamente están involucradas con acciones maliciosas, pero sí con la comprensión
y el manejo especializado de la estructura de seguridad.
15
©Clictic S.L.
Fase 1 - Obtención de la información.
Durante esta fase, el atacante intenta obtener la mayor cantidad de información a
través medios virtuales realizando ataques como los que se vieron anteriormente
(network-probes) o mediante métodos físicos como trashing y/o la observación de los
usuarios y la infraestructura.
Nodo Raíz:
Se ubica en la parte superior del árbol y simboliza el objetivo del ataque. Posibles
ejemplos: espionaje de la comunicación, obtención de credenciales bancarias, robo de
cuentas de usuarios, etc.
Nodos:
Tienen forma de círculo y representan las acciones necesarias para ejecutar el ataque.
Pueden tener una breve descripción de dicha acción, cálculo de probabilidades y costes,
16
©Clictic S.L.
etc. Ejemplos: acceder a las aplicaciones y base de datos a través de la red, infectar los
equipos con software malignos, contactar con la víctima y fingir un rol de soporte o
técnico, entre otros.
Relaciones:
Se representan mediante el uso de puertas lógicas que se definen a continuación y
facilitan el análisis del diagrama.
Relación secuencial: Se representa con por una flecha y es necesario que la
acción anterior esté ejecutada para poder ejecutar la siguiente.
Relación AND: Para poder ejecutar la siguiente acción se deben verificar y
cumplir una serie de acciones anteriores.
Relación OR: Basta con que se cumpla sólo una acción anterior para poder
continuar con la siguiente acción.
Personas: son los causantes más comunes presentes en la mayoría de los ataques y
constituyen puntos vulnerables en la seguridad de la empresa. Ejemplos:
o Intruso Remunerado: Suele ser un hacker pagado por un tercero con el
objetivo de dañar la imagen de una compañía o robar su información.
o Curiosos: Suelen ser los atacante más comunes que no buscan otro motivo
que satisfacer su curiosidad y por ello intentan acceder al sistema.
o Ex empleados: Poseen conocimientos sobre las debilidades de la seguridad
de la empresa y tienen la posibilidad de utilizarlo en su contra si están
descontentos con la compañía.
Amenazas lógicas: conocidos como malware y no son más que programas que
puede dañar el sistema de una forma u otra. Ejemplos:
o Software incorrecto: Son conocidos como bugs y son errores de
programación o programas que son utilizados para aprovechar los fallos que
presenta el sistema.
o Puertas traseras: Son debilidades o vulnerabilidades que presenta el
software o el hardware en su arquitectura.
o Herramientas de seguridad. Estas herramientas son elaboradas con el
objetivo de prevenir los ataques y ofrecen funcionalidades como obtener
mapas detallados con las vulnerabilidades de la empresa. Son considerados
armas de doble filo ya que contienen un inventario de puntos débiles y
entradas de la empresa y pueden ser muy útiles para los atacantes.
17
©Clictic S.L.
Amenazas físicas: son todas las amenazas que provocan daños físicamente tanto a
los archivos como al mobiliario/inmobiliario de una compañía.
o Climatológicas: Este tipo de amenazas son muy complicadas de prever ya
que son eventos que ocurren de forma natural. Ejemplos: inundaciones,
incendios, terremotos, destrozos por huracanes y volcanes, etc.
o Robos: Representa una amenaza cuando roban un equipo que contiene
información sensible y confidencial de la organización.
o Fallas en los sistemas eléctricos: Pueden ocurrir por falta de mantenimiento
de los sistemas de energía y por la producción de cortes eléctricos.
o Fraude: Ocurre cuando se produce la sustracción de dinero por medio de los
equipos de la compañía.
o Sabotaje: Representa el daño intencional provocado a los equipos de la
empresa.
1.9. VULNERABILIDADES
El concepto de vulnerabilidad se refiere a los fallos o debilidades que presenta un
sistema informático y que comprometen la seguridad al poner en riesgos elementos
importantes como la confidencialidad, disponibilidad e integración de los datos de una
empresa. Pueden estar presentes en tanto en el software como en el hardware y suelen
ocurrir por errores en el diseño, en la configuración, o incluso, en la mala gestión de los
protocolos de seguridad. El hecho de que existan vulnerabilidades no implica un ataque
inmediato pero sí aumenta las posibilidades de que ocurra.
El Code red
Se descubrió en 2011 y es un gusano informático que se dedicaba a atacar
computadoras que estuvieran ejecutando el Microsoft Internet Information Server. Se
aprovechaba de una vulnerabilidad conocida como Buffer Overflow. Introducía largas
cadenas de caracteres para desbordar el buffer y así infectar el ordenador ejecutando
código propio. Eeye Digital Security reportó este ataque y Microsoft proporcionó un
parche para solventar estos fallos aunque aún existen versiones desplegadas por la
web. El cálculo de los afectados se estima a unos trescientos mil usuarios.
Spida.b
Es otro gusano que se programó con el objetivo de atacar servidores SQL en
ordenadores que tuvieran instalada la aplicación Microsoft SQL y donde no existiera una
cuenta de administrador protegida con contraseña.
18
©Clictic S.L.
Slammer
Otro ejemplo de gusano que se propagó rápidamente (tardó 15 minutos para
extenderse por todo el mundo) y que aprovechó un error de desbordamiento del buffer
para denegar servicios en algunos servidores de Internet provocando un tráfico muy
lento de información. Fue detectado en 2003 y estaba dirigido a los sistemas de
Windows que ejecutaran el servidor MS-SQL. Afectó unos 75.000 servidores
aproximadamente.
Plataforma hardware
Logo de linux
Por otro lado tenemos las plataformas software que no son más que programas lógicos
que hacen posible que el usuario no tenga que tratar directamente con el hardware.
19
©Clictic S.L.
También permiten que otros programas sean instalados sobre ellas, pero para poder
desarrollar una aplicación que pueda correr sobre la plataforma, es necesario que se
programe exclusivamente para ella. A continuación se mencionan algunos ejemplos:
Android
Linux
Microsoft Windows
iOS
Blackberry
MacOS
Java
Navegadores web
PlayStation 4
Solaris
20
©Clictic S.L.
Productos más afectados por las vulnerabilidades
GoogleChrome
125
Apple webkit
Opera Browser
Windows 7
Windows Server
Mozilla Firefox
Windows Vista
48 47 46 46 Safari
43 40 39 38 38 35 34 Windows XP
Windows Server2
Oracle Database Server
Adobe Flash Player
Estas aplicaciones son como cualquier otra que esté basada en la web y por tanto se
deberían tomar medidas de prevención contra los ataques informáticos, sobre todo
cuando muchos desarrolladores no apliquen estas medidas para proteger a los usuarios.
Según estudios realizados por investigadores de la Universidad de Siracusa, las
aplicaciones programadas en HTML5 son potenciales para poner en riesgo la seguridad
de la información. Ejemplo: las conexiones a través de WiFi, Bluetooth o SMS podrían
ejecutar código malicioso. Por tanto esto representa una importante vulnerabilidad ya
que todos los activos humanos en posesión de smartphones podrían instalar en su
dispositivo alguna aplicación que afecte la seguridad de la empresa.
Al principio fue diseñado para uso interno dentro del sistema Bell, pero a finales de
1970 AT&T otorgó la licencia de Unix terceros lo que conllevó a la diversificación y
creación de versiones tanto para uso académico como comercial. Ejemplos: Universidad
de California con BDS, IBM con AIX, Sun Microsystems con Solaris y Microsoft con Xenix.
Posteriormente, AT&T vendió los derechos de Unix a principio de los noventa y acabó
en manos de The Open Group, permitiendo el uso de Unix para sistemas certificados
que cumplan con los estándares Single UNIX Specification (SUS).
21
©Clictic S.L.
Vulnerabilidades del sistema Unix
El número de vulnerabilidades de Unix es muy elevado ya que existe una gran cantidad
y variedad de versiones. Algunas ya han sido solucionadas pero aún se pueden
encontrar las siguientes:
R-Services – Trust Relationships
General Unix Authentication
Linear Printer Daemon (LPD)
Apache Web Server
Sendmail
Simple Network Management Protocol (SNMP)
File Transfer Protocol (FTP)
Secure Shell (SSH)
Remote Procedure Calls (RPC)
BIND/DNS
22
©Clictic S.L.
No guardar contraseñas sin cifrar en el disco duro del dispositivo, ni
escribirlas en trozos de papel que pueden acabar en la basura.
Cambiar la contraseña con frecuencia.
No enviar contraseñas por correo electrónico.
23
©Clictic S.L.
Colocarse en la mente de un atacante:
Resulta muy útil ponerse en la mente de un atacante ya que te permite mantener un
sistema óptimo y actualizado, así como prevenir y soportar distintas amenazas. Algunas
empresas de antimalware utilizan este ejercicio para asegurarse de que su producto es
efectivo. Incluso contratan a hackers para encontrar las vulnerabilidades de los
programas y al encontrar un fallo lo indican y buscan la manera de solventarlo o
contrarrestarlo. Por tanto, si fueras un atacante y tu objetivo fuera tu empresa: ¿Qué es
lo primero que buscarías? ¿Dónde buscarías para encontrar las vulnerabilidades?
Ser precavido:
Es importante contar con las tecnologías existentes para mantener la seguridad de los
equipos, pero también es muy importante contar con suficiente precaución por parte
de los activos humanos ya que estos siempre van a constituir una vulnerabilidad. Se
recomienda estar atento a los e-mails que se reciben y su contenido, evitar instalar
programas de dudosa procedencia e ilegales, evitar conexiones inseguras y no
almacenar o introducir contraseñas en lugares de acceso fácil. Además, se debe ser
precavido con otras personas para evitar las técnicas de ingeniería social que podrían
dañar el sistema.
24
©Clictic S.L.
TEMA 2. POLÍTICAS DE SEGURIDAD
2.1. INTRODUCCIÓN A LAS POLÍTICAS DE SEGURIDAD
Hace años, el registro y almacenamiento seguro de los datos representaba un reto para
las todas las instituciones. En aquella época donde aún no existían ordenadores
personales, la función de las políticas de seguridad no era otra que resguardar los
medios físicos que registraban y almacenaban la información de interés para la empresa
u organización. Salvo para los organismos de seguridad del estado, que además de
resguardar dicha información para proteger su integridad, deben proteger su privacidad
y portabilidad.
Los medios utilizados para proteger dichos datos eran analógicos, aunque esto no
significa que no fueran efectivos. Un ejemplo de ello es “Enigma”, la máquina alemana
que representó un papel fundamental en la encriptación y descifrado de mensajes
durante la Segunda Guerra Mundial.
A continuación se definen varios puntos que debe tener en cuenta una política de
seguridad enfocada a ordenadores conectados a Internet:
No basta con asegurar las entradas al sistema, también hay que asegurar la red,
que es el medio por donde viaja la información (HTTPS, SSL).
25
©Clictic S.L.
El servicio prestado por un ordenador conectado a la Internet puede ser
desbordado por un exceso de peticiones (ataque DoS).
No se tiene ningún control de qué tipo de persona está usando el sistema, por
tanto, siempre se debe desconfiar del usuario (inyección SQL, Phishing).
No hay que olvidar que también hay que establecer políticas que tengan en cuenta la
protección de los medios físicos del sistema y deben permanecer actualizadas en todo
momento.
Por otra parte, los ataques no siempre provienen de agentes externos, sino que
también ocurren dentro de la propia empresa ya que el personal interno conoce las
medidas y procesos y en ocasiones tiene acceso a determinada información cuya
pérdida puede dañar y afectar a la compañía.
26
©Clictic S.L.
Ataque ransomware, o secuestro de información
Obviamente no basta con sólo definir las políticas de seguridad, estas deben ser
coherentes con el área de trabajo y la realidad de la empresa. Deben abarcar todos los
escenarios posibles y ante cualquier situación, deben determinar las pautas para
resolver el problema de forma que se minimicen los daños.
27
©Clictic S.L.
Incluir dentro del plan de políticas de seguridad:
Visión general: Resumen de cada política.
Alcance: se define qué hará y qué no hará cada política.
Política: se detallan los procedimientos, paso a paso, de las políticas.
Aplicación: se determina cuál departamento o figura dentro de la empresa se
encargará de la ejecución y aplicación de las políticas.
Auditoría: se hará seguimiento a las revisiones periódicas de las políticas de
seguridad de la empresa.
28
©Clictic S.L.
Se debe establecer un plan de respaldo de la información en caso de ataques
informáticos o fallos del sistema donde se especifique:
Ubicación física del respaldo.
Equipo usado para realizar el respaldo.
Etiqueta que identifique de forma clara al respaldo.
Dispositivo de almacenamiento del respaldo.
Realización de pruebas para verificar el correcto funcionamiento de los archivos
respaldados.
Las políticas deben ser breves y directas, enfocadas al manejo y protocolos de seguridad
como por ejemplo: políticas de clasificación, control de acceso, utilización aceptable,
etc.
Este conjunto de normas son directrices generales que deben cumplir las políticas de
seguridad para resultar efectivas y eficaces. Sin olvidar que la revisión periódica es muy
importante para mantener la actualización de la seguridad contra las nuevas
tecnologías utilizadas en los ataques.
Redacción
Actualización Revisión
Políticas de
seguridad
Publicación Aprobación
29
©Clictic S.L.
2.4. LO QUE NO DEBE CONTENER UNA POLÍTICA DE SEGURIDAD
Los temas vistos anteriormente pueden dar proporcionar una idea de los pasos a tener
en cuenta a la hora de crear una políticas de seguridad en una empresa, pero es
necesario llevar a cabo una investigación más profunda para evitar introducir reglas que
dificulten el cumplimiento de estas normas ya que un documento muy extenso con
vocabulario complejo provocaría el efecto contrario del que se pretende para la
compañía.
Aunque la norma ISO 27002 establece unas pautas básicas a seguir, no son otra cosa
que puntos a tener en cuenta para luego profundizar en ellos. Por consiguiente, la
política de seguridad no debe ser tomada literalmente de estos documentos generales y
debe ir acorde a la necesidad y realidad de la empresa. Tampoco pueden existir reglas
que sean imposibles de cumplir ni pueden salirse de la legalidad. Esto último varía
según la jurisdicción de la empresa y deber ser reajustada en caso de que cambie la
legislación.
Todos los procedimientos deben ser explicados de forma clara y detallada con un
lenguaje conciso que permita la comprensión de todo el personal. No se debe dejar
ningún punto ambiguo y libre de interpretación ya que puede resultar un problema en
el momento que surja algún evento.
❏ Identificar los riesgos: Lo primero a tener en cuenta es, a qué riesgos se enfrenta
la compañía si hay un uso inapropiado de los equipos de información. Lo segundo,
comprobar si existe información que deba tener acceso restringido, y tercero, si se
reciben archivos adjuntos que tengan extensiones potencialmente peligrosas.
30
©Clictic S.L.
❏ Observar a la competencia: Puede resultar útil ver qué políticas aplican otras
empresas similares para tener una idea de qué tipo de política de seguridad necesita la
compañía, independientemente de evaluar la situación en la que se encuentra.
31
©Clictic S.L.
❏ Responsabilidades funcionales: Son las responsabilidades de cargos como
Gerentes, Director del Departamento de Tecnología, Director de los Sistemas de
Seguridad de la Información, etc.
32
©Clictic S.L.
Contraseñas: Tiempo de utilidad, cantidad y tipo de caracteres. Quiénes deben
usar contraseñas, para qué y cuándo las usarán.
Firmas digitales: Explica los estándares de firmas digitales de la compañía,
cuándo serán usadas y por quién.
Disposición de recursos: Metodología utilizada y por quién.
Uso de recursos personales dentro de la compañía: Si está o no permitido y
cuándo pueden ser usados en caso de estar permitido.
Inspecciones y revisiones: De qué activos, con qué frecuencia, y por quiénes son
llevadas a cabo.
Divulgación pública: Quién puede divulgar información al público y qué
restricciones tiene. Qué se puede divulgar dentro de un acuerdo de
confidencialidad.
Medios de entretenimiento: Videojuegos, música, aplicaciones de ocio y si estos
están permitidos o no. De ser permitidos, cuándo pueden ser usados.
Medios extraíbles: Memorias SD, dispositivos de almacenamiento extraíbles USB,
discos duros, discos de estado sólido y si están permitidos para uso personal o
laboral.
Uso de “Freeware” o “Shareware”: Definición de Freeware y de Shareware y si el
uso este tipo de aplicaciones está autorizado por parte de la compañía.
Derechos de autor de software: Quiénes se verán afectados por una violación de
derechos de autor de software, quién es responsable de evitar esto.
Cambios en la configuración de los sistemas: Es necesario consultar al personal
de seguridad de sistemas de información para realizar cambios que alteren los
perfiles de seguridad de los activos de sistemas de información, de lo contrario
no serán aplicados.
Seguridad física de la información: Se explica lo que sucederá si se extravía un
sistema resguardado que contenga información sensible.
Responsabilidades del proveedor: Qué reglas seguirá un proveedor al usar un
activo de sistema de información o al usar sus propios activos bajo el nombre de
la compañía.
Inventario de activos de sistemas de información: Quién llevará a cabo el
inventario de todos los activos de sistemas de información de la compañía y
quién tendrá acceso a este inventario.
Oficinas o áreas con equipos informáticos (estaciones de trabajo, computadoras):
El personal de sistemas de información deberá estar involucrado en la fase de
diseño de estas áreas de trabajo para asegurarse de la integridad de los activos
de la compañía.
Auditoría de conformidad de seguridad de sistemas de información: Quién
verificará la conformidad, cómo se llevará a cabo esta auditoría.
Capacitación del personal de seguridad: Exige un programa de capacitación del
personal de seguridad de sistemas de información. Indica quién deberá asistir a
la capacitación, con qué frecuencia y contenido del programa.
Documentación: Quién llevará a cabo la documentación de las incidencias y
cómo serán almacenadas (medios físicos o electrónicos).
33
©Clictic S.L.
Una vez se complete la redacción de la política, el Director Ejecutivo de la compañía y el
Director de Sistemas de Información (o su equivalente, de ser el caso), deberán firmar
dicho documento y añadir los comentarios correspondientes.
El hecho de que una empresa tenga éxito, a pesar de no tener los resultados esperados
en el plano interno, se debe, en cierta parte, a que utiliza las mejores estrategias para
establecer los planes a corto, mediano y largo plazo; utiliza programas de expansión y
mejora de forma continua; cuenta con los recursos precisos en el momento adecuado;
y por último, y no menos importante, define y cuenta con unos mecanismos para
prevenir situaciones inesperadas o inevitables.
Se debe contar con una Planificación estratégica, para poder hacer cumplir las
decisiones sobre estrategia y políticas en una empresa. Este tipo de planificación no
necesita de ningún patrón para su creación ya que cada compañía posee factores que
varían significativamente. Lo más importante es que la compañía se centre y se ocupe
de los asuntos relevantes sin la preocupación de otros factores.
Esto no significa que sea una tarea sencilla. Todo director organizativo debe realizarla
constantemente e incluso crear y apoyarse en un comité dedicado a la puesta en
ejecución de esta planificación. A continuación se muestran una serie de pasos para
poder crear una buena Planificación Estratégica:
Hay que tener presente el tema de la competencia y el lugar que se ocupa
dentro del mercado. Así como la presencia en los niveles jerárquicos propios de
una organización (directivo, unidad de negocio y operativa) y la creación de la
misión y visión de la compañía.
Puede ayudar la construcción de un mapa u hoja de ruta, en el que se tengan en
cuenta las áreas específicas o los niveles que deben asumir retos, sin olvidar que
todo cambia rápidamente y existen tantas oportunidades como peligros. Por
tanto, la planificación estratégica debe generar políticas conforme se va
desarrollando.
Intentar abarcar todos los posibles escenarios adversos dentro de la estrategia,
para así poder reaccionar ante estos.
Establecer metas y objetivos sin olvidar que deben ser medibles, no solamente
en términos financieros sino también en creatividad e innovación.
34
©Clictic S.L.
TEMA 3. AUDITORIA Y NORMATIVA DE SEGURIDAD.
3.1. INTRODUCCIÓN A LA AUDITORÍA DE SEGURIDAD DE LA INFORMACIÓN Y A LOS SISTEMAS DE
GESTIÓN DE SEGURIDAD DE LA INFORMACIÓN
El objetivo fundamental de la auditoría de la seguridad es crear un inventario general
que defina la estructura real de una empresa una vez que se hayan establecido sus
principios, objetivos y políticas. Esta estructura facilita la visualización de todos los
componentes de la compañía y todos los esfuerzos redundantes que disminuyen la
eficiencia del sistema. Con respecto a la seguridad, este tipo de inventarios muestra los
puntos débiles que son vulnerables a posibles ataques externos.
Informe de auditoría
35
©Clictic S.L.
vulnerabilidades, amenazas e impactos; el diseño e implementación de controles
coherentes y otras medidas para prevenir el riesgo; y finalmente, la implantación y
mantenimiento de un sistema de gerencia global que asegure el funcionamiento del
estándar de manera perpetua y completa.
EL PLAN: se establecen las acciones que hay que realizar para alcanzar el
objetivo esperado. Se pueden tener en cuenta distintas tareas relacionadas con
este aspecto. Ejemplo: definir tareas necesarias, establecer objetivos que se
correspondan con los requisitos, recopilación de datos, análisis de los resultados
que se esperan obtener.
36
©Clictic S.L.
Revisión
Las amenazas pueden ocasionar diferentes daños y pueden venir de distintas maneras
como algunos de los ejemplos que se mencionan a continuación:
Vulnerabilidad: Como se ha mencionado anteriormente, es una debilidad que
puede aprovechar el atacante para realizar acciones no autorizadas dentro del
sistema. A estos ataques se les conoce como ataques de superficie.
37
©Clictic S.L.
físico o psicológico; así como la pérdida de sus bienes. Para ello utilizan redes de
telecomunicación (Internet, chats, emails, etc.) y teléfonos móviles (sms, mms,
bluetooth,aplicaciones de mensajería).
Spyware: Son son programas espías que recopilan información sobre una
persona u organización para imponer el control sobre sus dispositivos o enviar la
información a otra entidad sin su conocimiento o consentimiento. Se instalan en
el dispositivo infectado y controlan el uso de Internet que se realiza en él.
Algunos ejemplos de estos programas son: Gator y Bonzy Buddy.
Sin embargo, algunas de las amenazas más comunes a día de hoy son:
Robos de identidad.
Robo de los equipos.
Robo de información confidencial y de propiedad intelectual.
Sabotaje y extorsión.
Ataques software: ataques phishing, virus, troyanos, gusanos, etc.
Phishing
Por activos tangibles se entienden entidades que poseen un volumen y masa física. Por
ejemplo: utensilios, instalaciones, maquinaria, personal, entre otras. Por recursos
38
©Clictic S.L.
intangibles se entienden abstracciones no físicas como por ejemplo: software,
propiedad intelectual, servicios, información, etc. A continuación se detallan algunos de
estos activos:
Personal de la empresa: Es el activo principal de una empresa. Puede ser interno,
externo, subcontratado, socios y clientes.
Equipos informáticos: Son todos los equipos que se encuentran en las oficinas de
la empresa.
Instalaciones: Hace referencia a la infraestructura física de la empresa (oficinas,
edificaciones, vehículos).
Soportes de información: Almacena la información.
Redes de comunicación: Dan soporte a la organización. Pueden ser propias o
pertenecientes a terceros.
Equipamiento auxiliar: Son activos que soportan a los sistemas de información y
no se encuentran dentro de los otros grupos ya definidos. Por ejemplo: equipos
de destrucción de la documentación, equipos de climatización.
Aplicaciones software: Hace referencia al sistema lógico, instrucciones y datos
que permiten la gestión y realización de tareas específicas.
Servicios: Son activos destinados a satisfacer las necesidades del público o de
alguna entidad oficial o privada y velar pos sus intereses. Puede ser la
organización o el propio personal.
Datos e información: Son el núcleo del sistema. Incluye los datos y la información
tanto interna como externa que maneja la organización. Puede estar contenida
en medios físicos como los documentos o medios digitales.
Por otra parte, también se pueden encontrar cuatro principios básicos de la seguridad
humana:
Las personas son el centro.
Los distintos tipos de seguridad están interconectados en personal, local y
global.
Las estrategias deben estar adaptadas a cada contexto.
Deben ser preventivas
39
©Clictic S.L.
La norma ISO 27001 establece en tres secciones (según el ciclo de vida de un activo en
la compañía) los criterios de seguridad de la información para la gestión de los recursos
humanos.
I. PRE-EMPLEO
A. Selección:
Presentar referencias cotejables de diferentes fuentes: personales, bancarias
o comerciales.
Verificar la síntesis curricular de los candidatos.
Confirmar los niveles académicos de los candidatos.
Verificar la identidad mediante pasaporte o documentos similares.
Realizar una verificación detallada: evaluación crediticia, antecedentes
penales del candidato.
II. EMPLEO
Durante el transcurso de este período, el empleado debe ser consciente de su posición
en la empresa con respecto a la seguridad de la información. Debe ser capacitado para
mantener la información sensible de forma segura y debe ser informado de los riesgos y
actualizaciones que se realicen en la empresa. Se le debe garantizar un trato justo si en
caso de que se le considere sospechoso de alguna brecha en el protocolo de seguridad.
40
©Clictic S.L.
3.5.2. SEGURIDAD FÍSICA
La seguridad física consiste en aplicar procedimientos de control y barreras físicas para
prevenir las amenazas a la seguridad de la información. Hace referencia a los
mecanismos cerca y dentro del entorno de la compañía así como a los medios de
acceso remoto que se implementan para la protección del hardware, el
almacenamiento de los datos y los usuarios.
41
©Clictic S.L.
Seguridad
Algunas de las medidas que se deben tomar para lograr que la seguridad del entorno de
una compañía sea efectiva, son las siguientes:
Restringir el acceso: Se lleva un control y seguimiento sobre las personas que
tienen acceso a los equipos protegidos. Se pueden emplear herramientas como
lector de huella o iris, tarjetas magnéticas, entre otras.
Detectores: Como su nombre indica se utilizan para detectar anomalías como
cambios de temperatura, volumen, aparición de humo, etc.
Alarma contra intrusos: Se utilizan para detectar la presencia de personal no
autorizado y así proteger los equipos de robo o violación de la seguridad.
Inventariado: Se deben identificar y realizar un inventario de todos los
componentes de la red eléctrica (principalmente conectores y cables) para saber
dónde se encuentran situados.
Módulo central: Se encarga de controlar todos los elementos que conforman el
sistema para activarlo o desactivarlo.
Otras medidas preventivas:
o Los equipos deben estar en una habitación segura protegida de posibles
inundaciones (preferiblemente dentro de una estructura antisísmica).
o Controlar las condiciones ambientales como la humedad y temperatura del
área para evitar que pueda dañar a los equipos.
o El área debe ser monitorizada mediante un circuito cerrado.
o Colocar suficientes extintores de incendio en el área donde estén situados
los equipos.
o Colocar una planta eléctrica en caso de fallos en el suministro de energía.
42
©Clictic S.L.
3.6. GESTIÓN DE COMUNICACIONES Y OPERACIONES
Para comprender el concepto de gestión de la comunicación y operaciones, es
necesario definir “comunicación” y “operación”.
Comunicaciones globales
3.6.1. COMUNICACIÓN
Se define como comunicación a la transmisión de información de un emisor a un
receptor. Este proceso constituye la base del sistema social y abarca desde las
sociedades más simples y diminutas como las celulares, hasta las más grandes y
complejas como la sociedad humana.
Para lograr este proceso, el emisor envía un mensaje codificado en un lenguaje que
puede ser sonoro, pulsativo, electrónico o virtual donde expresa sus necesidades o sus
deseos. Este paquete constituye la información y tiene como objetivo llegar al receptor
con total integridad, también conocida como precisión lingüística, y de la forma más
eficiente posible. Para poder descifrar el mensaje, el receptor debe contar con las
herramientas necesarias.
43
©Clictic S.L.
3.6.2. TIPOS DE COMUNICACIÓN
La comunicación interna hace referencia a todo lo que ocurre dentro de una
organización y que involucra a todos los activos que transmiten la información entre sí.
La comunicación externa es la que mantiene una empresa con terceros ajenos a ella.
Pueden ser proveedores, clientes, otras empresas, bancos, servidores, entre otros.
Las normas ISO establecen un conjunto de preguntas que facilitan la gestión y que todo
tipo de información debe responder para asegurar la precisión y reducir
interpretaciones erróneas del mensaje:
¿Qué comunicar?
¿Cuándo comunicar?
¿Cómo comunicar?
¿A quién comunicar?
¿Quién comunica?
44
©Clictic S.L.
3.6.5. CLASIFICACIÓN DEL PROCESO DE COMUNICACIÓN
El proceso de comunicación se clasifica en:
o Interna: el emisor y receptor son activos de la empresa.
o Externa: el emisor y receptor son terceras personas o entidades, se encuentran
fuera del perímetro efectivo de la empresa.
o Escrita
o Oral
o Verbal
o No verbal: inflexiones de voz, lenguaje corporal.
El traspaso de datos entre sistemas informáticos es una de las partes más vulnerables
del proceso de comunicación y por ello se le otorga gran importancia.
45
©Clictic S.L.
Se puede considerar a las operaciones como un sistema de transformación que produce
bienes y servicios de especial interés para los clientes. A continuación se muestran
algunas de estas operaciones que se pueden aplicar en una compañía:
Operaciones donde se procesa información: bancos, centros de investigación,
empresas de telecomunicaciones.
Operaciones donde se procesa a los clientes: hospitales, parques de atracciones,
cines, hoteles, etc.
Operaciones que transforman recursos naturales o inputs: agricultura, almacenes
de alimentos, empresas de transporte.
46
©Clictic S.L.
Desde el ámbito de la seguridad de la información, el control de acceso incluye varias
acciones como la identificación, la autorización, la autenticación, la confirmación y la
auditoría. Algunos métodos que se utilizan para la autenticación pueden ser llaves
físicas o electrónicas, contraseñas, dispositivos de acceso o escaneos barométricos,
entre otros.
Desde el punto de vista digital, los dos principales métodos de acceso son los que se
basan en listas de control de acceso (LCA) y los que se basan en capacidades.
Basados en capacidades:
Se basan en la transferencia de llaves digitales que son imposibles de replicar. Son llaves
que señalan la posición de un objeto y el nivel de autorización del usuario. Esto evita el
uso de las listas de control de acceso que son vulnerables a robos.
Control de acceso
47
©Clictic S.L.
sino también para disminuir la capacidad de ocurrencia, mantenerse preparados para
afrontar futuras apariciones y establecer protocolos de respuesta para una
recuperación rápida y eficiente. Está diseñado de tal manera que en su aplicación no
influya el tipo de la empresa, su tamaño o naturaleza.
Todo el personal de la organización debe conocer el plan y este debe ponerse a prueba
antes de implementarlo como modelo.
Segunda fase:
Realizar un análisis de impacto en el negocio (BIA, Business Impact Analysis) para
estimar el impacto económico o de otro tipo, que podría ocasionar cualquier
incidencia desastrosa o que amenace la seguridad de la empresa.
Tercera fase:
Seleccionar estrategias donde se identifiquen los recursos con los que cuenta la
organización. Evaluar salvaguardas y analizar si es más conveniente aportar una
solución interna o externa. Valorar las ventajas y desventajas de estas
estrategias para definir las que sean más convenientes para la compañía.
48
©Clictic S.L.
Cuarta fase:
Desarrollar los planes que haya que implementar para afrontar posibles
incidencias.
Quinta fase:
Realizar pruebas y mantenimiento del plan de continuidad.
Análisis y planificación
3.9.1 CONFORMIDAD
El concepto de conformidad se puede entender como las acciones que llevan a cabo las
empresas para cumplir las normas, políticas y regulaciones que se le aplican con la
finalidad de proteger y ofrecer garantía a los interesados mediante reglas legales.
Software de cumplimiento:
Gestiona la documentación y procesos que están asociados con la evaluación, ejecución de
controles y registro de eventos relacionados con técnicas de auditoría asistida mediante
ordenadores. Se encarga de: gestionar documentos, gestionar eventos, controlar contratos
y establecer un portal de colaboración entre clientes y proveedores.
3.9.2. LEGALIDAD
La aplicación de los SGSI está regulada por un marco legal al cual deben atenerse e
integrarse estos sistemas. Con el paso de los años las exigencias informáticas han
conllevado a la creación de nuevas leyes que regulen un medio que no existía hasta
hace muy poco. Ejemplos de leyes como estas son la ley de protección de datos, leyes
sectoriales que puedan afectar ámbitos del negocio, ley de acceso electrónico a los
servicios públicos, entre otras.
49
©Clictic S.L.
La Ley Orgánica 3/2018 de Protección de Datos y Garantía de los Derechos Digitales
“LOPDGDD”, entrada en vigor el 6 de diciembre de 2018, cuyo objeto es adaptar
nuestra legislación al Reglamento europeo 2016/679 de Protección de Datos “RGPD” y
regular el derecho fundamental a la protección de datos.
Siguiendo esta misma línea, la agencia española de protección de datos establece la ley
34/2002 de servicios de la sociedad de la información y comercio electrónico para
regular las obligaciones de los prestadores de Internet.
Otra norma es el real decreto 1/1996 que hace referencia a los derechos de autor y
propiedad intelectual. La legislación española separa la propiedad intelectual de la
propiedad industrial a través de la ley 17/2001 que vela por los derechos de marcas
nombres comerciales.
Otras leyes que se pueden mencionar son la ley 59/2003, sobre la firma electrónica, que
garantiza la eficacia jurídica en cuanto a la prestación de servicio de identificación; y la
ley 32/2003 de telecomunicaciones.
Para finalizar, la ley 11/2017 reconoce los derechos de los ciudadanos a relacionarse
con las administraciones públicas mediante dispositivos electrónicos para que la
ciudadanía tenga acceso a los servicios públicos y pueda realizar trámites en cualquier
momento y desde cualquier lugar. Todo ello bajo una política de seguridad compuesta
por varios principios y requisitos a través del esquema nacional de seguridad (Real
decreto 3/2010).
50
©Clictic S.L.
TEMA 4. ESTRATEGIAS DE SEGURIDAD.
4.1. MENOR PRIVILEGIO
El concepto de privilegio hace referencia a un derecho bien definido que requiere un
usuario o un proceso para realizar una determinada función. El concepto de menor
privilegio restringe los derechos de acceso a los usuarios, aplicaciones, sistemas,
cuentas o dispositivos, a otorgar únicamente los recursos mínimos necesarios para la
realización de las actividades.
Fue usado por primera vez por el Departamento de Defensa de los Estados Unidos en
1985, en sus “Criterios de Evaluación para los Sistemas Computarizados de Confianza
del Departamento de Defensa”, donde se indican recomendaciones para el resguardo
de datos clasificados. En la actualidad, el principio del menor privilegio sigue siendo de
los más utilizados y de gran relevancia a pesar del auge de la tecnología con respecto a
la seguridad.
Existen dos tipos de cuenta según el papel que cumplen los activos dentro de una
empresa:
Cuenta de Usuario Estándar: Posee un número limitado de privilegios. La
mayoría de los usuarios deben operar en estas cuentas al menos un 90%-100%
de su tiempo de empleo en sistemas de menor privilegio.
Cuenta de “Super-usuario”: Virtualmente pueden poseer un número ilimitado de
privilegios sobre un determinado sistema. Pueden efectuar cambios en una red
o incluso eliminar datos y usuarios. Son utilizadas por el personal técnico
especializado para realizar tareas de administración.
La cuenta de superusuario (llamada “root”) cuenta con acceso a todos los comandos,
recursos, documentos y directorios, en sistemas como Linux y Unix. Puede otorgar o
revocar permisos a otros usuarios y un mal uso de esta cuenta, sea intencionado o no,
puede provocar graves daños irreversibles en el sistema. Por tanto su uso sólo debe
emplearse cuando es estrictamente necesario.
Por otro lado, las cuentas de usuario estándar sólo poseen los privilegios mínimos de
instalación y personalización de algunos programas.
Para los sistemas Mac Os X, los privilegios de las cuentas superusuario son muy
similares a las de los sistemas Linux; a excepción de que los equipos de Apple no se
implementan como un servidor y que, por medidas de seguridad se debe crear una
cuenta de usuario estándar para el uso diario del equipo, ya que por defecto el usuario
posee privilegios de superusuario.
Es cierto que los ambientes virtuales y los que están ubicados en la nube ofrecen
muchísimos beneficios, pero también presentan problemas en la seguridad ya que
muchas de las herramientas de seguridad existentes fueron diseñadas para ambientes
locales; y al implementar los sistemas en la nube o los híbridos, dejan brechas que
pueden permitir el acceso de usuarios no autorizados al sistema. Además, estos
sistemas han introducido consolas de administrador que otorgan privilegios de
superusuario a terceros, de forma que pueden configurar, eliminar o modificar
servidores a gran escala.
52
©Clictic S.L.
de seguridad) y en sistemas donde existan conexiones no reguladas puede permitir el
acceso a un tercero sin necesidad de obtener privilegios.
Hackers internos:
Es el caso más común entre las brechas de seguridad más graves ya que generalmente
son empleados o ex-empleados de la compañía y pueden conocer las vulnerabilidades
del sistema, sus lagunas y cómo ocultar sus rastros. Un ejemplo fue la fuga de 14000
ficheros que ocasionó Anthony Levandowski en 2017 desde la casa matriz de Google,
Alphabet. El ex-ingeniero de la empresa facilitó estos datos a su nueva compañía, Uber.
Hackers externos:
Lo que más buscan los hackers externos son credenciales y cuentas que tienen altos
privilegios para acceder a los sistemas más importantes y a los datos más sensibles de
las compañías. Con una cuenta de superusuario, pueden expandir su dominio entre
aquellos equipos que se encuentren conectados a la red y pueden convertirse en
infiltrados, algo realmente peligroso. Un ejemplo de táctica que utilizan para obtener
estas credenciales es realizar un pequeño ataque mediante el phishing u obtener
primero una cuenta de usuario estándar hasta obtener una que le permita conseguir
más privilegios.
Por otra parte, es necesario mencionar las ventajas que aporta el uso del principio del
menor privilegio:
Actividades más fáciles de realizar y verificar:
Ayuda a crear un ambiente más simple y fácil de supervisar al tener limitado el
número de actividades que un usuario puede realizar.
53
©Clictic S.L.
Al limitar los privilegios de los usuarios estándar, los procesos o aplicaciones,
también se limitan los accesos posibles para la realización de un ataque.
A continuación se explican ciertos puntos que hay que tener en cuenta para poder
aplicar esta estrategia:
PERÍMETRO:
Hay que definir el perímetro máximo de los datos que son necesarios defender. Suele
ser el router de conexión a Internet, vulnerable a ataques DoS (Denegación del servicio).
FLUJO DE DATOS:
Es necesario conocer el flujo de entrada y de salida de los datos en la red. Puede ser el
uso de emails, el tráfico por Internet, transferencias de archivos, unidades extraíbles
(CD, DVD, discos duros externos, USB), y conexiones inalámbricas a otros dispositivos
(Smartphones, Tablets, dispositivos que estén conectados al Internet de las Cosas)
MÉTODOS DE DEFENSA:
Es necesario seleccionar los métodos de defensa que se van a implementar en el
sistema y a qué niveles trabajarán cada uno, una vez realizada las actividades
mencionadas anteriormente. Una estrategia de control puede ser la esquematización
54
©Clictic S.L.
de las acciones de dichos métodos de protección para tener una visión más clara y
precisa de los niveles implementados. A continuación se detallan algunos de los
principales métodos de defensa.
Seguridad física:
Son medidas de seguridad que se implementan al hardware para evitar todo
tipo de daño físico ya sea por intrusión o avería intencionada. Algunos de los
controles que debe implementar la compañía son: empleo de registros, alarmas,
control de acceso, etc.
Encriptación:
Consiste en cifrar los datos iniciales para que no puedan ser interpretados
fácilmente por personas o aplicaciones que desconozcan los métodos de
descifrado. Esto permite protegerlos durante su estancia y almacenamiento en
la red y además garantiza la confidencialidad de los mismos ya que sólo podrán
ser leídos si consiguen descifrarlos.
Firewall o Cortafuegos:
Se utiliza para restringir el acceso según las políticas de seguridad establecidas y
para analizar la conexión entre las redes. Permite el uso de comunicaciones
autorizadas y bloquea el acceso a cualquiera que no esté autorizado.
Antimalware:
Es un software que detecta los programas maliciosos que se encuentren en el
sistema o que estén intentando acceder a él; previene su entrada y/o elimina su
presencia. Defiende al sistema de malwares, virus, troyanos o gusanos.
Antivirus / antimalware
Políticas y procedimientos:
Son normas que establece la compañía para proteger los activos de información
y que definen los objetivos, auditorías y actividades de control para el programa
de seguridad. Todos los miembros de la organización deben conocer estas
políticas.
Sistemas de detección:
Consisten en monitorizar el tráfico de la red para prevenir y alertar sobre
cualquier actividad de carácter malicioso en tiempo real. Analizan el tipo de
tráfico, el tipo de contenido y su comportamiento. También existen otros
sistemas de detección que informan que ha ocurrido un ataque, una vez
55
©Clictic S.L.
realizado, y aportan datos para facilitar la restauración de los daños y prevenir
ataques futuros similares.
Firewall / cortafuegos
Los puntos de choque serán completamente inútiles si un atacante tiene acceso a la red
desde cualquier otro punto independiente del propio punto de choque. Las conexiones
directas que no estén controladas, las conexiones inalámbricas fuera de Internet así
como las unidades extraíbles, son posibles vulnerabilidades del sistema ya que pueden
actuar como puntos de acceso desprotegidos.
Este tipo de táctica se considera un resultado todo o nada, ya que al existir una brecha
de seguridad ocasionada por la entrada de un atacante por un punto de acceso o bien
desprotegido, o bien porque logró burlar la seguridad de este punto si estaba
protegido, este tendría acceso a toda la información y recursos del sistema. Ante una
eventualidad como esta, se debe fortalecer la seguridad de dicho punto de acceso y se
deben utilizar distintas herramientas de protección.
Esta táctica no se utiliza sola, sino que se combina con otras estrategias para optimizar
el control de entrada y salida a la red.
Punto de
Choque
Exterior Interior
El ataque más peligroso usado por los hackers una vez descubierto el eslabón más débil,
es el Phishing. Consisten en actividad fraudulenta de camuflar un correo electrónico o
57
©Clictic S.L.
una página web de una compañía de confianza para que el usuario introduzca las
información y así el hacker pueda obtenerla. Actualmente las técnicas utilizadas para
camuflar las páginas web se han desarrollado de tal manera que es casi imperceptible
encontrar los cambios realizados en estas, y por otra parte está el instinto del usuario
que introduce la información casi automáticamente sin prestar atención a estos
cambios.
Este sistema se implementa también en muchos dispositivos del día a día incluyendo
desde ordenadores personales hasta sistemas de seguridad eléctricos, aunque en estos
últimos el principio se suele aplicar al revés: cuando falla alguno de los componentes, o
todo el sistema, las puertas automáticas permanecen abiertas para evitar que cualquier
persona quede atrapada dentro de las instalaciones.
En este principio, todas las funciones y procesos se encuentran prohibidos por defecto.
Solamente un superusuario, técnico o administrador puede configurarlo determinando
qué es lo que se debe permitir siguiendo los siguientes parámetros:
Examinar los servicios que necesitan los usuarios para realizar sus funciones.
Considerar las implicaciones de seguridad de estos servicios y cómo deben
proveerse de manera eficiente para evitar cualquier brecha.
Permitir únicamente los servicios que como técnico puede entender, proveer de
forma segura y necesitar legítimamente
59
©Clictic S.L.
Los servicios deben ir habilitándose según el caso, una vez analizada su seguridad y
realizado un balance de las implicaciones que tienen según la necesidad de los usuarios.
Se debe establecer un modelo que se adecúe a cada equipo y situación, basándose en
este análisis y disponibilidad de varios programas para mejorar la seguridad del servicio.
Esto es algo imposible de cumplir cuando se trata de materia logística ya que el usuario
debe ser perfectamente instruido y el técnico deberá estar al tanto en todo momento
de toda la actividad realizada en los equipos, incluyendo la monitorización de las
conexiones a Internet o inalámbricas a las que sean sometidos cada uno de los equipos.
Por lo que resulta algo agotador, muy costoso e inviable, debido además a la cantidad
de problemas posibles existentes y las técnicas de vulneración disponibles. Es decir, si
no se conoce un problema, este no se encontrará en la lista de “prohibidos” y por ende,
tendrá acceso y su presencia será notable cuando ya se convierta en algo preocupante
dentro del equipo.
Por otro lado, utilizar este sistema puede conllevar a una competencia entre usuario y
técnico, donde este preparará un entorno para las acciones específicas que debe
realizar el usuario limitando todas las que considere peligrosas. Por otra parte, el
usuario podrá desarrollar nuevas maneras de realizar sus actividades, y este proceso se
repetiría una y otra vez, ocasionando períodos de vulnerabilidad mientras se detecta el
problema y se soluciona.
Aunque este tipo de política resulte beneficiosa sólo a los atacantes, es necesario
utilizarla en aquellas redes que deban ser de naturaleza abierta por sus funciones. Por
ejemplo: en universidades, servicios públicos de acceso a Internet, centros de
investigación, entre otros.
Otro ejemplo sería el usuario que encontró algún inconveniente en el mejor programa
antimalware del mundo y logró desactivarlo en su equipo para poder ejecutar otros
programas a su conveniencia o evitar el control sobre su puesto de trabajo. De esta
manera, por muy bueno que sea el antimalware, no podrá proteger al equipo y basta
con que esté conectado a la red corporativa para que pase a ser un factor de riesgo
importante, debido a que constituye una vulnerabilidad de acceso a todo el sistema.
Diversificar las defensas de un sistema puede suponer una gran diferencia en cuanto a
parámetros de seguridad se refiere. No obstante, se deben tener en cuenta diferente
factores a la hora de implementar correctamente un sistema diversificado:
TIPOS DE PROGRAMA:
Después de evaluar las posibles vulnerabilidades del sistema, se deben utilizar varios
tipos de programas para conseguir que la seguridad el sistema sea inquebrantable. No
61
©Clictic S.L.
se considera una defensa diversificada si solo se utiliza un mismo tipo de programa
aunque se encuentre en varias capas y sea de distinto proveedor. Un ejemplo de esto es
una organización cuyo protocolo se base únicamente en el uso de Firewalls de
proveedores distintos; aún sigue presente la vulnerabilidad contra cualquier conexión
que no sea mediante Internet.
CÓDIGO FUENTE:
Al utilizar solamente aplicaciones basadas en el mismo código o lenguaje, se
incrementan las vulnerabilidades del sistema ya que todo el que conozca el lenguaje
puede encontrar fallos o brechas en las aplicaciones utilizadas. Por ello es importante
evaluar el código base que da utilidad a estas aplicaciones aunque aparentemente
algunas soluciones puedan parecer distintas unas entre otras.
PROVEEDORES:
Generalmente todos los programas y aplicaciones del mismo proveedor poseen
vulnerabilidades similares aunque su función sea diferente y cualquier hacker puede ser
consciente de ello. Si alguien consigue vulnerar alguna de estas aplicaciones,
seguramente consiga vulnerar el resto del mismo proveedor. Es por esto que un
sistema de seguridad formado únicamente por programas y servicios de un mismo
proveedor aumenta considerablemente el riesgo de sufrir una brecha en la seguridad.
COSTOS:
Muchas empresas optan por utilizar paquetes de seguridad ofrecidos por una misma
compañía y que aunque puedan parecer correctamente diversificados y completos,
pueden proceder de un mismo proveedor. Esto es debido a que el uso de un sistema
correctamente diversificado proveniente de diferentes proveedores y distinto código
fuente supone un alto costo para la empresa que decida implementarlo. Hay que tener
en cuenta que no porque una opción sea más económica y aparentemente más
práctica, significa que sea la mejor opción.
CONFIGURACIÓN COMÚN:
Si un sistema diversificado es configurado por una sola persona, podría presentar
problemas similares si la raíz de estos es más conceptual que tecnológica. Un claro
ejemplo es si el problema en cuestión proviene de un malentendido sobre el
funcionamiento de un determinado protocolo, el sistema podría estar configurado
incorrectamente y por tanto dejando paso a una posible vulnerabilidad.
COMPATIBILIDAD:
Es muy importante la compatibilidad entre las herramientas utilizadas para
implementar un buen sistema de seguridad, ya que cualquier fallo que ocurra, en vez de
diversificar la defensa, incrementará el número de errores de cada tipo. En la
actualidad, la mayoría de las soluciones proporcionada para implementar este tipo de
sistemas posibilitan la compatibilidad entre estas y los distintos programas existentes.
62
©Clictic S.L.
4.10. SIMPLICIDAD
La simplicidad es un principio de seguridad básico que en primer lugar hace que un
sistema sea más fácil de entender por un usuario promedio y también por un usuario
especializado; si no es posible entender cómo funciona un sistema de seguridad de
manera detallada, no es posible tener la certeza de que sea completamente seguro. En
segundo lugar, un sistema demasiado complejo puede contener puntos ciegos en los
que se puedan ocultar cualquier tipo de fallos y las soluciones más complejas son las
más propensas a contar con un gran número de puntos débiles.
En los sistemas de seguridad eficientes hay que hacer un balance entre la simplicidad y
la complejidad para que no se vean sacrificados ninguno de los dos principios para
conseguir más del otro. Aunque es necesario decir que un sistema correctamente
implementado en distintas capas, diversificado, con privilegios definidos y las
vulnerabilidades analizadas, representa en sí un sistema bastante complejo. De todas
maneras, es preferible optar por un sistema que se pueda explicar a todos los usuarios
que lo requieran y que sus funciones sean conocidas, su comportamiento sea
predecible y que aun así mantenga un grado de simplicidad aceptable para todos los
usuarios.
Simplicidad / complejidad
63
©Clictic S.L.
5. EXPLORACIÓN DE RED
5.1. EXPLORACIÓN DE RED
Como se ha visto en módulos anteriores, la seguridad es uno de los aspectos más
importantes en las redes ya que deben proporcionar un servicio de calidad, respaldar la
seguridad de la información, ser tolerante a fallos, y además, deben ser escalables. Sin
embargo, debido a la evolución de las amenazas, no existe una única solución para
solventar los problemas de seguridad presentes en la red. Por tanto los medios
utilizados para la seguridad de la red deben ir más allá y estar un paso por delante de
estas., ya que cuentan con diferentes herramientas de seguridad para ello.
La infraestructura de una red varía según su tamaño, la cantidad de servicios que ofrece
o utiliza y la cantidad de usuarios que hacen uso de ella. Como las redes no poseen
límites en cuanto a su alcance, la infraestructura de cada una tiene la tarea de crecer y
ajustarse a sus necesidades. Internet permite que las personas tengan acceso a grandes
volúmenes de información y se encuentra disponible en todo el planeta debido a las
comunicaciones satelitales
❏ Mapeo de redes:
Consiste en detectar qué dispositivos se encuentran activos en la red a través del envío
de mensajes. Dependiendo de la respuesta que emita el dispositivo, se puede saber si
está o no conectado a la red.
64
©Clictic S.L.
❏ Detección de Sistemas Operativos:
Consiste en determinar qué sistema operativo se encuentra instalado en un dispositivo
que está conectado a la red, mediante el envío de mensajes especializados. Según la
respuesta del equipo, se puede detectar el sistema operativo instalado en él.
Estas técnicas están enfocadas a encontrar y enumerar los equipos que se encuentran
en una red, junto con el software instalado en ellos. No obstante, existen otras técnicas
orientadas a probar la efectividad de las configuraciones de seguridad de la red, las
cuales deben poder ser detectadas por dichas configuraciones para prevenirlas.
Ejemplos de estas pueden ser:
Esconder el origen del emisor de los mensajes.
Enviar paquetes fragmentados.
Realizar sondeos con configuraciones especiales de tiempo de espera de
respuesta a los mensajes enviados.
Los datos que se obtienen en estos procesos tienen el objetivo de aclarar qué
componentes, software y hardware, se encuentran en la red. A continuación se muestra
un ejemplo que representa lo que se espera encontrar al realizar un sondeo de un
ordenador conectado a la red de una compañía.
➢ ETHERNET
Un protocolo de comunicación se basa en una serie de reglas que deben ser cumplidas
por el emisor y por el receptor durante el proceso de comunicación. Es por ello que es
muy similar a un lenguaje.
65
©Clictic S.L.
Ethernet es el protocolo estándar de comunicación entre equipos más popular del
mundo. Fue desarrollado bajo el principio de medios compartidos en una red local
donde todos los ordenadores están conectados al mismo cable de red. Funciona como
un protocolo de transmisión amplia donde envía datos a todos los equipos en el mismo
segmento de red. Esta información se divide en secciones más pequeñas y manejables
que se denominan paquetes.
Cada paquete contiene una cabecera con las direcciones de ambos equipos: el emisor y
el destinatario. Como se mencionó antes, en Ethernet los mensajes son enviados a
todos los ordenadores presentes en un segmento de la red; por tanto, la información
presente en la cabecera de cada paquete es la que resuelve el problema de saber a qué
mensaje debe responder un ordenador. Es decir, ante un intento de comunicación,
solamente responderá al emisor el equipo cuya dirección esté presente en la cabecera
del mensaje. El resto de equipos tienen la capacidad de ver el mensaje, pero lo ignoran
ya que sus direcciones no están presentes en la cabecera.
Ethernet utiliza las direcciones MAC (Media Access Control), también conocidas como
direcciones de hardware. Estas direcciones diferencian los distintos medios presentes
en un segmento de la red ya que este puede ser compartido por varios a la vez. Cada
equipo debe tener un identificador único en su tarjeta de interfaz de red (NIC).
Como se ha mencionado ya, las direcciones MAC son únicas y no pueden existir dos
equipos con la misma dirección. Sin embargo, puede que esto ocurra ocasionalmente
debido a errores de manufactura. En estos casos es necesario cambiar la dirección y
puede hacerse mediante programas como ifconfig o se puede volver a grabar la nueva
dirección en la NIC de manera manual. El proceso de proveer una dirección MAC o
cualquier otro tipo de dirección falsa, es denominado spoofing.
➢ MODELO OSI
El Modelo OSI, o modelo de interconexión de sistemas abiertos, es un estándar
desarrollado por la Organización Internacional para los Estándares ISO con el objetivo
de proveer un estándar universal que sirva para describir cómo deben trabajar los
diferentes protocolos y componentes en un sistema de redes. Fue propuesto a
principios de los años 80 y divide las funciones de una red en siete capas, donde cada
una representa algún grupo de funcionalidades, actividades o especificaciones.
66
©Clictic S.L.
APLICACIÓN
PRESENTACIÓN
TRANSPORTE
SESIÓN
REDES
ENLACES DE
DATOS
FÍSICO
Capa Física:
Es el primer nivel en el modelo OSI. Tiene como objetivo definir los requerimientos
eléctricos y mecánicos para dar soporte al proceso de envío de flujo de bits a través de
los medios de transmisión (cables de par trenzado, cable coaxial, fibra óptica,
inalámbricos). Los siguientes aspectos están involucrados en la especificación de la capa
física:
Control de las características del sistema eléctrico (cambios de voltaje,
estabilidad del sistema eléctrico).
Distancia máxima para la transmisión.
Los conectores físicos del medio de transmisión.
Comprobar que los datos llegan a destino.
Topología o diagrama físico de la red.
En este nivel existen problemas análogos y digitales con los que se debe lidiar, como los
problemas relacionados con la estabilidad de la señal, asegurarse de transmitir los datos
de manera síncrona o asíncrona, multiplexing, entre otros.
67
©Clictic S.L.
Cables de red par trenzado y conectores
Fibra óptica
68
©Clictic S.L.
Los switches o conmutadores son dispositivos presentes en este nivel y ayudan a reducir
la congestión de la red a través del envío de datos dirigidos únicamente al puerto al cual
el ordenador destino está conectado. La función básica de un switch es la de unir o
conectar dispositivos en red.
Los puentes de red son otros de los dispositivos presentes en la capa de enlace. Se
utilizan para segmentar la red y filtrar el tráfico mediante la definición de tablas que,
basadas en la direcciones MAC de los nodos, definen los equipos que están localizados
en cada lado del puente.
El nivel de enlace de datos está dividido en dos subniveles: subnivel de enlace lógico y
subnivel MAC.
Switch y puertos
Capa de redes:
El nivel de red es donde se asignan las secuencias de paquetes y las direcciones lógicas.
Estas direcciones no son permanentes y son asignadas mediante software y solo las
puede cambiar un administrador de red. Las direcciones IP usadas por los protocolos
TCP/IP en Internet y las direcciones IPX usadas por protocolos IPX/Sequenced Packet
Exchange sobre redes NetWare son algunos ejemplos de direcciones lógicas. Estos
protocolos mencionados también se definen como protocolos enrutables ya que
incluyen esquemas de que identifican la red o subred y el cliente particular dentro de
ella. Sin embargo, los protocolos que no poseen esquemas complejos de
direccionamiento no pueden ser enrutados por varios tipos de redes. Ejemplo de estos
es: NETBIOS Extended User Interface (NetBEUI).
Por otra parte, la capa de red también es la encargada de crear los circuitos virtuales
entre dos puntos del sistema, de la configuración de switches de nivel 3, del
enrutamiento y de la redirección de paquetes de una red o subred a otra. Un nodo o
69
©Clictic S.L.
host comprende cualquier elemento que contiene una dirección MAC y habitualmente
incluye: ordenadores, impresoras y routers o enrutadores. En este nivel también se
proporcionan otros niveles de control del flujo y de errores.
Red de ordenadores
Desde ahora en adelante los medios primarios involucrarán más componentes software
que hardware para la implementación del Modelo OSI.
Capa de transporte:
Es la encargada de transportar los datos de un host a otro asegurándose de que la
transferencia entre estos sea transparente. También se encarga de controlar el flujo de
datos de principio a fin y de la detección y manejo de errores.
Los protocolos de este nivel sirven para iniciar el contacto entre puertos específicos en
diferentes nodos con el objetivo de crear un circuito virtual. Los principales en este nivel
son: TCP (Transmission Control Protocol, orientado a conexión) y UDP (User Datagram
Protocol, no orientado a conexión).
El protocolo TCP verifica que la aplicación que está enviando datos está autorizada para
acceder a la red y que tanto el emisor como receptor están en condiciones de iniciar la
transferencia de datos. El proceso de envío comienza cuando esta sincronización se
completa. Durante todo el tiempo que dure la transmisión, el protocolo se encarga de
supervisar el flujo de datos y de manejar los errores en caso de que ocurran.
Por otra parte, esta capa también se encarga de asignar las direcciones lógicas a los
puertos. Un ejemplo para entender mejor su definición es el siguiente: el puerto se
70
©Clictic S.L.
puede definir como un número de habitación dentro de un hotel e indica exactamente
a dónde deben dirigirse los huéspedes.
Todas las operaciones de comunicación por red como pueden ser visitar una página
web, realizar descargas mediante FTP o enviar un correo electrónico, requieren un
puerto y un protocolo en particular, tal y como muestra la tabla anterior. De esta forma
y gracias a esa diferenciación, la información que va dirigida al navegador no es
interpretada por el cliente de correos, por ejemplo.
71
©Clictic S.L.
Los protocolos TCP y UDP utilizan los puertos comprendidos en el rango de 0 a 65535.
Los que están entre 0 y 1023 son asignados por la IANA (Autoridad de Números
Asignados de Internet) y son considerados estáticos. Los puertos a partir del 1024
incluido, son considerados puertos efímeros y muchos de ellos son utilizados por
aplicaciones conocidas comúnmente.
Capa de sesión:
Es la capa responsable de iniciar, monitorizar y cerrar una sesión de comunicación entre
dos procesos en dos hosts distintos, después de que el nivel de transporte establezca
una conexión virtual y proporcione los circuitos virtuales. También se encarga de
adjuntar la información que indica el comienzo y fin del mensaje en la cabecera de los
paquetes y una vez realizado, sincroniza la capa de sesión del emisor y la del receptor.
El uso de ACKs forma parte fundamental de este proceso.
Este nivel controla cuando se envía la comunicación entre sesiones como Full-duplex o
Half-duplex. La comunicación Full-duplex permite que la información pueda ser enviada
en ambos sentidos al mismo tiempo, como una llamada telefónica. En cambio, la
comunicación Half-duplex se realiza en ambos sentidos pero la información solo puede
viajar en un sentido a la vez, como en la comunicación por transmisores de radio.
Mientras que la capa de transporte establece la conexión entre dos equipos, el nivel de
sesión realiza esta misma operación entre dos procesos. Las aplicaciones por lo general
ejecutan varios procesos a la vez para poder realizar sus operaciones.
Capa de presentación:
Esta capa se encarga de interpretar los datos para darles un formato común. En ella
tiene lugar el proceso de traducción de protocolos, que consiste en transformar el
formato de los datos de un protocolo para que se adapte a otro, con el objetivo de que
puedan ser intercambiables entre distintos sistemas operativos o plataformas.
Los gateways o servicios de puerta de entrada o enlace operan en esta capa y no son
más que puntos de conexión entre redes que usan diferentes plataformas o
aplicaciones. Existen varios tipos de gateways para diferentes tipos de servicios, como
por ejemplo: gateway SNA, envío de correos, entre otros y por lo general son
implementados en software como Gateway Services for NetWare (GSNW).
72
©Clictic S.L.
Capa de aplicación:
Es donde interactúan los programas de aplicación con la red y todo lo que ocurre a este
nivel es específico de esta interacción. Los procesos de las aplicaciones son iniciados por
estas mismas y los datos que generan son asignados a la capa de aplicación. Entre estos
procesos se pueden encontrar: transferencia de archivos, llamadas a procesos remotos,
envío de correo electrónico, manejo y monitoreo de redes, acceso remoto a impresoras
y cualquier forma de comunicación que requiera una aplicación para interactuar con la
red.
Ejemplos de protocolos que trabajan en esta capa: SMTP, FTP, Telnet, POP, IMAP.
Cabe destacar que no todos los protocolos están diseñados para adaptarse al Modelo
OSI. El protocolo TCP/IP fue diseñado exclusivamente para ser utilizado por el modelo
DoD del departamento de defensa en los Estados Unidos. En los apartados siguientes se
explican algunos protocolos con más detalle.
El término Multiple Access (acceso múltiple) hace referencia a que en la mayoría de las
redes no se otorga ningún tipo de prioridad a la transmisión del mensaje dentro de la
misma cuando se asocian varios hosts a un mismo segmento de red. El protocolo se
utiliza para evitar que esta falta de prioridad no acabe ocasionando colisiones entre los
mensajes dentro de la red.
Principales componentes:
❏ Identificación IP (IPID): tiene dos funciones: identificar de manera única a los
datagramas de la IP y reensamblar paquetes fragmentados.
❏ Protocolo: se refiere al protocolo de alto nivel contenido dentro del datagrama.
❏ Tiempo de vida o Time-to-live (TTL): su objetivo evitar que los paquetes duren
más tiempo del necesario en la red. Sirve como parámetro de control, el datagrama es
73
©Clictic S.L.
desechado cuando TTL alcanza 0. Puede ser usado para identificar a cada router en la
red mediante el envío de datagramas con sucesivos incrementos en el valor de su TTL,
registrando cuando son excedidos.
❏ Dirección IP de la fuente: la dirección IP del host donde el datagrama fue creado.
❏ Dirección IP destino: la dirección IP del host al cual el datagrama va dirigido.
Por ejemplo, equipo A envía un paquete a equipo B con bandera de sincronización SYN
presente. Si B está disponible y en condiciones de comenzar el proceso de
comunicación, entonces devuelve el mensaje SYN, pero con la bandera ACK. A este
mensaje se le conoce como SYN/ACK. Ahora A indica a B mediante un mensaje ACK que
ha recibido el SYN/ACK que B le ha enviado.
Este proceso se conoce como el saludo de 3 vías o 3 way handshake. En este punto ya
puede comenzar la transmisión de información. Cuando acaba el proceso de
comunicación entre los dos hosts, se envía un paquete con la bandera FIN y se inicia un
proceso similar de respuesta ACK. En el caso de que el equipo B rechace el mensaje SYN
enviado por el equipo A en el primer paso, B responde con un mensaje RST. Cuando se
envía un mensaje SYN/ACK a un host que no ha realizado una solicitud SYN, este último
devuelve un mensaje de rechazo RST.
Secuencia TCP:
Se le asigna un número secuencial a cada paquete enviado en un proceso de
comunicación. A través de estos números, TCP puede realizar complejas tareas como la
74
©Clictic S.L.
retransmisión y reordenamiento de paquetes. Un ejemplo de este proceso es cuando
un navegador reanuda una descarga que fue cancelada.
TIPOS DE REDES
Se pueden definir once tipos de redes según su alcance:
1. Personal Area Network (PAN) o Red de Área Personal: es el tipo de red más
básico y de menor alcance. Generalmente está compuesta por un modem
inalámbrico, uno o dos ordenadores, impresoras, smartphones, tablets, etc. Está
diseñada para satisfacer las necesidades de oficinas o residencias pequeñas y
son manejadas por una sola persona desde un único router en la mayoría de los
casos.
2. Local Area Network (LAN) o Red de Área Local: es el tipo de red más común y
más usada. Conecta a varios dispositivos en un rango limitado, como puede ser
un edificio, una escuela o una mediana empresa. Generalmente son
administradas por una sola persona que controla los parámetros de seguridad y
acceso a la red. Esta red proporciona altas velocidades de Internet a usuarios
finales y dispositivos intermedios.
75
©Clictic S.L.
3. Wireless Local Area Network (WLAN) o Red Inalámbrica de Área Local: es un tipo
de red similar a las redes LAN que funciona aprovechándose de la tecnología de
conexiones inalámbrica, como el WiFi. La única diferencia con la red LAN es que
no requiere de cableado para conectarse al router.
6. Wide Area Network (WAN) o Red de Área Amplia: conecta ordenadores a través
de largas distancias. Permite que equipos y dispositivos de bajo voltaje se
conecten remotamente entre ellos sin importar lo lejos que estén. Un ejemplo
de este tipo de red es Internet, que conecta a varios equipos alrededor del
mundo. Suele ser administrada y mantenida por varios entes debido a su largo
alcance.
9. Passive Optical Local Area Network (POLAN) o Red Óptica Pasiva de Área Local: es
una alternativa a las redes LAN de Ethernet basadas en switches. Puede ser
integrada en cableado estructurado para resolver problemas relacionados con
ofrecer soporte a protocolos de Ethernet y aplicaciones de red tradicionales,
como por ejemplo, PoE (Power over Ethernet). Mediante una arquitectura LAN
de punto a multipunto, suelen utilizar filtros o splitters para separar una señal
óptica de una fuente de fibra óptica monomodo en múltiples señales para
usuarios y dispositivos.
10. Enterprise Private Network (EPN) o Red Privada Empresarial: es un tipo de red
creada y manejada por empresas con el objetivo de crear medios de conexión
entre sus distintas ubicaciones para compartir datos e información.
76
©Clictic S.L.
11. Virtual Private Network (VPN) o Red Privada Virtual: es un tipo de red que le
permite a sus usuarios enviar y recibir datos como si estuviesen conectados a la
red privada, incluso cuando no lo están. A través de un punto de conexión
virtual, los usuarios pueden acceder remotamente a redes privadas.
Los diagramas de topología son obligatorios para cualquiera que esté trabajando con
una red debido a que proporcionan un mapa visual de cómo está conectada. Existen
dos tipos de diagrama de topología:
o Diagramas de topología lógica: Identifican los esquemas de dispositivos, puertos
y direcciones IP.
o Diagramas de topología física: Identifican las ubicaciones físicas de los
dispositivos intermediarios, puertos configurados e instalaciones del cableado.
77
©Clictic S.L.
El direccionamiento IP está dividido en cinco clases diferentes que usan los bits iniciales
como puntos de referencia para identificar los rangos de cada una de ellas. Estos bits
iniciales son los bits de mayor significancia.
Clase A: El bit inicial es 0 y contiene un rango de direcciones privadas desde
10.0.0.0 a 10.255.255.255. La máscara de red predeterminada es 255.0.0.0.
Estas redes contienen hasta más de 16 millones de nodos.
Clase B: Los dos primeros bits del primer octeto son 10. Contiene un rango de
direcciones privadas desde 172.16.0.0 a 172.31.255.255. La máscara de red
predeterminada es 255.255.0.0. Estas redes pueden tener alrededor de 65.000
nodos.
Clase C: Los tres primeros bits del primer octeto son 110. Contiene un rango de
direcciones privadas desde 192.168.0.0 a 192.168.255.255. La máscara de red
predeterminada es 255.255.255.0. Sólo pueden tener hasta 254 nodos.
Clase D: Los cuatro primeros bits del primer octeto son 1110. Contiene un rango
de direcciones que van desde 224.0.0.0 a 239.255.255.255. No posee máscara
de red debido a que este tipo de dirección se usa para el envío de información
en múltiples redes a varios destinos a la vez. También se conocen como
Multicasting o Multidifusión.
Clase E: Los cinco primeros bits del primer octeto son 1111. Contiene un rango
de direcciones que van desde 240.0.0.0 a 255.255.255.255. No posee máscara
de red porque este tipo de dirección se encuentra reservada y por lo tanto no
puede ser usada por la Internet pública. Por el momento esta clase sólo se usa
con fines experimentales.
Este proceso se realiza con el fin de evaluar las configuraciones de la red, verificar que
esté funcionando correctamente y asegurarse de que la seguridad de la misma es
robusta. Puede ser realizado por los administradores de red y también por los hackers
antes de robar información. Por tanto, un administrador de red competente, debe
tener presente cómo y cuáles son los procesos realizados por hackers para
comprometer la seguridad de la compañía.
78
©Clictic S.L.
El proceso de inventariado de red forma parte de la segunda fase de las cinco que
componen el hacking ético. Estas fases son:
1. Reconocimiento
2. Escaneo
3. Obtención de acceso
4. Mantener el acceso
5. Cubrir las huellas
En el mercado existen varias herramientas conocidas como escáneres de red útiles para
realizar los procesos de un inventario de red.
Algunas de las técnicas más utilizadas por los programas escáneres son:
❏ Solicitud ICMP a la dirección de MAC: Un mensaje ICMP Tipo 17 es una
solicitud de máscara de dirección. Si la dirección IP de destino está activa,
responderá con su máscara de red (ICMP tipo 18).
❏ Ping TCP: Un ping TCP envía un paquete TCP SYN o TCP ACK a la dirección
IP del host a verificar. Estos paquetes se envían a puertos de uso común por
varios de los servicios y programas más utilizados, como, por ejemplo, 21, 25,
443, 80, entre otros. Si el nodo destino se encuentra activo, generará una
respuesta que dependerá de las versiones de software instaladas en el host, del
79
©Clictic S.L.
sistema operativo presente en el mismo, de los filtros del cortafuego y de las
listas de control de acceso del router.
Los métodos mencionados anteriormente para buscar los nodos activos en la red no
son fiables. Aunque el hecho de no recibir una respuesta puede indicar que el nodo está
activo, también puede significar que el router o el cortafuegos están descartando los
paquetes o que algunos sistemas operativos están configurados para ello.
80
©Clictic S.L.
❏ Sondeos furtivos: utilizan varias técnicas como configuraciones especiales en las
banderas de los mensajes, el envío de paquetes fragmentados y otras técnicas evasivas.
Algunos ejemplos son:
o Sondeo SYN/ACK
o Sondeo FIN
o Sondeo ACK
o Sondeo NULL
o Sondeo de Árbol de Navidad (XMAS)
El envío de paquetes TCP con distintas banderas o el de paquetes UDP con distintos
parámetros sirve como medio principal de exploración cuando se realiza un sondeo de
puertos. Tanto TCP y UDP tienen un rango de 65.536 puertos, comenzando por el 0. El
sondeo se puede aplicar a todos los puertos o sólo una parte de ellos. Un ejemplo se
aprecia en el trabajo de inventariado de red: una tarea típica es realizar sondeos sobre
puertos comúnmente usados por los principales programas y servicios, como FTP, SSH,
HTTP, SMTP, DNS, y Telnet.
Igual que ocurre con el sondeo de detección de nodos activos, las respuestas que se
reciben por parte de los puertos pueden no ser fiables debido a los filtros que se aplican
en el cortafuegos o a las configuraciones propias del sistema operativo que se
encuentre instalado en el nodo.
81
©Clictic S.L.
5.2.4. INVENTARIO DE RED. OPTIMIZACIÓN
Realizar un inventario de red requiere de una planificación muy cuidadosa. Tal y como
se refleja en el apartado de fundamentos de redes, el proceso de configuración y
montaje de una red debe ser fiel a los parámetros que se describen en el Modelo OSI
para proporcionar uniformidad en cuanto a los dispositivos y medios que componen la
red, así como a sus configuraciones. También es cierto que el tamaño de la red
cambiará significativamente según los requerimientos de la empresa.
Es por ello que antes de iniciar los sondeos para obtener información acerca de la red,
el primer paso que hay que realizar es delimitar. Una red LAN de clase B con seguridad
estará dividida en varios segmentos, que a su vez dependiendo de su tamaño, pudieran
estar divididos en otros segmentos. Por tanto, la planificación adecuada permitirá al
administrador de redes aprovechar al máximo las herramientas de sondeo necesarias
para llevar a cabo esta tarea.
Una de las características que debe tener una herramienta de escaneo de red eficiente
es el sondeo en paralelo. Permite realizar varios sondeos a la vez buscando por distintos
parámetros y segmentos de red, la modificación de los parámetros de tiempo de espera
por respuesta. La posibilidad de configurar procesos autómatas periódicos que
permitan mantener la información actualizada sobre el estado de la red se debe a que
algunos sondeos no necesitan esperar por las respuestas de los puertos en los nodos
objetivo y que también se puede incrementar la eficiencia del sondeo si se reducen
estos tiempos.
Los sistemas de detección de intrusos (IDS) son los encargados de monitorear la red en
busca de actividad sospechosa para generar alertas en caso de que la actividad de la red
presente características predefinidas dentro del sistema que indiquen que está siendo
atacada.
La mayoría de las técnicas de sondeo son fáciles de detectar por un sistema IDS. Sin
embargo, existen varias técnicas cuyo rastro en la red es bastante más bajo que el de
las técnicas tradicionales y que por tanto dificulta el trabajo de detección y alarma de
los sistemas IDS.
82
©Clictic S.L.
Dentro de este tipo de técnicas de sondeo sigiloso las más utilizadas por los hackers
son:
❏ Suplantación de identidad (Spoofing) y señuelos: consiste en suplantar la
dirección IP en los paquetes enviados en las peticiones para el esconder el
origen de quien los envía. No es muy efectiva a la hora de realizar sondeos ya
que las respuestas a estas peticiones van dirigidas a la IP falsa. Como son las
respuestas a las peticiones las que contienen la información valiosa en un
proceso de sondeo, el atacante no podrá sacar provecho de esta técnica si su
propósito es realizar uno. Por otra parte la técnica del señuelo sí permite
obtener información de los nodos en la red. Un señuelo es un servidor falso que
aparenta estar realizando un sondeo en la red al mismo tiempo que el atacante,
dificultando así el detectar cuál de los escáneres es el real.
❏ Fragmentación: consiste en dividir las peticiones TCP en varios segmentos
con el objetivo de evadir la detección.
❏ Sondeo detallado y lento: consiste en escanear un nodo y pocos puertos
a la vez. El objetivo de esta técnica es simular el tráfico normal de la red y por
ello el atacante intenta no saturarla con más peticiones de las que la red
acostumbra. Este tipo de sondeo puede ser muy efectivo ya que a los IDS cuesta
más detectar el rastro dejado por el atacante.
❏ Puertos origen: para que las redes puedan comunicarse necesitan que
algunos puertos en sus nodos estén abiertos. Por ejemplo, el uso libre del
puerto 53 (DNS) siempre es permitido en las reglas de un cortafuego.
❏ Opciones del protocolo IP: algunos escáneres permiten modificar las
opciones del protocolo IP con el objetivo de evadir los cortafuegos y especificar
la ruta al objetivo.
❏ Técnicas avanzadas: existen técnicas más avanzadas que pueden usar los
atacantes para realizar un sondeo a una red y que serán abordadas con más
detalle más adelante en el curso. Ejemplos: sondeo de rebote FTP, sondeo
ocioso y la tunelización de proxy.
83
©Clictic S.L.
❏ Snort: es una herramienta de sondeo de red de código libre, que se usa para
detectar y prevenir accesos no autorizados a la red. Puede detectar gusanos, realizar
escaneo de puertos y verificar la integridad de la web mediante el análisis de protocolos
y del contenido presente en la red.
84
©Clictic S.L.
5.3. NMAP Y SCANLINE
https://nmap.org/
5.3.1. NMAP
Nmap (Network Mapper) fue introducida al público por primera vez en septiembre de
1997, por Gordon "Fyodor" Lyon, en el artículo “The Art of Port Scanning”, publicado en
Phrack, en el cual Fyodor comparte todo el código fuente necesario para su
compilación. Está especializada en la auditoría y exploración de la seguridad para redes
informáticas licenciada bajo la Licencia General Pública de GNU como estipula la Free
Software Foundation.
Nmap puede ser utilizada como línea de comandos o mediante cualquiera de las GUI
diseñadas para trabajar con ella, como Zenmap. Dependiendo de la versión, puede
requerir la instalación de dependencias que por lo general consisten de librerías de
manejo de redes específicas para dicha versión.
85
©Clictic S.L.
encontrar un servidor SSH vulnerable, que luego compromete haciendo uso del exploit
SSH1 CR32.
86
©Clictic S.L.
Los cortafuegos añaden una variable extra al proceso de detección de nodos activos en
la red. Cuando un cortafuego está configurado para filtrar todos los paquetes que van
dirigidos a un grupo de puertos de un equipo, evita que se cumplan los procesos
estándares de comunicación empleados por los protocolos de red. Esto permite crear
falsos positivos en el escaneo de redes si no se implementan las técnicas correctas. En
estos casos, Nmap ofrece una serie de sondeos diseñados especialmente para
responder a este tipo de situaciones. Es la herramienta de facto que utilizan los hackers
para realizar sondeos de redes. Con ella un atacante competente puede llegar a burlar
tanto un cortafuego como un IDS, comprometiendo así la integridad de los
componentes dentro de la red.
# nmap scanme.nmap.org
Starting Nmap 7.01 ( https://nmap.org ) at 2018-04-08 01:22 -04
Nmap scan report for scanme.nmap.org (45.33.32.156)
Host is up (0.27s latency).
Other addresses for scanme.nmap.org (not scanned):
2600:3c01::f03c:91ff:fe18:bb2f
Not shown: 994 closed ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp filtered smtp
80/tcp open http
2048/tcp filtered dls-monitor
9929/tcp open nping-echo
31337/tcp open Elite
El sondeo predeterminado de Nmap buscará los 1000 puertos TCP / IP más utilizados
habitualmente. Dependiendo de la respuesta del puerto, se pueden clasificar en:
❏ Abierto: es un puerto que responde activamente a una conexión entrante.
❏ Cerrado: es un puerto que responde activamente a una sonda, pero que no
tiene ningún servicio ejecutándose en él. Un cortafuegos bien configurado debe filtrar
todos los puertos que no estén siendo utilizados por un servicio o por una aplicación.
❏ Filtrado: son puertos que normalmente están protegidos por un cortafuegos de
algún tipo que impide que Nmap determine si el puerto está abierto o cerrado.
❏ No filtrado: son puertos accesibles por Nmap, pero a los cuales no se les puede
determinar si están abiertos o no.
❏ Abierto | Filtrado: es un puerto que Nmap cree que está abierto o filtrado, pero
no puede determinar en qué estado exacto se encuentra el puerto.
❏ Cerrado | Filtrado: es un puerto que Nmap cree que está cerrado o filtrado, pero
no puede determinar en qué estado se encuentra el puerto en realidad.
88
©Clictic S.L.
La notación CIDR está formada por la dirección de red y la máscara de subred.
El fichero lista.txt contiene un listado de hosts para escanear. Cada entrada en el fichero
lista.txt debe estar separada por un espacio, pestaña o nueva línea. El parámetro -iL se
usa para ordenar a Nmap que extraiga la lista de objetivos del archivo list.txt.
#nmap -iL list.txt
La opción --exclude acepta como parámetros una dirección IP, rangos de direcciones IP
o secciones enteras de una red mediante el uso de la notación CIDR.
#nmap 192.168.10.0/24 --exclude 192.168.10.100-105
El siguiente ejemplo demuestra el uso del argumento --excludefile para excluir el host
en el fichero lista.txt que se muestra arriba.
#nmap 192.168.10.0/24 --excludefile lista.txt
89
©Clictic S.L.
5.3.3. DETECCIÓN DE NODOS ACTIVOS EN LA RED
El sondeo de nodos activos en una red proporciona a las empresas la posibilidad de
tener un control detallado de los activos presentes en su red, tanto los que son
software como los que son hardware. Nmap es la herramienta perfecta para realizar
esta tarea y entre las técnicas más empleadas se encuentran las que se describen a
continuación.
El segundo paso del saludo de 3 vías en TCP se cumple cuando Nmap recibe una
respuesta, pero en vez de completar con una respuesta ACK, envía una respuesta RST;
lo que conlleva que el proceso del saludo se interrumpa.
Con el uso de TCP SYN bien implementado en una red rápida se pueden llegar a verificar
miles de puertos en cientos de hosts en muy poco tiempo. Esto sucede principalmente
porque los sondeos medio abiertos no necesitan establecer conexiones TCP para
comprobar la disponibilidad de un nodo. Además, existen configuraciones que
especifican a Nmap que reduzca los tiempos de espera.
Usuarios no root
Si el usuario del sistema que realiza el sondeo no tiene los privilegios de
administrador, la técnica que Nmap emplea para ello es TCP connect(). Esto es
debido a que solamente los usuarios con privilegios de administrador tienen el
permiso de enviar paquetes crudos, requeridos para realizar los sondeos medio
abiertos. Como consecuencia, el sondeo debe completar las conexiones TCP
para poder comprobar la disponibilidad del puerto, reduciendo así la rapidez con
que ejecuta las comprobaciones.
90
©Clictic S.L.
DETECCIÓN DE HOSTS CON SONDEOS PING TCP ACK
Este sondeo trabaja enviando paquetes TCP ACK al host destino. Como los paquetes
TCP ACK son enviados una vez, se reconoce una solicitud de conexión y el puerto
consultado en el nodo responderá con un paquete RST, lo que revela su presencia en la
red.
Usuarios no root
Igual que sucede con el sondeo TCP SYN ping, para realizar un sondeo TCP ACK
es necesario que el usuario del sistema operativo tenga permisos para enviar
paquetes crudos. Si no es así, el sondeo realizará con TCP connect().
El sondeo ping del protocolo IP utilizará los protocolos IGMP, IP-in-IP y ICMP para
intentar obtener una respuesta que indique el estado del nodo en la red. La opción –
92
©Clictic S.L.
paquete-trace mostrará información con más detalle sobre el conjunto de sondeos
ejecutados por Nmap en segundo plano.
Entre la información mostrada por la salida de este sondeo, destacan las 3 líneas sent.
93
©Clictic S.L.
SENT (0.0952s) IGMP (2) 192.168.0.105 > 45.33.32.156: ttl=53 id=47903
iplen=28
SENT (0.0953s) IP (4) 192.168.0.105 > 45.33.32.156: ttl=53 id=8884
iplen=20
Sin embargo, sólo bastó con esta respuesta para determinar que el nodo estaba
disponible.
Nmap también permite configurar cuál de los protocolos disponibles en este sondeo
serán utilizados. Por ejemplo, para realizar un sondeo sólo con los protocolos ICMP (1),
IGMP (2) y UDP (17) se debe utilizar el siguiente comando:
Además, se puede modificar el tipo de paquetes enviados que se encuentran vacíos por
omisión. Esto se puede hacer con la opción –data-length.
Para que un equipo se pueda comunicar con otro en la red, necesita saber su dirección
MAC. Sin embargo, los nodos presentes en la red solamente conocen su dirección MAC
propia, no conocen la dirección MAC de otros equipos. Entonces cuando un nodo
necesita comunicarse con otro, primero envía una solicitud ARP a la dirección de
difusión o broadcast address, preguntando por la dirección MAC asociada a la dirección
IP destino. Esta solicitud llega a todos los nodos en la red y solamente es respondida por
el host cuya dirección MAC se corresponde con la de la solicitud ARP. Esta respuesta
contiene la dirección MAC ya asociada a la dirección IP. Cuando el ordenador que envió
94
©Clictic S.L.
la solicitud ARP recibe la respuesta con la MAC asociada a la IP en cuestión, entonces
puede iniciar el proceso de comunicación.
Este proceso sólo ocurre una vez por equipo, ya que cada host en la red va registrando
en una tabla las direcciones IP asociadas a las direcciones MAC que hayan sido
compartidas en el tráfico de red mediante respuestas a peticiones ARP. Esta tabla se
conoce como ARP cache y como está almacenada en la memoria RAM, se pierde cada
vez que el equipo es apagado.
Los argumentos -n -PR 192.168.1.1/24 indican a Nmap que realice un sondeo ping ARP
a todas las IP disponibles en el rango de red. En el ejemplo de arriba, al tratarse de un
rango de red de tipo C incluye desde las direcciones 192.168.1.0 hasta 192.168.1.255,
(CIDR /24).
En resumen, el sondeo ARP simplemente envía las peticiones ARP preguntando por las
direcciones MAC asociadas a las direcciones IP de los nodos en red. Si Nmap recibe
alguna respuesta, determina que ese nodo está activo.
Cuando Nmap hace un sondeo ARP, pregunta por cada nodo de manera individual.
95
©Clictic S.L.
NSOCK (0.1120s) Write request for 44 bytes to IOD #1 EID 27
[192.168.1.254:53]: .............254.1.168.192.in-addr.arpa.....
NSOCK (0.1120s) Callback: CONNECT SUCCESS for EID 8 [192.168.1.254:53]
NSOCK (0.1120s) Callback: WRITE SUCCESS for EID 27 [192.168.1.254:53]
NSOCK (0.2030s) Callback: READ SUCCESS for EID 18 [192.168.1.254:53]
(44
bytes): .............254.1.168.192.in-addr.arpa.....
NSOCK (0.2039s) Read request from IOD #1 [192.168.1.254:53] (timeout:
-1ms) EID 34
Nmap scan report for 192.168.1.254
Host is up (0.011s latency).
MAC Address: 4C:5C:A8:F2:DC:7C (Huawei Device Co.)
Nmap done: 1 IP address (1 host up) scanned in 0.22 seconds
Note the ARP requests at the beginning of the scan output:
SENT (0.0734s) ARP who-has 192.168.1.254 tell 192.168.1.108
RCVD (0.0842s) ARP reply 192.168.1.254 is-at 4C:5C:A8:F2:DC:7C
Cada vez que Nmap realiza un sondeo dentro de una red privada, primero debe realizar
un sondeo ping ARP, para conseguir las direcciones MAC de los nodos de la red.
96
©Clictic S.L.
RCVD (0.0572s) TCP 192.168.1.254:80 > 192.168.1.102:63897 SA ttl=254
id=3229 iplen=44 seq=4067819520 win=1536 <mss 768>
…
...
Nmap también permite seleccionar la interfaz de red a la cual se desea enviar las
solicitudes, y en caso de que no se proporcione una, enviará solicitudes a todas las
interfaces disponibles en red.
Es posible que Nmap tenga que aumentar los tiempos de espera de respuestas si se
realizan sondeos a redes con cantidades grandes de nodos. Esto se realiza mediante la
opción -script-args broadcast-ping.timeout. El tiempo debe indicarse en milisegundos.
Nmap proporciona un filtro que permite enfocar la búsqueda en los nodos recién
encontrados: –script-args=newtargets.
97
©Clictic S.L.
5.3.4. DETECCIÓN DE SISTEMAS OPERATIVOS
Una de las características de Nmap que más aprecian los administradores de redes es
su habilidad para detectar el tipo de sistema operativo presente en un nodo remoto.
Tener una herramienta que permita enumerar los sistemas operativos y las versiones
que se encuentran instalados en los nodos de la red, representa el disponer de una
imagen detallada y real del estado de la red en un momento determinado. Con esta
información se pueden corregir brechas de seguridad ya que un sistema operativo
puede presentar bugs que pueden ser aprovechados por un atacante para
comprometer el sistema.
98
©Clictic S.L.
22/tcp open ssh
25/tcp filtered smtp
80/tcp open http
2048/tcp filtered dls-monitor
9929/tcp open nping-echo
31337/tcp open Elite
Device type: general purpose
Running: Linux 3.X
OS CPE: cpe:/o:linux:linux_kernel:3
OS details: Linux 3.10 - 3.19
Network Distance: 15 hops
Este tipo de sondeo también proporciona información útil sobre el tiempo de actividad
del sistema y la clasificación de predicción de secuencia TCP. Esta es la medida de la
dificultad para establecer una conexión TCP con el nodo remoto.
La opción -O ejecuta el sondeo SYN por omisión de la herramienta y puede ser usada en
combinación con cualquiera de los comandos mencionados en la sección “Detección de
servicios y versiones”. Esto permite la búsqueda por hosts que tengan un determinado
SO (Windows, Ubuntu, MacOS X) con un servicio en particular funcionando (SSH puerto
22, FTP puertos 20, 21). Otra forma de ajustar las búsquedas es mediante las opciones –
osscan-limit y –osscan-guess. La primera añade varios parámetros de refinamiento al
sondeo de modo que Nmap no escanee los puertos de los hosts que no concuerden con
los criterios de búsqueda. Por ejemplo, el host cuyos puertos van a ser explorados por
Nmap debe tener al menos un puerto abierto y uno cerrado, tal y como está
predefinido en el protocolo TCP. La segunda opción indica que Nmap debe realizar un
sondeo más agresivo enviando más paquetes a más puertos con el objetivo de obtener
mayor información y poder realizar una comparación más precisa con la base de datos.
Finalmente, la opción –max-os-retries limita el número de intentos para detectar el SO
del host consultado y aunque esto reduce el tiempo de sondeo, también disminuye la
confiabilidad del resultado del mismo. Nmap realiza cinco intentos de sondeo para
averiguar el SO cuando las condiciones son favorables y dos intentos en caso de que no
lo sean.
99
©Clictic S.L.
La detección de servicios empieza por el paso más sencillo y consiste en comprobar que
los puertos asignados habitualmente a los servicios de uso más extendido en los
sistemas informáticos se encuentran abiertos. Ejemplos de estos son los que se
muestran en la tabla de puertos y servicios en el apartado de fundamentos de red. Sin
embargo, estos puertos están designados por convención y por tanto ninguno de los
servicios tiene la necesidad de trabajar bajo los números de puertos señalados en la
tabla mencionada anteriormente. Por consiguiente, con el fin de verificar cuál es el
servicio presente en un determinado puerto sin que quede ninguna duda, Nmap cuenta
con una base de datos en forma de archivo plano con miles de registros de paquetes
respuesta emitidos por una gran cantidad de servicios. Cuando Nmap recibe las
respuestas de un sondeo de versiones hace una comparación contra esta base de datos
en busca de parámetros que se listan a continuación:
o Nombre del Host: nombre del host que está siendo escaneado.
o Protocolo del servicio: protocolo de comunicación empleado por el servicio (FTP,
HTTP, SMTP).
o Nombre de la aplicación: nombre de la aplicación que utiliza el servicio (Filezilla
FTP).
o Número de versión: versión de la aplicación.
o Tipo de dispositivo: de propósito general, impresoras, router, WAP, media o
dispositivo de energía.
o Estado del Puerto: información sobre si el puerto se encuentra abierto o filtrado.
Sirve para determinar el estado real del puerto.
o Familia del Sistema Operativo: sistema operativo presente en el host como
Windows, Cisco IOS, HP-UX o Linux (Puede no corresponder al reportado por
Nmap si la red del sistema usa un traductor de direcciones de red NAT).
o Varios datos: información sobre el Kernel, números de serie, versiones de
firmware, nombres de usuario y claves.
Para habilitar el sondeo de versiones de Nmap, se debe ejecutar Nmap con la opción -
sV.
# nmap -sV scanme.nmap.org
100
©Clictic S.L.
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
Esta opción realiza una búsqueda a través de los puertos TCP y UDP comparando las
respuestas obtenidas con la información presente en el archivo base de datos nmap-
service-probes. Durante esta búsqueda algunos puertos están excluidos por razones
prácticas (como el puerto TCP 9100) ya que algunos modelos de impresoras imprimen
cualquier dato que llegue a ese puerto. Se puede encontrar la lista de puertos excluidos
en la directiva Exclude del archivo nmap-service-probes. Para indicar a Nmap que
explore todos los puertos disponibles se debe ejecutar la opción –allports.
Opción Descripción
--allports Indica a Nmap que envíe sondas a todos los puertos del host.
101
©Clictic S.L.
--version-all Equivalente a –version-intensity=9. Ideal para realizar
sondeos meticulosos.
Entre las tareas que se pueden realizar con scripts NSE se encuentran las siguientes:
Detección de vulnerabilidades: envía sondas diseñadas especialmente para
verificar algún tipo de vulnerabilidad.
Sondeo o inventariado de redes: realizar sondeos whois, consultas SNMP,
búsquedas de identd en puertos abiertos, consultar a los protocolos adicionales
como ARIN, RIPE o APNIC.
Detección de Malware: envía sondas diseñadas especialmente para detectar
troyanos y agujeros de gusano.
Explotar vulnerabilidades: ejecuta scripts para detectar y explotar
vulnerabilidades.
Detección de versiones mejorada: ejecuta escáneres que envían sondas de
versiones más complejas y habilita el uso de fuerza bruta para romper cifrados.
Los scripts NSE utilizan Lua como lenguaje de programación, la extensión de sus ficheros
es .nse. Estos archivos se guardan en el subdirectorio scripts ubicado dentro del
directorio principal de Nmap. Los scripts NSE están divididos en 7 categorías: safe,
intrusive, malware, backdoor, version, discovery y vulnerability. Cada una agrupa una
lista de scripts destinados a realizar tareas de dicha naturaleza.
Para comenzar a utilizar los scripts NSE basta con ejecutar el siguiente comando:
102
©Clictic S.L.
La opción -sC ejecutará por omisión todas las tareas de sondeo incluidas dentro del
conjunto de scripts. Algunas son consideradas intrusivas, por lo que se recomienda no
utilizarlas contra un host si no se tiene la autorización para hacerlo.
La opción –script otorga al usuario un mayor control sobre los scripts y permite ejecutar
sobre un host determinado una serie de scripts separados por comas.
nmap --script "not intrusive,safe"
La línea de comando anterior ejecutará todos los scripts contenidos en esas dos
categorías. Para ejecutar un script de manera individual simplemente se debe pasar
como parámetro el nombre a la opción --script como se muestra a continuación.
nmap --script=promiscuous.nse 192.168.10.0/24
El script promiscuous.nse realiza varios sondeos para localizar las tarjetas Ethernet
presentes en la red de la organización. Este es un proceso rutinario en los sondeos de
auditoría de seguridad ya que pueden existir sniffers instalados desde dentro de la
organización.
Si se desea ejecutar un conjunto de scripts personalizados solo hay que pasar como
parámetro la ruta absoluta al directorio que contiene dichos scripts a la opción –script
map –script=/scripts-propios 192.168.10.0/24
El comando de arriba ejecutará todos los scripts contenidos dentro de la carpeta
/scripts-propios.
Nmap también permite el uso de atajos para referenciar scripts contenidos en su base
de datos:
nmap --script "http-*"
El atajo “http-*” permite ejecutar todos los scripts cuyo nombre comience por http-,
como http-auth y http-open-proxy. Cuando se utilizan atajos, los parámetros deben
estar entre comillas para evitar problemas con la consola.
Además de los atajos, la opción -- script acepta operadores lógicos como and y not.
nmap --script "(default or safe or intrusive) and not http-*"
Este comando ejecutará los scripts default, safe o intrusive y excluirá todos los scripts
que comiencen por http-.
Existen comandos más avanzados que los mostrados anteriormente y están orientados
a desarrolladores de scripts y para realizar tareas de debugging. Permiten al usuario
pasar argumentos al script para reemplazar variables dentro del script, rastrear su
ejecución y actualizar la base de datos de scripts.
Opción Descripción
103
©Clictic S.L.
--script-args=<var1=value1[,var2=value2,...]> Permite al usuario pasar argumentos para
reemplazar valores dentro del script
104
©Clictic S.L.
sondeo no está buscando esta información, es más eficiente ignorarla y continuar con el
siguiente paso.
Paquetes Fragmentados
Consiste en dividir o segmentar los paquetes para evadir los lectores de patrones en los
cortafuegos. Esta técnica ha caído en desuso porque la mayoría de los cortafuegos
actuales son capaces de detectar cuando un paquete ha sido fragmentado con Nmap.
Para realizar un sondeo con paquetes fragmentados se debe usar la opción -f, que
indica a Nmap que envíe pequeños paquetes de 8 bits provocando que el
comportamiento rutinario de los paquetes se vea alterado. Esto dificulta que los
lectores de patrones presentes en los cortafuegos puedan detectar el sondeo.
# nmap -f 10.10.1.100
Uso de señuelo
Se basa en el envío de paquetes con direcciones IP de origen distintas a las del equipo
que realiza el sondeo. Hace parecer que el host objetivo está siendo escaneado por
múltiples ordenadores a la vez y dificulta la tarea de detección del origen verdadero del
sondeo a los sistemas IDS y cortafuegos.
# nmap -D RND:10 10.10.1.100
Veamos un ejemplo: cuando un nodo A envía una petición SYN a otro nodo B, este
paquete tiene un IPID de 5578. Cuando el host B recibe el paquete y acepta la petición,
responde con un paquete SYN/ACK. Cuando el host A recibe el paquete SYN/ACK genera
otro paquete de respuesta ACK que contendrá un valor de IPID de 5579. El próximo
paquete generado por el nodo A contendrá un IPID de 5580 sin importar que tipo de
paquete sea.
El sondeo ocioso zombi hace utiliza esta característica para averiguar si un puerto está
aceptando peticiones o no. Otro ejemplo: se tienen 3 nodos, el primero (host A) es el
atacante, el segundo (host Z) es el host zombi y el tercero es el host V que será la
víctima. A intentará averiguar si un determinado puerto en V se encuentra abierto a
través del uso del host Z. Entonces el proceso de sondeo comenzaría de la siguiente
manera:
1. A envía una petición SYN/ACK a Z. Como estas peticiones sólo pueden ser
recibidas después de que el receptor haya enviado una petición SYN, el host Z
106
©Clictic S.L.
rechazará la petición SYN/ACK (Z no ha enviado ninguna petición SYN al host A)
mediante el envío de un paquete RST con un IPID de 7770.
2. Ahora A conoce el número actual de la secuencia de IPID en el host Z. Para saber
si V tiene un determinado puerto abierto, A envía un paquete SYN a V, pero este
paquete contendrá la IP del host Z, de modo que cuando V reciba el paquete
SYN, enviará una respuesta SYN/ACK, en caso de aceptar el saludo, dirigida a Z.
3. Cuando Z reciba el paquete SYN/ACK enviará un paquete de rechazo RST con un
IPID de 7771.
4. A envía ahora un paquete SYN/ACK al host Z, el responde con un paquete RST
con un IPID de 7772.
Ahora el host A puede decir con seguridad que V está aceptando peticiones en un
determinado puerto. Si V rechaza la petición SYN por parte del host Z, el valor
capturado por el host A al final del proceso será de 7771.
107
©Clictic S.L.
Orden aleatorio de sondeo de hosts
Como ocurre con la opción anterior, este tipo de técnica busca evitar la detección de
patrones de los cortafuegos. Cuando se realiza un sondeo a varios hosts en serie como
10.10.1.200-254, Nmap los realiza en secuencia y hace saltar las alarmas de los
cortafuegos. Para prevenir esto Nmap provee la opción de realizar este tipo de sondeos
en un orden aleatorio mediante la opción –randomize-hosts.
#nmap --randomize-hosts 10.10.1.200-254
La siguiente tabla contiene todas las opciones posibles para formatear los datos de
salida en Nmap.
Funcionalidad Opción
Guardar resultados en un fichero de texto -oN
Guardar resultados en un fichero XML -oX
Formato de salida engrapable -oG
108
©Clictic S.L.
Guardar la salida en todos los formatos -oA
de archivo disponibles (texto, XML,
engrapable)
Mostrar estadísticas en pantalla --stats-very
periódicamente
Salida 133t -oS
Al igual que ocurre con el fichero resultados.txt, los resultados guardados en formato
XML pueden ser consultados posteriormente.
cat resultados.xml
109
©Clictic S.L.
<!DOCTYPE nmaprun>
<?xml-stylesheet href="file:///usr/bin/../share/nmap/nmap.xsl"
type="text/xsl"?>
<!-- Nmap 7.01 scan initiated Sun Apr 8 16:38:01 2018 as: nmap -oX
resultados.xml scanme.insecure.org -->
<nmaprun scanner="nmap" args="nmap -oX resultados.xml
scanme.insecure.org" start="1523219881" startstr="Sun Apr 8 16:38:01
2018" version="7.01" xmloutputversion="1.04">
<scaninfo type="syn" protocol="tcp" numservices="1000" services="1,3-
4,6-7,9,13,17,
…
…
...
Los resultados obtenidos en el fichero XML pueden contener rutas que sólo son
pertinentes al sistema que ejecutó el sondeo. La opción --webxml se puede combinar
con la opción -oX para crear un archivo portable para cualquier sistema con acceso a
Internet. La opción -oX también acepta el uso de hojas de estilo css mediante la opción
–style-sheet. En cambio, si se desea evitar el uso de hojas de estilo, hay que incluir el
parámetro –no-stylesheet.
El resultado de ejecutar este comando se guarda en un archivo de texto, uno XML y otro
con formato grepable.
r# ls -l resultados.*
-rw-r--r-- 1 root root 490 abr 8 17:17 resultados.gnmap
-rw-r--r-- 1 root root 928 abr 8 17:17 resultados.nmap
-rw-r--r-- 1 root root 8662 abr 8 17:17 resultados.xml
110
©Clictic S.L.
El fichero con extensión .gnmap guarda los resultados en formato grepable mientras
que el de extensión .nmap los guarda en formato de texto plano y el .XML en formato
XML.
111
©Clictic S.L.
Oz d3TecT|on pErform3d. PL3a$e R3p0rt aNy !ncorr3ct re$Ults at
https://nmap.org/$uBmit/ .
Nmap don3: 1 !p addr3$z (1 hO$t Up) scAnn3d In 112.75 $eC0ndz
5.3.10. SCANLINE
ScanLine es una herramienta de línea de comandos utilizada para realizar sondeos de
puertos en todas las plataformas de Windows. No contiene la misma cantidad de
funcionalidades que Nmap, pero los sondeos que realiza pueden manejar rangos
realmente grandes de direcciones IP en muy poco tiempo. Puede realizar sondeos
ICMP (ping), mostrar los tiempos de respuestas de los servidores, escaneos UDP, TCP,
banner grabbing y resolución de nombres de host.
El comando anterior realiza un sondeo UDP en los puertos típicamente asignados a los
servicios de NetBIOS.
La opción -t indica que debe realizar un sondeo por todos los puertos TCP desde el 1 al
65535. Como en este caso la opción -p no fue proporcionada, Scanline verificará la
existencia del equipo destino mediante mensajes ping. El rango de direcciones IP del
sondeo es de 10.0.2.1 a 10.0.2.30.
112
©Clictic S.L.
Sondeo TCP para detectar equipos en la red.
En el apartado sobre Nmap, en la sección que explica el proceso de detección de
dispositivos activos en la red, se aconseja realizar sondeos a los puertos origen de varios
de los programas más usados en ordenadores o servidores.
sl -pt 80,81,88,8000,8080 10.0.2.10-30 -O salida.txt
Los puertos 80, 81, 8000 y 8080 generalmente son usados por programas servidores
como Apache. De esta manera, los ordenadores que tengan estos puertos activos
podrán ser detectados aunque estén configurados para bloquear los mensajes ping.
113
©Clictic S.L.
Sondeo para buscar puertos UDP abiertos.
Otro comando útil que ofrecido por Scanline, permite realizar sondeos para buscar
puertos UDP abiertos.
sl -U 10.0.2.1-254
El uso de tuberías “|” permite realizar comandos complejos que facilitan el uso de esta
herramienta.
Todos los productos software y hardware son liberados al mercado con algún error de
seguridad y sólo es cuestión de tiempo que alguien descubra este error e intente sacar
provecho de ello. Es por ello la importancia de mantener actualizados los sistemas en la
red, ya que puede tener consecuencias nefastas para el sistema si no es así.
Un sondeo de red mal hecho tiene puede provocar la caída de todos los procesos de
comunicación dentro de la misma. Otro punto importante es la información
confidencial presente en alguno de los hosts conectados a dicha red. Por lo que antes
de ejecutar un sondeo es preciso tener en cuenta los siguientes puntos:
Entre las responsabilidades de trabajo se debe incluir el proceso de exploración
e inventariado de los activos de la red.
Todo proceso de sondeo debe estar cuidadosamente planificado. Por lo general
forman parte de los procesos de auditoría y de reconocimiento de activos en la
red.
Nunca se debe realizar un sondeo a sitios web de organizaciones
gubernamentales a menos que se quiera asumir las consecuencias legales. Estas
114
©Clictic S.L.
organizaciones no distinguirán entre curiosos que están experimentando con
herramientas como Nmap y criminales o terroristas informáticos.
115
©Clictic S.L.
exploit crítico de seguridad mientras realiza uno de sus procesos rutinarios de
exploración. El primer paso que debe realizar es identificar qué nodos se encuentran
activos en la red, para luego ejecutar sondeos más profundos a cada uno de ellos. Este
paso dependerá en gran medida del tamaño de la red y del tráfico promedio presente
en la misma. No hay que olvidar que este tipo de operaciones deben de realizarse con
extrema cautela. En el caso de que los nodos en la red estén protegidos por un
cortafuegos que bloquea las sondas ping (escenario más común en una red configurada
apropiadamente), se pueden usar cualquiera de las técnicas de sondeo de Nmap
explicadas en apartados anteriores.
Con este comando Nmap realiza un sondeo a toda a la subred mediante la técnica de
sondeo ping TCP ACK. El resultado no sirve de mucho a menos que se pueda guardar
por separado en un archivo para que luego se emplee en la delimitación de las
búsquedas.
#nmap -oG hosts-activos -sn -n -PA 192.168.10.1/24
El fichero hosts-activos contiene las direcciones IP de los hosts activos en la red y otros
datos innecesarios que no pueden ser interpretados por Nmap. Se puede utilizar
cualquier herramienta de edición de texto, sin perder de vista que al final el archivo
debe contener un listado de direcciones IP separadas por espacios, como se muestra a
continuación:
192.168.1.106 192.168.1.107 192.168.1.108 192.168.1.109 192.168.1.110
192.168.1.111 192.168.1.112 …
116
©Clictic S.L.
Mysql o PostgreSQL, etc. Para todos estos procesos de búsqueda se aplican los mismos
principios.
El segundo punto hace referencia a que aunque existen muchas herramientas con
interfaces de usuario prácticas y fáciles de utilizar, se recomienda el uso de
herramientas de consola (como grep) ya que no siempre se cuenta con ordenadores
con interfaces gráficas. La comunidad de desarrolladores de Nmap desarrolló un
formato de salida que facilita los procesos de búsqueda realizados por esta
herramienta. Grep permite realizar búsquedas mediante filtros de expresiones
regulares, proporcionando un nivel de flexibilidad en los patrones de búsqueda casi
ilimitado.
Por último, el tercer punto se refiere a que tener una base de datos de los activos de
software y hardware presentes en la red es muy importante ya que un buen sistema de
manejo de activos de red puede ayudar considerablemente en esta tarea.
117
©Clictic S.L.
6. ATAQUES REMOTOS Y LOCALES
6.1. ATAQUES REMOTOS Y LOCALES
6.1.1 CLASIFICACIÓN DE LOS ATAQUES
Se pueden clasificar los ataques a un sistema de seguridad teniendo en cuenta varios
parámetros: el objetivo concreto del ataque (si son para obtener información o son
para afectar el funcionamiento de los equipos) o el origen del ataque (desde una
conexión remota o sin necesidad de conexión a un equipo como tal).
❏ Ataques Remotos: tienen como objetivo un equipo o una red de equipos ajena a la
que se utiliza para realizar el ataque sin afectar dicho equipo. Se centra en encontrar
puntos vulnerables en la seguridad del dispositivo o la red de equipos que desea
atacar para poder acceder fácilmente.
118
©Clictic S.L.
personas en cada entrada y a través de correcta instrucción de los empleados
sobre cómo actuar en casos como estos.
119
©Clictic S.L.
❏ Ataques Activos: su objetivo es perjudicar directamente a los equipos afectados,
más que obtener información de ellos. Usualmente se da paso a un ataque activo
después de la obtención de información mediante ataques pasivos. Los ataques
activos pueden interrumpir las operaciones habituales de un equipo o una red de
equipos inmediatamente después de iniciar el ataque o pueden implantarse para
su posterior activación después de determinadas acciones realizadas por un usuario
normal del equipo.
ESCANEO DE PUERTOS:
Es un método pasivo generalmente que puede ser utilizado tanto por los técnicos
especialistas en la seguridad de la red como por cibercriminales en busca de
vulnerabilidades en un sistema. Como su nombre indica, se basa en el escaneo de los
puertos de entrada y salida de datos de una red utilizando aplicaciones en la web o
programas especializados, para saber si éstos se encuentran abiertos, cerrados o
protegidos por un cortafuegos. Existen algunas aplicaciones de escaneo de puertos que
pueden señalar el tráfico actual presente en un puerto, qué tipo de tráfico es y el
sistema operativo utilizado por el equipo escaneado.
Dependiendo del objetivo del atacante, el escaneo de puertos puede darse de dos
maneras:
120
©Clictic S.L.
❏ Escaneos horizontales: buscan la disponibilidad de un determinado servicio en
diferentes máquinas de la misma red empresarial. Por ejemplo, si el atacante
desarrolla una aplicación para un ataque basado en transferencia de archivos, en un
escaneo de puertos horizontal buscará una vulnerabilidad en específico para la
transferencia de archivos en todos los puertos existentes en la red.
❏ Escaneos verticales: se realiza un escaneo vertical cuando el atacante está interesado
en un equipo en específico y por tanto analiza cada uno de sus puertos buscando
vulnerabilidades en el mismo. Esto sucede generalmente cuando el atacante posee
conocimiento previo de la naturaleza de los archivos contenidos en ese equipo en
particular, ya sea por intereses personales o porque sabe que se trata de un equipo
con un superusuario en la red de la compañía.
121
©Clictic S.L.
Funcionamiento del escaneo en segundo plano
❏ Escaneo sigiloso: “stealth scanning”. Reciben este nombre todo tipo de escaneos que
evadan a los cortafuegos de una red o a sus listas de control de acceso, no sean
detectadas por cualquier sistema de detección de intrusos y que simulen el tráfico
normal de un equipo para no causar sospechas en un analizador de tráfico legítimo.
Algunas de estas técnicas son:
❏ Escaneo SYN+ACK: Consiste en una violación del protocolo de 3 vías, en
donde el atacante envía directamente un paquete SYN+ACK. Si el puerto está
abierto, el paquete es ignorado. Si se encuentra cerrado, detecta que no ha
recibido previamente un paquete SYN, lo considera un error y devuelve un
paquete RST para cortar la conexión entre el escáner y el puerto. Se utiliza
muy poco actualmente debido a la gran cantidad de falsos positivos que
puede crear.
❏ Escaneo FIN: el atacante envía un paquete con el bit FIN activado. Si el puerto
se encuentra cerrado, responderá con un paquete RST. Si se encuentra
abierto tampoco habrá respuesta. Igual que ocurre con el tipo de escaneo
anterior, puede crear gran cantidad de falsos positivos.
❏ Escaneo ACK: es de los escaneos más inusuales ya que no determina si el
puerto se encuentra abierto o cerrado, sino que determina si se encuentra en
presencia de un cortafuegos o no.
❏ Escaneo XMAS y Null: son escaneos opuestos entre sí, y a la vez similares al
escaneo FIN. XMAS se basa en enviar paquetes al puerto con todos los bits
activos (SYN, FIN, ACK, RST, URG y PST). Si el puerto está abierto eliminará el
paquete al ser una violación del protocolo de 3 vías y si está cerrado
devolverá un paquete RTS al escáner. Null también envía paquetes con todos
los bits activos pero reiniciados y obtiene un resultado similar.
❏ Otros tipos de Escaneo: son menos usuales que los escaneos mencionados
anteriormente y de naturaleza tan variada que no pueden ser considerados de
ninguna de las 3 categorías mencionadas. Abarca desde escaneos UDP sin conexión,
escaneos de Proxy, escaneos de niveles de protocolos IP y escaneos ICMP.
122
©Clictic S.L.
sobrecargar los equipos víctima con un gran flujo de solicitudes y tráfico y evitar que las
solicitudes realizadas legítimamente sean cumplidas.
Este tipo de ataques usualmente van dirigidos hacia los servidores web de una
compañía, pero pueden afectar también computadores de usuario estándar o incluso
equipos personales. No buscan recopilar datos del servidor atacado, sino simplemente
dejarlo fuera de servicio indefinidamente tanto para evitar el desarrollo habitual de las
actividades de una empresa como para afectar su reputación.
Mensaje obtenido tras ocurrir un ataque dos o DDOS en una página web
FALSIFICACIÓN: “spoofing”
Es un ataque pasivo donde el atacante logra camuflarse como un equipo de naturaleza
legítima, mediante un programa o a través de código propio falsificando datos propios o
de la máquina que funciona como disfraz, con el objetivo de ganar acceso no autorizado
a la red a la que este equipo está conectado. La máquina que funciona como disfraz no
es necesariamente el objetivo principal del atacante, sino su medio de llegada.
Dependiendo de qué característica del equipo se falsifique, se pueden encontrar:
❏ Falsificación de ARP: es muy fácil de realizar y muy efectivo. La mayoría de las redes
empresariales son susceptibles a este tipo de ataques. Tiene como finalidad enviar
mensajes falsos ARP a una red de área local (LAN) para que el intruso vincule su
dirección MAC con la IP de un auténtico servidor o equipo en la red. Si se logra este
123
©Clictic S.L.
objetivo, el atacante puede tener acceso a cualquier dato a través de esa dirección
IP, causando que todo el tráfico dirigido a la IP auténtica llegue a su equipo. Con esta
técnica se pueden obtener grandes cantidades de información sensible para un
usuario o la misma empresa, si se aplica al equipo adecuado. Incluso puede permitir
modificar el tráfico entre el receptor y el emisor, o detenerlo completamente.
ATACANTE
SWITCH
VÍCTIMA 1 VÍCTIMA 2
❏ Falsificación de Páginas Web: Consiste en suplantar una página web real por una
página web falsa adoptando el mismo diseño y URL similar a la original, con el
objetivo de obtener los datos introducidos por los usuarios. Para lograr que el
usuario entre en alguna de estas páginas web primero hay que llamar su atención, ya
sea enviándole la URL del sitio falso por correo o mensajería instantánea o a través
de sitios conocidos o plug-ins desde otras páginas. Cuando el usuario accede,
también puede aparecer una ventana del navegador falsa que monitoree por
completo el tráfico en la red de este usuario, interceptando tanto información
recibida como enviada y funcionando como un proxy.
❏ Falsificación de Email: se basa en la creación de mensajes de correo electrónico con
una dirección falsa para el remitente. Como no existe un mecanismo de
autenticación en los protocolos básicos de cualquier servicio de E-mail, es algo
sencillo de hacer. Los emails que contienen páginas de phishing suelen utilizar esta
técnica para llamar la atención del usuario hacia su página.
124
©Clictic S.L.
INTERCEPTACIÓN: “Eavesdropping”
Se conoce como el proceso en el que el atacante capta información, cifrada o no, que
no iba dirigida originalmente hacia él. Es un ataque pasivo de solamente obtención de
información. Es muy difícil de detectar porque no produce señales de modificación
alguna, por lo tanto el atacante podría obtener credenciales y/o contraseñas y no se
sabría hasta que él mismo les dieras uso. Uno de los métodos para esto es la utilización
de programas que detecten paquetes de datos circulantes por un puerto o una red, o
por el uso de dispositivos físicos conectados a ella directamente. Este procedimiento es
relativamente fácil de hacer bajo redes inalámbricas, abiertas o codificadas, o en una
red de ordenadores con una conexión HUB común.
❏ Keylogging: es otro tipo de interceptación menos utilizado que el común, pero con
un peligro muy similar. Se basa en llevar un registro de las teclas pulsadas por
usuario en cada una de sus sesiones. Es más común ver este tipo de programas en
Windows, pero no significa que están completamente extintos en Unix. Existen 2
comandos que pueden funcionar como un keylogger en Unix: ttysnoop y script,
donde este último es más específico y también muestra lo que el usuario logra leer
en pantalla. Este tipo de interceptación también se puede realizar mediante
hardware especializado para ello. La siguiente imagen muestra un ejemplo de esto.
USB para realizar keylogging: ubicado entre el conector USB del teclado
y el puerto USB en la CPU
ATAQUES A APLICACIONES:
Las aplicaciones en Unix son un conjunto de programas realizados para cumplir una
función en específica. Pueden estar incluidas en el sistema operativo o ser instaladas
por el usuario o técnico especializado posteriormente. Cuando un ataque se centra
solamente en el funcionamiento de una aplicación o de los datos que envía o recibe la
misma, se le conoce como ataque a dicha aplicación. Normalmente estos ataques se
generan contra aplicaciones conectadas a Internet o conectadas a la red de
ordenadores empresarial. A continuación se describen los tipos de ataques a
aplicaciones que se pueden encontrar:
125
©Clictic S.L.
❏ Ataque por inyección: Buscan afectar a una aplicación concreta o al equipo en
general a través del uso de la misma. Pueden ocurrir por inyección de código o de
comandos.
❏ Inyección de Códigos: consiste en introducir líneas de código que pueda ser
interpretado o ejecutado por la aplicación afectada y se aprovecha del mal
manejo de los datos de baja confianza de forma tal que pueden introducirse
en el código original de la aplicación. Usualmente son posibles gracias a la
existencia de una validación deficiente de los datos de entrada y de salida
de la aplicación: los caracteres permitidos, el formato de los datos o la
cantidad de datos esperados. El atacante está limitado por la funcionalidad
del lenguaje en el que se encuentran la aplicación y el código inyectado.
Ejemplo: inyección SQL.
❏ Inyección de comandos: consiste en ejecutar comandos arbitrarios en el
sistema operativo del equipo víctima usando una aplicación vulnerable.
Estos ataques son posibles cuando la aplicación transmite datos del usuario
de naturaleza insegura a una consola del sistema. Los comandos ejecutados
por el atacante se ven limitados por los privilegios de la aplicación
vulnerable y son posibles cuando no hay una verificación suficiente de que
los datos introducidos por un usuario son seguros.
126
©Clictic S.L.
Cross-site scripting en twitter para generar retweets automáticos,
afectando al cliente tweetdeck
Los ataques remotos en UNIX suelen ser realizados a través de puertos abiertos
TCP/UPD que pueden tener:
❏ Filtrado de información: un hacker es capaz de obtener información acerca del
sistema operativo, programas en ejecución e información relevante en general
mediante un puerto abierto.
❏ Amenaza de DoS: la red podría verse sobrecargada de peticiones, lo que conlleva
a una falla del sistema.
❏ Autenticación débil: al utilizar una contraseña débil, un atacante podría tomar el
control del sistema fácilmente.
❏ Servicio con texto no cifrado: con herramientas como tcpdump, un hacker podría
obtener credenciales de autenticación, además de existir la posibilidad de que
se realicen ataques de secuestro de sesión TCP e inyección de comandos.
❏ Vulnerabilidades conocidas: existen en todas las distribuciones de UNIX y pueden
ser abusadas. La más peligrosa es “remote root”, que provee al atacante con
control total de los privilegios del sistema de UNIX.
127
©Clictic S.L.
➔ Puerto 2 de TCP (fuente): era el blanco de una herramienta llamada “sscan” que
realiza escaneos al host identificando el sistema operativo de la víctima para
buscar vulnerabilidades. Podía configurarse de manera tal que ejecutase código
malicioso en el momento de encontrar una vulnerabilidad, causando un riesgo
de filtrado de información.
➔ Puerto 19 de TCP (destino): supone riesgo de ataque DoS local a través del
generador de caracteres, Chargen. Suele estar bloqueado por cortafuegos.
128
©Clictic S.L.
➔ Puerto 23 de TCP (destino): era utilizado por el protocolo telnet permitiendo a
los atacantes controlar el equipo que ejecutaba el servidor de telnet. Este
protocolo no cifraba las claves ni nombres de usuario, ni tampoco ofrecía
protección en contra de ataques por búsqueda exhaustiva de claves.
➔ Puerto 69 de TCP (destino): es utilizado por TFTP (Trivial File Transfer Protocol).
Presenta un gran riesgo de seguridad debido a que permite el envío de archivos
no autenticados, además de que sus vulnerabilidades pueden otorgar privilegios
root remotos.
➔ Puerto 110 de TCP (destino): Post Office Protocol Version 3 (POP3) se ejecuta a
través de este puerto y es un método utilizado para recuperar correo
electrónico de un servidor remoto. Los servicios de segundo plano de POP3
presentaban errores que permitían el acceso remoto a root y también da lugar a
que el tráfico dentro del puerto 110 pueda ser sujeto a ataques para obtener
contraseñas de correos electrónico.
➔ Puerto 113 de TCP (destino): identd es una autenticación en segundo plano que
era el estándar de antiguos sistemas UNIX y que actualmente está presente pero
deshabilitado. Mediante este servicio se puede obtener información privada
debido a sus agujeros de seguridad y los ataques de identificación podían ser
realizados automáticamente con Nmap.
129
©Clictic S.L.
➔ Puerto 119 de TCP (destino): NNTP (Network News Transfer Protocol) se ejecuta
a través de este puerto. Presenta vulnerabilidades a ataques DoS y si NNTP está
ejecutándose con privilegios root, se puede tener acceso no autorizado a root si
se vulnera el servicio.
➔ Puerto 113 de TCP (destino): NTP (Network Time Protocol) se ejecuta a través de
este puerto. Algunas implementaciones obsoletas o mal configuradas de este
protocolo pueden causar un agujero importante en la seguridad que permitiría
ataques DoS y filtrado de información.
➔ Puertos 135 a 139 de TCP (destino): los servicios de SMB se ejecutan a través de
este puerto y presentan vulnerabilidades documentadas en sus versiones
antiguas, ocasionando acceso no autorizado a root y permitiendo la realización
de una búsqueda exhaustiva de contraseñas. Los ataques a través de estos
puertos suelen estar dirigidos a equipos Windows.
➔ Puerto 443 (destino): HTTPS se ejecuta en este puerto y toda la información del
puerto 80 se encuentra disponible también en este puerto. Un atacante puede
dirigir los ataques de puerto 80 hacia el puerto 443. Presenta riesgo de ataque
DoS, autenticación deficiente, filtrado de información y otras vulnerabilidades
documentadas.
➔ Puerto 2049 de TCP (destino): el NFS (Network File System) está configurado
para utilizar este puerto, tanto en TCP como UDP. Las vulnerabilidades de NFS
permiten la sobreescritura de archivos y caídas de sistema junto con la
posibilidad de interceptar archivos enviados a través de este puerto mediante el
uso de herramientas.
➔ Puerto 3128 de TCP: es utilizado por el proxy web Squid. Las vulnerabilidades
presentes en el puerto 1080 de TCP también se encuentran en este puerto
permitiendo también acceso remoto a root.
130
©Clictic S.L.
➔ Puerto 3306 de TCP: es utilizado por el servidor de base de datos de MySQL.
Además de permitir acceso remoto a root y poder ocasionar caídas del sistema
de manera remota en algunas versiones, este servidor puede ser usado para
realizar una búsqueda exhaustiva de credenciales de autenticación (contraseñas
y nombres de usuario) ya que su información no está cifrada, lo que indica que
un atacante tendría acceso total a la información.
➔ Puerto 123 de UDP (destino): el servicio en segundo plano UNIX NTP (ntpd)
sincroniza la hora entre redes de ordenadores y servidores. Si está mal
configurado, puede permitir ataques de sobrecarga del sistema (DoS) y filtrado
menor de información (la hora que manejan los ordenadores y el servidor).
➔ Puerto 514 de UDP (destino): syslog de UNIX utiliza este puerto para
transferencias de informes (logs) a través de la red. Los distintos servidores de
syslog presentan errores remotos que permiten el acceso a los sistemas
objetivo, además de una sobrecarga del servicio con archivos de registros (DoS
de logs) o falsificado de mensajes que inyectan datos inútiles al sistema.
➔ Puerto 517 de UDP (destino): es utilizado por servicios en segundo plano de chat
en UNIX. Talkd posee fallos de seguridad que pueden ser abusados
remotamente y provocar una sobrecarga del sistema (DoS) que a su vez,
conlleva a una vulnerabilidad de acceso remoto a root.
➔ Puerto 2049 de UDP (destino): utilizado por NFS. Si se encuentra abierto puede
significar una vulnerabilidad seria en el sistema, aunque esto no significa
necesariamente que habrá un acceso a root.
131
©Clictic S.L.
6.3.4. ATAQUES REMOTOS A UNIX
❏ tnftp - 'savefile' Arbitrary Command Execution (CVE-2014-8517): abusa de una
vulnerabilidad en el manejo del nombre de un archivo (savefile) que puede
conllevar a la ejecución de comandos arbitrarios.
❏ Apache Struts 2.5 < 2.5.12 - REST Plugin XStream Remote Code Execution (CVE-
2017-9805): permite la ejecución remota de código con peticiones
aprovechando una vulnerabilidad dentro del plugin REST de Apache desde la
versión 2.1.2 hasta 2.3.33 y en versiones 2.5.0 hasta la 2.5.13. XStreamHandler
es una versión de XStream para la deserialización sin filtrado que posee la
vulnerabilidad de permitir la ejecución de código al deserializar cargas en XML.
132
©Clictic S.L.
6.4. ATAQUES LOCALES EN UNIX
Este tipo de ataques ocurren cuando el perpetrador ya posee cierto tipo de acceso a un
equipo Unix ya sea porque el equipo se encuentra en una red pública o es de acceso
público, o si el atacante obtuvo la habilidad de ejecutar comandos en el equipo víctima
por vía de algún servicio de red, tales como Internet, correo electrónico o servidores
FTP. Esto podría ocurrir debido a un servidor mal configurado, un bug o por un mal
diseño por parte de los programadores de servidor (ejemplo: una aplicación web mal
diseñada). Durante esta sección se asume que el atacante ya posee algún tipo de acceso
al equipo víctima.
No existe un segundo sistema operativo para muchos sistemas Unix que pueda ser
utilizado de esta manera. El hardware usado por Sun, SGI y HP Unix no es compatible
con DOS y por tanto el escenario de ataque planteado anteriormente fallaría. Sin
embargo, un atacante ingenioso podría usar otro sistema operativo de Unix (NetBSD,
que es compatible con la mayoría del hardware mencionado) y podría iniciar en su
propio Unix como usuario root. Actualmente Linux soporta hardware SPARC (sun) y
otras plataformas basadas en Unix.
133
©Clictic S.L.
6.4.3 INTERRUPCIÓN DEL ARRANQUE
Otro ataque potencial durante el proceso inicial de arranque involucra al cargador de
inicio del sistema. El cargador de inicio de Linux (LILO o GRUB) permite introducir
comandos para controlar el inicio, por ejemplo, para poder iniciar el equipo en el modo
monousuario. Si se interrumpe la secuencia de inicio, se proporcionan oportunidades
para los hackers y algunas variantes de Unix permiten saltar la ejecución de algunos
servicios con propósitos de depuración. Si esto se hace sobre un cortafuegos basado en
el equipo, podrá ser de mucha utilidad para el hacker.
134
©Clictic S.L.
simples como “contraseña”, “secreto” y demás alternativas débiles como sus nombres o
apellidos, pueden comprometer cualquier sistema de seguridad avanzado fácilmente.
Las mejores prácticas para tener una contraseña segura es no elegir una palabra real o
al menos añadir algún otro carácter no alfabético, pero la mayoría de las veces son
pasadas por alto.
En casi todas las versiones antiguas de Unix, las contraseñas encriptadas se guardaban
en el archivo /etc/passwd. En realidad, no son contraseñas encriptadas, sino bloques de
datos encriptados con la contraseña utilizada como clave (en el caso de DES). Un ataque
típico puede ser: el atacante puede tener un diccionario, encriptarlo y compararlo con
la cadena desordenada obtenida desde /etc/passwd. Otra manera de realizar esto es
intentar con una combinación al azar de caracteres ASCII que sean comunes de ver en
contraseñas, como números o letras. Existen algunos programas que combinan estos
dos métodos: escogen una palabra del diccionario y de allí le añaden un par de
caracteres al azar, como números, por ejemplo. Este método revelará las contraseñas
de aquellos usuarios que reemplazaron “root” con “root1”, y que creyeron que así
estarían a salvo.
Aún utilizando una gran cantidad de diccionarios, requiere muchísimo menos tiempo
vulnerar una contraseña haciendo uso de un conjunto de diccionarios específico que
realizando una búsqueda aleatoria. Muchos diccionarios se encuentran disponibles
online para gran cantidad lenguajes, incluso los ficticios.
~/.netrc
Es utilizado para inicios de sesión “sin contraseña” por vía telnet y FTP. El
formato del archivo es el siguiente:
machine ftpserv.ejemplo.edu login anton password r7w7/R12
Claramente se pueden observar el nombre de usuario y la contraseña para la
máquina ftpserv.ejemplo.edu.
~/.fetchmailrc
Es usado para el programa de transferencia de correo fetchmail que descarga
los correos electrónicos vía POP3/IMAP desde un servidor de correos. Este es el
formato del archivo:
135
©Clictic S.L.
Tal y como con .netrc , las contraseñas están expuestas.
Se pueden utilizar muchos métodos para rechazar ataques como estos. Algunas
aplicaciones como Secure Shell servicio o sshd, deshabilitan los volcados de memoria
completamente, de tal modo que no se podría recuperar nada desde allí. Algunas
versiones de Unix aplican permisos de restricción a esos archivos que son sólo legibles
por un root. También se puede deshabilitar la generación de dichos archivos en todo el
sistema o por cada usuario según sea necesario para la depuración de una aplicación.
Ocasionar un fallo en los servicios Secure Shell, POP3/IMAP, telnet, programas de inicio
de sesión y cualquier otro programa de red, tiene una alta probabilidad de producir
desechos de memoria con trazas de archivos deseados e inaccesibles en otro momento
como sería el caso de /etc/shadow.
¿Cuáles son las probabilidades de encontrarse con una contraseña válida de Unix en un
archivo de registros o logfile? Supongamos que el usuario root cometió un error y
accidentalmente escribió la contraseña en el lugar del nombre de usuario. En este caso,
la contraseña podría acabar en el archivo de registros y puede causar la aparición de
contraseñas en los archivos historial del Shell como .history para el bash Shell.
136
©Clictic S.L.
¿En qué otros sitios se pueden encontrar contraseñas? Si /etc/passwd se encuentra casi
vacío y el sistema está activo, tal vez esté utilizando Servicios de Información de Red
(NIS, Network Information Services, antiguamente conocido como Páginas Amarillas por
Sun Microsystems). Si NIS se implementa, cuando se escribe ypcat passwd se produce
una lista de nombres de usuario junto a sus contraseñas encriptadas.
Al iniciar la versión vulnerable del programa (en este caso la 0.9a) de la siguiente
manera: $ efax –d /etc/shadow, los contenidos de este fichero se revelarán. El programa
simplemente producirá un mensaje de error utilizando las piezas del archivo mal leído
(/etc/shadow) y también puede ser usado para obtener una Shell de root.
El proceso es simple: el programa no debería ser root SUID y en lugar de esto, se debe
utilizar la menor cantidad posible de permisos en un dispositivo módem. Programar
errores en binarios SUID producen la mayor parte de todas las vulnerabilidades tanto
remotas como locales.
137
©Clictic S.L.
6.4.9 ESCAPE DEL BLOQUEO CAUSADO POR CHROOT
El comando chroot y su llamada desde el sistema puede parecer una buena medida de
seguridad ya que se ejecuta un comando y la función de Unix cd/ no te traslada
inmediatamente a un directorio de root del sistema. En vez de esto, se está vinculado a
la parte restringida del sistema rodeado únicamente por los archivos elegidos por un
administrador. Así es como debería ser y podrías plantearte la siguiente pregunta: ¿es
posible escapar de esta cárcel fabricada por chroot? La respuesta es sí, si se dan ciertas
condiciones.
chroot utiliza una llamada chroot() del sistema. El comando y la llamada se diferencian
en que la llamada chroot() no cambia el directorio actual al encontrado dentro de una
“cárcel” formada por chroot. La fuente de chroot.c (comando de Shell en la partición de
Linux del paquete de utilidades sh) muestra la siguiente secuencia de llamadas del
sistema permitiendo un escape sencillo de la cárcel creada por chroot, como se
demostrará a continuación:
Chroot se utiliza habitualmente como una medida de seguridad. Si alguna vez has
iniciado sesión en un servidor FTP anónimo, has utilizado chroot. El servidor FTP lo
utiliza en sí mismo para crear un directorio sobre el acceso al FTP. El servicio de DNS,
BIND, también funciona bajo chroot. Existen sugerencias sobre el uso de chroot sobre
los usuarios remotos Shell de telnet/ssh para que solo accedan a sus directorios
correspondientes y puedan modificar únicamente sus páginas web. Los servidores web
también pueden ser puestos bajo chroot. El envoltorio seguro de emails (smap)
perteneciente al toolkit para cortafuegos FWTK, se ejecuta bajo chroot para mostrar el
directorio de emails. Al implementar chroot, los programas que se ejecuten dentro del
mismo no pueden acceder a ningún recurso del sistema encontrado fuera y por tanto
todos los directorios, archivos de configuración y archivos del dispositivo deben ser
creados dentro de la “celda” establecida por chroot.
138
©Clictic S.L.
directorios locales del usuario para buscar archivos .forward y archivos de configuración
de sistema en /etc. No existe ningún sitio en el sistema en donde se pueda “encerrar” a
sendmail efectivamente. Se puede improvisar una solución, pero no garantiza que sea
una buena alternativa para mantener la seguridad. No obstante, si la funcionalidad de
sendmail se separa en un servicio de directorios y en un programa de transferencia de
emails, entonces es posible colocarlo dentro de chroot.
Por otra parte, existen múltiples formas en las que un usuario root puede salir de
chroot y abarcan desde el simple uso de una llamada a chroot() sin chdir(), como se
verá en el ejemplo siguiente, hasta la utilización de métodos más complejos como la
creación de tus propios dispositivos /dev/hard o /dev/kmem , inyección de códigos
dentro del kernel en ejecución, uso de herramientas de directorio abierto fuera de
chroot, o incluso, el uso de códigos de Shell que desborden el buffer de chroot. Aunque
se puedan realizar varias acciones en el equipo para hacer que la mayoría de estos
métodos sean inviables, los atacantes siempre podrían encontrar nuevas maneras de
burlar el chroot, ya que el uso de root es demasiado poderoso en un sistema Unix.
139
©Clictic S.L.
se volvería extremadamente difícil. La mayoría de las prácticas seguras para crear y
estructurar código hace énfasis en deshacerse de todos los privilegios innecesarios,
pero afortunadamente para el atacante la mayoría de los programadores hacen caso
omiso de esta práctica. En resumen, si no existe manera de acceder a un Shell de root o
de realizar cualquier acción a nivel de root, salir del chroot será complicado. Lo ideal es
que si el software personalizado utiliza chroot por seguridad, la secuencia de llamadas
debería transcurrir de la siguiente manera:
En algunos casos, los atacantes puede que no sean capaces de salir del chroot, pero
podrán tener un efecto parcial sobre esos procesos. Por ejemplo, si BIND se coloca bajo
chroot, se deberán crear varios dispositivos. Uno de ellos es /dev/log necesario para
registrar los mensajes de BIND dentro de los registros de accesos normales del sistema.
Construyendo un mensaje de acceso malicioso y enviándolo hacia /dev/log si está
dentro del directorio de chroot, el atacante influirá en el comportamiento del servicio
syslog ejecutándose fuera del espacio de chroot. En caso de que se desborde el buffer
en syslog, el atacante podría obtener privilegios adicionales.
¿Qué servicios pueden colocarse bajo chroot, pero aun así no proveen un beneficio extra
a la seguridad?
Programas que no necesiten privilegios de root al ejecutarse o programas que proveen
acceso al Shell de root. Por ejemplo, ssh o telnet con una cuenta root dentro de un
directorio bajo chroot.
140
©Clictic S.L.
Destrucción de recursos
Se puede lograr eliminando o sobrescribiendo archivos críticos del sistema y
ocasionando fallos en los procesos de servidores y otras aplicaciones. Es posible dañar
el hardware del sistema bajo las circunstancias correctas, principalmente en los
sistemas Unix que corren en la arquitectura i386 (Linux, BSD). No obstante, la mayoría
de estos ataques requieren privilegios en el sistema. Por ejemplo, solamente usuarios
con permisos root pueden borrar el archivo que contiene las contraseñas. Con este tipo
de acceso, el atacante puede realizar mucho más daño al equipo removiendo o
formateando todos los datos en el sistema. El riesgo no es tan grande siempre que los
atacantes no puedan acceder fácilmente a un usuario root. A continuación se muestran
algunos ejemplos de ataques DoS causados por destrucción de recursos.
Ataque Impacto
Eliminar o corromper archivos críticos Acceso denegado, fallo del sistema,
pérdida de datos, etc.
Eliminar/formatear partición Sistema deshabilitado
Apagado forzoso Sistema temporalmente deshabilitado
Fallo de un servicio Servicio temporalmente deshabilitado
Las aplicaciones con bugs son conocidas por fallar sin ninguna influencia maliciosa. No
obstante, con un poco de ayuda de algún intruso creativo, pueden fallar con mucha más
intensidad. Existen muchos ejemplos de esto, como por ejemplo utilizar el nombre de
un dispositivo en ciertos contextos puede causar que algunas versiones del navegador
Netscape falle. Otras aplicaciones, e incluso el sistema entero, también pueden
congelarse. Por ejemplo, se reporta que /dev/urandom puede causar fallas.
Agotamiento de recursos
Existen procesos maliciosos que pueden consumir los recursos de un sistema. Al utilizar
mucha memoria, espacio en disco y ciclos del CPU y llenar por completo la consola con
procesos kernel y otras estructuras de datos, se puede obstruir el normal
funcionamiento de cualquier sistema Unix. A continuación se muestran algunos
ejemplos clásicos de agotamiento de recursos:
141
©Clictic S.L.
❏ Desbordamiento de la memoria: hacer que el programa de un usuario utilice una
gran cantidad de memoria puede causar problemas. Un sistema bien
configurado de Unix no se verá afectado por esto, pero aun así puede causar
una ralentización considerable del equipo, sobre todo si la memoria física y la
memoria virtual se encuentran desbordadas.
❏ Desbordamiento del disco: las particiones de Unix solo tienen el 10% de espacio
disponible de emergencia para el root solamente. El atacante puede causar un
desbordamiento en el disco duro haciendo que un proceso perteneciente al root
llene el disco por él, por ejemplo, enviar demasiados mensajes falsos de syslog
hacen que syslog llene la partición de /var. Si Unix se encuentra instalado en una
partición (no recomendado pero practicado por usuarios novatos), el sistema
podría considerarse inutilizable. A veces no es necesario llenar el disco por
completo, sólo basta con crear una gran cantidad de archivos que desborden los
inodos para que el sistema quede inutilizable.
❏ Acaparamiento del CPU: es muy difícil que un programa abarque todos los
recursos de la CPU, debido a la característica multitarea de los sistemas Unix
modernos. Sin embargo, existen programas que pueden lograrlo y un claro
ejemplo es colocar videojuegos de última generación en equipos de mediana o
baja gama. Si logran ejecutarse, la cantidad de procesos acaparados por estos
programas es inmensa.
142
©Clictic S.L.
6.5. ¿QUÉ HACER SI RECIBIMOS UN ATAQUE?
Es probable que en algún momento la empresa sufra una brecha de seguridad de algún
tipo, sobre todo si tiene acceso a Internet. Es bastante común presenciar casos en los
que una compañía no sabe cómo reaccionar ante ello y, como en cualquier situación de
emergencia, necesita tomar decisiones rápidas y asertivas para eliminar todo daño
colateral que pueda causarse en algún ataque.
Hay muchas maneras para detectar una brecha de seguridad: desde detectar actividad
inusual monitorizando los equipos o instalaciones, hasta recibir avisos y notificaciones
provenientes de fuera de la compañía, en el peor de los casos. No obstante, sea cual sea
la manera en la que se haya detectado, se deben seguir una serie de pautas básicas
para disminuir el daño causado por la brecha de seguridad ocurrida lo máximo posible:
❏ Determinar la naturaleza del ataque: se deben tomar una serie de medidas según la
naturaleza del ataque. Es necesario determinar si el ataque fue crítico
comprometiendo servicios vitales de la empresa, datos de la mayoría de usuarios o
filtró grandes cantidades de información de la organización que pueda afectar su
integridad pública.
❏ Contener el ataque lo más posible: debe empezar con el aislamiento de los equipos,
cuentas y servidores comprometidos aunque implique la suspensión de ciertos
servicios o el reinicio de los mismos. Esto dependerá de la naturaleza del ataque.
143
©Clictic S.L.
deshacer de cualquier detalle que pueda seguir afectando al equipo o a la empresa,
ya sea de forma activa o pasiva.
❏ Analizar los errores de seguridad y aprender de ellos: investigar a fondo los ataques
recibidos a lo largo de la historia de la empresa ayuda a mejorar la seguridad para
evitar cualquier tipo de brecha de naturaleza similar. Este estudio debe incluir un
análisis del estado del equipo atacado, las redes conectadas a él y cualquier persona
relacionada con su entorno. Hay que tener en cuenta que el ataque puede provenir
de una fuente interna. También es necesario estudiar las vulnerabilidades no
relacionadas con este ataque para poder implementar un sistema de seguridad
mejorado que evite todo tipo de brecha.
144
©Clictic S.L.
7. SEGURIDAD EN REDES INALÁMBRICAS
7.1. INTRODUCCIÓN
El término red inalámbrica en el ámbito de la informática hace referencia a la
interconexión entre dispositivos electrónicos mediante ondas electromagnéticas, sin
necesidad de un sistema de cableado. Los dispositivos electrónicos como teléfonos,
computadoras personales, televisores o reproductores están habilitados para
conectarse entre sí mediante terminales (routers o tarjetas de red) que permiten esta
conexión entre dispositivos. Utilizar una red inalámbrica supone la simplificación y la
eficacia del proceso de interconexión. A continuación se mencionan las ventajas más
notables:
❏ Movilidad: permite el movimiento de los dispositivos dentro del radio de
cobertura sin que se afecte la conexión a Internet.
❏ Fácil configuración: que no exista cableado facilita significativamente la
instalación y configuración de la red y requiere menor inversión ofreciendo
mayor rentabilidad.
❏ Accesibilidad: el acceso a una red inalámbrica supone mayor comodidad que el
acceso a una red cableada. Permite la conexión desde diferentes puntos dentro
de un espacio amplio.
Sin embargo, las redes inalámbricas presentan una serie de desventajas intrínsecas a su
propia naturaleza que se mencionan a continuación:
❏ Escasa seguridad: a diferencia de las redes cableadas, las redes inalámbricas se
encuentran más expuestas. Permiten que terceros puedan tener acceso a la red
fuera de la empresa debido a que existen tres puntos desde donde se puede
realizar un ataque: desde el punto de acceso (router u otro dispositivo), desde el
medio inalámbrico en donde se transmiten las señales y desde el dispositivo
receptor.
❏ Menor velocidad: la red inalámbrica presenta menor velocidad que la red
cableada debido a las interferencias producidas por el ambiente.
145
©Clictic S.L.
datos y la capa de enlace de datos establece la interfaz o zona de comunicación entre el
bus del dispositivo y la capa física.
El WIFI (Wireless Fidelity, certificación otorgada por Wi-Fi Alliance) es una tecnología de
red inalámbrica que describe una red de componentes basado en el estándar 802.11 y
permite la comunicación entre computadoras y otros dispositivos. El objetivo de su
creación estuvo orientado por la necesidad de la existencia de un sistema que
permitiese la relación entre distintos dispositivos.
146
©Clictic S.L.
- Alcance de 460 metros.
- Ancho de banda de 2.4 MHz
IEEE 802.11h - Constituye una modificación para WLAN.
- Entró en conocimiento público en octubre de 2003.
- Su finalidad es solucionar problemas ocasionados con la relación entre
las redes 802.11 y sistemas de radares y satélites.
IEEE 802.11i - Su objetivo es enfrentar la vulnerabilidad en la seguridad de los
protocolos de codificación.
- Se utiliza el Wi-Fi Protected Access.
- Abarca protocolo de claves.
IEEE 802.11j - Diseñado para el mercado japonés
- Equivalente al 802.11h utilizado en Japón.
- Ajusta la banda inalámbrica de 5 GHz a las normas japonesas.
IEEE 802.11k - Mejora la gestión de los puntos de acceso.
- Diseñado para utilizarse en software.
- Ofrece compatibilidad entre los clientes y los puntos de acceso
IEEE 802.11n - Comenzó a ser implementado en el año 2009.
- Introdujo las redes MIMO.
- Velocidad de estimada de 600 Mbit/s y una velocidad real de 100
Mbit/s.
- Funciona en las frecuencias 2.4 GHz y en la 5.4 GHz.
- Posee un ancho de banda de 20/40 MHz.
- Mejoró la cobertura teniendo un alcance de hasta 820 metros
- El IEEE 802.11n es compatible con las versiones anteriores de Wi-Fi.
IEEE 802.11p - Trabaja en el rango de frecuencias 5,90 GHz y 6,20 GHz.
- Diseñado exclusivamente para automóviles.
- Utiliza la tecnología DSRC, que permite el intercambio de datos entre
vehículos.
- La mejora es ampliamente utilizada por los Sistemas Inteligentes de
Transporte (SIT)
IEEE 802.11r - Utiliza una función conocida como Fast Basic service Set Transition, que
establece los protocolos de seguridad que identifican a un dispositivo en
el nuevo punto de acceso antes de que el mismo abandone el actual. Es
decir, permite que un dispositivo se mueva de un punto de acceso a otro
sin que exista ruptura en la comunicación o conexión.
IEEE 802.11v - Publicado en 2011, permite configurar los dispositivos de forma remota,
lo que facilita una gestión totalmente centralizada. Proporciona cuatro
facultades:
1.- Mecanismos de ahorro energético
2.- Posicionamiento, capaz de otorgar nuevos servicios dependiendo de
la ubicación.
3.-Temporización, que soporta aplicaciones que necesitan calibrado
preciso.
4.- Coexistencia, permite que un mismo dispositivo trabaje con
147
©Clictic S.L.
diferentes tecnologías.
IEEE 802.11w - Se basa en el protocolo IEEE 802.11i.
- Su objetivo es proteger las redes WLAN contra ataques en las tramas de
gestión inalámbrica.
- Protege las redes contra los programas malévolos que crean peticiones
aparentemente enviadas de un equipo válido, su función es proteger
hasta las tramas de gestión.
Leyenda:
❏ Mbit. Unidad de medida de información utilizada en transmisiones de datos. Equivale
a 106 bytes.
❏ GHz. Múltiplo de la unidad de medida Hz, (Unidad de frecuencia del Sistema
Internacional de unidades) que equivale a 10 9.
❏ QoS. (Quality of Service) Es el rendimiento promedio de una red telefónica o de
computadoras. Mide la calidad del servicio, como tazas de errores, anchos de banda,
rendimiento, retraso en la trasmisión, entre otros.
❏ WLAN. Red de área local inalámbrica (Wireless local area network)
❏ Wi-Fi Protected Access. También llamado WPA, es un sistema de protección de redes
inalámbricas Wi-Fi. El WPA ha sido creado para corregir las debilidades de seguridad
del sistema anterior (WEP).
7.3. TOPOLOGÍAS
148
©Clictic S.L.
dispositivos. Es la metodología que utilizan generalmente las redes WiFi y se han
establecidos diferentes estructuras topológicas para lograr un uso eficiente y
seguro de estas redes.
Modo Infraestructura
Los dispositivos inalámbricos se conectan entre sí a través de un punto de acceso que
actúa como intermediario en la comunicación. Toda trasmisión de archivo entre los
dispositivos de la red local debe pasar primero por el punto de acceso creando una red
de naturaleza centralizada. Para obtener acceso a un servicio o red externa, el punto de
acceso debe conectarse a un router que a su vez esté conectado a la dicha red externa.
Modo Ad-Hoc
Los dispositivos inalámbricos se conectan entre ellos sin necesitar un punto de acceso
que actué como intermediario creando enlaces punto a punto (P2P) en donde cada
dispositivo actúa como servidor y procesador de datos de la red. Las redes ad-hoc
necesitan una pequeña configuración y por eso tiene sentido usarlas cuando se necesite
transferir datos de manera urgente. Para acceder a servicios o redes fuera de la red
local alguno de los dispositivos de la red tiene que abrir una puerta de acceso externa
(gateway) y realizar las funciones del router para la red local.
149
©Clictic S.L.
Wifi modo ad-hoc
Es muy importante entender la naturaleza de los diferentes ataques a una red wireless
para determinar una estrategia de defensa apropiada. Aunque algunos ataques son
fáciles de realizar, no son particularmente peligrosos. SIn embargo, otros más difíciles
de llevar a cabo podrían tener consecuencias devastadoras. En resumen, la seguridad
wireless es un juego de riesgo como cualquier otro aspecto de este tema.
Comenzaremos hablando de las redes abiertas, las redes con el menor nivel de
seguridad disponibles al público a modo de introducción a la seguridad de las redes
inalámbricas.
7.5. WEP
151
©Clictic S.L.
aleatoria y para el caso de WEP se hace con un Generador de Números Pseudo Aleatorio
(Pseudo-Random Number Generator, PRNG). Así, la información es cifrada junto a una
sección de 20 bits, llamada vector de inicialización. El generador produce una cadena
hexadecimal de 64 bits, o seed, que constituye la llave WEP.
Primero, el CRC calcula una frecuencia binaria por cada bloque de datos que es enviado
en el dispositivo emisor. Luego,adjunta la frecuencia al bloque de datos para formar
una huella personal. Tercero, cuando el paquete de datos llega al dispositivo receptor
se le calcula otra vez la frecuencia binaria y por último, la segunda frecuencia se
compara con la primera y si coinciden, el paquete se considera íntegro.
La red WEP permite la utilización de hasta cuatro claves secretas diferentes. Si una red
está protegida con este tipo de seguridad, el punto de acceso informará esto
transmitiendo periódicamente paquetes de administración no cifrados. Sólo aquellos
paquetes que transmitan datos en una seguridad WEP se encuentran cifrados. Las
claves pueden variar desde 40 hasta 232 bits, según la versión de la red WEP y del
fabricante del router. A pesar de estas medidas, el sistema WEP posee muchas
vulnerabilidades que se verán más adelante.
152
©Clictic S.L.
7.6. WEP. ATAQUES
Además, el tamaño estándar de la contraseña (40 bits) es muy pequeño para los
estándares actuales, a pesar de que se pueda incrementar hasta 232 bits dependiendo
del fabricante. Aun así siguen siendo vulnerables a ataques por fuerza bruta.
A pesar de ello, existen aproximadamente 224 llaves diferentes, una por cada vector de
inicialización y estadísticamente es muy poco probable que se utilice una sola clave de
cifrado para un paquete de datos. Por ende, no es una vulnerabilidad tan grave como
las otras estudiadas.
Criptosistema RC4
La clave de acceso a una red WEP puede ser revelada en un proceso rápido utilizando
vectores de inicialización débiles en el sistema de encriptación RC4. Los métodos
descritos señalaban que con el uso de un vector de este tipo se podía hallar un byte de
153
©Clictic S.L.
la clave y obteniendo un número relativamente grande de paquetes capturados se
podría adivinar la clave.
Esta vulnerabilidad es hasta ahora la más grave y se intentó implementar una solución
creando filtros para vectores de inicialización que fueran considerados como débiles.
No obstante, estos filtros funcionaban con vectores de inicialización que ya existían y la
aparición de nuevos vectores hacía que quedaran obsoletos rápidamente. Actualmente,
muchas aplicaciones al alcance de atacantes (incluso los principiantes) permiten
vulnerar las redes WEP utilizando este método, por ello dejó de ser considerada como
segura a partir de 2004.
El chequeo integridad
El CRC-32 se utiliza para detectar ruido y errores de transmisiones comunes. Sin
embargo, aunque es una excelente opción para evitar el ruido en la trasmisión, es una
terrible opción como protocolo de cifrado. Por ello, los sistemas más avanzados de
cifrado utilizan el MD5 o SHA-1 como chequeo de integridad.
Esto ocurrió hasta el año 2005, cuando TJ Maxx (cadena de vendedores al detal en
Estados Unidos) presentó una brecha de seguridad ocasionada por una de estas fuertes
vulnerabilidades de WEP. Les costó una cifra aproximada entre 1.45 - 4.25 miles de
millones de dólares. Fue entonces cuando las compañías que prestaban servicios de
redes inalámbricas comenzaron a atender a las vulnerabilidades presentes en el
protocolo.
Los primeros dos tipos de ataque no requieren una gran especialización del atacante en
el campo de la informática, por lo que a continuación se explicará solo ataques posibles
de los dos últimos grupos.
Ataque FMS
En agosto del año 2001, Scott Fluhrer, Itsik Mantin y Adi Shamir realizaron un informe
que analizaba los diferentes métodos que existían para atacar las vulnerabilidades WEP
centrándose en demostrar la debilidad del criptosistema RC4 y el Vector de
Inicialización. Esta debilidad fue notada dos años antes de la implementación del
protocolo IEEE 802.11 por Wagner en 1995, tal y como se comentó anteriormente.
Si el atacante conoce los L primeros bytes de K, puede simular las primeras L iteraciones
[0,…,L-1] del bucle de RC4-KSA (Algoritmo 1) obteniendo SL y jL.. Los subíndices
representan el estado del elemento. SL representa la permutación de S en el estado L o
pasadas L iteraciones. La iteración L siguiente del bucle no puede simularse, al no
conocerse K[L]. Se despeja este valor:
jL+1 = jL + K[L] + SL[L]
K[L] = jL+1 – jL – SL[L]
Para obtener K[L] basta conocer jL +1. Continuando con la simulación, se sabe que el
valor de la posición de jL +1 se intercambiará con el valor de la posición de L, por tanto
en la siguiente iteración (L+1), el valor de la posición L, SL+1[L], se encontraría en la
posición jL +1 en la anterior iteración L..
jL+1=SL-1[SL+1[L]]
Fluhrer, Mantin y Shamir propusieron las siguientes condiciones para averiguar esta
incógnita:
SL[1] < L
SL[1]+SL[SL[1]] =L
155
©Clictic S.L.
Esta condición se cumple después de pasar las L primeras iteraciones del RC4-KSA.
Al ser retornado el primer byte de X, X[0] por RC4-PRGA, j tomará el valor de Sn[1].
El éxito del proceso anterior dependerá del vector de inicialización IV, para una clave Rk.
Es necesario verificar el cumplimineto de las condiciones expuestas anteriormente justo
al capturar un paquete de información; pero esto no garantizará que su IV sea débil. Es
decir, que las tres posiciones de la permutación mencionada continúen invariantes
entre los pasos L+1 y n.
Tomará el valor de K[L] con una probabilidad igual a 5%. Esto quiere decir que
solamente existirá un 5% de probabilidades de que K[L] sea correcto, por lo que es
necesario capturar una gran cantidad de paquetes para incrementar esta probabilidad.
Se necesitan aproximadamente un total de 9 millones de paquetes para conseguir una
eficacia del 50%, algo muy sencillo de realizar en tan solo un par de horas en una red de
100 Mbps y un tamaño estándar de 7981 bytes por paquete. Existen mecanismos para
inducirlo y conseguir rápidamente este número de paquetes si la red no posee
demasiado tráfico. Para una cantidad de paquetes de este tamaño o mayor, el valor de
K[L] será el que aparezca en mayor cantidad de ocasiones.
Para encontrar el valor de K[L+1] hay que realizar otro análisis de los paquetes
capturados conociendo el valor de K[L], hasta completar todo el valor de la clave
secreta K. Si el valor de la clave secreta K es incorrecto, habrá que tomar el siguiente
valor más votado de aquellas votaciones en donde los resultados fueron muy similares,
se construirá un nuevo valor de K y se intentará nuevamente.
Este método es sencillo debido a que, según lo dicho por el estándar IEEE 802.11, los
primeros 3 bytes de la contraseña K se pueden saber porque los vectores de
inicialización IV se transmiten sin cifrar. “El IV es transmitido sin cifrar debido a que no
provee a los atacantes de cualquier información acerca de la clave secreta”. Probamos
que este planteamiento es incorrecto con todo el procedimiento realizado
anteriormente: nació desde conocer el primer byte de la clave secreta K. También es
posible conocer el primer byte de X, por ser altamente predecibles los primeros bytes
156
©Clictic S.L.
de texto claro de la gran mayoría de paquetes. El atacante puede recuperar los
primeros bytes de X utilizados para el cifrado.
En resumen, para cada paquete que se logra capturar con éxito, es posible conocer los
3 primeros bytes de la clave secreta K y, en algunos casos, el primer byte de X
permitiendo la ejecución iteraciones de RC4 hasta que sean conocidos todos los bytes
de K. Este proceso ha sido mejorado llegando a necesitar solamente 40000 paquetes
recolectados en 60 segundos para conseguir una probabilidad de acierto del 50%. Por
ende, con la tecnología existente actualmente, hay gran variedad programas
especializados para realizar esta clase de procesos en 3 minutos o menos.
Vulnerabilidad lo suficientemente grande para dejar obsoleto el protocolo de seguridad
WEP.
Ataque Chop-Chop
Fue publicado en un foro llamado “netstumbler.org”, por el usuario KoreK en 2004 y
consiste en sobrecargar el sistema de detección de errores en el protocolo WEP, el CRC-
32. Permite conocer el contenido de un paquete cifrado capturado desde una red WEP
descifrándolo byte a byte. Cada byte es probado por fuerza bruta, generando un
paquete nuevo tras una serie de pasos que es enviado al punto de acceso AP. Este
determina si el paquete posee una suma de comprobación válida y en caso afirmativo,
el byte probado corresponde al byte correspondiente pero ya descifrado.
Por cada byte que se quiera descifrar se necesitan 128 llamadas al punto de acceso para
averiguar si es correcto ya que por cada 8 bits existen 256 posibles combinaciones. Esto
quiere decir que el promedio de llamadas al punto de acceso para descifrar un paquete
completo de m de bytes, es por lo menos 128*m.
Este proceso comienza al capturar el paquete deseado y puede contener muchos trazos
de información, pero solo hacen falta 3 tipos de ellos para dar inicio al proceso:
❏ Vector de Iniciación (IV): 3 bytes, no cifrado.
❏ Data (datos): n bytes, cifrado.
❏ Integer Check Value CRC32 (ICV o valor entero de comprobación): 4 bytes,
cifrado.
Para comprender mejor este proceso, durante la siguiente explicación se manejan sólo
dos caras por paquete: la cara descifrada o clara y la cara cifrada. Se considera una cara
descifrada cuando ya el atacante conoce el valor de dicho byte. El proceso se seguirá
desde la cara descifrada, saltando algunas veces hacia la cara cifrada. Comencemos:
157
©Clictic S.L.
El paquete recién capturado es un polinomio P, compuesto por los bits
correspondientes a los campos data y checksum (datos que se desean descifrar).
P = data || checksum
Donde P corresponde al polinomio del paquete, PONE, polinomio de grado 31 con todos
sus coeficientes elevados a la 1. P y PONE son congruentes en un módulo PCRC. Se trunca
el último byte, obteniendo como resultado un polinomio Q 8 bits menor al tamaño de P
y el byte truncado R.
𝑃 = 𝑄 · 𝑋8 + 𝑅
Se intentará averiguar el byte R mediante la fuerza bruta probando todas las
combinaciones posibles. Se definirá un polinomio cuyo checksum sea válido en caso de
que el byte R elegido sea correcto, construyéndolo a partir de Q. Combinando las
ecuaciones anteriores, se puede encontrar un equivalente al polinomio Q en F2[X ]/(PCRC
):
𝑃 ≡ 𝑃𝑂𝑁𝐸
𝑃 = 𝑄 · 𝑋8 + 𝑅
𝑄 · 𝑋 8 + 𝑅 ≡ 𝑃𝑂𝑁𝐸
𝑄 · 𝑋 8 + 𝑅 + 𝑅 ≡ 𝑃𝑂𝑁𝐸 + 𝑅
En esta ecuación, hay que sustituir R por una R de prueba. El nuevo R de prueba será en
donde se aplicará la fuerza bruta hasta hallar el R correcto. Esto ocurrirá en cuanto el
punto de acceso admita el paquete resultante.
158
©Clictic S.L.
En cuanto se encuentra el polinomio equivalente a Q en F2[X ]/(PCRC ), se le suma Q y
PONE. Esta suma es lineal, al igual que el algoritmo RC4, lo que significa que la suma en la
cara clara se ejecutará también en la cara cifrada.
𝑇 = 𝑃𝐼𝑁𝑉 · (𝑃𝑂𝑁𝐸 + 𝑅𝑃𝑅𝑈𝐸𝐵𝐴 ) + 𝑃𝑂𝑁𝐸
𝑃𝑁𝑈𝐸𝑉𝑂 = 𝑇 + 𝑄 = 𝑃𝐼𝑁𝑉 · (𝑃𝑂𝑁𝐸 + 𝑅𝑃𝑅𝑈𝐸𝐵𝐴 ) + 𝑄 + 𝑃𝑂𝑁𝐸
𝑃̃𝑁𝑈𝐸𝑉𝑂 = 𝑇 + 𝑄̃ = 𝑃𝐼𝑁𝑉 · (𝑃𝑂𝑁𝐸 + 𝑅𝑃𝑅𝑈𝐸𝐵𝐴 ) + 𝑄̃ + 𝑃𝑂𝑁𝐸
𝐷𝑖 = 𝑇𝑖−1 ≫ 𝑋 8 + 𝑇𝑖
En el cual Ti-1 》X8 corresponde al T de la iteración anterior tras ser desplazado 8 bits a
la derecha y Ti, el T correspondiente de la iteración actual. Una vez calculado el
polinomio D tras averiguar el byte de cualquier iteración presente mediante un XOR de
los últimos bytes de ambos polinomios, se encontrará el byte claro del paquete original
en la misma posición correspondiente a la iteración.
Este proceso se repetirá hasta que solamente queden 4 bytes por descifrar. Sabiendo
que el polinomio PNUEVO es capaz de ser aceptado por el punto de acceso, que PCRC
consta de 33 bits y que PNUEVO alcanza los 32 bits, se puede afirmar que PNUEVO son 32
bits a 1, pues PNUEVO es un grado menor que PCRC. Finalmente, se realizará una operación
XOR entre PNUEVO y los 4 bytes iniciales de D y así se habrán descifrado los 4 bytes
faltantes del paquete inicial.
159
©Clictic S.L.
Este método no tiene como objetivo obtener la clave de la red protegida por WEP. Su
finalidad es descifrar directamente un paquete o una serie de paquetes concretos, a
través de fuerza bruta más especializada. Por ende, a pesar de que se presenta como
una debilidad importante del protocolo WEP, no es el método más eficiente para el
atacante a menos de que desee ciertos paquetes de información en específico.
Tras conocer este tipo de ataques a una red WEP y de la evidente vulnerabilidad que
cada uno de ellos implica, los atacantes comenzaron a aprovechar la falta de
actualización de muchas empresas con una seguridad WEP activa. Después de la
pérdida millonaria de TJ Maxx anteriormente mencionada, el resto de empresas
comenzaron a tomar medidas pertinentes para evitar este tipo de seguridad.
Un grupo del FBI violó una red protegida por WEP en 3 minutos, utilizando
herramientas de acceso público en 2005 al realizar una demostración. Andreas Klein
presentó otro análisis del flujo RC4 demostrando que había más correlaciones entre el
flujo RC4 y la contraseña de la red que pueden ser utilizadas para obtener acceso a la
red.
En el año 2008, la Industria de Pago con Tarjeta (Payment Card Industry; PCI) prohibió el
uso de la WEP como parte de cualquier procesamiento de pago de cualquier tarjeta de
crédito a partir de junio del 2010 tras publicar su Estándar de Seguridad de Datos (Data
Security Standard). En él prohíbe que cualquier otro sistema que utilice tecnología WEP
fuera instalado después del 31 de marzo de 2009. Después de esto, el uso de este
protocolo quedó considerado como obsoleto y dio camino a otros protocolos que
aunque no posean una defensa perfecta, resultan muchísimo más seguros que WEP.
Este método de seguridad aportó nuevos e innovadores protocolos para la época con
respecto a seguridad inalámbrica. Uno de ellos fue el Temporal Key Integrity Protocol
(TKIP) o Protocolo de la Integridad de la Llave Temporal, el cual utilizaba una única llave
160
©Clictic S.L.
de encriptación por paquete, generando una llave de 128 bits cada vez que enviaba un
paquete por una red inalámbrica haciendo uso del protocolo WPA. Esto supuso una
gran diferencia con respecto a las llaves de WEP que, aunque tuvieran la misma
cantidad de bits por llave en promedio, existía la probabilidad de que se reutilizaran las
llaves de encriptación. Con una llave única por paquete, queda eliminada esta
vulnerabilidad.
Para prevenir que los atacantes alteraran y reenviaran paquetes de datos, se diseñó un
método para reemplazar el inseguro CRC, la Comprobación de la Integridad del
Mensaje. Utilizaba el mismo algoritmo TKIP para verificar la integridad de los paquetes,
pero aunque era excelente solución a las vulnerabilidades presentes en CRC, algunas
computadoras y routers muy antiguos no tenían suficiente capacidad de cómputo para
llevar a cabo todos los procesos que necesitaba y requería este protocolo.
WPA estaba construido en base a su predecesor. Por ello seguía siendo susceptible a
fallos aunque suponía una mejora significativa con respecto a la gran cantidad de fallas
incluidas en el WEP. WPA se implementó en la mayoría de dispositivos que usaban WEP
como medida de seguridad estándar y fue a través de parches y actualizaciones de
firmware básicas. Es por esto que la mejora no fue lo que los usuarios esperaban en
cuanto a la seguridad en las redes inalámbricas.
La mejora más significativa de este tipo de sistema con respecto al anterior WPA, fue el
uso del Advanced Encryption Standard (AES) o Estándar de Cifrado Avanzado. Consiste
en un tipo de cifrado (aprobado por las organizaciones gubernamentales de los Estados
Unidos) para los datos clasificados y con información de un alto grado de delicadeza.
Concretamente, el sistema WPA2 utiliza el protocolo CCMP, que no es más que un
protocolo de encriptación que utiliza un mecanismo de encapsulación de los datos,
ideal para mantener la confidencialidad de la información.
161
©Clictic S.L.
7.7.3 WI-FI PROTECTED SETUP (WPS)
Este protocolo no clasifica en la misma categoría que los protocolos WEP, WPA o WPA2
debido a que no se trata de un sistema de cifrado en como tal. Consiste en una serie de
estándares creados en 2006 por la alianza Wi-Fi, donde señalan cómo crear una red
inalámbrica doméstica segura, para dispositivos con WPA o WPA2. Tiene como finalidad
proporcionar un ambiente inalámbrico seguro en las redes de casa, principalmente
cuando aquellos que la utilicen no posean conocimientos previos sobre seguridad y
puedan verse intimidados por todos aquellos conceptos que conlleva una red segura.
Además, permite y facilita incluir nuevos dispositivos en la red, desde una plataforma
accesible mediante de un navegador hasta un simple botón presente en el router, para
activarse o desactivarse.
162
©Clictic S.L.
8. CRIPTOGRAFÍA Y CRIPTOANÁLISIS
En esta unidad se aborda el tema de la criptografía y el criptoanálisis. Veremos a qué
hacen referencia cada uno de estos términos, las vulnerabilidades y diferentes tipos de
ataques que existen, así como los procesos de cifrado y descifrado de la información
acompañados de algunos ejemplos para su mejor comprensión.
8.1.1. INTRODUCCIÓN
Como se ha visto en unidades anteriores, hay que tener en cuenta que con respecto a
la seguridad empresarial, las amenazas pueden proceder desde cualquier punto. Si se
diera el caso de encontrar una brecha de seguridad en los sistemas informáticos de la
compañía, todos los documentos e información de importancia deberían estar detrás
de una segunda barrera de seguridad. Estamos hablando del cifrado.
8.1.2. CRIPTOGRAFÍA
La criptografía se basa en escribir un mensaje en modo cifrado con el objetivo de
proteger algún secreto de intrusos, adversarios, curiosos, interceptores o simplemente
enemigos. Generalmente se hace mediante la traducción de un texto no cifrado según
un texto clave. La criptografía profesional no protege únicamente al texto no cifrado,
sino que también protege la clave y a todo el sistema de cifrado en general. Se puede
clasificar según varios parámetros que veremos a continuación.
Según su clave
Criptografía de clave simétrica: emisor y receptor comparten una única clave. El
emisor utiliza la clave para cifrar el mensaje o fichero y envía el contenido cifrado al
receptor, que utiliza la misma clave para descifrar el mensaje y recuperar el archivo
o texto.
Criptografía de clave pública: utiliza dos claves, una pública y otra privada. La clave
pública se encuentra distribuida libremente y se utiliza para cifrar, mientras que la
privada se mantiene oculta y se utiliza para el descifrado.
Funciones de hash: no utiliza ningún tipo de llave. Se calcula un valor hash con una
longitud fija detrás de un texto, que imposibilita que el contenido del texto sea
recuperado. Las funciones hash también son utilizadas por varios sistemas
operativos para cifrar contraseñas.
163
©Clictic S.L.
Según su algoritmo
Data Encryption Standard (DES): algoritmo que utiliza una clave de 56 bit para cifrar
un bloque de datos con tamaño de 64 bit. Procesa entradas de 64 bit y las cifra en
una clave de 64 bit. Fue desarrollado en los años 70 por IBM y adoptado por el
gobierno de los Estados Unidos en 1976 para su estándar de procesamiento de
información federal en 1976.
International Data Encryption Algorithm (IDEA): cifrado que utiliza una clave de 128
bit de longitud que opera en bloques de 64 bit y cifra realizando una serie de ocho
transformaciones idénticas basadas en módulos de sumas y multiplicación. Se basa
en el cifrado simétrico y tiene un diseño muy deficiente por lo que su nivel de
seguridad es muy bajo comparado con DES. Fue diseñado por James Massey y
Xuejia Lai en 1991.
Blowfish: cifrado de bloque a través de clave simétrica diseñado por Bruce Schneier
en 1993 como un algoritmo de uso general, que funcionaría como alternativa a DES.
Fue publicado sin licencia, por lo que cualquiera podía utilizarlo libremente y
aplicarlo sin pagar derechos de licencia. Incluye una gran variedad de modos de
cifrado y productos de encriptado.
Funcionamiento de blowfish
Advanced Encryption Standard (AES): técnica de cifrado de datos de 128 bit que
opera en diferentes capas de redes de manera simultánea. Fue desarrollado por los
criptógrafos belgas, Daemen y Vincent Rijmen. Este algoritmo antes era conocido
como Rijndael.
Twofish: es un algoritmo que utiliza un cifrado de clave simétrica con claves de 128,
192 y 256 bit para cifrar bloques de datos con tamaños de 128 bit a través de 16
rondas. Es un derivado de Blowfish y es de libre uso.
164
©Clictic S.L.
RSA: es un sistema de claves públicas diseñado en 1978 por Ron Rivest, Adi Shamir,
y Leonard Adleman.
8.1.3. CRIPTOANÁLISIS
El criptoanálisis se encarga de descifrar un texto cifrado sin tener acceso a la clave del
cifrado, generalmente al recuperar parte o el total del texto no cifrado o incluso la
clave usada. Si se da el caso en que se llega a reconstruir totalmente el criptosistema
usado, puede constituir el peor escenario posible para la parte atacada. Es necesario
mantener un nivel aceptable de seguridad para poder conseguir que la clave
permanezca oculta. Si se detecta un fallo, una vulnerabilidad o alguna intromisión en el
método de cifrado, se debe reconstruir sistemática y exactamente el método de
cifrado.
El criptoanálisis puede ser pasivo, interceptando mensajes sin dar pista alguna de que
sucedió; o activo, alterando el mensaje, retransmitiéndolo luego o incluso insertando
mensajes propios, para hacer notar su presencia en el sistema.
8.1.4 VULNERABILIDADES
Las vulnerabilidades pueden ocasionar pérdidas, totales o parciales, de la
confidencialidad de la clave al si esta es expuesta por fallos en el sistema de criptografía.
Existen distintos tipos de vulnerabilidades que se describen a continuación:
165
©Clictic S.L.
❏ Vulnerabilidad texto cifrado-texto cifrado: es una transmisión de un texto no
cifrado que fue cifrado con dos claves de cifrado distintas. Al intercambiar el papel del
texto no cifrado y la clave de cifrado, este caso puede ser considerado como una
vulnerabilidad de texto no cifrado-texto no cifrado. Esta vulnerabilidad es sistemática en
conjuntos de mensajes donde el mismo mensaje se envía de diferentes formas de
cifrado a muchos sitios, como es común en sistemas de cifrado de clave pública.
Se asume que el criptoanalista que realiza la búsqueda puede saber si una clave
es correcta o no. Para ello el criptoanalista debe manejar cierto grado de
información sobre el texto no cifrado. Por ejemplo, el texto no cifrado puede
comenzar con “Estimado señor”, o los bytes del texto no cifrado podrían estar
limitados a solo caracteres de valores ASCII.
166
©Clictic S.L.
8.1.5. TIPOS DE ATAQUE
❏ Ataque de diccionario: hace referencia a dos tipos de técnicas de criptoanálisis.
Una consiste en un ataque exhaustivo de criptoanálisis en el que el atacante calcula y
almacena una tabla de pares de texto no cifrado-texto cifrado (P, Ci = EKi (P), K)
ordenada por textos cifrados Ci. El texto no cifrado (P) es elegido previamente entre los
textos cifrado más frecuentes, como “login:”, “Hello John”, entre otros. La clave
atraviesa todas las posibles claves Ki. Si el usuario cifra P y el atacante observa que su
texto cifrado resultante es Cj, entonces consultaría su tabla buscando el texto cifrado
correspondiente para tomar la clave secreta Kj.
La otra técnica se trata de un método mediante el cual un atacante intenta descifrar la
contraseña de un usuario colocando palabras de un diccionario (pueden ser una lista de
contraseñas frecuentes) con el objetivo de que una de estas resulte ser la contraseña
real. Este método abusa del fallo presente en muchos usuarios que utilizan contraseñas
fáciles de recordar y por tanto fáciles de adivinar.
❏ Ataque basado sólo en texto cifrado: en este tipo de ataque se asume que el
atacante sólo tiene la capacidad pasiva de acceder a la comunicación cifrar, por tanto,
sólo conoce los texto cifrado Ci,i = 1,..., N, pero no los textos no cifrados
correspondientes. Sin embargo, podría confiar en ciertas redundancias y asumir que se
tratan de pistas para el texto no cifrado. Por ejemplo, que el texto no cifrado sea texto
en un idioma (español, inglés, etc.) y esté codificado en ASCII.
167
©Clictic S.L.
criptoanálisis de la Máquina Enigma se basaba en palabras adivinadas correctamente y
el criptoanálisis lineal es un ejemplo típico de ataque basado en texto no cifrado
conocido.
Es fácil adivinar un cifrado de César que cambia la posición de las letras del alfabeto por
tres lugares hacia atrás: a = D, b = E, c = F,…, z = C. Sin embargo, resulta más difícil si se
utiliza un alfabeto mezclado. Por ejemplo, en este caso, el primer paso es agrupar las
letras por conjuntos entre las más frecuentes, las más raras y las intermedias para
refinar el descifrado a través de ensayo y error.
168
©Clictic S.L.
La profundidad es una noción que se utiliza en conjetura con el criptoanálisis de
cifrados de múltiples alfabetos o polialfabético y que implica el arreglo de un conjunto
de textos cifrados supuestamente encriptados con la misma clave para el descifrado del
sistema de cifrado periódico polialfabético.
Profundidad de 5 líneas
A las líneas de profundidad se les conoce como isologos o isologs. Son identificadores
gráficos que sirven para firmar las comunicaciones de una entidad. Están cifrados con la
misma clave y representan una vulnerabilidad de texto no cifrado-texto no cifrado.
169
©Clictic S.L.
conocido, esto podría permitir formar una profundidad, la reconstrucción completa de
la substitución.
Método de Kasiski
Si en un cifrado polialfabético periódico la misma secuencia de texto no cifrado está
encriptada con la misma secuencia de caracteres clave, se obtendrá la misma secuencia
de caracteres de texto cifrado.
La prueba Kappa se basa en la frecuencia relativa “k(T, T’)” de los pares en un segmento
de texto “T = (t1, t2, t3, . . . . ,tM), T’ = (t’1, t’2, t’3, . . . ., t’M)”, de igual longitud m, “M ≥
1”, con los mismos caracteres en las mismas posiciones. Debido a esto, este método es
conocido como índice de coincidencia, en ocasiones abreviado como I.C. El valor de
Kappa es típico en los idiomas naturales, pues el valor esperado de “k(T, T’)” es
“ΣiN=1 p2i”, donde pi es la probabilidad de ocurrencia del carácter “i” del vocabulario
al cual pertenecen “T y T’”.
Para los textos suficientemente largos, estadísticamente estos valores se acercan a 1/15
o 6,67% para el idioma inglés y 1/12,5 u 8% en el caso de francés y alemán. Por otra
parte, si los dos textos son cifrados de manera polialfabética con la misma llave, no hay
variable. No obstante, si estos textos están cifrados con la misma clave u otra diferente
y sus posiciones de inicio no son la misma, la coincidencia de caracteres será aleatoria y
el valor de Kappa se acercaría a “1/N”; siendo“N” el tamaño del vocabulario.
170
©Clictic S.L.
de una vulnerabilidad del texto cifrado-texto cifrado de una n cantidad de textos
cifrados.
Cuadrante de Latín
Búsqueda de patrones
Es un método que se puede aplicar a cifrados monoalfabéticos y aprovecha los patrones
existentes que se repiten en símbolos. Por ejemplo, el patrón 121331 bajo la clave 3 + 2
+ 1 (tres uno, dos tres, un dos) podría dar con la palabra “AGARRA”.
171
©Clictic S.L.
8.2. CIFRADO Y DESCIFRADO
172
©Clictic S.L.
8.2.3. SISTEMA DE CIFRADO ASIMÉTRICO
A diferencia del cifrado simétrico, el cifrado asimétrico se basa en el uso de distintas
claves utilizadas para la operación de un sistema de cifrado. Estas claves son distintas y
cumplen funciones inversas entre sí. Una de ellas, la pública, se utiliza para cifrar el
contenido. La otra, la privada, es utilizada para descifrar el contenido oculto.
Veamos cómo funciona: si las claves son de 20 caracteres y el emisor necesita transmitir
un mensaje de 300 caracteres, el emisor necesitaría tomar 15 páginas de claves.
Escribiría las letras de la clave una a la vez sobre las letras del texto no cifrado y cifraría
cada texto con una substitución elegida previamente, involucrando cada carta de texto
y el valor de clave escrito sobre este. Una vez hecho esto, procedería a destruir las
claves utilizadas.
Para que este sistema de cifrado funcione, el receptor necesita tener una libreta
idéntica a la del emisor. Cuando recibe el mensaje, toma la cantidad necesaria de claves
y descifra el mensaje como si se tratase de una simple sustitución con una clave larga.
Este algoritmo es válido para descifrar contenido tan extenso como el de la cantidad de
caracteres dentro de la libreta.
173
©Clictic S.L.
Veamos el siguiente ejemplo con este escenario:
una persona quiere enviarle a otra el mensaje “HOLA”.
ambas poseen una libreta de papel que contienen secuencias aleatorias
idénticas de letras que fueron creadas y aseguradas por ambas personas
previamente.
la persona A (emisor) elige una página no usada de la libreta acordando
previamente con el receptor cuándo utilizar dicha página.
27 27 27 27 valor 27
+ 4 (E) 0 (A) 13 (N) 10 (K) texto cifrado
- 24 (X) 12 (M) 2 (C) 10 (K) clave
= 7 15 38 27 27 + texto cifrado - clave
= 7 (H) 15 (O) 11 (L) 0 (A) resultado (mod 27) = texto
descifrado
De igual manera, si un número es negativo, se añade 26 para hacer que el número sea
positivo.
174
©Clictic S.L.
8.3.2. CRIPTOGRAFÍA CLÁSICA
Los cifrados clásicos han existido desde antes de la invención de los ordenadores y por
tanto, funcionan a base de letras en vez de bits. Utilizan sistemas más simples que
cifrados modernos.
Este sistema cifra un mensaje cambiando cada letra por otra tres posiciones antes en el
alfabeto, volviendo a “A” si este cambio alcanza la Z. Por ejemplo, palabras como “ZOO”
serían cifradas a CRR, o FHVDU sería CÉSAR.
Es un cifrado poco eficiente y muy fácil de descifrar. Basta con mover las posiciones de
las letras tres espacios hacia atrás para conseguir el texto no cifrado. Sin embargo,
durante la época de Craso y Cicerón este sistema era altamente eficiente por la pobre
educación de la población mayoritariamente analfabeta o que carecía de la educación
necesaria para entender el algoritmo.
Cifrado de Vigenère
Este cifrado supone una mejora en los sistemas de cifrado en comparación con el
cifrado de César. Fue creado por el italiano Giovan Battista Bellaso, pero fue acuñado
por error al francés Blaise de Vigenère, quien inventó un cifrado diferente en la misma
época. Fue utilizado durante la Guerra Civil de los Estados Unidos y el Ejército Suizo
durante la Primera Guerra Mundial.
Su funcionamiento es similar al cifrado de César, pero en este caso las letras son
transpuestas por valores definidos por una llave, basada en una colección de letras que
representan números según su posición en el alfabeto.
175
©Clictic S.L.
Veamos un ejemplo: si la clave es DUH, las letras en el texto cifrado se cambiarán
utilizando los valores 3, 20, 7 ya que D está tres después de A, U está 20 letras después
de A y H está siete letras después de A. El patrón de 3, 20, 7 se repite hasta alcanzar
descifrar todo el texto. Entonces, la palabra CLASE sería cifrada a ZSTPL, utilizando DUH
como clave.
Se podría considerar que el cifrado de Vigenère es más seguro que el cifrado de César,
pero ello no significa que no posea vulnerabilidades. El primer paso para llevar a cabo
un criptoanálisis es descifrar la longitud de la llave. Por ejemplo, la figura anterior
muestra un mensaje no cifrado que dice “THEY DRINK THE TEA” el cual se convierte en
WBLBXYLHRWBLWYH al utilizar la clave DUH.
La criptografía clásica se basa en todos aquellos métodos que se han utilizado a lo largo
de la historia para realizar cifrados. Los gobiernos y militares eran quienes llevaban a
cabo las operaciones de la criptografía clásica mayoritariamente. Estos métodos por lo
general utilizaban alfabetos (desde la “A” hasta la “Z”).
176
©Clictic S.L.
Cifrado de Polybios
❏ La escitala: técnica que se remonta al siglo V A.C. implantada por los espartanos
durante la guerra. Consistía en colocar una cinta sobre un bastón sobre el cual se
escribía un mensaje longitudinalmente para luego entregárselo al receptor que poseía
otro bastón.
177
©Clictic S.L.
8.3.4. TIPOS DE CIFRADO
Los cifrados clásicos generalmente se dividen en cifrados por sustitución y cifrados por
transposición:
Existen varios métodos como el cifrado tipo “Rail Fence”, mediante el cual el texto se
cifra siguiendo un patrón en forma diagonal hacia abajo y luego hacia arriba. Por
ejemplo, una frase como “ESTO ES UN SECRETO”, se debería ver de la siguiente forma:
Por otra parte, el cifrado de ruta agrupa el texto en un bloque que será descifrado
posteriormente según el patrón especificado por la llave. Siguiendo el ejemplo anterior,
el bloque se vería de la siguiente manera:
E O U E E
S E N C T
T S S R O
La clave debe especificar el patrón que es necesario seguir para leer el texto. En este
caso: leer por columnas, de arriba hacia abajo. El texto cifrado sería:
EOUEESENCTTSSRO
178
©Clictic S.L.
Si se utiliza la transposición regular, los espacios libres serán llenados con “valores
vacíos”, que no son más que letras aleatorias que no aportan información alguna. En
cambio, si se utiliza la transposición irregular, los espacios libres no se rellenan.
Entonces para cifrar de manera regular la frase “ESTE ES EL SECRETO”, el cuadro se
escribiría de la siguiente manera:
3 4 2 5 1
E S T E E
S E E L S
E C R E T
O J Q Z X
Los valores de la última fila (JQZX) fueron agregados aleatoriamente para llenar el
espacio de las columnas incompletas. El mensaje cifrado obtenido entonces se vería de
la siguiente forma:
ESTX TERQ ESEO SECÑ ELEZ
Doble transposición
Se podía descifrar un mensaje de transposición de columna intentando adivinar la
longitud posible de las mismas escribiendo los mensajes para buscar anagramas aunque
no fuera en el orden correcto debido al desconocimiento de la palabra clave. Es por ello
que los criptógrafos utilizaban la doble transposición, la cual consiste simplemente en
aplicar dos veces la transposición de columnas, con la misma o con diferente frase
clave. Durante mucho tiempo esta técnica fue considerada como la manera más segura
de transmitir un mensaje secreto principalmente si se utilizaban dos claves diferentes,
incluso fue usada por el ejército alemán hasta 1914.
179
©Clictic S.L.
8.4. EJEMPLO DE CIFRADO: CRIPTOGRAFÍA MODERNA
Funcionamiento de AES
Procesa bloques de 128 bits utilizando una clave secreta de 128 (la más común debido a
la rapidez), 192, o 256 bits. La diferencia entre seguridad de 128 y 256 bits es poco
práctica.
A diferencia de algunos cifrados que trabajan con bits individuales o palabras de 64 bits,
AES manipula Bytes interpretando un texto sin cifrar de 16 bytes como un conjunto de
bytes en dos dimensiones (s = s0, s1, . . . , s15) tal y como se muestra en la figura
anterior (Bloque de cifrado AES).
Con sólo revertir el algoritmo, un atacante podría descifrar la clave principal K, a partir
de cualquier clave de ronda Ki. La habilidad de obtener la clave a partir de cualquier
ronda de clave puede ser considerada como un sistema de defensa deficiente en contra
de ataques de canales laterales, donde un atacante puede recuperar una ronda de llave
fácilmente.
AES sería totalmente inseguro si no se realizan estas operaciones ya que cada una
contribuye a la seguridad de AES en una manera específica:
KeyExpansion: garantiza que se utilicen claves distintas entre las rondas, de lo
contrario, AES sería sumamente vulnerable a ataques laterales.
AddRoundKey: cifra el contenido. Sin esta operación, cualquiera podría descifrar
el texto cifrado sin la llave.
SubBytes: son operaciones no lineales que fortalecen el sistema de cifrado.
ShiftRows: cambia las otras columnas evitando ataques exhaustivos.
MixColumns: permite que los cambios en un solo byte afecten los bytes del
estado para prevenir ataques basados en texto no cifrado elegido.
181
©Clictic S.L.
Para poder ahorrar procesamiento, AES omite la función de MixColumns. Por su
característica lineal, el efecto puede ser cancelado en el último momento de la ronda al
combinar bits de una manera que no se dependa de su valor o el de la llave. Sin
embargo, SubBytes no puede ser invertido sin que el valor del estado se le comique a
AddRoundKey.
Para el proceso de descifrado, AES desdobla cada operación al tomar su función inversa:
la tabla inversa de SubBytes revierte la transformación de SubBytes, los cambios de
ShiftRow en la dirección opuesta, se aplica la inversión de MixColumns y el XOR de
AddRoundKey se mantiene sin cambios ya que el inverso de un XOR es otro XOR.
Para cifrar y descifrar con AES, se puede utilizar la librería de criptografía de Python.
182
©Clictic S.L.
GNU Privacy Guard: es una implementación del estándar OpenPGP que tiene la
capacidad de cifrar y firmar datos y comunicaciones. Además, posee un sistema de
manejo de claves y acceso a módulos para todo tipo de directorios de claves. GPG es
una herramienta de línea de comando.
Algunas distribuciones de Linux poseen GnuPG instalado y también puede ser utilizado
en Mac OSX y Windows.
Ejemplo de uso:
Primero se crea un archivo llamado “new.file” que debe ser cifrado. Se utiliza GPG para
realizar el siguiente comando:
Una vez creado el archivo “new.file.gpg”, está cifrado y ahora no se puede acceder a su
contenido.
183
©Clictic S.L.
8.5. COMENTARIOS SOBRE CLAVES PÚBLICAS Y PRIVADAS: SESIONES
Esto garantiza la integridad del mensaje pues la firma está enlazada matemáticamente
al mensaje para el cual fue creada. Por tanto, la verificación fallará en cualquier otro
tipo de mensaje, sin importar cuán original sea.
184
©Clictic S.L.
cifrado es semánticamente seguro, entonces existe una probabilidad mayor a ½ de que
un adversario que maneja un cifrado de cualquiera de los dos textos, no puede adivinar
cual está cifrado.
El cifrado de claves públicas y las firmas digitales son las bases del sistema EPKE. Para
que este sistema funcione correctamente se requiere que:
Cada parte dentro de la comunicación tenga su propio par de claves, en este
caso, la primera clave será la pública y la segunda será la privada.
Las claves públicas y privadas de cada participante debe estar relacionadas
matemáticamente a tal punto que la clave privada será usada para descifrar una
comunicación enviada utilizando una clave pública y viceversa, como ocurre con
el caso del sistema de cifrado RSA.
La clave privada debe mantenerse oculta y en manos de su dueño original. Sin
embargo, la llave pública puede estar disponible en cualquier lugar, tal y como
ya se ha mencionado anteriormente.
Firmas digitales
El objetivo de una firma digital es demostrar que un mensaje procede de un punto en
específico y tiene un emisor cuya identidad nadie puede negar y que a su vez, este
tampoco puede negar haber enviado la información.
Autoridad de certificados
Para que un sistema de cifrado por claves públicas como EPKE sea suficientemente
seguro, es necesario utilizar un “guardián” de claves públicas y privadas. De otra forma,
cualquiera podría crear pares de claves y utilizarlas como si viniesen de la fuente real de
la información. Es por esto que la autoridad de certificados es el sistema que puede
emitir estas claves públicas y privadas, certificando así las claves públicas.
185
©Clictic S.L.
8.5.4. CLAVE DE SESIONES
Es una clave simétrica de uso único empleada para cifrar todos los mensajes dentro de
una sesión de comunicación. También se conoce como clave de cifrado de contenido
(CEK) o clave de cifrado de tráfico (TEK).
❏ Generación de claves:
1) Se seleccionan dos números primos distintos p y q, que por motivos de
seguridad, deben ser elegidos aleatoriamente y deben ser de similar magnitud,
pero diferir en longitud por unos cuantos dígitos.
2) Se calcula n = pq. En este caso n es usado tanto para el cifrado de claves públicas
y privadas. La longitud suele ser expresada en bits.
3) Se calcula λ(n) = lcm(λ(p), λ(q)) = lcm(p − 1, q − 1) donde λ es la función de
Carmichael y lcm es el mínimo común múltiplo. El valor resultante debe
mantenerse en privado.
4) Se elige un número entero e para 1 < e < λ(n) y gcd(e, λ(n)) = 1, donde e y λ(n)
son números primos entre sí.
5) Se determina d como d ≡ e−1 (mod λ(n)), donde d es el inverso multiplicativo
modular de e (mod λ(n)). El resultado de e se comparte como exponente de
clave pública, mientras que d es el exponente de la clave privada.
186
©Clictic S.L.
❏ Distribución de claves: si A quiere enviarle una información a B utilizando RSA, B
debe transmitir su clave pública (n, e) a través de un canal fiable, no necesariamente
secreto. La clave privada de A (d) nunca se comparte.
𝑐 ≡ 𝑚𝑒 (𝑚𝑜𝑑 𝑛)
187
©Clictic S.L.
9. AUTENTICACIÓN
En esta unidad se abordan los conceptos de identificación y autenticación desde el
contexto de las comunicaciones por la red. Se explican los métodos de cifrado actuales
y protocolos utilizados en estos procesos así como su funcionamiento.
Debido a los casos en los que ningún vecino pueda alertar cuando ocurren
eventualidades peligrosas, surge la necesidad de otros mecanismos que distingan entes
autorizados de los no autorizados. Por este motivo, la seguridad informática se basa en
el acceso controlado: se autoriza a alguien para ejecutar alguna acción sobre algo. Para
que este control de acceso funcione, es preciso verificar y asegurarnos de quién es ese
“alguien”. En esta sección se introducen los conceptos de autenticación y el proceso de
confirmar una identidad.
Con el paso del tiempo los ordenadores han ido reemplazado muchas interacciones
físicas por otras electrónicas, pero aun así un sistema informático no puede emplear los
métodos que se utilizan en la interacción cara a cara. En su lugar, utilizan datos para el
reconocimiento de personas o usuarios. La acción de determinar quién es alguien
realmente consta de dos pasos separados:
1. Identificación: es el acto de afirmar quién es alguien.
2. Autenticación: es el acto de confirmar y comprobar que esa afirmación es
correcta, es decir, que la persona es quien dice ser.
Estamos hablando desde una perspectiva donde una persona busca ser reconocida y
por ello se utiliza el término “persona”, por simplicidad. Realmente, el término correcto
es “sujetos”, que incluye personas, procesos informáticos, programas en ejecución,
conexiones de red, dispositivos y entidades activas similares.
Ambos conceptos son confundidos muy a menudo. Las identidades, como pueden ser
los nombres, generalmente son públicas y no están protegidas. Sin embargo, la
autenticación tiene que permanecer protegida. Si la identidad de una persona es
pública, cualquier otra puede aprovechar esa información y pretender ser esa persona.
No obstante, la distinción entre el impostor y la persona real es el proceso de
autenticación.
188
©Clictic S.L.
9.1.2. AUTENTICACIÓN VS IDENTIFICACIÓN
Como mencionamos anteriormente, las identidades pueden ser conocidas, predecibles
e incluso adivinables. Al enviar un e-mail, implícitamente se envía una identificación (ID)
de correo electrónico para que el destinatario pueda responder el mensaje. Al dejar un
comentario en una página web, aunque sea bajo un pseudónimo, se crea una
identificación que representa a quien lo ha hecho y de esa forma puede enlazar sus
diferentes publicaciones. La identidad de las personas es mucho más que solo un
nombre: número de tarjeta de débito, número de cuenta bancaria, dirección de correo
electrónico, etc. Son todos aquellos métodos por los que personas y procesos
identifican a otras.
Existen identificaciones que son fáciles de adivinar ya que muchos lugares asignan la
identificación de usuario con el apellido correspondiente y la primera inicial, o tres
iniciales, o cualquier patrón que terceras personas pueden predecir con facilidad. En
muchas ocasiones, a la hora de realizar transacciones online, se utiliza el correo
electrónico como identificación para que sea fácil recordarlo. Por otro lado existen
otros servicios que identifican mediante un número de teléfono.
Al tener que recordar tantas cuentas para los diferentes servicios que puede utilizar un
usuario, generalmente prefieren sitios que los identifiquen con cosas con las que estén
familiarizados. Pero esto implica que utilizarlas con frecuencia permite que otras
personas puedan llegar a conocerlas. Es por ello que muchas personas podrían
fácilmente suplantar la identidad de otra al presentar uno de sus identificadores
conocidos.
Una vez obtenido el ID del correo, todo lo que Kernell tuvo que hacer fue hacerse pasar
por Palin. Fingió haber olvidado la contraseña, a lo que Yahoo le pidió que respondiera
las preguntas de seguridad que Palin había establecido al crear la cuenta: su fecha de
nacimiento (encontrada en Wikipedia), código postal (conocimiento público,
especialmente porque Palin había llamado la atención por no residir en la mansión
oficial del gobernador) y lugar dónde había conocido a su esposo (en la secundaria, ya
que parte de su biografía circulaba durante la campaña). Con esas tres respuestas,
Kernell pudo cambiar la contraseña del correo a “popcorn” y de ahí en adelante, no
sólo era Palin ante el conocimiento de Yahoo, sino que la verdadera Gobernadora no
podía acceder a su cuenta al no conocer la nueva contraseña.
190
©Clictic S.L.
incremento de diversos usuarios de red y la existencia de diferentes métodos de
acceso, se combinan para crear un entorno que pone a prueba las capacidades de AAA.
AAA tiene un papel fundamental que cumplir en cada una de las formas en las que se
accede a una red. Algunas tecnologías emergentes como Network Access Control (NCA,
Control de Acceso a La Red) extienden a AAA, incluso hasta el acceso Ethernet
corporativo que es conocida históricamente como la red más “confiable” que fijaba el
estándar de seguridad. Los puntos de anclaje o hotspots inalámbricos necesitan AAA
para obtener seguridad, las redes segmentadas lo requieren para reforzar la integridad
de la organización a pesar de su separación física y por último, el acceso remoto de
cualquier tipo utiliza AAA para la autorización de usuarios remotos.
Muchos de los administradores de redes consideran que el origen de AAA coincide con
el desarrollo del protocolo RADIUS (Remote Authentication Dial-In User Service; Servicio
de Autenticación Remoto para Usuario Entrante). Este protocolo fue desarrollado a
principios de 1990 por Livington Enterprises y se convirtió en un estándar de Internet a
través del IETF en 1997. Actualmente es el protocolo más ampliamente aceptado.
191
©Clictic S.L.
Punto de Decisión sobre Políticas (servidor AAA) (PDP): es el núcleo de decisión
de AAA, toma la decisión final sobre el acceso a la red. Se encarga de recoger la
solicitud de acceso del cliente a través del PCP y consulta cualquier PIP relevante
para obtener información necesaria para tomar la decisión de acceso. Puede
enviar autorizaciones específicas al PCP que aplican configuraciones o
restricciones al tráfico de red del cliente.
Sistema de Contabilidad e Informes: el seguimiento del uso que hace un usuario
en la red es una de las mejores características de AAA, ya sea en un sistema
dedicado o construido como parte de un PDP. Puede decirle quién se conectó a
la red, desde dónde y a qué se le otorgó acceso.
Paso 2: el PCP envía la información recopilada al PDP. A veces el PCP no puede ver la
información de identidad proporcionada, sino que retransmite la información
directamente al PDP.
192
©Clictic S.L.
Paso 3: el PDP consulta cualquier PIP configurado para obtener información sobre el
cliente y se asegura de que la credencial proporcionada por el cliente es válida. En este
ejemplo, el PIP es un directorio LDAP.
Paso 8: el PCP aplica el perfil de autorización aprendido del PDP y envía el mensaje de
"autenticación exitosa" al cliente. También puede configurarse para enviar información
al sistema de Responsabilidades.
193
©Clictic S.L.
existen varios problemas que incluyen el tener que lidiar con falsos positivos y falsos
negativos, el costo y la conveniencia. En el caso de la autenticación basada en redes, los
métodos más importantes hacen uso de claves cifradas y algo que el individuo sabe,
como puede ser una contraseña.
La autenticación también puede ser clasificada por sus usos; tanto para una
autenticación mutua como para una autenticación unidireccional. En este caso, la
clasificación se enfoca en las personas y sus interacciones con la red.
194
©Clictic S.L.
necesita que sólo el destinatario obtenga el mensaje y no lo haga alguien o algo más.
Por ejemplo, los correos electrónicos tienen como principal beneficio que no es
necesario que el emisor del mensaje y el receptor estén en línea al mismo tiempo. En su
lugar, el mensaje se envía al buzón electrónico del receptor, y permanece guardado
hasta que este se encuentre disponible para leerlo.
El encabezado del mensaje debe estar a la vista, para que pueda ser manipulado por el
protocolo de almacenamiento y redireccionamiento: SMTP o el X.400. Aunque en
ocasiones, es deseable que se restrinja el acceso a dicho protocolo en caso de no
confiar en él.
9.2.3. CIFRADO
Además de las clasificaciones vistas anteriormente, existe otro tipo que posiblemente
es la más importante y separa los métodos de autenticación que se emplean en la
gestión correcta de claves cifradas. Las claves de cifrado se utilizan para cifrar/descifrar
datos o para crear/verificar firmas digitales. La distribución o establecimiento de claves
de forma segura constituye uno de los problemas más complejos en el mundo de la
criptografía. El ciclo de vida asociado a estos materiales de cifrado comprende la
inicialización, la distribución y la cancelación de claves y se le conoce como gestión de
claves. En este apartado se hablará sobre ello, con particular interés en la distribución
de claves.
9.3.1. PROTOCOLO
Según estándar IEEE 802.11, la autenticación de clave compartida funciona de la
siguiente manera:
El cliente inalámbrico que comienza la autenticación envía una trama que se
basa en una aserción de identidad y una solicitud de autenticación.
El nodo inalámbrico de autenticación responde con un texto de desafío al nodo
inalámbrico que inicia la autenticación.
195
©Clictic S.L.
El nodo inalámbrico de inicio de autenticación responde al nodo inalámbrico de
autenticación con el texto de desafío cifrado y una clave de cifrado que se deriva
del secreto de autenticación de clave compartida.
Si el nodo inalámbrico de autenticación determina que el texto de desafío
descifrado coincide con el texto de desafío enviado originalmente en el segundo
marco, el resultado de autenticación es positivo. El nodo inalámbrico que
autentica envía posteriormente el resultado de la autenticación. Este método de
autenticación no escala bien en una red de gran infraestructura ya que el
secreto de autenticación de clave compartida debe distribuirse manualmente.
Además, la autenticación de clave compartida no es segura pues la clave
compartida se almacena en texto claro y por tanto no se recomienda su uso.
La principal vulnerabilidad de este sistema viene dada por faltas del usuario,
generalmente. Puede ser bien por saltarse los protocolos de seguridad y no darle
importancia al salvaguardado de la clave secreta, por perderla o porque la roben.
También ocasiona problemas en redes grandes debido a la gestión de claves, tal y como
se mencionó anteriormente. Es problemático tener que generar claves constantemente
y distribuirlas a los diferentes nodos ya que se necesita tener plena confianza en la red
para enviar las claves en cada regeneración de la misma. Además de que resulta
complejo asegurar que la clave sea lo suficientemente segura en cada generación.
Estos problemas generados en el intercambio seguro de claves fueron los que dieron
paso a que los criptógrafos intentaran buscar una solución. El trabajo arduo de
investigadores como Martin Hellman, Whitfield Diffie y Ralph Merkle ayudó a la
creación del cifrado de claves públicas.
Se basa en utilizar un grupo multiplicativo de módulos enteros, que sin conocer las
claves privadas de las partes, presenta una tarea matemáticamente compleja para un
tercero que esté intentando descifrar el mensaje. La idea general implica que dos partes
intercambien números y realicen cálculos simples para obtener un número común que
sirva como clave secreta. Las partes no tiene por que saber de antemano cuál es el
196
©Clictic S.L.
número secreto final, pero tras realizar algunos cálculos llegan a un valor que solo ellos
conocen y que pueden utilizar para diversos fines, como la identificación y como clave
secreta para otros métodos criptográficos.
197
©Clictic S.L.
A pesar de que es un sistema de creación de claves asimétricas robusto, este modelo no
posee un método de autenticación que verifique que Alice y Bob sean quienes afirman
ser. Es lo hace vulnerable a ataques de Man in the Middle, visto en otras unidades. Para
lidiar con esto se utilizan los Centros de Distribución de Claves (Key Distribution System;
KDS).
Consiste en una forma de cifrado simétrico que, al generar una clave única de tipo de
ticket, permite el acceso de dos o más sistemas a una red para establecer una conexión
segura en la que los datos se comparten y se transfieren. KDC es el servidor principal
que se consulta antes de iniciar la comunicación. Generalmente se emplea en redes
más pequeñas donde las solicitudes de conexión no abruman al sistema, ya que su
infraestructura es centralizada. En vez de utilizar el cifrado de clave estándar, se emplea
este método porque la clave es generada cada vez que se solicita una conexión, lo que
minimiza las posibilidades de ataque.
Cada uno de los usuarios cuenta con una clave de cifrado privada y se obtiene mediante
el KDC. A los sistemas registrados en un KDC y al conjunto de identificadores
individuales se les conoce como dominio. El ticket de servicio cifrado se encarga de
almacenar las credenciales de un usuario mientras que el servidor de bases de datos se
encarga de descifrarlo para validar que las credenciales tengan relación a un inicio de
sesión de usuario autorizado para el acceso. A medida que exista un ticket de servicio
válido en la red, la instancia de IBM® Informix confirma el acceso del usuario que inició
la sesión al DBMS. Estas son las características de seguridad con las que cuentan estos
servicios:
Los tickets de servicio existen en la red durante un periodo limitado.
Solamente el cliente y el servidor pueden descifrar estos tickets, por lo que los
datos se encuentran protegidos si se interceptan los tickets desde la red.
La entrada del nombre de usuario y contraseña está limitada a la sesión de
inicio, lo que reduce el riesgo de una posible interceptación de credenciales de
texto en claro.
El KDC aloja un repositorio central de identificadores individuales para que sea más
simple la administración de los ID de usuarios. No obstante, la desventaja de esta
descentralización es que genera un solo punto de ataque a los piratas informáticos.
199
©Clictic S.L.
Mensaje B: Ticket-Granting con la dirección de red del cliente, el ID de
cliente, el Client/TGS session key y el período de validez, cifrado
primeramente con su respectiva clave secreta del TGS y luego con la
clave secreta del usuario.
5. Una vez que el cliente comience a recibir los mensajes, se procede a descifrar el
mensaje A para poder obtener el client/TGS session key, que se utilizará en
todas las comunicaciones futuras con el TGS. El cliente descifra por partes el
mensaje B con la clave secreta que le corresponde para poder ubicar el TGT.
Una vez realizado todo lo anterior el cliente ya puede comenzar a autenticarse
contra el TGS.
200
©Clictic S.L.
9.7. VALIDACIÓN DE IDENTIFICACIÓN DE CLAVE PÚBLICA.
La tecnología de clave pública permite gestionar de forma apropiada los riesgos para
que puedan ocurrir con una total garantía las transacciones electrónicas que se realicen
en las redes abiertas e inseguras como Internet. Hace referencia a una tecnología
fundamental para:
Mejorar todos los procesos de negocio, la gestión de errores, optimizar tiempos
y reducir los costos.
Mejorar la atención de los clientes y los usuarios para que se sientan satisfechos,
teniendo la posibilidad de relacionarse desde cualquier sitio y en cualquier
instante.
Un PKI o infraestructura de clave pública ofrece varios servicios que reducen de manera
radical los riesgos de seguridad presentes en los procesos de negocio. A continuación,
se muestran estos servicios:
La autenticación electrónica se encarga de garantizar la identidad y los atributos
de una entidad sin equivocación, es decir, ¿quién es y qué es? Teniendo en
cuenta que la identidad aporta un nombre de una máquina o una persona, los
atributos ofrecen la información que tiene relación con su capacidad para
ejercer como un profesional capacitado, la fecha de nacimiento y el límite de
crédito, entre otros.
La integridad de datos es el servicio que permite la identificación de un cambio
que se hubiese efectuado de forma accidental o intencionalmente, mientras los
datos permanecen almacenados o son transferidos por redes telemáticas. La
base fundamental para la firma electrónica son los servicios de integridad y
autenticación, posibilitando una comparación con la manuscrita y logrando no
tener que utilizar el papel.
El servicio de confidencialidad permite la protección de los datos electrónicos
(comunicaciones y ficheros), mediante la aplicación de mecanismos de
autenticación que están basados en PKI, controlando el acceso.
Autoridad de Certificación:
En una PKI, la emisión de certificados se comparte entre la entidad responsable de
solicitar la ejecución de Autoridad de Registro (RA) y la Autoridad de Certificación (CA).
La RA se encarga de obtener las tareas de recepción de todas las solicitudes de
certificación y decisión de aprobación o denegación delegada por la CA. También puede
hacer la solicitud de una revocación de un certificado que se haya emitido antes por la
CA.
Autoridad de Validación:
Es quien proveerá la prueba de la vigencia (certificado no revocado o revocado) de un
certificado digital acordado en un instante determinado, responsabilizándose de dichas
respuestas.
El Directorio:
Componente que realizar las publicaciones de las listas de revocación y los certificados
que han sido generados por la CA. Los usuarios pueden obtener el certificado que
deseen o la lista de revocación vigente mediante una consulta al directorio. Los
202
©Clictic S.L.
directorios también, pueden almacenar otro tipo de datos como el teléfono, la
dirección de correo electrónico del usuario, el nombre del usuario, etc.
Entidades Finales:
Hace referencia a los sistemas o personas que posean un certificado digital. Se
diferencian de las no finales en que no pueden generar certificados para otras
entidades. También se pueden distinguir entre personas o grupos de personas y
sistemas. Los primeros dispondrán de certificados digitales para autenticación,
protección de datos o firma electrónica, mientras que los segundos contarán con
certificados digitales con el plan genérico de autenticarse de manera segura.
Validación
Fue desarrollado en 1984 por Ronald L. Rivest y Adi Shamir, en su informe Cómo
Descubrir a un Espía (How to Expose an Eavesdropper) donde presentan el protocolo en
el siguiente escenario hipotético:
“Dos ejecutivos –Anne y Bob-- que se pueden reconocer las voces mutuamente,
necesitan intercambiar claves. Para esto necesitan una línea segura de comunicación.
Todo el proceso de cifrado y descifrado es manejado automáticamente y los dos
ejecutivos solo son conscientes de sus propias voces.”
203
©Clictic S.L.
El informe define también a un espía como alguien que desea monitorizar la
comunicación entre dos partes sin modificar los datos y sin exponer su existencia.
Puede modificar el flujo de texto cifrado de cualquier forma (borrar, retrasar, sustituir o
insertar datos) con tal de que no cambie el texto plano recibido por las partes en en el
proceso de comunicación. En el contexto de los criptosistemas de clave pública, un
espía debe participar de forma activa en el protocolo de intercambio de claves para
considerarse exitoso; sin embargo, si pretende monitorizar la comunicación por un
periodo de tiempo largo, debe intentar comportarse tan transparente como sea
posible, ya que cualquier rastro que deje en el texto plano levantará sospechas.
Marco en este punto tiene la primera mitad de RCA, pero esto no es suficiente para leer
MA. Debe enviarle algo a Bob o finalizará la comunicación. Si Marco descifra la primera
mitad de RCA, lo cifra otra vez con CM y se la envía a Bob, este intentará descifrarla con
la clave “incorrecta” (su propia clave privada), obteniendo un mensaje sin sentido. Es en
ese momento cuando Marco se ve obligado a comportarse de manera no transparente
e inventa un nuevo mensaje, lo cifra con CB y le envía la primera mitad a Bob. De forma
similar, deberá reemplazar MB en el cuarto paso. Cuando descubre los verdaderos
valores de MA y MB en el quinto y sexto paso, ya es demasiado tarde para
intercambiarlos por los mensajes que ya envió. Como consecuencia, cualquier intento
de Marco de leer MA y MB cambiará completamente la comunicación entre Anne y Bob.
204
©Clictic S.L.