Information">
Nothing Special   »   [go: up one dir, main page]

Gestión de La Seguridad Informatica en La Empresa

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 204

1

©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.

Es preciso tener en cuenta el concepto de seguridad informática para no confundirlo


con seguridad de la información. La seguridad informática protege los equipos y la
infraestructura tecnológica de la información, mientras que la seguridad de la
información se encarga de proteger los datos sensibles de una empresa como pueden
ser: documentos, bases de datos, correos electrónicos, imágenes, sitios web, etc.

1.1.1 ACTIVOS DE INFORMACIÓN


Todos aquellos recursos que representan la parte fundamental para el correcto
funcionamiento y que contribuyen a la productividad de una empresa, son conocidos
como activos de la información. Estos activos deben protegerse mediante una correcta
gestión de seguridad y se clasifican en activos de información pura y activos físicos, los
cuales comprenden varios grupos como se ve a continuación:
 Activos de información pura
o Digitales
 Bases de datos
 Copias de seguridad
 Personales
 Legales
 Financieros
o Activos Tangibles
 Personales
 Financieros
 Legales
 Llaves de oficina
 Otros medios de almacenamiento
o Activos Intangibles
 Marca
 Secretos comerciales
 Imagen corporativa
 Patentes
 Conocimientos físicos
 Licencias
o Software de aplicación

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

1.1.2. IMPORTANCIA DE LA SEGURIDAD DE LA INFORMACIÓN


La seguridad de la información es de suma importancia para las empresas ya que estos
sistemas de información están expuestos a numerosas amenazas constantemente y
pueden ser susceptibles a ataques como sabotaje, espionaje o fraude mediante
hackers, virus informáticos o, incluso, accidentes voluntarios o involuntarios desde la
propia empresa. Por otra parte hay que tener en cuenta las pérdidas que se pueden
ocasionar por consecuencias de desastres naturales.

Un ejemplo de lo mencionado anteriormente es el ataque a Yahoo! en 2013 donde la


base de datos fue vulnerada y los atacantes obtuvieron información de unas tres mil
millones de cuentas. Modificaron las cookies e introdujeron enlaces fraudulentos en los
resultados de búsqueda de la compañía. También accedieron a datos personales y
preguntas y respuestas no encriptadas. La información sobre tarjetas o cuentas
bancarias no se vio afectada debido a que las contraseñas estaban cifradas en la base
de datos.

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.

1.2.1. FASES DEL CICLO DE VIDA DE LA SEGURIDAD DE LA INFORMACIÓN


❏ Evaluación
Durante la fase de evaluación se analizan los riesgos sobre los aspectos de la empresa
que presenten más vulnerabilidades, se realizan pruebas de intrusión al sistema para
que la evaluación sea lo más objetiva posible y a continuación se definen una serie de
pasos que se deben seguir para prevenir los posibles ataques.

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.

1.3. CONFIDENCIALIDAD, INTEGRIDAD Y DISPONIBILIDAD. PRINCIPIOS DE LA SEGURIDAD DE


LA INFORMACIÓN

1.3.1. PRINCIPIOS DE LA SEGURIDAD DE LA INFORMACIÓN


La confidencialidad, la integridad y la disponibilidad son los principios básicos de la
seguridad de la información. Gracias a ellos la empresa puede mantener un nivel
elevado de rentabilidad y competitividad que permitan alcanzar sus objetivos.

Confidencialidad

Seguridad
de la
información

Integridad Disponibilidad

Los tres pilares de información

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.

Se presentan en un documento formal que cumple con las especificaciones de la


organización. A continuación se indica a modo de ejemplo cómo se pueden establecer
los responsables y las actividades específicas en un documento de este tipo.

Se entenderá por comisión al grupo integrado por la Gerencia y personal administrativo,


el cual será convocado para fines específicos como:
 Adquisiciones de hardware y software.
 Establecimiento de estándares, en hardware y software.

Definición de
necesidades

Definición de
acciones P.S. Implementación

Auditoría de
seguridad

Políticas de seguridad de la información

1.5. TÁCTICAS DE ATAQUE


El concepto de ataque, en términos de la informática, se define como las actividades
que llevan a cabo una o más personas con el objetivo de afectar un sistema informático
o de red y dañar la integridad de la información del objetivo atacado. Se centran en la
búsqueda de las debilidades del software, hardware o incluso personas con acceso a
dicha información para intentar quebrantar las barreras de protección.

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.

1.5.1. TIPOS DE TÁCTICAS DE ATAQUE


A continuación se destacan las tácticas de ataque más reconocidas:

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.

Ingeniería social inversa:


Consiste en la creación de perfiles falsos para atraer a los usuarios de tal forma que el
intruso finja ser un agente especializado en cierto tema o brinde soporte técnico para
que la víctima se confíe y le proporcione la información para la supuesta solución del
problema.

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.

Denial of Service (DoS):


El ataque de denegación de servicio se basa en negar el acceso a un recurso a los
usuarios legítimos mediante la saturación de los puertos que cuentan con un gran flujo
de información provocando la sobrecarga del servidor.

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 de fuerza bruta:


Los ataques por fuerza bruta se basan en la introducción de caracteres continuamente
hasta descubrir la contraseña. Es un método de prueba y error que usan los programas
de descifrado de datos y para conseguirlo pueden utilizar hardware estándar de
craqueo.

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.

Ataques Drive-by download:


Consisten en programas que descargan los usuarios sin ser conscientes de la amenaza y
por tanto no involucran una participación activa del intruso. Se ejecutan cuando el
usuario hace clic en un enlace y para evitarlo se instalan los softwares de filtrado web.

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.

1.6.1. CLASIFICACIÓN DE LOS HACKERS


 Los Black hat hackers o hackers de sombrero negro:
Se dedican a la búsqueda de debilidades de cualquier sistema de información de
manera ilícita para obtener compensación monetaria, generalmente.

 Los Gray hat hackers o hackers de sombrero gris:


Se dedican a realizar actividades lícitas e ilícitas y por ello se caracterizan por
permanecer en ambigüedad.

 Los White hat hackers o hackers de sombrero blanco:


Se dedican a la búsqueda de vulnerabilidades existentes en el sistema para corregirlas y
así garantizar la confidencialidad de la información. Es decir, se encargan de la
seguridad de los sistemas operativos y aplicaciones así como la protección de los datos
sensibles.

1.7. ÁRBOL DE ATAQUE


Es una herramienta que simula las posibles acciones que puede llevar a cabo un
atacante y las medidas que puede utilizar la empresa para contrarrestarlo. Esto se
realiza a través de un diagrama que manifiesta cuáles son las fuentes de ataque a las
que se expone un activo de información y permite describir gráficamente un posible
escenario al que se enfrentaría la compañía ante esta situación.

1.7.1. ANÁLISIS DEL ESCENARIO


Para diseñar el árbol de ataque es preciso examinar los posibles escenarios en los que
se podría encontrar la empresa y así abarcar las perspectivas de los atacantes. Para
preparar este plan se describen una serie de fases:

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.

Fase 2 - Determinación del objetivo estratégico.


En esta fase el atacante define el objetivo estratégico del ataque basándose en la
información recopilada.

Fase 3 - Asignación de recursos.


Durante esta fase se analiza y se realiza un inventario de los recursos que se necesitan
en la ejecución del ataque para deducir la rentabilidad o dificultad de su realización. Y
dependiendo de los resultados se modifica el objetivo o se renuncia la ejecución del
ataque.

Fase 4 - Determinación de los objetivos tácticos.


Durante esta fase se establecen los objetivos a los cuales se dirige el ataque una vez
definidos los sectores que presentan mayores vulnerabilidades.

Fase 5 - Elaboración de los planes tácticos.


En esta fase se elaboran los planes tácticos que indicarán la forma y el momento en el
que serán ejecutados los ataques y los medios con los que serán llevados a cabo.

Fase 6 - Ejecución del ataque.


En esta etapa se lleva a cabo el ataque previsto y una vez ejecutado, el atacante podrá
analizar los resultados para corregir y perfeccionar sus técnicas.

Fase 7 - Análisis del resultado del ataque.


Por último, en esta fase se analizan y se evalúan los resultados del diagrama para poder
corregir y mejorar las políticas de seguridad establecidas.

1.7.2. ELEMENTOS DEL ÁRBOL DE ATAQUE


Para poder obtener una comprensión más amplia del diagrama del árbol de ataque se
describen a continuación los elementos que lo conforman. Contiene una estructura en
forma de árbol compuesta por:

 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.

1.8. LISTA DE AMENAZAS PARA LA SEGURIDAD DE LA INFORMACIÓN


Aquellos eventos que puedan provocar modificaciones, alteraciones o pérdida de la
información de la empresa para perjudicarla, son conocidos como amenazas. Estas
pueden ser internas o externas y se clasifican en:

 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.

1.10. VULNERABILIDADES EN SISTEMA WINDOWS


Al ser Windows el sistema operativo más utilizado por los usuarios hoy en día,
representa un objetivo potencial para realizar ataques informáticos. Se han detectado
fallos en navegadores web como puede ser Internet Explorer, en lenguajes de
programación como SQL que se utiliza en las Bases de datos y también en algunos
servidores como IIS. A continuación de describen algunas de las vulnerabilidades más
relevantes que se han encontrado y que han afectado al sistema:

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.

1.11. VULNERABILIDADES EN APLICACIONES MULTIPLATAFORMA


En el ámbito de la informática, se utiliza el concepto de plataforma para hacer
referencia a configuraciones lógicas o físicas que soportan otros módulos o programas.

1.11.1 PLATAFORMAS HARDWARE


Se conocen como plataformas hardware aquellas arquitecturas que permiten la
instalación de módulos y que ayudan en la computación de datos. El software necesario
para su funcionamiento no precisa de intermediarios (sistemas operativos) para
trabajar con el hardware. A este tipo de software se les conoce como bare metal o de
bajo nivel y algunos sistemas operativos como Mac, Windows, Linux y Andorid corren a
este nivel. Un ejemplo de estas plataformas es una tarjeta madre que permite la
instalación de otros componentes como discos duros o tarjetas de memoria.

Plataforma hardware

1.11.2. PLATAFORMAS SOFTWARE

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

1.11.3. APLICACIONES MULTIPLATAFORMAS


Las aplicaciones multiplataforma son aquellas que permiten correr sobre ellas distintos
programas sin presentar problemas de compatibilidad. Son muy útiles a día de hoy en el
ámbito digital y se utilizan lenguajes de programación de desarrollo de alto nivel para la
creación de estos programas. Ejemplo de esto son las aplicaciones que se desarrollan en
Java y que pueden ser ejecutadas en Windows, Linux, MacOs y en plataformas móviles.
Actualmente existen muchísimas apps desarrolladas en Java y HTML5 que son
ejecutadas en un rango bastante amplio de plataformas.

1.11.4. VULNERABILIDADES DE LAS APLICACIONES MULTIPLATAFORMA


Debido al despliegue de las aplicaciones multiplataformas pueden ocurrir graves
problemas de seguridad de la información.
En la actualidad empresas como Google, Facebook, Microsoft y Netflix emplean una
combinación de HTML5 y JavaScript para llevar sus servicios a la mayor cantidad de
plataformas posibles ya que son muy populares por su capacidad multiplataforma del
lenguaje. Ambas tecnologías están dominando el desarrollo para aplicaciones móviles
tal y como se refleja en un informe Gartner donde se indica que más de un 50% de las
apps móviles están basadas en ellas.

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

Vulnerabilidades en aplicaciones multiplataforma

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.

1.12. VULNERABILIDADES EN SISTEMAS UNIX Y MAC OS

1.12.1. SISTEMA OPERATIVO UNIX


UNIX con un conjunto de sistemas operativos multitarea que forman una familia y
provienen del sistema AT&T Unix cuyo desarrollo lo iniciaron Ken Thompson y Denni
Ritchie en los años 1970.

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

1.12.2. SISTEMA MAC OS


La compañía Apple es quien se encarga de desarrollar los sistemas operativos de
interfaz gráfica Macintosh, diseñado para los ordenadores Macintosh desde 1984. A
partir del 2001 la arquitectura comenzó a basarse en Unix con el cambio de Mac OS X.
Esto permitió que gran parte de los retos técnicos de Mac clásico fueran eliminados.

Vulnerabilidades del Sistema Mac OS.


Hasta la fecha, se han registrado más de 1900 vulnerabilidades para los equipos Mac.
Un par de ellas son:
 Mac OS X Local Javascript Quarantine Bypass
 FreeBSD Security Advisory – FreeBSD-SA-17:09.shm

1.13. BUENAS PRÁCTICAS Y SALVAGUARDAS PARA LA SEGURIDAD DE LA RED


La seguridad en las redes se basa en el establecimiento de buenas prácticas, estrategias
y políticas con el objetivo de evitar accesos no autorizados ni usos inadecuados de la
red informática. Para realizar este control se utiliza la asignación de identificaciones.
Hay ciertos parámetros que son necesarios para conseguir el resguardo de la
información y por ello la autenticación consiste en verificar y validar la identidad de un
determinado usuario. Normalmente se emplean contraseñas pero a medida de avanza
el desarrollo de la seguridad en las redes se incluyen factores como huellas dactilares y
reconocimiento de iris, así como otros más simples como números de teléfono o
tarjetas de crédito.

A continuación se mencionan varias acciones que se pueden llevar a cabo para


mantener la seguridad de la red:
 Métodos para protección de datos dirigidos a usuarios:
 No introducir contraseñas en dispositivos ajenos o de poca confiabilidad.

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.

 Métodos para la protección de la red.


 Instalar listas de control de acceso.
 Limitar el número de puertos accesibles.
 Utilizar cortafuegos o Firewall.
 Asegurarse de que los cortafuegos reenvíen y filtren paquetes.
 Utilizar detección Anti- Sniffers.
 Instalar software Wrapper para filtrar acceso a la red.

1.14. RECOMENDACIONES PARA LA SEGURIDAD DE SU RED


Comprobar y verificar que todo el sistema de seguridad de una empresa o compañía
funcione de manera óptima requiere de un buen esfuerzo y cantidad de trabajo ya sea
un sistema pequeño o uno muy elaborado. A continuación se presentan una serie de
recomendaciones a tener en cuenta:

Mantener una vista holística de todo el sistema de redes:


Toda persona que se encargue de la seguridad de la red debe tener una visión general,
detallada y comprensible de la misma. Así como el conocimiento de todas las normas
para los distintos tipos de usuarios, el personal, los equipos, los programas que se
utilizan y las entradas y salidas a la red. Esto facilita la detección de cualquier fallo o
vulnerabilidad y permite su corrección y/o mejora sin tener que interrumpir el flujo
habitual de trabajo de la empresa. También ayuda a prevenir el mayor número de
ataques posible y permite que el sistema siga funcionando correctamente.

No perder la visión detallada de cada dispositivo en tu red:


Además de una visión general, es muy importante tener en cuenta cada dispositivo en
específico, su configuración, función y estado para ayudar a mantener esa visión
holística ya que todo debe funcionar como un conjunto e independientemente a la vez.
Clasificar la información de forma entendible y conocer los programas y dispositivos
antes de implementarlos puede ser muy útil; así como automatizar el sistema de
revisión de los dispositivos mediante las numerosas soluciones que ofrece el mercado
para facilitar esta tarea.

Mantener el sistema correctamente actualizado:


La mayoría de las soluciones del mercado ofrecen actualizaciones periódicas debido al
auge de las nuevas tecnologías y el avance de los atacantes al desarrollar nuevas
maneras de atacar los equipos. Sin embargo, hay que tener en cuenta que si cuentas
con un sistema diversificado donde intervienen distintos proveedores o funciones, es
posible que la compatibilidad entre estas actualizaciones se vea afectada. Si se realiza
con control de forma correcta, este problema puede preverse y así implementar
soluciones para poder mantener estas últimas actualizaciones.

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?

Asegurar un respaldo de los datos importantes de tu empresa:


Es una buena práctica realizar copias de seguridad de manera periódica incluso de
forma automática, ya que es muy muy importante tener una copia de toda la
información que es necesaria para el funcionamiento de la empresa, su actividad
normal y su reputación. Es recomendable tener un respaldo en la nube, e incluso, en
otras unidades externas a la red.

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.

Es a partir de los años 80 donde los computadores personales comienzan a protagonizar


un papel importante en el manejo y resguardo de la información; aunque muy pocos
estaban conectados a la red y lo más parecido a Internet en aquellos tiempos era la red
ARPANET, que usualmente era utilizada por instituciones educativas y militares.

El autor James P. Anderson, en su libro “Computer Security Threat Monitoring and


Surveillance”, propuso varias definiciones de políticas de seguridad debido a la
necesidad que surgía de estandarizar estas políticas. En él, define conceptos como
ataque y vulnerabilidad dentro de un marco de transmisión y resguardo de datos que
implican medios físicos, como el hardware y las redes, y lógicos, como la protección
contra software malicioso.

Estas políticas definidas en la década de los 80 se centraban en prevenir ataques desde


dentro de la propia organización y por ello era necesario determinar las restricciones de
uso de los terminales de trabajo y las restricciones de acceso a los directorios de la red
de trabajo.

Para llevar a cabo la correcta implementación de estas políticas, varias empresas


pertenecientes al sector de las telecomunicaciones introdujeron el concepto de
servicios de directorios orientados a las tecnologías de la información y a las redes de
computadoras. Gracias a esto, se creó la especificación X500, que define protocolos
para la accesibilidad de directorios en ordenadores conectados a la red. Un ejemplo de
estos protocolos es DAP, antecesor de LDAP.
Debido al creciente auge de Internet, hacia mitad de los años 90, hubo que replantear
las políticas de seguridad para contemplar nuevos escenarios con nuevas amenazas y
vulnerabilidades.

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.

Durante los años 2000-2010, las políticas de seguridad aumentaron y evolucionaron a


tal punto que a día de hoy es necesario contar con determinados dispositivos para
poder acceder a un determinado sistema así como utilizar llaves digitales cifradas.

Al surgir la tecnología Blockchain, se pueden establecer registros inmutables que están


distribuidos en diferentes ordenadores para crear una red de datos descentralizada.
Cómo estas redes no dependen de un computador centralizado con toda la
información, se reducen los riesgos de ataques en los que se pueda perder todos esos
datos.

En los siguientes apartados, se profundizará en la importancia de las políticas de


seguridad.

2.2. ¿POR QUÉ SON IMPORTANTES LAS POLÍTICAS?


Para reducir los riesgos de brechas en la seguridad y conseguir una área de trabajo
segura, es necesario seguir y cumplir de manera disciplinada las medidas que se
implementan con ese objetivo.

En el amplio mundo de Internet no basta con utilizar un antivirus o un cortafuegos para


proteger la integridad de los sistemas ya que existen los llamados “hackers” que utilizan
virus y campañas llamadas “Phishing” para hacerse con el control de dichos sistemas. Es
por ello, que es necesario seguir correctamente las políticas de seguridad para
resguardar la información sensible de la organización.

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.

Además de lo mencionado anteriormente, también existen los llamados ataques


ransomware, que son programas donde los hackers cifran los archivos de los equipos y
bloquean el acceso a ellos para pedir una suma de dinero o de lo contrario los eliminan
pasado un tiempo. Esto puede provocar pérdidas millonarias a la empresa y dañar su
imagen si no cuenta con un respaldo de la información.

26
©Clictic S.L.
Ataque ransomware, o secuestro de información

Todos estos escenarios son producto de un inadecuado uso de las medidas de


seguridad y por ello la insistencia de seguirlas y aplicarlas correctamente para mantener
los riesgos al margen y prevenir este tipo de amenazas.

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.

Las políticas de seguridad representan una visión de la compañía y su correcta


aplicación indica el orden y disciplina existente en dicha empresa; cualidades que
aportan una buena imagen y reputación tanto a la empresa como al personal.

2.3. QUÉ DEBE DE CONTENER UNA POLÍTICA DE SEGURIDAD


A finales del 2005 se publicó la norma ISO/IEC 27001, que especifica los requisitos que
debe cumplir un sistema de gestión de seguridad de la información. Primero, es
necesario comprender los retos a los que se enfrenta una compañía en la actualidad, ya
que la información representa un activo imprescindible y permite a las empresas ser
más eficientes, productivas y competitivas a la hora de satisfacer las necesidades de los
clientes. Es por ello, que las políticas de seguridad no se pueden trasplantar de
cualquier manera de una empresa a otra, ya que puede que no se ajusten a la realidad
de dicha organización.

A día de hoy, los riesgos y la amenazas crecen y evolucionan constantemente


constituyendo un desafío para los departamentos de seguridad, debido a la diversidad
de dispositivos y equipos electrónicos que pueden ser usados por el personal de la
empresa. Por tanto, la organización debe establecer e imponer ciertas normas para el
manejo de la información sensible.

A continuación se mencionan ciertos parámetros que debe seguir las políticas de


seguridad:

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.

La directiva empresarial debe incluir una declaración, dentro de la política, donde


ratifique su compromiso con el proceso de creación y revisión de forma periódica de
dichas políticas de seguridad para que estas cumplan con los requisitos de todas las
partes interesadas.

El documento debe admitir determinado grado de excepciones a procedimientos que


serán explicados de manera clara en un lenguaje comprensible para todos, de forma
que no dé lugar a confusiones.

La divulgación, alcance y evolución de la política deben ser comunicados no solo dentro


de la empresa sino que a todas las partes interesadas. Para ello, es necesario asignar
esta responsabilidad a un equipo que será el encargado de comunicar dicha
información y cualquier cambio con respecto a ella, incluyendo los objetivos y hasta qué
punto han sido cumplidos.

Se debe definir correctamente en el documento, la revisión periódica de la Política de


Seguridad de la Información por parte del propietario o la directiva de la empresa.
Se deben definir claramente los procedimientos para acceder a un recurso por parte de
los empleados. Ejemplos: políticas para prohibir el uso de sistemas de la empresa por
parte del personal, procedimientos para retirar dispositivos multimedia, procedimientos
para obtener permisos de acceso a la red, entre otros.

Se deben definir perfiles de seguridad de usuarios para restringir el acceso a


determinados dispositivos como servidores, cortafuegos, routers, estaciones de trabajo,
etc. Además, se deben definir estándares y procedimientos de bloqueo de estos
dispositivos en caso de que exista riesgo de brecha en la seguridad.

Se deben establecer contraseñas que NO:


 Sean fácilmente deducibles (querty, 1234, 0000, etc.)
 Sean iguales a los nombres de usuario del personal.
 Representen información personal que se pueda obtener mediante ingeniería
social (fecha de nacimiento, modelo de auto, dirección de domicilio.)

Se deben definir estándares de uso de correo electrónico con filtrado de determinadas


extensiones de archivos, con el objetivo de evitar virus informáticos. También se debe
prohibir el uso del correo electrónico de la empresa con fines personales o el uso del
correo personal en equipos 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.

Se debe establecer un sistema de detección de intrusos (NIDS, Network Intrusion Detect


System) para reportar movimientos de datos sospechosos dentro de la red del sistema.
Se deben realizar jornadas periódicas de capacitación al personal con relación a dichas
políticas de seguridad.

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

Ciclo de vida de las políticas de seguridad

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.

2.5. CÓMO CONFORMAR UNA POLÍTICA DE SEGURIDAD INFORMÁTICA


Existen varios factores que se deben tener en cuenta en el momento de conformar una
política de seguridad. El comité encargado debe seguir un procedimiento estricto para
que la política cubra virtualmente todas las necesidades de seguridad de la compañía.
También este comité será el encargado de discutir las inquietudes que existan en el
área de la información para poder abordarlas en el documento de políticas de
seguridad, teniendo en cuenta la visión de la empresa.

Los profesionales encargados de conformar dichas políticas, deberán tener en cuenta y


analizar las opiniones de los directivos sobre la definición de seguridad y deberán
presentar soluciones en un informe preliminar sin importar el nivel de conocimientos
que posean los directivos sobre el tema. Este documento será explicado ante la
directiva para señalar cuáles son los puntos que necesitan nuevas propuestas. Como se
puede deducir, este proceso requiere de cierto tiempo pero es necesario para crear una
política de seguridad realista y eficaz acorde con las necesidades de la empresa.

Por tanto, con lo mencionado anteriormente, se pueden establecer ciertos pasos


generales a seguir:

❏ 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.

❏ Legalidad: Es necesario estudiar los requerimientos legales y la legislación sobre


tratamiento de datos que aplica al territorio donde está situada la empresa. Esto resulta
de ayuda para crear un estándar de seguridad que también es actualizado
periódicamente para reducir los riesgos y exigirles a las compañías que lo mantengan.

❏ Utilizar la seguridad suficiente: El hecho de tener un nivel de seguridad excesivo


puede crear problemas y obstaculizar la operatividad y el buen funcionamiento de la
empresa. Por tanto, la política falla si la empresa no va a funcionar de manera adecuada
por un exceso de medidas de seguridad.

❏ Resumen ejecutivo: La política debe comenzar con un resumen de esta, donde


se indican los objetivos del documento de manera general. Debe señalar la razón por la
cual fue escrita, qué cubre y qué no cubre, así como especificar la autoridad que la
escribió y mencionar cualquier excepción a la política, en caso de que exista alguna.

❏ Alcance y aplicación: Seguidamente del resumen ejecutivo, el segundo párrafo


debe cubrir el alcance de la política y mencionar quién(es) (empleados, contratistas,
clientes, etc.) serán cubiertos por esta política; así como el tipo de sistemas operativos,
de comunicación, de redes, etc. que también se incluyen. Se debe indicar qué
empleados o departamentos deberán adherirse a la política y mencionar qué no está
cubierto por ella. En este fragmento se debe mencionar quién es responsable de
mantener esta política y hacia quien deberán dirigirse los cambios o peticiones de
excepciones. Se recomienda y es importante señalar una fecha (anual o semestral) para
revisar y realizar cambios en las políticas de seguridad.

❏ La política: Cuando se comienza a escribir la política se debe indicar por qué es


necesaria y se deben añadir puntos como “Evitar que los activos de la compañía san
destruidos o liberados”, “para asegurar la confidencialidad o integridad”, etc. En estos
párrafos se deben definir los términos usados a través de la política como “Sistemas de
Información” (computadores, redes de trabajo, servidores, etc.).

❏ Roles y responsabilidades: Las responsabilidades de los distintos departamentos


y personas dentro de la empresa es uno de los primeros temas necesarios a especificar.
Se definen dos tipos de responsabilidades:

❏ Responsabilidades organizativas: Son las responsabilidades de los cargos como


Director del Departamento de Información, Vicepresidencia de Sistemas de Seguridad
de Información, Director del Departamento de Seguridad de la Información, Auditor
Interno, etc.

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.

❏ Conformidad: En este apartado se deben explicar las penas a las que se


enfrentan aquellos empleados que no cumplan con sus responsabilidades en
conformidad con la política de seguridad. Pueden ser tan severas como terminación del
contrato y se debe resaltar que serán aplicadas sin importar el cargo que ostente dicha
persona.

❏ Acreditación: En este apartado se estudia y se valoran los riesgos que pueden


afectar a la empresa. Se recoge y se analiza la información sobre los sistemas de
computadoras, redes y comunicaciones y se presenta ante la gerencia responsable de
dichos sistemas. Se deben aplicar medidas que eviten o minimicen los riesgos
mencionados. También, se debe incluir las responsabilidades del gerente y empleado en
la valoración de riesgos y en la instalación de medidas preventivas así como en la
realización de pruebas para asegurar la efectividad de las mismas. Por otra parte se
debe incluir la metodología usada por la empresa para clasificar los datos que manejan
en sus servidores y estaciones de trabajo. Se debe definir qué entiende la empresa por
“Datos confidenciales”, “Datos públicos” y “Datos sensibles del cliente”. La compañía
también deberá indicar en este apartado cómo clasifica la información de sus
consumidores y bajo qué estándar legal se sustentan. Ejemplo: ECPA, 1986, CFAA, 1986,
etc.

❏ Manejo de riesgos: En este apartado se incluye el plan de acción sobre los


activos de información que se encuentren en riesgo:
 Controles de acceso: Advertencias de acceso a los sistemas y lista de acceso
autorizado al sistema.
 Accesos no autorizados: Lista con permisos de autorización sobre los activos
importantes de información (servidores, estaciones de trabajo, respaldos, etc.)
 Manejo de incidentes: Qué debe ser reportado y por quién, cuál será la
respuesta, quién es el responsable.
 Protección de virus: Instalación obligatoria de antivirus o programas similares,
frecuencia de actualización (automática o manual), manejo de incidencia de
virus.
 Respaldos del sistema: Por quién fueron realizados, frecuencia de respaldos y
dónde están almacenados.
 Monitorización: Quién monitorizará la red en busca de intrusos (accesos no
autorizados desde dentro o fuera de la compañía), y a los usuarios en caso de
violación de las políticas de seguridad, quién tendrá acceso a las herramientas
de detección de intrusos así como quién revisará los registros.
 Presencia web: Qué y qué no está permitido colocar en el servidor público web y
quién tiene permisos para publicar.
 Cifrado o encriptado: Expone los métodos usados por la compañía para cifrar
información, cuándo será usada y por quién.

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.

2.6. HACER QUE SE CUMPLAN LAS DECISIONES SOBRE ESTRATEGIA Y POLÍTICA


Las empresas definen unas estrategias para alcanzar sus objetivos y en ellas deben
tener en cuenta situaciones que puedan ocurrir en el día a día, por tanto no pueden
estar aisladas de las políticas de seguridad. A la hora de crear un plan estratégico, es
necesario tener en cuenta las necesidades de la compañía y adaptarse a ellas.

Mediante las políticas de la empresa, se indican las funciones que cumplen


determinadas personas y son los gerentes los encargados de hacer cumplir estas
orientaciones del equipo directivo.

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.

Los expertos en la seguridad informática son los encargados de realizar la auditoría de


seguridad. Analizan las prioridades y actividades principales que realiza la empresa y
posteriormente analiza los puntos (puntos de control) que deben monitorizarse para
asegurar que se cumplan los objetivos de la compañía. Para ello, enfocan la auditoría en
tres aspectos: la parte física de la red (cableado, estaciones de trabajo, servidores), la
parte administrativa (personal y jerarquía de la empresa) y el funcionamiento del
software que maneja la red. Finalmente, el auditor explica los cambios necesarios que
se deben realizar para proteger a la empresa de los daños que le puedan provocar.
Estos cambios siguen las pautas que estipulan los sistemas de gestión de seguridad de la
información.

Informe de auditoría

El objetivo de los sistemas de seguridad de la información es garantizar la eficiencia y la


seguridad de las complejas estructuras informáticas. Estos sistemas son considerados
estándares de gestión de la información y en el mercado actual se puede encontrar
gran variedad de ellos. Sin embargo, este curso está enfocado a uno de los más
utilizados: ISO/IEC 27001, publicada en 2005 y actualizada en 2013.

La norma ISO/IEC 27001 parte de la familia de estándares 27000 donde se especifican


las medidas de seguridad que deben tomar las empresas tanto a nivel informático,
como físico y administrativo. Solicita a las empresas lo siguiente: la realización de un
estudio periódico de los riesgos de la seguridad de la información incluyendo las

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.

La gerencia del estándar se basa en el sistema Plan-Do-Check-Act (PDCA) o ciclo


Deming, para asegurar perpetuidad de la que se habla anteriormente mediante la
calibración constante del sistema y la creación de un mecanismo adaptable fácilmente
al ambiente cambiante del mundo digital.

3.2. CICLO DEL SISTEMA DE GESTIÓN DE SEGURIDAD DE LA INFORMACIÓN


El PDCA surgió con el fin de crear sistemas de auto-corrección basados en metodologías
cíclicas. Este tipo de metodología se utiliza como base del mecanismo actual de una
organización y propone nuevos modelos para mejorar la eficiencia de la empresa. Para
su implementación, se establecen cuatro aspectos esenciales definidos por el creador
de este concepto Walter A. Shewhart:

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.

El HACER: se llevan a cabo las acciones propuestas en el paso anterior. Es


recomendable realizar una prueba antes de efectuar los cambios importantes.

EL CONTROL: una vez finalizado el período de verificación de las acciones, se


deben recoger todos los datos y realizar un análisis comparativo con los
objetivos y requisitos definidos inicialmente, para determinar si su
cumplimiento es correcto y si supone una mejora en el sistema. Algunas de las
herramientas utilizadas en esta evaluación son: el diagrama de Pareto y el
diagrama de Correlación.

EL ACTUAR: con las conclusiones obtenidas durante el control, se definen los


pasos que hay que seguir para asegurar el cumplimiento de los objetivos
marcados. Esta última fase alimenta la fase inicial del PLAN proporcionándole
nuevas metas y prioridades, debido a que este sistema representa un ciclo.

36
©Clictic S.L.
Revisión

3.3. SEGURIDAD DE LA INFORMACIÓN


La seguridad de la información también se define como una actividad cuyo objetivo es
la prevención del acceso, uso, modificación, divulgación, corrupción, inspección,
grabación y destrucción de la información de forma no autorizada. Cuando se protege la
información, tanto física como digital, también se protegen los sistemas y estructuras
que la contienen. En otras palabras, la seguridad de la información tiene como principio
la denominada Tríada CIA: mantener la confidencialidad, integridad y disponibilidad de
los datos y asegurar que no queden expuestas al peligro en caso de que surja alguna
eventualidad.

La confidencialidad asegura que la información no estará disponible para individuos o


procesos no autorizados. La integridad significa que los datos no pueden ser
modificados sin autorización y por tanto la información se mantiene intacta. La
disponibilidad hace referencia a la accesibilidad de la información por parte de usuarios
autorizados en el momento que la necesiten. Si estas características se ven
amenazadas, la organización también se verá en esa situació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.

 Virus: Son programas que cuando se ejecutan, producen réplicas de sí mismos y


modifican otros programas insertando su propio código en ellos.
 Escuchar a escondidas: Consiste en escuchar a escondidas un sistema de redes
para capturar pequeños paquetes mientras dos equipos se comunican, abrirlos y
revisarlos por si contienen cualquier información relevante.
 Delito informático: Son ofensas que se cometen contra los individuos con la
finalidad criminal de dañar la reputación de las víctimas u ocasionarles daño

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

Robo de información confidencial

3.4. DEFINICIONES Y CLASIFICACIÓN DE LOS ACTIVOS


Un activo es cualquier recurso tangible o intangible que genera valor. En este caso la
empresa, como propietario, utiliza sus activos para generar ganancias económicas.

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.

3.5. SEGURIDAD HUMANA, SEGURIDAD FÍSICA Y DEL ENTORNO

3.5.1. SEGURIDAD HUMANA


Fue en 1994 cuando se acuñó el término “seguridad” a informes pertenecientes al
Programa de Naciones Unidas para el Desarrollo (PNUD) y comprende una amplia visión
de la seguridad que sitúa al ser humano y su entorno en primer lugar. Se constituye
sobre la base de los derechos humanos y su capacidad para tener una vida lo más plena
posible. Está enfocado a las posibles amenazas alimenticias, económicas,
medioambientales, políticas y comunitarias.

Se conoce como “los tres pilares de la seguridad humana” a las libertades


fundamentales compuestas por: vivir libres de miedo, vivir libres de necesidad y vivir
con dignidad.

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.

B. Condiciones para el empleo:


 Los empleados y contratistas a los cuales se les otorga el acceso a
información confidencial deberán firmar un acuerdo de confidencialidad
antes de obtener acceso a dicha información.
 Las responsabilidades y derechos legales de los empleados y contratistas
deberán ser claramente estipulados.
 Se deberán estipular responsabilidades y normas para:
o Clasificar la información.
o El uso de las instalaciones encargadas del proceso de información.
o La gestión de los recursos organizacionales asociados con la información.
o El uso de los servicios que utilizará el empleado o contratista.
 Las responsabilidades del empleado o contratista con respecto al manejo de
la información recibida desde otras compañías o fuentes externas.

 Acciones que llevará a cabo la empresa en caso de que el empleado o


contratista no siga los requerimientos por la gestión de seguridad de la
información.

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.

III. FINALIZACIÓN DEL EMPLEO


Una vez finalizado el empleo, la persona seguirá regulada por las estipulaciones
establecidas en su contrato de confidencialidad.

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.

Es importante que las empresas implementen estrategias para conseguir la seguridad


física y que también tomen las medidas necesarias para la protección contra amenazas
externas como pueden ser desastres naturales o, por ejemplo, algún corto circuito que
provoque un incendio. Algunas de estas amenazas, a las que debe poder anticiparse la
empresa, son:
 Incendios no provocados de manera intencionada.
 Desastres naturales (terremotos, inundaciones, tormentas eléctricas)
 Las amenazas que puedan ocasionar el propio hombre: sabotajes, disturbios,
etc.

Como ya se ha mencionado en el módulo 2, es necesario que las empresas establezcan


políticas de seguridad para prevenir situaciones como las mencionadas anteriormente y
para que el personal pueda guiarse y seguir un estándar de seguridad. También deben
contar con pólizas de seguro para proteger al personal, los equipos y las instalaciones
de manera preventiva; así como con planes de contingencia para afrontar y responder
oportunamente ante cualquier situación.

Es recomendable llevar un control y monitorizar la cantidad de terminales con los que


cuenta la empresa; saber dónde están almacenados los datos y dónde se encuentran
los puntos de acceso a los equipos de computación y las instalaciones. Se debe realizar
una verificación de los planes de las estructuras de comunicación de red y la instalación
eléctrica para saber si la empresa cuenta con ellos.

Con la realización de auditorías a la seguridad física se puede comprobar si han sido


aplicados los mecanismos para el correcto cumplimiento de dichas medidas de
seguridad. También permite la evaluación de los riesgos y amenazas que puedan afectar
el funcionamiento de la empresa y clasificarlos como “altos”, “medios” o “bajos” según
su nivel de peligrosidad.

3.5.3. SEGURIDAD DEL ENTORNO


El entorno de una organización hace referencia al espacio físico donde se sitúan los
equipos informáticos y todo lo que les rodea (habitaciones, puertas, ventanas,
cerraduras). Por tanto al referirse a la seguridad del entorno, se está hablando de los
mecanismos que emplea la empresa para proteger los terminales y equipos donde se
almacena la base de datos y la información.

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.

La complejidad de este proceso y los principales problemas se presentan porque el


mensaje se mueve en un medio físico que se rige por reglas termodinámicas. En otras
palabras, todo esfuerzo físico causa un contra esfuerzo que dificulta el cumplimiento de
sus metas. En el ámbito lingüístico, esto es conocido como “ruido” y provoca la
distorsión del mensaje. Un claro ejemplo es el dominio de diferentes idiomas: si un
emisor codifica el mensaje en portugués y el receptor sólo conoce el español, el ruido
presente es tan elevado que impide la comunicación.

En el ámbito que corresponde a las empresas, una comunicación clara y precisa es lo


que mantiene el correcto funcionamiento de las mismas y les permite proveer los
servicios. Por tanto, la seguridad de la comunicación interna y externa es una de las
prioridades principales de la seguridad de la información.

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.

Desde el punto de vista de la informática, todo el sistema que engloba la información se


basa en la constante transmisión de paquetes digitales complejos entre emisores y
receptores.

3.6.3. PROCESO DE COMUNICACIÓN


Todo proceso conlleva a un resultado y no es más que una acción, o suceso de ellas,
que se realiza de manera continua y regular; y está predefinida por un usuario en
concreto o por el ambiente. Para que el proceso sea exitoso, el resultado obtenido
debe ser el esperado por el usuario. Hay que tener en cuenta también que todos los
procesos implican cambios.

Con respecto a la comunicación, este proceso traslada la intuición racional y


sentimental de un individuo hacia otro mediante el lenguaje. En una empresa, la
comunicación es compleja ya que cuenta con una estructura con muchos nodos que
pueden correr el riesgo interrumpir este proceso. Es por ello, que es necesaria una
supervisión rigurosa y constante para que el nivel de ruido sea el menor posible y así
asegurar la precisión. La encargada de realizar esta supervisión es la gestión de
comunicaciones.

3.6.4. GESTIÓN DE COMUNICACIÓN


La gestión de la comunicación se dedica al establecimiento y mantenimiento de
parámetros, protocolos y canales encargados de transmitir la información que deben
garantizar que el flujo de información ocurra sin obstrucciones.

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 Formal: informes, instrucciones, memorandos.


o Informal: conversaciones ad hoc, correos electrónicos.

o Vertical: hacia arriba o abajo en el esquema jerárquico de la organización.


o Horizontal: entre colegas.

o Escrita
o Oral

o Oficial: boletines e informes anuales.


o No oficial: comunicaciones extraoficiales.

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.

3.6.6. FASES PARA DESARROLLAR UN SISTEMA DE COMUNICACIÓN EFICIENTE


 Realizar un diagnóstico de la situación en la que se encuentra la empresa para
conocer qué hay que comunicar, con qué recursos cuenta y cuáles son las
expectativas de los interesados.
 Establecer objetivos y estrategias para cada grupo de interés.
 Definir fechas, acciones, medios de comunicación y responsables.
 Informar y capacitar al personal sobre las directrices de la comunicación.
 Desarrollar e implementar el plan de comunicaciones.
 Seguir y evaluar la eficacia del plan de comunicaciones.

3.6.7. GESTIÓN DE OPERACIONES


La gestión de operaciones se encarga del mantenimiento y gestión continua de la
infraestructura de la empresa. Abarca toda actividad que tiene como finalidad asegurar
que los bienes y servicios cumplan con los niveles establecidos y se producen
correctamente para determinar el buen funcionamiento de la compañía en sus
diferentes áreas y departamentos (RRHH, diseño, contabilidad, marketing, ventas,
distribución, etc).

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.

Debido a la complejidad que presenta el sistema de operaciones de una compañía, es


necesario monitorizar y organizar las actividades que se realizan en la empresa
mediante un sistema de planificación y control de operaciones. Este sistema se dedica
a definir las operaciones que se tienen que llevar a cabo así como los recursos que se
necesitan para realizarlas. También clasifica a dónde se destinan los recursos según las
propiedades que poseen, cuándo se tiene que hacer y comprueba que lo que se ha
ejecutado se corresponda con lo que se había planificado. En los sistemas de
planificación y control la planificación es lo que se realiza antes de comenzar la
ejecución y el control es lo que se ejecuta posteriormente.

En resumen, este sistema puede ser definido como un conjunto estructurado de


herramientas y metodologías que utilizan las organizaciones para tomar decisiones
sobre las actividades que van a realizar y la adquisición de los recursos necesarios para
ofrecer los productos y servicios a los clientes.

El proceso de toma de decisiones debe estar estructurado de forma más o menos


explícita según la complejidad de las operaciones que se planifiquen, ya que un sistema
complejo y poco explícito puede entorpecer y dificultar este proceso más de lo
necesario. Por otra parte, un sistema bien explícito facilita la modificación y adaptación
a los cambios que se le soliciten a la empresa.

La planificación se puede estructurar en dos niveles:


 Planificación a largo plazo: se cuenta con más tiempo y con pocas restricciones a
la hora de definir una buena estrategia.
 Planificación a corto plazo: el tiempo es limitado y existen más restricciones para
implementar las estrategias.

3.7. CONTROL DE ACCESOS


A modo general, se define como control de acceso a las restricciones selectivas de
acceso a un recurso o lugar determinado y abarca tanto el plano físico como digital. El
concepto de acceder se puede entender como entrar, usar o consumir. El concepto de
permiso de acceso a un recurso se puede entender como autorización. Ejemplos de
mecanismos físicos y digitales son las cerraduras y las aperturas de sesión,
respectivamente.

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 listas de control de acceso:


Se crea una lista y el acceso a un recurso dentro del sistema depende de su inclusión o
no en la lista. Para realizar modificaciones sobre quién puede acceder o no, es necesario
modificar la lista. Se puede establecer una similitud con el control que realiza un
portero en una fiesta privada, que comprueba si la persona que está intentado entrar
está invitada o no.

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

3.8. GESTIÓN DE CONTINUIDAD DEL NEGOCIO


Se conoce como gestión de continuidad de negocio a los planes y estrategias que
utilizan las empresas para prepararse ante posibles eventualidades catastróficas como
pueden ser inundaciones, terremotos, incendios o ataques cibernéticos que pueden
dañar y afectar el funcionamiento y operatividad del negocio.

Estas estrategias se encuentran enmarcadas en la norma ISO 22301, que es un estándar


de gestión que establece los requerimientos para realizar la planificación,
establecimiento, monitorización y mantenimiento continuo del sistema de gestión
documentado; no solo con el fin de protegerse contra incidentes que puedan ocurrir,

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.

Ante un evento catastrófico, la gestión de continuidad deber cumplir los siguientes


aspectos:
 Mantener un nivel de servicios óptimos.
 Recuperar la operatividad de la empresa en cuanto a servicios y procesos.
 El período de recuperación de las actividades debe ser rápido.
 Evaluar el impacto de la aplicación de las estrategias definidas para comprobar
los fallos o la efectividad en el plan de continuidad.

Pasos para llevar a cabo el desarrollo de un análisis de impacto con el objetivo de


prevenir posibles incidentes:
 Definir las situaciones críticas y una lista con las posibles incidencias que no
podrán ser evitadas por las medidas implantadas.
 Describir y registrar el impacto ocasionado por alguna interrupción de las
actividades para realizar un estudio de las variaciones en el tiempo.
 Establecer y fijar un periodo límite de interrupción aceptable correspondiente a
cada una de las actividades.
 Listar las actividades críticas y fijar categorías según la prioridad de
recuperación.
 Describir y registrar las dependencias que sean relevantes para las actividades
críticas, los proveedores y subcontratas.
 Definir los objetivos temporales de recuperación para retomar las actividades y
evaluar los recursos que cada una de las actividades críticas necesita.

Todo el personal de la organización debe conocer el plan y este debe ponerse a prueba
antes de implementarlo como modelo.

Fases para una implementación óptima del plan de continuidad:


Primera fase:
Definir el proyecto, evaluar objetivos y su alcance. Prever los peores escenarios.

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 CONFORMIDAD Y LEGALIDAD

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).

En resumen, estas normativas complementan y cubren aspectos que no están incluidos


en las políticas de seguridad de la información que establecen las organizaciones.
Permiten que los organismos públicos y las empresas cumplan con los requisitos
necesarios para mantener la seguridad, disponibilidad y confidencialidad de la
información en su sistema de gestión.

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.

Aunque la idea de este principio puede ser fácil de entender, su implementación


efectiva puede resultar realmente compleja si se tienen en cuenta factores como los
siguientes:
 Acceso a terceros o vendedores
 Diversidad de ambientes de cómputo: virtual, la nube, híbrido.
 Sistemas operativos heterogéneos: Linux, Windows, Mac.
 Aumento del número y tipo de dispositivos y aplicaciones.
 Distintos tipos de roles de usuarios.

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.

En el caso de sistemas con Windows, la cuenta que posee los privilegios de un


superusuario es Administrador. Cada equipo posee al menos una cuenta de este tipo
capaz de instalar y desinstalar programas o aplicaciones y modificar configuraciones
51
©Clictic S.L.
locales. Sin embargo, las cuentas de usuario estándar son más limitadas y además
existen las cuentas de Invitado que solamente cuentan con acceso a Internet y a ciertas
aplicaciones.

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.

La tarea de manejar la gran cantidad de cuentas superusuario que se crean


instantáneamente puede resultar bastante compleja. La existencia de estas cuentas
puede significar la aparición de factores de riesgo incluso en sistemas donde se aplica el
principio de menor privilegio. Algunos de estos factores son:

Uso de cuentas Superusuario para actividades rutinarias:


La mayoría de las actividades cotidianas de los usuarios de ordenadores personales
pueden comprender desde el uso de Internet y aplicaciones como Google Drive y
correo electrónico hasta la creación y edición de documentos de Office. A su vez, la
mayoría de usuarios de Windows realiza dichas actividades desde una cuenta
Administrador teniendo más privilegios de los que realmente necesitan. Esto conlleva a
un aumento masivo de los riesgos de instalación de aplicaciones maliciosas, así como
robos de contraseña, permitiéndoles aprovechar los privilegios sobre el equipo y
trasladar el ataque a otros equipos conectados a la misma red.

Mal uso de las cuentas Superusuario:


Al permitir el uso de este tipo de cuentas a usuarios que no estén autorizados puede
conllevar a graves brechas en la seguridad e incluso comprometer la integridad del
sistema. Esto puede ocurrir de manera intencionada o no, si por ejemplo, se escribe mal
algún comando, se modifica o se elimina algún fichero, entre otras.

Internet de las cosas:


Es una tecnología que se basa en la conexión a la red mediante diferentes dispositivos
no convencionales para mejorar su funcionamiento. Ejemplo de estos son monitores
médicos y electrodomésticos. Al ser una tecnología emergente, también constituye un
factor de riesgo emergente, pues estos equipos poseen limitaciones de seguridad (falta
de actualizaciones de software, incompatibilidad con la mayor parte de las aplicaciones

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.

Internet de las cosas

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.

 Reducción de la infección y propagación de malware:


Al denegar la instalación o ejecución por carecer de privilegios, ayuda a
disminuir considerablemente la infección y la propagación de software
malicioso.

 Superficie de ataque condensada:

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.

 Mejora el desempeño operacional:


Al restringir los privilegios a los mínimos necesarios para la realización de una
determinada actividad autorizada, se reduce también la probabilidad de que
surjan problemas de compatibilidad entre las aplicaciones del sistema, así como
el riesgo de inactividad.

4.2. DEFENSA EN PROFUNDIDAD


Es un modelo muy popular y utilizado para mantener la seguridad en las redes
corporativas y empresariales. Consiste en la implementación de controles de seguridad
para proteger los datos en distintas capas o niveles.

La aplicación de un modelo como este posibilita la protección de los activos de una


compañía utilizando más de una medida de seguridad. Su objetivo consiste en que el
atacante tenga que violar más de una de las capas de seguridad establecidas para poder
tener acceso a la información de la empresa. Es un término de origen militar que debido
a su sencillez, practicidad y efectividad, fue trasladado y adaptado al ámbito de la
seguridad informática.

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)

PROTECCIÓN ESPECÍFICA O GENERAL:


Es necesario determinar el tipo de amenaza contra la que se quiere proteger al sistema.
Se debe identificar cada vulnerabilidad presente en los métodos de entrada y salida, así
como el ambiente en el que se encuentra el sistema, tanto en el hardware como en el
software. Puede abarcar desde cualquier software malicioso o phishing vía Internet
hasta fallos y bugs presentes en las aplicaciones offline.

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.

4.3. PUNTO DE CHOQUE


Es una estrategia que emplea sólo un punto de acceso al sistema para que el control en
el tráfico y los mecanismos de seguridad se centren en vigilar un único lugar en la red.
De esta manera se obliga a los atacantes a utilizar dicho punto como entrada al sistema.
Por esta razón, es necesario que este punto esté debidamente protegido ante cualquier
tipo de ataque y estar preparados para contrarrestarlos si se detectan. Podemos ver
ejemplos de puntos de choque en la vida cotidiana: las taquillas de inmigración, las
taquillas de estacionamientos de pago, las taquillas de cine, entre otros.

El Firewall o cortafuegos es el punto de choque más utilizado en la seguridad de redes,


ya que aísla el sistema de Internet. Es decir, cualquier intento de acceso al sistema sin
autorización será rechazado o deberá forzar el cortafuegos para poder entrar.

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.

Otro inconveniente de esta estrategia es el decaimiento del rendimiento que puede


sufrir el sistema si se supera la capacidad de tráfico en el punto de entrada y salida,
incluida la inspección de eventos, el registro y el control de entradas y salidas desde y
hacia la red. Generalmente, la manera de evitar esta situación es con una adecuada
56
©Clictic S.L.
actualización de las aplicaciones de protección y de los hardwares que le ofrecen al
sistema la capacidad de control del tráfico de datos y el acceso rápido al mismo.

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

Esquema general del punto de choque

4.4. EL ESLABÓN MÁS DÉBIL


El concepto de eslabón más débil se basa en que toda estrategia tiene tanto un punto
fuerte como un punto débil y que todo sistema es tan seguro y fuerte como el eslabón
más débil presente en su cadena de seguridad. Debido a esto, es necesario
implementar medidas de control y supervisión que permitan conocer aquellos puntos
más débiles presentes en los sistemas de defensa y seguridad para aplicar medidas que
los fortalezcan. No obstante, no se deben descuidar los puntos fuertes o protegidos ya
que pueden volverse vulnerables.

Se considera que el eslabón más débil en un sistema de seguridad que se encuentre


correctamente implementado, es el usuario o empleado que posea los suficientes
privilegios para debilitar el sistema o para ascender en la cadena de permisos. Esto se
debe a que el usuario es vulnerable a error humano, manipulación por ingeniería social
o a páginas de phishing o ransomware en sus equipos.

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.

A continuación se mencionan varias medidas para aumentar la seguridad incluyendo el


eslabón humano:
Simplificar y aclarar procesos:
El usuario debe entender y aplicar las medidas de seguridad en su totalidad. Si
estas son muy complejas o requieren procesos de cierta dificultad, se deben
aclarar lo antes posible para optimizar la seguridad del sistema y la
productividad.

Conocer a los usuarios:


Se deben conocer los buenos y malos hábitos que poseen lo usuarios en lo que a
la seguridad respecta para implementar medidas que reduzcan al mínimo las
malas prácticas.

Eliminar los malos consejos de seguridad:


Un ejemplo de esto es la rotación y utilización de contraseñas aleatorias ya que
el usuario tiende a almacenarlas en sitios no seguros como e-mails, o notas en
su lugar de trabajo y que son accesibles por todos aquellos que visiten su
escritorio.

4.5. POSTURA DE FALLO SEGURO


La postura de fallo seguro consiste en que todo equipo debe tener un sistema en el que
el equipo podrá fallar de manera controlada para evitar el acceso del atacante a los
datos resguardados, en caso de que ocurra un ataque y todas las medidas de seguridad
se vean vulneradas. Generalmente, este modelo también limita el acceso al usuario
estándar hasta que el equipo dañado y los sistemas de seguridad hayan sido
restablecidos correctamente y cuando el atacante ya no suponga una amenaza.

Su funcionamiento es similar al del un ascensor: si falla el sistema eléctrico, este se


detiene completamente y no permite que nadie entre y salga de manera convencional
hasta que se resuelva el problema. Siguiendo este mismo principio, si una acción de
algún componente del sistema o de alguna aplicación falla, el
sistema/equipo/aplicación deberá detener su funcionamiento por completo hasta que
sea solventado el incidente.

Esta estrategia es utilizada por la mayoría de firewalls que se encuentran disponibles en


el mercado. Al ocurrir algún incidente en el funcionamiento del cortafuegos, se detiene
por completo el tráfico de entrada y salida y por tanto se interrumpe la conexión a
Internet. Aunque esto pueda parecer un inconveniente para el usuario estándar, es
58
©Clictic S.L.
necesario para mantener la total integridad del equipo en cuestión. Si por el contrario el
cortafuegos permitiera el paso de información de un sitio a otro después de fallar, el
atacante podría centrarse en generar un error en el mismo, para luego tener acceso
libre a la información que desea.

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.

Ejemplo de fallo seguro en Windows 10

4.6. POSTURA DE NEGACIÓN ESTABLECIDA: TODO AQUELLO NO EXPRESAMENTE PERMITIDO


ESTÁ PROHIBIDO
La postura de negación establecida es uno de los principios más seguros perteneciente
a la categoría postura de fallo seguro. También es conocido como Política Restrictiva y
consiste en que el equipo reconoce que todo acceso no autorizado, fallo inesperado o
aplicación desconocida debe ser denegado porque constituye un riesgo para la
seguridad. Aunque es una medida relativamente obvia para los usuarios que tengan
conocimientos en seguridad de redes, no resulta tan sencilla para un usuario estándar.
La mayoría de organizaciones gubernamentales suelen aplicar este principio como
sistema principal de seguridad.

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.

4.7. POSTURA DE PERMISO ESTABLECIDO: TODO AQUELLO NO EXPRESAMENTE PROHIBIDO


ESTÁ PERMITIDO
Este principio se conoce también como Política Permisiva y consiste en que todo el
tráfico, acceso y uso de aplicaciones está permitido excepto aquel que esté
explícitamente denegado. Asume que el usuario conoce cuáles son los riesgos y cómo
resguardarse a sí mismo y al equipo ante estos peligros.

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.

4.8. PARTICIPACIÓN UNIVERSAL


Este principio consiste en que todo el que haga uso de los servicios digitales de una
compañía, debe estar protegido por las estrategias de seguridad y hacer cumplimiento
de las mismas. Ninguno de los usuarios pueden oponerse de manera activa a las
políticas de seguridad ni optar por quedar fuera de estas estrategias ya que cualquier
atacante puede encontrar así una vía de acceso al sistema.

Se puede dar una sensación de falsa seguridad si se añaden excepciones a los


parámetros de seguridad como puede ser otorgar permisos especiales a gerentes de la
compañía que vean el uso de los cortafuegos como un inconveniente. Este punto se
60
©Clictic S.L.
convertiría en el punto más débil disponible en la empresa, fuera de los parámetros de
seguridad, y sin duda alguna será un objetivo de ataque o acceso fraudulento.

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.

Otros ejemplos de usuarios que no participan en el mantenimiento de la seguridad de la


empresa son lo que realizan algunas de estas actividades:
 Usar equipos y dispositivos personales en la red corporativa.
 Usar dispositivos de conexión remota basados en Internet, sin autorización para
acceder a los equipos de trabajo.
 Elegir contraseñas de baja seguridad.
 Instalar software de conveniencia y sin autorización.
 Compartir cuentas con otros usuarios o terceros.
 Manejar proxys para burlar los cortafuegos empresariales.
 Utilizar discos extraíbles personales en cualquier equipo de la organización.

Para conseguir la participación de todos los usuarios se puede hacer o convenciéndoles


de que es una buena idea para que accedan de manera voluntaria, o a través de la
orden de una autoridad de la empresa, o con una combinación de ambas. Está claro que
es preferible la participación de forma voluntaria ya que evita casos como los
mencionados anteriormente y así los mismos usuarios buscan mejorar las medidas de
seguridad en sus propios equipos.

4.9. DIVERSIFICACIÓN DE LA DEFENSA


Se conoce como diversificación de la defensa a la idea de no solo implementar una
defensa en varias capas, sino de hacer uso de distintos sistemas de defensa, yas ea en
general o en cada una de las capas. Este concepto se complementa con el concepto de
defensa en profundidad y puede lograrse mediante el manejo de múltiples servicios con
diferentes funciones, otorgados por uno o varios proveedores y que abarcan cualquier
entrada al sistema. Un ejemplo de esto en la vida cotidiana es el uso de una manilla y
seguro junto con un sistema de alarmas para evitar la entrada a un vehículo, donde no
solo se evita la entrada del intruso sino que también se atrae la atención hacia él.

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.

Las aplicaciones demasiado complejas normalmente presentan gran cantidad de bugs y


fallos y dificultan el proceso de detección de los mismos y de aquellos que puedan
comprometer la seguridad del equipo. Aunque los bugs no son considerados una
brecha, una vez que empiezan a aparecer hacen que el comportamiento del usuario sea
errático en la aplicación.

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

La infraestructura de red en la nube

La exploración de red se conoce como las diferentes técnicas y estrategias que se


emplean en la identificación de los componentes forman parte de ella y de la
información que transmite.

Algunas de las principales técnicas empleadas en este proceso son:


❏ Escaneo de puertos:
Consiste en determinar qué puertos se encuentran activos en un equipo conectado a la
red ya que estos contienen información importante sobre ellos mismos. Para saber si un
puerto está abierto o no, se intenta establecer comunicación con él.

❏ 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.

❏ Detección de servicios y versiones:


Consiste en enviar mensajes diseñados para que el ordenador destino indique en su
respuesta los servicios y las versiones que se encuentran 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.

Host 192.168.100.1 Dispositivo activo, responde a mensajes.


Puertos abiertos 135/tcp open msrpc.
139/tcp open netbios-ssn
445/tcp open microsoft-ds
3389/tcp open ms-term-serv
8081/tcp open blackice-icecap
Sistema Operativo Windows Seven SP3

5.1.1. FUNDAMENTOS DE REDES


Es necesario que el personal que ejecute el proceso de exploración de la red tenga
dominio de los conceptos básicos que se explican a continuación, ya que este proceso
resulta arduo y meticuloso.

➢ 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).

Una dirección MAC es un número de 48 bits representado en hexadecimal con 12


dígitos. Este número se divide en dos secciones: los primeros 24 bits identifican al
fabricante de la tarjeta y los 24 restantes son parte del serial del producto asignado por
el mismo fabricante. Puede ser encontrada mediante el uso del comando arp. Este
comando muestra las direcciones MAC de los otros equipos con los que se ha
establecido conexión. El protocolo responsable de mapear las direcciones IP a
direcciones MAC es el protocolo ARP o protocolo de resolución de direcciones.

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

Diagrama niveles modelo OSI

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.

Los dispositivos responsables de garantizar la transmisión del flujo de datos de manera


correcta son los cables, conectores, repetidores, etc. Los datos que se manejan en este
nivel son controlados por bits de unos y ceros que representan los pulsos de luz o
cambios de voltaje. El 1 representa encendido o nivel alto y el 0 apagado o nivel bajo,
generalmente. La capa responsable del manejo de estos bits es la capa de conexión de
datos.

67
©Clictic S.L.
Cables de red par trenzado y conectores

Fibra óptica

Capa de enlace de datos:


Se encarga de mantener estable las conexiones entres dos hosts o nodos. Define y
controla la forma en la que están ordenados los bits desde y hacia los paquetes, así
como la trama de datos encargada de enviar los bits a través del medio para que el
receptor pueda interpretar el mensaje correctamente. También es la capa responsable
del direccionamiento físico, la sincronización de los paquetes, el control de flujo y la
notificación de errores al nivel físico. Esto último es debido a que la capa física
solamente se encarga de mover físicamente los datos a través de los medios de
conexión de la red.

El control de flujo cronometra el tiempo que consume el proceso de envío y recibo de


datos para evitar saturar y exceder la capacidad de conexión física de los medios o los
nodos en la red.

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.

El enrutamiento es la clave del funcionamiento de Internet y por tanto es una de las


tareas más importantes de este nivel. Sin él, los hosts sólo pueden establecer
comunicación entre los que son miembros de una misma red. Los dispositivos utilizados
habitualmente en esta capa son los routers y switches de nivel 3.

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.

Puertos Protocolo(s) Descripción


80 TCP Protocolo HTTP, comúnmente
usado por servidores web.
443 TCP Protocolo HTTPS, utilizado
para establecer conexiones
seguras en la web.
53 UDP y TCP DNS, Servicio de nombres de
dominio, utilizado para para
asociar los nombres de
dominio a direcciones IP.
25 TCP Protocolo SMTP, usado para
el envío de mensajes de
correo electrónico.
22 TCP Secure Shell (SSH), protocolo
para encriptar las
comunicaciones.
23 TCP Telnet, un protocolo de
administración remota de
ordenadores.
20 y 21 TCP FTP, protocolo para el envío
de archivos.
135–139 y 445 TCP y UDP Protocolo de llamada a
procedimiento remoto RPC.
Utilizado por Windows para
compartir archivos.
500 UDP Protocolo para la seguridad
en internet y el manejo de
llaves. ISAKMP
Protocolo para el intercambio
seguro de llaves IPSec.
Redes virtuales privadas.
VPNs.
5060 UDP Protocolos SIP y VoIP,
utilizados para realizar
llamadas voz sobre IP.
Tabla relación puertos- servicios

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).

Otra de las operaciones asignadas a la capa de presentación es la compresión de datos


para minimizar el número de bits que deben ser transmitidos al receptor por el medio
de red.
Los procesos de cifrado y descifrado también ocurren en este nivel.

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.

5.1.2. PROTOCOLO CSMA/CD


El protocolo CSMA/CD o Carrier Sense Multiple Access/Collision Detection, es utilizado
en Ethernet para intercambiar datos en la red.

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.

La característica Collision Detection (detección de colisiones) hace referencia a que el


protocolo se asegura de que no se encuentre ninguna otra señal en el medio antes de
iniciar la transmisión y se mantiene escuchando la red durante este proceso para que
en caso de ocurra alguna colisión, poder detectarla. Cuando una colisión es detectada,
el dispositivo emisor espera un tiempo de duración corta y aleatoria (conocido como
back off delay) para reanudar la transmisión.

5.1.3. PRINCIPALES PROTOCOLOS. IP, TCP, UDP Y ICMP


IP: Internet Protocol o Protocolo de Internet
Es un protocolo no orientado a conexión encargado de redireccionar los datos entre dos
puntos y realizar procesos de fragmentación sobre los datagramas enviados para
reducir su tamaño a uno que sea más manejable.

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.

TCP: Transmission Control Protocol o Protocolo de Control de Transmisión


Es el más utilizado para enviar datagramas. Muchas aplicaciones utilizan este protocolo
ya que está orientado a conexión y a garantizar que los paquetes lleguen al destino
correctamente. Algunas de las aplicaciones que utilizan TCP son: Web (HTTP), e-mail
(SMTP), SSH, FTP, POP, Telnet, entre otras.

Saludo de tres vías o TCP 3 way Handshake:


Cada uno de los nodos debe aceptar el proceso de comunicación antes de que cualquier
paquete pueda ser intercambiado.

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.

Saludo de 3 vías - 3 way handshake

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.

UDP: User Datagram Protocol o Protocolo de Datagramas de Usuario


Es considerado un protocolo de comunicación rápida debido a que no está orientado a
conexión y por tanto es muy utilizado por aplicaciones que dependan de un envío
rápido de datos como VoIP, aplicaciones P2P, aplicaciones de streaming, entre otras. Es
utilizado por DNS en muchos de los procesos de resolución de nombres. DNS puede
realizar back-lookups y forward-lookups para determinar a qué IP le corresponde un
determinado nombre de dominio y viceversa.

ICMP: Internet Control Message Protocol


o Protocolo de Control de Mensajes por Internet
Es el responsable de manejar errores y proporcionar información sobre el protocolo IP.
Los mensajes ICMP están definidos dentro de los códigos y tipos RFC 792. Algunos
ejemplos comunes son:
❏ Solicitud o Echo Request (Tipo 8)/Reply o Respuesta (Tipo 0): Usado por
programas como ping para calcular el tiempo de retraso en alcanzar a otra dirección IP.
❏ Destino no alcanzable o Destination Unreachable (Tipo 3): Este tipo de mensajes
son enviados a la dirección IP de la fuente de un paquete cuando una red, nodo o
puerto no pueden ser alcanzados. Son útiles para diagnosticar problemas de conexión
en la red.
❏ Tiempo Excedido o Time Exceeded (Tipo 11): Este mensaje se envía cuando el
valor TTL alcanza 0.

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.

4. Campus Area Network (CAN) o Red de Área de Campus: es un tipo de red de


mayor escala que la red LAN. Usualmente son utilizadas en universidades,
distritos escolares o incluso en algunas empresas. Pueden ser desplegadas para
alcanzar varios edificios próximos entre sí.

5. Metropolitan Area Network (MAN) o Red de Área Metropolitana: es un tipo con


un alcance mucho mayor que una LAN o CAN, llegando a abarcar pueblos y
pequeñas ciudades. Este tipo de redes suelen ser administradas por compañías
o consejos municipales.

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.

7. Storage Area Network (SAN) o Red de Área de Almacenamiento: es un tipo de red


dedicada de alta velocidad que conecta información almacenada en dispositivos
a varios servidores. No necesitan una LAN o una WAN, trasladan los archivos
fuera de la red y los almacenan en su propia red de alto rendimiento.

8. System-Area Network (SAN) o Red de Área de Sistema: es un término que se


comenzó a utilizar en los últimos veinte años para referirse a una red local
diseñada para proveer conexiones de alta velocidad entre aplicaciones de
servidor-a-servidor (entornos cluster), aplicaciones procesador-a-procesador y
redes de área de almacenamiento. Los equipos conectados a esta red operan
como un solo sistema a altas velocidades.

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.

DIAGRAMA DE TOPOLOGÍA DE RED


Es recomendable y práctico utilizar representaciones visuales al transmitir información
compleja como puede ser mostrar los dispositivos dentro de una red interconectada de
medio o largo alcance. Los diagramas proporcionan una manera más sencilla de mostrar
y entender la información. Los diagramas que representan el modo en el que se
conectan los dispositivos a una red son conocidos como Diagramas de Topología de Red.

La forma en la que se representan las conexiones de redes en estos diagramas es a


través de símbolos cuyo objetivo es diferenciar los distintos tipos de dispositivos de la
red. La capacidad de reconocer las representaciones lógicas de los componentes físicos
de la red es muy importante y crucial en el momento de visualizar la organización y la
manera de operar de la misma.

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.

Direccionamiento IP y Rangos de red


Una dirección IP está compuesta por una serie de números que identifican de manera
lógica y jerárquica elementos que están conectados en una interfaz de red de un equipo
electrónico. Corresponde al nivel de red del modelo TCP/IP. Son direcciones que
cambian de manera frecuente ya sea por los cambios en la red o por que exista la
opción de asignarlas de forma dinámica. Existen dos tipos de direcciones IP:
❏ Dirección IPv4: Es la versión más usada del protocolo de Internet. Define
direcciones en un formato de 32 bits que se muestran en 4 secciones de
números. Cada sección de estas puede incluir números desde el 0 hasta el 255,
lo que da una posibilidad de que existan 4.294.967.296 direcciones IP.
❏ Dirección IPv6: Este sistema asigna a cada dispositivo una dirección
hexadecimal de 128 bits, lo que incrementa de manera exponencial el número
de direcciones posibles hasta más de trescientos cuarenta decillones
(340.000.000.000.000.000.000.000.000.000.000.000.000). Son representadas
en 8 secciones de cuatro caracteres separadas con dos puntos (“:”) y pueden
contener números del 0 al 9 y letras de la “A” a las “F”.

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.

5.2. INVENTARIO DE RED. HERRAMIENTAS DEL RECONOCIMIENTO


Se conoce como inventario de red al conjunto de técnicas de exploración de la red que
tiene como objetivo identificar cuántos nodos activos se encuentran presentes en ella,
qué puertos de estos nodos están escuchando solicitudes en la red y qué versiones de
software y sistemas operativos están instalados en ellos. La información que se obtiene
en este proceso se utiliza para detectar puntos débiles existentes en la red. Algunos
ejemplos son:
 Versiones de servicios desactualizadas con brechas de seguridad
 Sistema de detección de intrusos (IDS) ineficiente.
 Sistemas Operativos desactualizados con brechas de seguridad.
 Implementación ineficiente de la capa de red del modelo OSI.
 Configuraciones inseguras en el cortafuegos.

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

Las técnicas empleadas en los procesos de inventario de red son:


❏ Detección de nodos activos
❏ Sondeo de puertos y servicios
❏ Detección de sistemas operativos
❏ Optimización
❏ Evasión y Spoofing

En el mercado existen varias herramientas conocidas como escáneres de red útiles para
realizar los procesos de un inventario de red.

5.2.1 INVENTARIO DE RED. DETECCIÓN DE HOSTS ACTIVOS


El primer paso necesario para realizar un inventario de red es localizar los nodos activos
en ella y se conoce como escaneo de hosts. Los escáneres de red son los encargados de
realizar los sondeos mediante solicitudes de respuesta a un host. Esto es posible porque
los protocolos de comunicación en red tienen estándares preestablecidos en sus
procesos y según el protocolo empleado para realizar la solicitud se puede determinar si
un host está activo o no.

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).

❏ ICMP Timestamp: Un mensaje ICMP de tipo 13 es una consulta sobre la


fecha en formato Timestamp. Si la dirección IP del nodo destino está activa, se
devolverá un mensaje ICMP de tipo 14 conteniendo el valor de la fecha actual.

❏ Solicitud ICMP ECHO o Ping: Una solicitud ICMP ECHO consiste de un


paquete ICMP de tipo 8 o ping. Si la dirección IP destino está activa, se recibe un
mensaje de respuesta ICMP ECHO de tipo 0. El proceso de envío de peticiones
ICMP ECHO a múltiples nodos es denominado barrido ping.

❏ 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.

❏ Ping UDP: Un ping UDP envía a la dirección IP del nodo objetivo un


paquete UDP dirigido a un puerto UDP específico en el ordenador. Si el nodo
objetivo está activo, pero el puerto UDP está cerrado, el sistema devolverá un
mensaje ICMP Port Unreachable. Sin embargo, debido a que el protocolo UDP
no está orientado a conexión, al momento de que un mensaje UDP llega
correctamente a destino, el sistema no genera ningún tipo de respuesta,
indicando que muy probablemente tanto el puerto como el nodo objetivo están
activos.

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.

5.2.2. INVENTARIO DE RED. DETECCIÓN DE PUERTOS Y SERVICIOS


Cuando ya se identifica un nodo activo, se puede realizar un sondeo más profundo para
detectar qué puertos y servicios se encuentran disponibles en ese nodo. Este proceso
de búsqueda se conoce como el escaneo de puertos. Un puerto inseguro representa
para un hacker un punto de entrada al sistema, es por ello que una de las fases de
hacking es el sondeo de redes que incluye el escaneo de puertos. Este proceso se basa
en el envío de mensajes en los diferentes protocolos que requieren cada uno de los
puertos activos. Según la respuesta de los mensajes se puede determinar si un puerto
está activo o no y si el servicio que está escuchando en el puerto se encuentra instalado
en el destino.

Algunos tipos de sondeo de puertos son:


❏ Sondeos de conexión: funcionan estableciendo una conexión con el nodo
objetivo mediante la ejecución completa del saludo de 3 vías del protocolo TCP. Deja un
rastro fácil de detectar y generalmente son guardados en los ficheros log del nodo
objetivo. En el caso de que un puerto TCP esté activo y no se encuentre detrás de un
cortafuegos, responderá con un paquete SYN/ACK, de lo contrario el nodo devolverá un
paquete RST/ACK.

❏ Sondeos medio abierto: se le conoce como sondeo SYN y no completa el saludo


de 3 vías del protocolo TCP. Cuando el emisor del mensaje TCP recibe el paquete
SYN/ACK, detiene el proceso impidiendo que la conexión se complete. Esto es debido a
que cuando un puerto TCP está activo, responde a las peticiones con paquetes
SYN/ACK, de tal manera que cuando el emisor recibe este mensaje, puede detectar que
el puerto está activo y por tanto es innecesario completar el proceso de conexión.
Aunque este tipo de sondeo no es registrado por los logs del sistema, es fácilmente
detectable por los sistemas de detección de intrusos.

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.

5.2.3. INVENTARIO DE RED. DETECCIÓN DE SISTEMAS OPERATIVOS


(FINGERPRINTING)
El objetivo de este sondeo es determinar qué sistemas operativos se encuentran en los
distintos nodos del sistema. También es conocido como fingerprinting y se puede
realizar tanto de forma activa como de forma pasiva.

❏ Fingerprinting activo: Consiste en enviar varios paquetes con distintas


configuraciones al host objetivo. Las respuestas se analizan y se comparan con una lista
de valores de respuestas conocidas que sirven para determinar qué tipo de sistema
operativo está instalado en el nodo ya que cada sistema operativo agrega a las
respuestas de los puertos del ordenador, cuál es su tipo y su versión. Por ejemplo, las
respuestas TCP contienen configuraciones del sistema operativo tales como el tamaño
de la pantalla.

❏ Fingerprinting pasivo: utiliza los paquetes de respuesta TCP igual que el


fingerprint activo, con la diferencia de que recolecta sus paquetes del tráfico de la red.
Este método no envía paquetes directamente al nodo objetivo, sino que monitorea la
red en busca de paquetes con la información requerida para determinar el tipo de
sistema operativo presente en los nodos.

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.

Existen varias técnicas para optimizar el desempeño de las herramientas de sondeo de


red que dependerán de las características ofrecidas por el escáner. Una herramienta de
sondeo con un alto desempeño debe ser capaz de realizar varias operaciones
simultáneamente y utilizar algoritmos de eficiencia.

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.

5.2.5. INVENTARIO DE RED. EVASIÓN Y SPOOFING


Una red segura debe estar configurada para que pueda prevenir, evitar y detectar el ser
explorada por terceros que no tienen autorización. El cortafuegos debe asegurar los
posibles puntos de acceso para que cualquier intento de sondeo no autorizado sea
bloqueado. Esto se consigue mediante el filtrado de puertos y evitando enviar
respuestas a las solicitudes realizadas por terceros sin autorización.

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.

5.2.6. HERRAMIENTAS DEL RECONOCIMIENTO


Existen varias herramientas para el sondeo de redes. Algunas son de código libre y otras
privativas. A continuación, se muestran varios de los escáneres de red más populares:

❏ Wireshark: es un analizador multiplataforma de protocolos de red (corre en


Windows, Linux y MacOS X) que permite monitorizar el flujo de vida de las sesiones y el
tráfico de la red. También incluye tshark, una herramienta parecida al analizador de
paquetes tcpdump. hay que tener en cuenta la versión que se quiere instalar de
Wireshark ya que ha presentado brechas de seguridad, Se puede descargar de su sitio
web.

❏ Nmap: es la herramienta de código libre más utilizada en el mercado que sirve


para realizar sondeos de red. Incluso es utilizada como escáner por otras herramientas
que pueden ser descargadas desde su sitio web. Soporta la mayoría de las plataformas
más populares del mercado incluyendo Linux, Windows y MacOS X.

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.

❏ Advanced IP Scanner: es otra herramienta de código libre diseñada para


Windows que permite realizar varios de los procesos de sondeo de red más comunes.
Permite detectar cualquier dispositivo conectado a una red, incluyendo redes
inalámbricas. Con esta herramienta se pueden realizar múltiples tareas como el acceso
remoto, encendido remoto de ordenadores entre otros sitios web.

❏ Scanline: es una herramienta de línea de comandos que realiza sondeos de


puertos para todas las plataformas de Windows. No contiene la misma cantidad de
funcionalidades que Nmap, pero sus sondeos pueden manejar rangos realmente
grandes de direcciones IP en 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.

❏ OpenVas: es una herramienta que sirve para el sondeo y manejo de


vulnerabilidades. Es libre de costo y sus componentes son de código abierto, la mayoría
de ellos licenciados bajo GNU GPL. El componente más importante de OpenVas es su
escáner de seguridad, el cual sólo corre en Linux. Puede ser integrado con OVAL para
escribir pruebas de vulnerabilidad, realizar sondeos de servidores web, sondeos
completos de red, sondeos a WordPress para buscar vulnerabilidades en sitios
Wordpress y en sus servidores, etc.

❏ Metasploit: es un programa que al principio fue diseñado como una herramienta


de pruebas de penetración, pero actualmente es más usado como un escáner de redes
para detectar fallos en la seguridad del sistema. Inicialmente era una plataforma abierta
y fue comprada en el 2009 por Rapid7 para introducirla al mercado como un producto
de software privativo. Existe una versión Community que tiene un GUI Web. La versión
de pago cuenta con una GUI basada en Java.

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.

Actualmente existen múltiples herramientas para el sondeo de puertos, pero ninguna


se aproxima a la flexibilidad y capacidades de las que dispone Nmap. Entre sus
funcionalidades más poderosas podemos encontrar el motor de scripts de Nmap o
Nmap Script Engine (NSE) que permite construir, compartir y ejecutar grupos de tareas
con configuraciones específicas. Gracias al él la comunidad de Nmap se ve beneficiada
con el trabajo de todos sus miembros. Los scripts NSE pueden provenir de los
repositorios oficiales o de terceros, incluso se pueden crear scripts personalizados para
ser usados en una tarea muy puntual en una determinada organización.
Como todo producto de software libre, Nmap depende de la contribución de los
miembros de su comunidad de desarrolladores y colaboradores. Esta es una de las
comunidades más activas en la web, pues cada semana se liberan nuevas
funcionalidades o se corrigen bugs. Teniendo en cuenta la importancia del trabajo de
seguridad de redes, es recomendable consultar habitualmente esta comunidad para
estar siempre al tanto de cualquier novedad o del descubrimiento de errores que
pudieran haber sido desapercibidos en la liberación de alguna versión estable del
producto. Si se desea estar al día con todo lo relacionado a Nmap, se recomienda
suscribirse a su lista de correo .

A modo de curiosidad y prueba de la fama de Nmap, se destaca el hecho de que esta es


la herramienta usada por Trinity en The Matrix Reloaded, en la escena donde necesita
hackear la red eléctrica de la ciudad y hace uso de la versión 2.54BETA25 para

85
©Clictic S.L.
encontrar un servidor SSH vulnerable, que luego compromete haciendo uso del exploit
SSH1 CR32.

Acceso login con NMAP

La fama adquirida por esta herramienta es gracias a un gran número de usuarios


satisfechos con su desempeño: cualquiera que haya tenido como función en su trabajo
tener que realizar inventarios de red, probar el estado de un puerto o determinar qué
servicios y sistemas operativos están presentes en los nodos de una red.

Es usada como pieza fundamental en la realización de las siguientes tareas en el mundo


de las redes empresariales:
o Detección de nodos activos en la red.
o Detección de Sistemas Operativos (Fingerprinting).
o Detección de versiones de servicios y sistemas operativos.

También puede ser configurada para:


o Mejorar el desempeño de los sondeos.
o Probar los esquemas de seguridad.
o Dar formato la información de salida de Nmap.

Tal y como se ha mencionado en apartados anteriores, los diferentes protocolos de


comunicación empleados en las redes, contienen en sus componentes y mecanismos
información que puede servir para determinar la cantidad de nodos activos en una red
mediante el uso apropiado de Nmap.

Las comunicaciones en la red se desarrollan entre puertos, que dependiendo de las


especificaciones de cada protocolo pueden generar o no paquetes de respuesta con
características propias del protocolo empleado. Nmap aprovecha las características de
cada uno de estos protocolos ya que, suponiendo que estos tienen una conducta
predecible y constante, puede determinar si un dispositivo se encuentra activo en la red
dependiendo de cómo se desarrollen los procesos de cada uno de los protocolos.

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.

5.3.2 NMAP COMANDOS BÁSICOS


Antes de comenzar a usar Nmap hay que tener en cuenta las siguientes
consideraciones:
❏ Escanear redes sin tener permisos adecuados puede conllevar serias
consecuencias legales. Se advierte al lector que no intente realizar sondeos a sitios a los
cuales no tiene permiso, especialmente sitios de instituciones gubernamentales o los
sitios web de agencias de inteligencia.
❏ Cada vez que se realiza un sondeo, la red se llena con paquetes de comunicación
y dependiendo de la intensidad del sondeo, el tráfico de la red puede congestionarse al
punto de cortar toda la comunicación del sistema.

Sondeo básico Nmap


Al ejecutar Nmap sin opciones de línea de comando, se realizará un escaneo básico en
el host objetivo. Un objetivo puede ser una dirección IP o un nombre de host.

# 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 resultado de este sondeo mostrará el estado en el que se encuentran lo puertos que


se han detectado en el host objetivo. La siguiente tabla describe los campos de salida
que se muestran en el sondeo.
87
©Clictic S.L.
PORT STATE SERVICE
Número de puerto / Estado del puerto Tipo del servicio del
protocolo puerto

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.

Escanear varios hosts


Nmap puede ser usado para realizar sondeos a varios hosts al mismo tiempo.
#nmap 192.168.10.5 192.168.10.98 192.168.10.99

Cada dirección IP o nombre de host debe estar separada por un espacio.

Escanear un rango de direcciones IP


Para realizar un sondeo a todos los hosts que se encuentren en un rango de direcciones
IP, hay que pasar como argumento las 3 primeras secciones del cuarteto de la dirección
IP y luego el rango separado por un guión.
#nmap 192.168.10.1-55

Nmap también permite realizar sondeos a hosts contenidos en diferentes máscaras de


subred, como, por ejemplo:
nmap 192.168.1-100.*
En el ejemplo de arriba Nmap realiza un sondeo a todas las direcciones comprendidas
en una red tipo C. 192.168.1.* hasta 192.168.100.*.

Escanear una subred entera


Nmap puede ser usado para escanear una subred entera usando notación CIDR.
nmap 192.168.10.1/24

88
©Clictic S.L.
La notación CIDR está formada por la dirección de red y la máscara de subred.

Leer los hosts a escanear desde un archivo


Nmap puede aceptar una lista de hosts a escanear usando un fichero como dato de
entrada.
#cat lista.txt
192.168.10.1
192.168.10.50
192.168.10.120

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

Excluir hosts de un sondeo


La opción --exclude es útil si desea excluir hosts específicos al escanear una gran
cantidad de ordenadores.
#nmap 192.168.10.0/24 --exclude 192.168.10.150

En el ejemplo anterior, el host con IP 192.168.10.100 se excluye del rango de objetivos


que están siendo escaneados.

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

Leer los hosts a excluir desde un fichero


La opción --excludefile es similar a la opción --exclude con la diferencia de que el
usuario en vez de proporcionar los hosts mediante línea de comandos, los proporciona
en un fichero.
#cat lista.txt
192.168.10.100
192.168.10.120
192.168.10.144

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.

DETECCIÓN DE NODOS CON SONDEO PING TCP SYN


El sondeo TCP SYN ping es un sondeo de tipo medio abierto, no espera a que se
complete el saludo de 3 vías para establecer la conexión TCP. Consiste en el envío de un
paquete TCP SYN y en caso de no especificar ningún puerto, el paquete se envía al
puerto 80. Una vez enviado, Nmap espera por la respuesta. Si la respuesta es de tipo
SYN/ACK, Nmap toma el puerto como abierto. En cambio, si la respuesta es RST, Nmap
concluye que el puerto no está abierto. Si no se recibe ninguna respuesta después de
múltiples solicitudes o se recibe un mensaje tipo ICMP no alcanzable, Nmap marca el
puerto como filtrado.

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.

# nmap -sn -PS scanme.nmap.org

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.

Cortafuegos y filtradores de tráfico


Hay que tener en cuenta que en algunos casos el motivo por el cual un nodo
objetivo no responda puede estar relacionado a las configuraciones en el
cortafuego, que pueden estar evitando que el host envíe los paquetes SYN/ACK
de respuesta. En estos casos se recomienda especificar al comando Nmap un
puerto no filtrado. Para ello se agrega el puerto después de la opción -PS. Por
ejemplo: -PS22 realiza el sondeo al puerto 22 (SSH). También se pueden agregar
varios puertos a la vez: -PS80,413 o puertos en serie -PS20-25.

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.

# nmap -sn -PA scanme.nmap.org

Starting Nmap 7.01 ( https://nmap.org ) at 2018-04-05 14:17 -04


Nmap scan report for scanme.nmap.org (45.33.32.156)
Host is up (0.45s latency).
Other addresses for scanme.nmap.org (not scanned):
2600:3c01::f03c:91ff:fe18:bb2f
Nmap done: 1 IP address (1 host up) scanned in 2.33 seconds

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().

Cortafuegos y filtradores de tráfico


Como ocurre en el sondeo TCP SYN ping, el puerto usado por defecto es el
puerto 80. Esto se puede modificar especificando en la opción -PS los puertos
que van a ser escaneados. Por ejemplo: -PS22 o puertos en serie como -PS22-25,
o varios puertos seguidos de coma -P25,413,1024.

DETECCIÓN DE NODOS CON SONDEO UDP PING.


El funcionamiento de este sondeo es de la siguiente manera: Nmap envía un paquete
UDP vacío. Si el puerto no está disponible, UDP establece que se debe devolver un
mensaje ICMP puerto inalcanzable, indicando así que el host está presente y disponible
en la red. Si el paquete es recibido por un puerto abierto en el nodo destino, es
ignorado y por tanto no se genera ninguna respuesta a la solicitud. Esto es debido a que
la mayoría de los servicios ignoran las solicitudes vacías por defecto y por tanto el
objetivo no envía ningún mensaje como respuesta. Entonces Nmap interpreta que el
nodo está caído o fuera de línea. Por ello es importante asegurarse de no enviar
sondeos UDP ping a puertos activos, el puerto por defecto empleado en este sondeo es
el 40125, un puerto que por lo general nunca es usado por ningún de los servicios más
populares en el mercado. En caso de que el nodo en efecto este caído, fuera de línea o
no pueda ser visto por alguna razón por el ordenador que realiza el sondeo, ICMP
devolverá un conjunto de errores entre los cuales se encuentran “nodo o red
inalcanzable”s o “tiempo de TTL excedido”.

# nmap -sn -PU scanme.nmap.org

Starting Nmap 7.01 ( https://nmap.org ) at 2018-04-05 14:40 -04


91
©Clictic S.L.
Nmap scan report for scanme.nmap.org (45.33.32.156)
Host is up (0.77s latency).
Other addresses for scanme.nmap.org (not scanned):
2600:3c01::f03c:91ff:fe18:bb2f
Nmap done: 1 IP address (1 host up) scanned in 5.09 seconds

DETECCIÓN DE NODOS CON SONDEOS ICMP PING


Funcionan mediante el envío de paquetes ICMP de tipo 8 a las direcciones IP de los
hosts destino, esperando una respuesta ICMP de tipo 0 por parte de todos los nodos
activos en la red. Este tipo de sondeos generalmente no son permitidos por los
cortafuegos y sistemas de detección de intrusos IDS, pero pueden ser de gran ayuda a
los administradores de sistemas en el momento de realizar un inventario en la red.

# nmap -sn -PE scanme.nmap.org

Starting Nmap 7.01 ( https://nmap.org ) at 2018-04-05 15:08 -04


Nmap scan report for scanme.nmap.org (45.33.32.156)
Host is up (0.46s latency).
Other addresses for scanme.nmap.org (not scanned):
2600:3c01::f03c:91ff:fe18:bb2f
Nmap done: 1 IP address (1 host up) scanned in 1.15 seconds

Cortafuegos y filtros de tráfico


En caso de que un cortafuegos esté bloqueando las solicitudes ICMP tipo 8,
existen otros tipos de mensajes ICMP que pudieran servir de ayuda. Nmap
ofrece las opciones -PP la cual envía una solicitud ICMP timestamp y -PM que
envía una solicitud de dirección marcada ICMP. Cualquiera de estas dos puede
ser usada en caso de detectar un cortafuego.

DETECCIÓN DE NODOS CON SONDEOS PING DEL PROTOCOLO IP


Esta técnica se basa en el envío de varios paquetes con diferentes tipos de protocolos,
con el objetivo de que alguno de ellos reciba una respuesta para determinar si el nodo
está activo y presente en la red.
# nmap -sn -PO scanme.nmap.org
Starting Nmap 7.01 ( https://nmap.org ) at 2018-04-05 15:28 -04
Nmap scan report for scanme.nmap.org (45.33.32.156)
Host is up (0.75s latency).
Other addresses for scanme.nmap.org (not scanned):
2600:3c01::f03c:91ff:fe18:bb2f
Nmap done: 1 IP address (1 host up) scanned in 2.43 seconds

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.

# nmap -sn -PO --paquete-trace scanme.nmap.org

Starting Nmap 7.01 ( https://nmap.org ) at 2018-04-05 15:34 -04


SENT (0.0951s) ICMP [192.168.0.105 > 45.33.32.156 Echo request
(type=8/code=0) id=22600 seq=0] IP [ttl=39 id=8570 iplen=28 ]
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
RCVD (0.4165s) ICMP [45.33.32.156 > 192.168.0.105 Echo reply
(type=0/code=0) id=22600 seq=0] IP [ttl=51 id=58790 iplen=28 ]
NSOCK INFO [0.5110s] nsock_iod_new2(): nsock_iod_new (IOD #1)
NSOCK INFO [0.5120s] nsock_connect_udp(): UDP connection requested to
192.168.0.1:53 (IOD #1) EID 8
NSOCK INFO [0.5120s] nsock_read(): Read request from IOD #1
[192.168.0.1:53] (timeout: -1ms) EID 18
NSOCK INFO [0.5120s] nsock_write(): Write request for 43 bytes to IOD
#1 EID 27 [192.168.0.1:53]
NSOCK INFO [0.5120s] nsock_trace_handler_callback(): Callback: CONNECT
SUCCESS for EID 8 [192.168.0.1:53]
NSOCK INFO [0.5120s] nsock_trace_handler_callback(): Callback: WRITE
SUCCESS for EID 27 [192.168.0.1:53]
NSOCK INFO [0.9240s] nsock_trace_handler_callback(): Callback: READ
SUCCESS for EID 18 [192.168.0.1:53] (72 bytes):
%............156.32.33.45.in-
addr.arpa..................scanme.nmap.org.
NSOCK INFO [0.9240s] nsock_read(): Read request from IOD #1
[192.168.0.1:53] (timeout: -1ms) EID 34
NSOCK INFO [0.9240s] nsock_iod_delete(): nsock_iod_delete (IOD #1)
NSOCK INFO [0.9240s] nevent_delete(): nevent_delete on event #34 (type
READ)
Nmap scan report for scanme.nmap.org (45.33.32.156)
Host is up (0.32s latency).
Other addresses for scanme.nmap.org (not scanned):
2600:3c01::f03c:91ff:fe18:bb2f
Nmap done: 1 IP address (1 host up) scanned in 0.92 seconds

Entre la información mostrada por la salida de este sondeo, destacan las 3 líneas sent.

SENT (0.0951s) ICMP [192.168.0.105 > 45.33.32.156 Echo request


(type=8/code=0) id=22600 seq=0] IP [ttl=39 id=8570 iplen=28 ]

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

Tal y como se aprecia en el código de respuesta de arriba, Nmap está realizando 3


solicitudes, de las cuales sólo se responde a la petición ICMP de tipo 8.

RCVD (0.4165s) ICMP [45.33.32.156 > 192.168.0.105 Echo reply


(type=0/code=0) id=22600 seq=0] IP [ttl=51 id=58790 iplen=28 ]

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:

nmap -sn -PO1,2,4 scanme.nmap.org

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.

nmap -sn -PO --data-length 100 scanme.nmap.org

Protocolos empleados en el sondeo ping del protocolo IP


❏ ICMP: Protocolo número 1
❏ IGMP: Protocolo número 2
❏ TCP: Protocolo número 6
❏ UDP: Protocolo número 17

DETECTANDO HOSTS CON SONDEOS PING ARP


El protocolo ARP es el encargado de asociar las direcciones IP a las direcciones MAC.
Esta información es sumamente valiosa en los procesos de sondeo de redes. La IP
puede ser tratada como una identificación lógica del ordenador y la MAC como una
identificación de la tarjeta NIC del nodo sondeado.

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.

Nmap implementa algoritmos especializados al realizar un sondeo ARP. Estos van


construyendo una lista de nodos activos dependiendo de las respuestas a las solicitudes
ARP hechas a la dirección de difusión.

# nmap -sn -PR 192.168.1.1/24


Nmap scan report for 192.168.1.107
Host is up.
Nmap scan report for 192.168.1.110
Host is up (0.0077s latency).
MAC Address: 00:16: 7E:6F:E0:B6 (Huawei Device Co.)
Nmap scan report for 192.168.1.254
Host is up (0.0039s latency).
MAC Address: 5C:A9:4C:DC:F2:7C (Intel )
Nmap done: 256 IP addresses (3 hosts up) scanned in 10.87 seconds

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.

# nmap -sn -PR --paquete-trace 192.168.1.254




...
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
NSOCK (0.1120s) UDP connection requested to 192.168.1.254:53 (IOD #1)
EID
8
NSOCK (0.1120s) Read request from IOD #1 [192.168.1.254:53] (timeout:
-1ms) EID 18

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

Al inicio de la respuesta mostrada en la consola se puede observar la petición SENT y la


respuesta RCVD.

SENT (0.0734s) ARP who-has 192.168.1.254 tell 192.168.1.102


RCVD (0.0842s) ARP reply 192.168.1.254 is-at 5C:4C:A9:F2:DC:7C

La respuesta ARP muestra que la dirección MAC del nodo 192.168.1.254 es


5C:4C:A9:F2:DC:7C, indicando de esta manera que el nodo se encuentra activo.

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.

# nmap -sn -PS --paquete-trace 192.168.1.20


...

SENT (0.0658s) ARP who-has 192.168.1.254 tell 192.168.1.110
RCVD (0.0648s) ARP reply 192.168.1.254 is-at 5C:4C:A9:F2:DC:7C

...

Se puede modificar esta configuración ejecutando Nmap con la opción –send-ip.

# nmap -sn -PS --paquete-trace --send-ip 192.168.1.254




SENT (0.0534s) TCP 192.168.1.110:63897 > 192.168.1.254:80 S ttl=53
id=435
iplen=44 seq=128225976 win=1024 <mss 1460>

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>

...

Falsificación de direcciones MAC


Una de las múltiples funcionalidades de Nmap es la de falsificar la dirección
MAC. Esto se puede realizar mediante la opción –spoof-mac.

# nmap -sn -PR --spoof-mac 4C:5C:A8:F2:DC:7C

DETECCIÓN DE NODOS CON SONDEOS PING DE DIFUSIÓN


Su funcionamiento se basa en el envío de solicitudes ICMP echo a la dirección local de
difusión. Mediante estas solicitudes, Nmap recibe las direcciones IP asociadas a las
direcciones MAC de los equipos presentes en la red.

# nmap --script broadcast-ping --paquete-trace

Para incrementar el número de solicitudes enviadas, se es necesario utilizar la opción


broadcast-ping. num_probes como se muestra a continuación:

# nmap --script broadcast-ping --script-args broadcast-


ping.num_probes=8

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.

# nmap --script broadcast-ping --script-args broadcast-ping.


interface=wlan3

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 --script broadcast-ping --script-args broadcast-


ping.timeout=8000

Nmap proporciona un filtro que permite enfocar la búsqueda en los nodos recién
encontrados: –script-args=newtargets.

# nmap --script broadcast-ping --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.

Nmap también utiliza la información contenida en los paquetes de respuestas (cuyo


contenido está predefinido en los protocolos de comunicación de Ethernet), para
determinar el sistema operativo instalado en el nodo emisor del paquete de respuesta.
Dentro del contenido de estos paquetes se puede encontrar información de todas las
partes que componen una red empresarial. La cuestión está en poder diferenciar y
clasificar esta información para poder aprovecharla. Un ejemplo es cuando Nmap
realiza el proceso de detección de sistemas operativos o fingerprinting. Envía paquetes
TCP y UDP para evaluar posteriormente las respuestas buscando información específica
a estos: secuencias iniciales de números (ISN), identificadores de IP (ID), tamaño de la
pantalla, opciones TCP, notificación de congestión explícita (ECN), valores y formatos
timestamps. Cada sistema operativo responde con diferentes valores en estos campos
mencionados. Estos valores se denominan Fingerprint o huella digital del sistema
operativo y son los que permiten identificarlo.

En realidad, Nmap determina el sistema operativo instalado en el nodo emisor a través


de comparaciones de la información proporcionada por estos y la información presente
en la base de datos nmap-os-db.

Algunos de los parámetros utilizados para identificar a un sistema operativo son:


o Nombre del fabricante: Apple, Microsoft, Sun, etc.
o Sistema Operativo: MacOS X, Windows, Solaris.
o Generación del Sistema Operativo: La versión del sistema: Vista, Seven, 8, 10.
o Tipo de dispositivo: de propósito general (general purpose), un servidor de
impresión (print server), un router, media, WAP o un dispositivo de energía
(power device).

Para habilitar la detección del sistema operativo en un sondeo de puertos, se debe


indicar la opción -O en la línea de comandos.
# nmap -O scanme.nmap.org

Starting Nmap 7.01 ( https://nmap.org ) at 2018-04-06 03:03 -04


Nmap scan report for scanme.nmap.org (45.33.32.156)
Host is up (0.16s latency).
Other addresses for scanme.nmap.org (not scanned):
2600:3c01::f03c:91ff:fe18:bb2f
Not shown: 994 closed ports
PORT STATE SERVICE

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

OS detection performed. Please report any incorrect results at


https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 268.54 seconds

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.

5.3.5. DETECCIÓN DE SERVICIOS, APLICACIONES Y SUS VERSIONES.


Un buen administrador de sistemas debe estar atento a qué servicios y aplicaciones
están instalados en los hosts. Cualquier servicio que abra puertos a Internet debe estar
debidamente autorizado y por motivos de seguridad, las versiones de software
presentes en dichos nodos no deben contener ningún tipo de exploit conocido que
pueda vulnerar la seguridad de la red.

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

Starting Nmap 7.01 ( https://nmap.org ) at 2018-04-06 15:40 -04


Nmap scan report for scanme.nmap.org (45.33.32.156)
Host is up (0.39s latency).
Other addresses for scanme.nmap.org (not scanned):
2600:3c01::f03c:91ff:fe18:bb2f
Not shown: 994 closed ports
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 6.6.1p1 Ubuntu 2ubuntu2.10 (Ubuntu Linux;
protocol 2.0)
25/tcp filtered smtp
80/tcp open http Apache httpd 2.4.7 ((Ubuntu))
2048/tcp filtered dls-monitor
9929/tcp open nping-echo Nping echo
31337/tcp open tcpwrapped

100
©Clictic S.L.
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

Service detection performed. Please report any incorrect results at


https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 171.31 seconds

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.

También es posible configurar la intensidad del sondeo realizado indicando la cantidad


de sondas enviadas a los puertos mediante el uso del parámetro –version-intensity que
comprende valores desde el 1 hasta el 9, siendo el 1 el de menor intensidad y por tanto
el de menor envío de sondas, y el 9 el de mayor intensidad y el de más envío de sondas.
Los sondeos de baja intensidad (--version-intensity=1) se enfocan en detectar los
servicios más populares y de mayor uso. Por el contrario, los sondeos de alta intensidad
se centran en cubrir la mayor cantidad de servicios posibles incluyendo los poco
comunes o de menor uso. Los sondeos de alta intensidad reflejan valores más fiables
tardan más en ejecutarse. En Nmap los sondeos de versiones tienen una intensidad de
valor 7 por omisión.

Nmap dispone de otras opciones como –version-light y –version-all equivalentes a –


version-intensity=2 y –version-intensity=9 respectivamente. Si se quiere observar
información sobre el proceso de detección ejecutado por Nmap en salida, se debe
añadir la opción –version-trace al comando. Para finalizar, también ofrece al usuario la
opción de cargar su propio archivo de referencia de sondas de servicios en lugar del
archivo por defecto nmap-service-probe.

Opción Descripción

-Sv Habilita los sondeos para detectar servicios, aplicaciones y


sus versiones

-Sr Habilita el sondeo RPC para detectar versiones. Este sondeo


funciona por omisión con la opción -sV

--allports Indica a Nmap que envíe sondas a todos los puertos del host.

--version-intensity Indica a Nmap la intensidad del sondeo de versiones, acepta


<intensity> valores del 1 al 9.

--version-light Equivalente a –version-intensity=2. Ideal para realizar


sondeos rápidos.

101
©Clictic S.L.
--version-all Equivalente a –version-intensity=9. Ideal para realizar
sondeos meticulosos.

--version-trace Imprime información de debug sobre el proceso de sondeo

--versiondb <fichero Permite al usuario especificar un archivo de sondas de


sondas de servicios> servicio propio.

5.3.6. SCRIPTS NSE (NMAP SCRIPTING ENGINE)


El motor de scripts de Nmap o Nmap Script Engine (NSE) permite a los usuarios la
codificación de scripts para automatizar cualquier tipo de tareas en la red. Es la
característica más valorada por los administradores de red y sistemas. Gracias a ella se
pueden agrupar una serie de tareas en un solo script que puede ser ejecutado
posteriormente desde la línea de comandos. También permite que los usuarios puedan
compartir los scripts unos con otros y ya cuenta con un set de scripts predefinidos.

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.

Nmap también permite añadir scripts de terceros permitiendo aprovechar las


contribuciones de la comunidad. Sin embargo, nunca es recomendable ejecutar scripts
NSE de fuentes desconocidas ya que un script malicioso comprometería fácilmente la
integridad y seguridad de la red. Hay que asegurarse siempre de la procedencia del
código de terceros. Los scripts NSE también se almacenan en un fichero base de datos
dentro del directorio principal de Nmap.

Para comenzar a utilizar los scripts NSE basta con ejecutar el siguiente comando:

nmap -sC 192.168.10.0/24

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

-sC Equivalente a --script=default

--script <categoria-script|directorio-scripts|script- Ejecuta los scripts especificados como


individual.nse|all> parámetros

103
©Clictic S.L.
--script-args=<var1=value1[,var2=value2,...]> Permite al usuario pasar argumentos para
reemplazar valores dentro del script

--script-trace Imprime en pantalla toda la información


relativa al tráfico generado por el script

--script-updatedb Permite al usuario actualizar la base de datos


de script de Nmap

5.3.7. RENDIMIENTO Y MEJORA DE DESEMPEÑO NMAP


Nmap es una herramienta extremadamente rápida, flexible y de ajuste preciso. Solo
tarda un quinto de segundo en escanear a un host utilizando el sondeo por omisión en
una red local. Sin embargo, en un escenario con cientos o miles de hosts por red, ese
quinto de segundo se transforma en una cantidad de tiempo considerable. Para
resolver estas situaciones, Nmap permite ejecutar tareas en paralelo, controlar los
tiempos de espera por respuesta, implementar algoritmos avanzados para mejorar el
desempeño y refinar los parámetros de los escáneres para evitar sondeos innecesarios.

Las opciones de rendimiento de Nmap se pueden dividir en las categorías que se


describen a continuación:
❏ Número de Reintentos: número de veces que Nmap intenta retransmitir las
sondas que no reciben respuesta. Puede ser reducido con la opción –max-retries.

❏ Sondeo en paralelo: permite realizar sondeos de puertos o versiones a múltiples


sistemas a la vez. Funciona dividiendo las direcciones IP destino en grupos y escaneando
un grupo a la vez. El tamaño de estos grupos se puede controlar con la opción –min-
host-group y –max-host-group y se puede incrementar la velocidad del sondeo
aumentando el tamaño mínimo del grupo. También se ejecutan sondas en paralelo y se
puede ajustar dinámicamente la cantidad dependiendo del desempeño de la red. Las
opciones –min-probe-paralelism y max-probe-paralelism controlan el número de
sondas en paralelo emitidas por Nmap.

❏ Tiempos: ajusta dinámicamente el valor de tiempo de espera de una respuesta a


una sonda enviada, basándose en los tiempos de respuesta de las que ya fueron
enviadas previamente. Se pueden establecer valores mínimos y máximos de tiempo y
definir el tiempo de espera inicial mediante las opciones --min-rtt-timeout, --max-rtt-
timeout y –initial-rtt-timeout respectivamente. LA mayoría de las veces, los usuarios
reducen el tiempo inicial de espera y el tiempo máximo de espera, para disminuir
también el tiempo de sondeo en redes filtradas. Las opciones –scan-delay y –max-scan-
delay permiten especificar la cantidad de tiempo a esperar entre cada sonda, opción útil
para sistemas que miden los tiempos de respuesta. Nmap ajustará dinámicamente el
tiempo de respuesta si detecta que hay un límite, opción usada por los atacantes para
evadir los sistemas de detección de intrusos. Algunos sistemas funcionan imponiendo
mínimos en el número de paquetes RST lo que provoca un retraso en el trabajo de
sondeo, pero Nmap puede burlar este límite con la opción –defeat-rst-ratelimit. Para
concluir, los paquetes RST son evidencia de que un puerto está cerrado, pero si el

104
©Clictic S.L.
sondeo no está buscando esta información, es más eficiente ignorarla y continuar con el
siguiente paso.

❏ Timing Template: existen 6 plantillas de tiempos en Nmap que controlan la


velocidad de ejecución de un sondeo. Pueden ser especificadas tanto por su nombre o
por un número: paranoid (0), sneaky (1), polite (2), normal (3) (utilizada por omisión),
aggressive (4), e insane (5). La opción T0 es la que menos rastros deja en la red, por
tanto es la más usada por los atacantes. Siempre hay que tener en cuenta que mientras
más rápido se realiza el sondeo, menos preciso será.

La siguiente tabla muestra un listado de opciones disponibles para modificar los


tiempos de espera de Nmap.
Opción Descripción
--min-parallelism/max-parallelism <tiempo> Especifica el número de sondas que van a ser
enviadas en paralelo
--min-rtt-timeout/max-rtt-timeout/ Especifica el tiempo de espera de ida y vuelta
initial-rtt-timeout <time> de la sonda antes de abortar o retransmitir
--scan-delay/–max-scan-delay <tiempo> Especifica el tiempo de espera entre sondas
--max-retries <intentos> Define el límite de retransmisiones de una
sonda
--host-timeout <tiempo> Tiempo máximo de sondeo a un host antes de
continuar con otro nodo en la red
--defeat-rst-ratelimit Ignorar los límites RST

5.3.8. TÉCNICAS DE EVASIÓN CON NMAP


Estas técnicas son las utilizadas en las auditorias de redes, con el objetivo de probar la
robustez de los sistemas de seguridad. Por ejemplo, se utilizan para verificar si los
cortafuegos están funcionando correctamente. Nmap incluye entre sus opciones, varias
herramientas efectivas para evadir cortafuegos y sistemas de detección de intrusos.

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

MTU Provista por el Usuario


Consiste en el envío de sondas fragmentadas, con la diferencia de que permite al
usuario definir el valor de la unidad máxima de transmisión MTU. En el siguiente
105
©Clictic S.L.
ejemplo, la opción –mtu indica a Nmap que el tamaño máximo de los paquetes es de
16-bytes. Un cortafuego puede que no detecte este tipo de fragmentación, todo
depende su configuración. La principal ventaja de esta técnica es que existe la
posibilidad de que el cortafuego no esté configurado para detectar paquetes
fragmentados en un tamaño de 16-byte.
nmap --mtu 16 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

La opción para realizar un sondeo con señuelos es -D y las direcciones IP de los


señuelos deben ser indicadas después de esta. La opción RND:[cantidad de señuelos],
sirve para indicar a Nmap que genere varias direcciones IP aleatorias que serán los
señuelos. En el ejemplo anterior se indica a Nmap que debe generar 10 direcciones IP
aleatorias.

Usar demasiados señuelos puede ocasionar congestión en la red y disminuir la


efectividad del sondeo. Algunos proveedores de servicios de Internet pueden filtrar
tráfico falso y por tanto reducir la efectividad del uso de señuelos para ocultar la
verdadera identidad del host emisor.

Sondeo ocioso zombi


Esta técnica aprovecha una característica presente en casi todos los SO que consiste en
generar valores secuenciales para el campo IPID cuando se crean los paquetes de
comunicación en red.

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.

Resumiendo, si A nota un incremento de 2 números en el IPID generado por Z, significa


que V está aceptando peticiones en un determinado puerto. Si el incremento es de un
sólo número significa que V no está aceptando peticiones en el puerto consultado.

# nmap -sI 10.10.1.100 10.10.1.252

Definición de puerto origen


Esta técnica intenta obtener provecho de cortafuegos mal configurados para aceptar
cualquier tipo de tráfico entrante dependiendo del número de puerto que se utilice. El
puerto 20 (FTP), el puerto 53 (DNS) y el 67 (DHCP) son puertos comunes susceptible a
este tipo de sondeo.
# nmap --source-port 22 scanme.insecure.org

Nmap seleccionará un puerto de manera aleatoria si no provee un puerto de origen. La


opción –source-port obliga a Nmap a usar el puerto especificado como origen de todos
los paquetes.

Agregar datos aleatorios


La búsqueda de patrones de comunicación entre los distintos nodos de la red es una de
las principales herramientas de defensa utilizada por los cortafuego. Buscan datos como
el tamaño de los paquetes, la frecuencia con la que son enviados, el host origen y el
destino, la dirección MAC del origen, etc. Es por ello que muchos cortafuegos tienen la
habilidad de detectar cuando un paquete es creado por Nmap y es porque por lo
general tienen un tamaño en bytes constante.
# nmap --data-length 25 10.10.1.100

La opción --data-length añade la cantidad especificada de datos adicionales a las sondas


enviadas para evadir la detección de patrones de los cortafuegos. En el ejemplo
anterior, se agregan 25 bytes a todos los paquetes enviados al host objetivo.

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

Falsificación de la dirección MAC


Al falsificar la dirección MAC del equipo que realiza el sondeo, se evita que los log de la
red registren la dirección real de quien realiza el ataque. Esto dificulta
considerablemente el trabajo de los IDSs en el momento de rastrear los paquetes en la
red para identificar su origen.Esto se realiza con la opción –spoof-mac.
nmap -sT -PN --spoof-mac 0 192.168.1.100

Esta opción puede ser controlada con los siguientes parámetros.


Argumento Función
0 (zero) Genera una dirección MAC aleatoria
Dirección MAC provista por Usar la dirección MAC provista por el usuario
el usuario
Nombre del fabricante Genera una dirección MAC de los siguientes
fabricantes (Apple, Dell, 3Com, etc.)

Envío de checksums inválidos


El protocolo TCP / IP utiliza sumas de verificación para garantizar la integridad de los
datos. En raras ocasiones, elaborar paquetes con malas sumas de comprobación puede
producir una respuesta por parte de cortafuegos y de IDSs mal configurados.
# nmap --badsum 10.10.1.50

5.3.9. OPCIONES DE FORMATO DE SALIDA


Nmap permite formatear los datos de salida mediante varias opciones. Estos datos
pueden ser guardados en un fichero de texto, en un fichero XML o en el formato
engrapable de Nmap.

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

Guardar la salida de Nmap en un fichero de texto


Para guardar la salida de Nmap en un archivo de texto se utiliza la opción -oN seguida
del nombre del fichero de texto.
#nmap -oN resultados.txt scanme.insecure.org

Se puede acceder luego al resultado del sondeo, en caso de ser necesario.


# cat resultados.txt
# Nmap 7.01 scan initiated Sun Apr 8 16:28:01 2018 as: nmap -oN
fichero.txt scanme.insecure.org
Nmap scan report for scanme.insecure.org (45.33.49.119)
Host is up (0.38s latency).
rDNS record for 45.33.49.119: ack.nmap.org
Not shown: 994 filtered ports
PORT STATE SERVICE
22/tcp open ssh
70/tcp closed gopher
80/tcp open http
113/tcp closed ident
443/tcp open https
31337/tcp closed Elite

Si se quieren añadir más resultados al fichero resultados.txt se debe utilizar la opción –


append-output junto con la opción -oN.

Guardar salida a un fichero XML


La opción -oX permite guardar la salida del comando Nmap en un fichero XML como se
muestra a continuación.
#nmap -oX resultados.xml scanme.insecure.org

Al igual que ocurre con el fichero resultados.txt, los resultados guardados en formato
XML pueden ser consultados posteriormente.

cat resultados.xml

<?xml version="1.0" encoding="UTF-8"?>

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.

Formato grepable de Nmap


Su objetivo es facilitar los procesos de búsqueda en cadenas de texto realizados por la
herramienta grep de Linux. Para habilitar esta funcionalidad se utiliza la opción -oG.
# nmap -oG grepable.txt -O scanme.insecure.org
# grep "Linux" grepable.txt
Host: 45.33.49.119 (ack.nmap.org) Ports: 22/open/tcp//ssh///,
70/closed/tcp//gopher///, 80/open/tcp//http///,
113/closed/tcp//ident///, 443/open/tcp//https///,
31337/closed/tcp//Elite/// Ignored State: filtered (994) OS: Linux
3.10 - 3.19 Seq Index: 263 IP ID Seq: All zeros

Guardar salida en todos los formatos de archivo soportados por Nmap


La opción -oA seguida del nombre del fichero permite guardar la salida de un comando
Nmap en los 3 formatos de fichero soportados por la herramienta.
# nmap -oA resultados -O scanme.insecure.org

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.

Imprimir estadísticas en pantalla


Nmap permite realizar sondeos periódicos, para imprimir en pantalla los resultados de
cada uno de ellos. El tiempo puede ser especificado en segundos (s), minutos (m) y
horas (h).
#nmap --stats-every 5s scanme.insecure.org

Formato de salida script kiddie


Este formato imprime los datos de los resultados de Nmap, en un estilo de escritura
comúnmente usado por adolescentes en las salas de chat. No ofrece más usos que el de
mostrar un formato de salida que pudiera parecer gracioso a algunos usuarios.
# nmap -oS kiddie.txt -O scanme.insecure.org

La salida del comando se puede observar en el siguiente ejemplo:


# cat kiddie.txt
STarTInG NMap 7.01 ( Httpz://nmAP.org ) at 2018-04-08 17:35 -04
Nmap scAn rep0rt FOr $caNm3.|n$3Cur3.0rg (45.33.49.119)
H0$T 1s uP (0.31s lat3nCy).
rDNs rec0rd for 45.33.49.119: aCk.nmap.0rg
NOt shOwn: 994 filtered p0Rt$
PORT sT4T3 sERV!CE
22/tcp op3n s$H
70/tcp cl0$3D GOpheR
80/tcP op3N http
113/tcP closed idenT
443/tcp op3n https
31337/tcp clo$3d Elite
D3v|ce type: gen3ral pURpos3|WAP|$p3c1al!z3d|storAge-Mi$c
Running (jU$t GU3SS1NG): linux 3.X|4.X|2.6.X (98%), 4SuS 3Mbedd3d
(90%), Cr3$tr0n 2-S3r1e$ (89%), hP embedD3d (89%)
Oz cPE: cp3:/0:LInux:l|nuX_k3rn3l:3 cpe:/o:l|nux:l!nuX_kernEl:4
cPe:/0:L1Nux:l1nuX_kern3l:2.6 cPe:/0:linux:l!nUx_kernEl
CPe:/h:a$us:Rt-ac66u cp3:/0:crE$TrOn:2_sErieS Cpe:/h:hp:p2000_G3
AggreS$iv3 0z GuE$S3z: L1nux 3.10 - 3.19 (98%), Linux 3.2 - 4.0 (96%),
LiNux 3.10 (94%), L!nux 3.18 (93%), l!nuX 2.6.32 - 3.13 (93%), LinuX
2.6.22 - 2.6.36 (91%), LInux 3.2 - 3.8 (91%), L!nux 3.4 - 3.10 (91%),
LInux 2.6.39 (91%), L!nux 3.11 - 3.12 (90%)
No exact OS matches for host (test conditions non-ideal).

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.

Sondeo básico de servicios.


Siempre que se realice un sondeo con Scanline, la herramienta ejecutará una
verificación mediante mensajes ICMP (ping), a menos que se le indique lo contrario. Si
la verificación devuelve una respuesta, Scanline buscará los servicios básicos presentes
en el equipo y los mostrará en pantalla. El comando para utilizar scanline es sl.
Sl 192.168.1.1

Sondeo UDP para detectar equipos en la red.


En ocasiones se presenta el caso de que alguno de los dispositivos conectados a la red
está bloqueando mensajes ping haciendo que Scanline asuma que el dispositivo no está
conectado. Para prevenir este comportamiento se utiliza la opción -p para evitar que
Scanline valide la existencia de los equipos en red mediante el envío de mensajes ping.
Sl -p -u130-140 192.168.1.1

El comando anterior realiza un sondeo UDP en los puertos típicamente asignados a los
servicios de NetBIOS.

Funcionalidad de Scanline para guardar salida en fichero.


Esta herramienta también ofrece funcionalidades prácticas como poder escribir la salida
de los comandos en un fichero, tal y como se muestra en el siguiente ejemplo.
sl -t 1-65535 10.0.2.1-30 -o salida.txt

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.

Banner Grabbing con Scanline.


Scanline ofrece la funcionalidad de obtener información mediante la técnica banner
grabbing. El uso de esta técnica es extensivo entre los administradores de sistema,
debido a que les proporciona información útil para realizar inventario de los dispositivos
y software presentes en las redes.
sl -pvbt 21,22,25 10.0.2.15-254

La opción -b indica que realice banner grabbing sobre el rango de direcciones ip


indicadas. La opción -v indica que imprima la mayor cantidad de información posible en
pantalla. La opción -t es necesaria para realizar escaneos en puertos TCP, y la -p,
previene el chequeo mediante mensajes ICMP.

Definición de tiempo de espera por sondeo.


Igual que en Nmap, en Scanline se puede definir un tiempo límite de espera entre cada
sondeo. El siguiente ejemplo realiza un escaneo de puertos exhaustivo a un grupo de
equipos comprendidos entre las direcciones IP 10.0.2.1 a 10.0.2.30. Los puertos
examinados en el siguiente ejemplo van del 1 al 5000. Cada sondeo individual tardará 5
segundos en completarse.
sl -vbt 1-65535 10.0.2.1-30 -d 5000

Para configurar el tiempo de espera en cada sondeo, se indica la cantidad de tiempo en


milisegundos después de la opción -d.

Sondeo para obtener nombres de host a partir de las direcciones IP.


Los siguientes comandos, sirven para obtener los nombres de host a partir de las
direcciones IP.
sl -nr 10.0.2.1-30
sl -npr 10.0.2.1-30

En el ejemplo que se muestra anteriormente, el primer comando realiza un sondeo sin


escaneo de puertos, solo con envío de mensajes ICMP. El segundo ejemplo no realiza ni
escaneo de puertos ni envío de mensajes ICMP.

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

Combinación de comandos con tuberías (comandos complejos).


El ejemplo que se muestra a continuación hace un sondeo sin verificación mediante
mensajes ICMP para buscar ordenadores que tengan abiertos los puertos TCP 80 y 443.
Si recibe alguna respuesta, se realiza un escaneo profundo en cada uno de ellos.
sl -hpt 80,443 10.0.2.1-30 | sl -f "stdin".

El uso de tuberías “|” permite realizar comandos complejos que facilitan el uso de esta
herramienta.

5.4. RECONOCIMIENTO. LIMITAR EXPLORAR


El personal responsable de la administración de las redes y seguridad en las compañías,
debe conocer todos los componentes de una red. Todos pueden representar un punto
de entrada a un tercero con malintencionado, por lo que el trabajo de mantenimiento y
actualización de estos componentes es complejo y debe realizarse periódicamente.

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í.

5.4.1. POLÍTICAS DE LA EMPRESA


El encargado de realizar el sondeo dentro de una red por muy simple que sea, debe
contar con la autorización adecuada. En caso contrario, lo más probable es que las
políticas de uso de la red de la empresa, prohíban la ejecución de cualquier tipo de
escáner dentro de la red.

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.

5.4.2. LIMITAR Y EXPLORAR


Hay que tener presente que aunque todas las herramientas de exploración de redes
pueden ser configuradas para incrementar su efectividad, ninguna de ellas podrá buscar
de manera eficiente si no se definen correctamente las características que se desean
encontrar en la red. En las redes con múltiples nodos es recomendable realizar sondeos
muy puntuales y bien delimitados.

En apartados vistos anteriormente se indican variables de investigación para determinar


cuáles son los activos presentes en la red. Generalmente, en la realización de los
procesos de reconocimiento de la red, se busca por parámetros como los siguientes:

❏ Direcciones MAC: son únicas e irrepetibles y están asociadas a un fabricante


específico (Intel, Apple, etc.).
❏ Sistemas Operativos: cada SO instalado en los nodos conectados a la red, tiene el
potencial de representar un eslabón débil en la seguridad de la misma. Es preciso
enumerarlos y mantenerlos actualizados.
❏ Servicios, aplicaciones y sus versiones: igual que ocurre con los sistemas
operativos, un servicio desactualizado o mal configurado puede representar una
amenaza a la seguridad del sistema.

Además de delimitar las búsquedas según los parámetros descritos anteriormente, es


necesario diseñar estrategias apropiadas en las que se limite el número de hosts a
explorar en cada sondeo teniendo en cuenta qué segmento de la red se quiere explorar;
y en las que se verifique la intensidad del tráfico presente en la red para evitar
congestionarla.

5.5. RECONOCIMIENTO. EXPLORACIÓN


Ta y como se menciona en el apartado previo, antes de explorar una red se debe contar
con la debida autorización y se debe tener muy claro los parámetros que delimitarán la
búsqueda. A continuación se presenta un escenario de exploración común en el
mantenimiento de redes en una compañía.

5.5.1 ESCENARIO SISTEMA OPERATIVO DESACTUALIZADO


Una de las tareas encargadas al personal de seguridad de la red, es la de mantenerse
informado sobre la estabilidad y robustez de los SO instalados en los nodos del sistema
mediante un sitio web que cuenta con una extensa base de datos sobre software,
hardware y sus exploits.

Este escenario plantea un supuesto donde un administrador de sistemas se encuentra


con que la versión de Windows instalada en varios dispositivos en la red presenta un

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.

#nmap -n -sn -PA 192.168.10.1/24



Nmap scan report for 192.168.10.105
Host is up.
Nmap scan report for 192.168.10.106
Host is up.
Nmap scan report for 192.168.10.107
Host is up.

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 …

Suponiendo que el archivo con estas direcciones IP se llama direcciones.txt, se procede


a realizar el sondeo más profundo para obtener los sistemas operativos instalados en
los hosts de la lista.
#nmap -oG sistemas-operativos.txt –A –iL direcciones.txt

Dentro del fichero sistemas-operativos.txt se encontrará toda la información relativa a


los sistemas operativos instalados en la lista de hosts consultados. El comando -oG
guarda los datos en formato grepable para facilitar las búsquedas dentro del fichero
usando a través del comando grep de Linux.

El proceso descrito puede ser implementado para localizar versiones de servidores en


las que se haya descubierto un exploit crítico de seguridad, o versiones de RDBMS como

116
©Clictic S.L.
Mysql o PostgreSQL, etc. Para todos estos procesos de búsqueda se aplican los mismos
principios.

5.6. RECONOCIMIENTO. ENUMERAR


Los procesos de delimitación y exploración generan información que en muchas
ocasiones viene en texto plano. Por tanto, el primer paso en la enumeración de los
activos encontrados durante el sondeo es el de dar formato y manejar las cadenas de
texto que contienen la información de interés (SO, servicios y sus versiones,
aplicaciones).

En el caso descrito en el apartado anterior, se obtienen datos sobre los sistemas


operativos instalados en todos los equipos activos de una red de 256 ordenadores.
Teniendo en cuenta que realizar una búsqueda por una versión específica de SO genera
una gran cantidad de datos, el proceso de inventariar todos los activos de software y
hardware en una red generará una mayor cantidad de información. Sin embargo, se
pueden implementar técnicas simples para controlar de manera ordenada el flujo de
información generada en cada uno de los procesos de exploración, como estas que se
muestran a continuación:
 Nombres auto-explicativos a todos los archivos que contienen los datos
generados en la exploración.
 Utilizar las herramientas de exploración y procesamiento de texto adecuadas.
 Conservar un registro de los resultados en una base de datos.

El primer punto pertenece a la parte de la documentación metodológica sobre el


proceso de inventariado de red de la empresa. Con una metodología bien definida, se
evitan posibles errores en el manejo de la información que pudieran contribuir a que
pase desapercibido algún sistema vulnerable.

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).

6.1.1.1 SEGÚN SU SITIO DE ORIGEN


❏ Ataques Locales: son realizados por un atacante sin tener que estar conectados a la
web. Pueden dirigirse única y directamente al equipo desde donde están realizando
el ataque o a su vez pueden atacar a todos aquellos conectados a la red de dicho
equipo. Fueron los ataques más utilizados hace años para obtener información de
manera fraudulenta y a día de hoy siguen siendo utilizados como métodos de
obtención de datos.

❏ 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.

6.1.1.2. SEGÚN SU OBJETIVO


❏ Ataques Pasivos: el objetivo principal es la obtención de información y las acciones
que realiza para ello no afectan el funcionamiento de la red o del equipo. Busca los
datos de su interés mediante el escaneo de redes o de ingeniería social, ya sea para
realizar después un ataque activo o para otros propósitos.

Al escanear las redes se espera encontrar la información mediante el análisis del


tráfico de un equipo, el estado de un puerto, el descifrado de información encriptada
o incluso revisando en la basura, sin la necesidad de contactar con algún usuario que
proporcione esta información. Se conoce ingeniería social como la práctica de
obtener datos confidenciales mediante la manipulación de uno o varios usuarios
legítimos. Es utilizada por investigadores privados y delincuentes y se basa en que el
usuario siempre será el eslabón más débil en un sistema de seguridad empresarial.
Las prácticas más realizadas de ingeniería social son:

❏ Tailgating: es una de las brechas de seguridad más comunes e inocentes


causadas por la ingeniería social. Consiste en usar el pase de una persona
autorizada para entrar en un área restringida, mientras esta está entrando en
dicha área. Se puede colaborar en esto de manera no intencionada:
permitiendo visitantes sin identificación, manteniendo la puerta abierta para
que pase algún extraño, o incluso aceptando la presencia de trabajadores no
identificados correctamente sólo por el hecho de que posean un uniforme. La
simple cortesía puede significar la aparición de una brecha de seguridad. Esto
se puede prevenir implementando un control más riguroso del tráfico de

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.

❏ Shoulder Surfing: “mirar por encima del hombro”. Consiste en obtener


información importante (contraseñas, códigos de autenticación, nombres de
usuario o frases secretas) de un usuario en concreto, mediante el simple
hecho de espiarle por encima del hombro. Se puede realizar a corta distancia
mirando directamente sobre el hombro de la víctima, o desde una media o
larga distancia, utilizando instrumentos como cámaras secretas, binoculares o
micrófonos ocultos. No es necesario contar con habilidades técnicas para
implementar este tipo de táctica, basta con tener precaución de no ser
observado al intentar sustraer la información. En la mayoría de los casos,
estos ataques conllevan a una suplantación de identidad.

❏ Pretexting: “Robo de identidad”. Suele realizarse por teléfono. El atacante


crea un escenario imaginario o un pretexto, como por ejemplo, hacerse pasar
por una persona concreta o por un teleoperador de alguna compañía de
confianza, para aumentar las probabilidades de que la víctima entregue por sí
misma información sensible. Primero se realiza una investigación sobre los
datos principales de la persona a la que le desea sustraer la información
personal para alimentar el pretexto y convencer a la víctima de que se trata
de una llamada fidedigna. De este modo, el delincuente se aprovecha de los
fallos de seguridad que conllevan las operaciones por llamada telefónica. La
mayoría de la información obtenida para realizar este tipo de actividad ilegal
está disponible públicamente en las redes sociales, por lo que debe existir un
control más riguroso sobre ello o solicitar información más específica al
recibir llamadas similares.

❏ Baiting: es una táctica muy efectiva en usuarios confiados o ingenuos.


Consiste en dejar una unidad de almacenamiento de cierto valor al alcance
de un usuario colocándolo cuidadosamente en un lugar visible sólo para él o
simplemente dejándolo en su lugar de trabajo. El dispositivo estará infectado
con un malware o ransomware y usualmente tomará acción apenas sea
insertado en cualquier equipo, sin siquiera llegar a ejecutarse. A veces,
apoyados por la curiosidad humana, estos dispositivos podrán tener
etiquetas engañosas para incitar a los usuarios a su exploración. Por ejemplo:
“Archivo Confidencial” o “Salarios Mes Actual”.

❏ Distracción: es un principio tomado desde el ámbito del ilusionismo, en


donde la atención de la víctima debe ser desviada hacia algo insignificante
para así obtener la información valiosa durante este tiempo. Con una técnica
tan sencilla como ésta el atacante puede obtener una foto del lugar de
trabajo de la víctima, documentos importantes colocados en un lugar
accesible en dicho lugar de trabajo o incluso sustraer ilícitamente cualquier
tipo de unidad de almacenamiento (como CDs o USBs) o dispositivo portátil.

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.

6.2. ATAQUES REMOTOS EN UNIX


El sistema operativo Unix fue diseñado para ser de uso fácil por parte de cualquier
usuario y les permite compartir recursos entre ellos. Sin embargo, las variantes de
dominio público de este SO son especialmente vulnerables y sin un cortafuegos
adecuado no pueden considerarse seguras. A pesar de esto, UNIX no es más o menos
inseguro que otros equipos con diferentes sistemas operativos instalados, ya que todos
poseen vulnerabilidades antes de la implementación de un sistema de seguridad
independiente del sistema operativo.

Como es un sistema operativo multiusos, cuenta con más de cientos de miles de


equipos funcionando a la vez en el mundo. Su uso principal a día de hoy es como
servidores empresariales y por tanto, la gran mayoría de los cibercriminales deben
saber cómo trabajar en UNIX y cómo atacarlo si desean obtener información sobre las
compañías. Una de las maneras más comunes de atacar a estos equipos, sea activa o
pasivamente, es a través de acceso remoto. Entre ellos se pueden encontrar:

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.

La herramienta más básica para realizar un escaneo de puertos en UNIX es el comando


telnet en la línea de órdenes del mismo equipo que se desea escanear. Sin embargo,
esta herramienta es muy simple y básica, pues en el caso de que exista un cortafuegos
en el puerto, no mostrará respuesta alguna hasta agotar su límite de tiempo o hasta
que el escaneo sea suspendido manualmente. Además, no es recomendable utilizarla
para escanear una gran cantidad de puertos en todo un sistema y probablemente no
sea utilizada por atacantes que estén realizando algún ataque remoto. Es mucho más
probable que los atacantes utilicen aplicaciones como Nmap o Nessus.

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.

Las técnicas de escaneo de puertos se pueden clasificar en:


❏ Escaneos abiertos: “escaneos open”. Se basan en establecer una conexión TCP
completa mediante el protocolo de las tres vías o “three-way handshake”, haciendo
que sean muy fáciles de detectar y por tanto detener. Mediante el uso del comando
connect(), similar a telnet, el perpetrador intenta entablar una conexión con un
puerto en específico en la máquina víctima y según la respuesta que obtenga puede
conocer su estado actual. Es una técnica rápida, fácil de realizar, fiable y no requiere
de privilegios por parte de la máquina del atacante, sin embargo, es muy fácil de
detectar.

❏ Escaneos semi-abiertos: “escaneos half-open”. El atacante finaliza la conexión antes


de que se complete el protocolo de las tres vías, y esto hace que sea un poco más
complicado de detectar por parte de sistemas de seguridad muy simples de
detección intrusos. No obstante, es detectable por otras herramientas. Algunos
ejemplos de escaneos semi-abiertos son:
❏ Escaneo SYN: el equipo que escanea la red genera paquetes IP, los envía y
monitorea las respuestas a los mismos en lugar de utilizar funciones de la red
del sistema operativo. La aplicación encargada de escanear puertos envía un
paquete SYN; si el puerto está abierto, responderá con un paquete SYN-ACK,
y si se encuentra cerrado, pero sin un filtro en específico, el puerto
responderá inmediatamente con un paquete RST. Para cerrar la conexión
antes de finalizar el protocolo de 3 vías, el equipo analizador enviará una
señal de RST.

❏ Escaneo en Segundo Plano: se basa en el envío de paquetes de datos falsos


hacia un puerto para verificar su estado actual y los servicios que tiene
disponibles. Esto se logra “personificando” a otro equipo, aparentemente
legítimo, que no esté transmitiendo o recibiendo información y estudiando el
comportamiento del puerto que se quiere analizar ante esta anomalía. Se
suele realizar en ordenadores que estén trabajando en segundo plano.
También se utiliza para detectar qué máquinas tienen permitido interactuar
entre sí, con direcciones IP de confianza. Puede ser llamado “escaneo zombi”,
debido a que el ordenador escaneado y el equipo personificado teóricamente
se encuentran inutilizados o en reposo, pero permanecen conectados.

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.

DENEGACIÓN DE SERVICIO: “DoS” (Denial of Service)


Consiste en un ataque activo donde el atacante busca deshabilitar completamente un
equipo o una red de equipos conectados a Internet. Normalmente se basan en

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.

Pueden detenerse normalmente bloqueando la dirección de la que se generan tantas


solicitudes. Y es por ello que es más común que se realice un Ataque de Denegación de
Servicio Distribuido (DDoS) ya que la gran cantidad de solicitudes se distribuyen en un
gran número de IP diferentes que dificulta encontrar la localización del atacante y
detenerlo.

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 IP: es la más utilizada y conocida actualmente. Se basa en reemplazar


la dirección IP del atacante con la de un ordenador autorizado, o cambiar la dirección
IP de origen de un paquete TCP/IP en específico por una IP autorizada. Puede ser una
preocupación en sistemas sin un cortafuegos eficiente. Si el receptor del paquete
necesita emitir una respuesta, o hará directamente hacia el equipo que está
sirviendo de disfraz, no necesariamente hacia el equipo que realice el ataque.

❏ 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

FUNCIONAMIENTO DE LA FALSIFICACIÓN DE ARP

❏ Falsificación de DNS: “Envenenamiento del DNS”. En este ataque, el usuario es


forzado a navegar en un sitio web falso camuflado de manera que parezca real, para
poder desviar el tráfico de la página original o para sustraer los datos y credenciales
de los usuarios. Esto se logra reemplazando las direcciones IP almacenadas en el DNS
del usuario, desde las originales hasta aquellas deseadas por el atacante. Cada vez
que el usuario desee entrar a un sitio web en concreto, ya sea introduciendo
directamente la url de la web o clicando en sus marcadores, el DNS “envenenado” lo
redireccionará al sitio falso del atacante. Estos ataques pueden darse por largos
períodos de tiempo sin ser detectados.

❏ 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.

❏ Fuerza bruta: Esta técnica, a pesar de no ser la estadísticamente más eficiente, es


ampliamente usada incluso en la actualidad. Consiste en que el atacante configura
una serie de valores predeterminados, introduce solicitudes a un servidor utilizando
estos valores, y luego analiza la respuesta de estos servidores. Se suelen considerar
el tipo de introducción (alfabética, numérica, alfanumérica o con caracteres
especiales), número de intentos posibles otorgados por el servidor, eficiencia del
sistema o programa que se realice el ataque, y el número de caracteres (y, por ende,
de combinaciones) a descifrar. Esto es sobre todo utilizado para la obtención de
contraseñas ilícitamente, ya sea porque no se tiene tiempo o no posee recursos para
realizar un ataque pasivo; en este caso, el perpetrador realiza indefinidos intentos en
iniciar sesión con las credenciales de un usuario víctima, esperando un inicio de
sesión exitoso.

❏ Cross-site scripting: es un tipo de ataque de inyección donde se introducen scripts


maliciosos a un sitio web benigno y de confianza. Ocurren cuando un usuario utiliza
una aplicación web para enviar código malicioso, generalmente en forma de un
script complementario al navegador, hacia un usuario diferente, usualmente la
víctima. El navegador del usuario no tiene manera de sospechar de que se trata de
un script malicioso y por lo tanto lo ejecutará sin problema. Debido a que el
navegador “confía” en dicho script, el atacante tendrá derecho a las cookies, a las
configuraciones de inicio de sesión o cualquier otra información delicada contenida
en el navegador.

126
©Clictic S.L.
Cross-site scripting en twitter para generar retweets automáticos,
afectando al cliente tweetdeck

6.3. ATAQUES REMOTOS SOBRE SERVICIOS INSEGUROS EN UNIX


6.3.1 INTRODUCCIÓN
Los ataques remotos en UNIX son amenazas reales que aprovechan las vulnerabilidades
existentes en programas adjuntados a distribuciones de sistemas de este tipo. Pueden
pasar por alto al técnico o usuario menos experimentado, pero son un punto
importante a considerar como técnico de seguridad de redes.

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.

6.3.2. ATAQUES REMOTOS A TRAVÉS DE SERVICIOS TCP


A continuación se muestra un listado con ataques a servicios TCP de UNIX y los riesgos
que traen:
➔ Puerto 1 de TCP (destino): utilizado por Service Multiplexer para contactar
múltiples servicios empleando un nombre de servicio en vez de un número. Los
equipos de SGI implementaban este servicio, pero traían consigo una contraseña
predefinida, ocasionando riesgo de filtrado de información.

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.

➔ Puertos 3, 4, y 5 de TCP (fuente): la herramienta envía un paquete a través del


puerto fuente 3 con la etiqueta FIN y ACK para identificar el sistema operativo
de la víctima, pudiendo causar un riesgo de filtrado de información.

➔ Puerto 7 de TCP (destino): puede ser usado para ataques de denegación de


servicio (DoS) locales y suele estar bloqueado de manera predeterminada por
cortafuegos.

➔ Puerto 11 de TCP (destino): el servicio systat provee información para la


ejecución de servicios a través de una red. No es muy relevante actualmente ya
que suele ser desactivado, pero de no estarlo supone de un riesgo de filtrado de
información.

➔ Puerto 13 de TCP (destino): supone riesgo de ataque DoS mediante el servicio de


horarios de UNIX que llevaba la hora real a través de la red. En Red Hat Linux 6.2
se podía realizar un ataque de denegación de servicio a través de una
vulnerabilidad en los sockets de la red.

➔ Puerto 19 de TCP (destino): supone riesgo de ataque DoS local a través del
generador de caracteres, Chargen. Suele estar bloqueado por cortafuegos.

➔ Puertos 20 y 21 de TCP (destino): el 20 es el puerto de datos FTP y el 21 es el


canal de comando, contiene varias vulnerabilidades:
◆ Servidores FTP anónimos con capacidad de subida de archivos: partes
malintencionadas pueden utilizar estos servidores para almacenar
software o archivos multimedia ilegales.
◆ Sniffers: FTP utiliza un protocolo de texto no cifrado que transmite
nombres de usuarios y contraseñas visibles, haciéndolas vulnerables a
programas rastreadores, o sniffers.
◆ Errores de segundo plano FTP: contienen errores de segundo plano que
pueden causar problemas de seguridad. Existen muchas versiones de
servidores FTP y cada una tiene su error de segundo plano. Ejemplo: los
existentes en las instalaciones de Red Hat Linux 7.0, 7.1, y 7.2 con
capacidad FTP.
◆ Ataques DoS: los atacantes pueden cargar archivos y causar un denegado
de servicio, principalmente si se permite la subida anónima de archivos.

➔ Puerto 22 de TCP (destino): las vulnerabilidades presentes en versiones iniciales


de Secure Shell (SSH) daban lugar a situaciones que iban desde una denegación
de servicios hasta control remoto total del root.

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 25 de TCP (destino): es el puerto del servidor SMTP, generalmente


utilizado como un servidor para sendmail, qmail, o postfix. En una versión de
sendmail que actualmente está obsoleta, existía una vulnerabilidad que permitía
el acceso a los servidores a través del comando debug, obteniendo acceso a
privilegios root. También otros errores en el archivo de configuración de
sendmail permitían el acceso no autorizado en el servidor.

➔ Puerto 53 de TCP (destino): está reservado para el servicio de nombres de


dominio (DNS). Presenta un riesgo de filtrado de información.

➔ 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 79 de TCP (destino): finger es un servicio de UNIX que se utiliza para


encontrar información sobre usuarios. Los bugs y fallos dentro de este servicio
pueden vulnerar el acceso root del sistema.

➔ Puerto 80 de TCP (destino): es utilizado por HTTP. Presenta muchas


vulnerabilidades como ataques de inyección SQL, gusanos IIS, ataques de
aplicaciones web, abuso de webmail, abuso CGI, errores en servidores web y de
módulos de extensión, mala configuración de servidor y ataques a servicios
disponibles mediante el puerto 80. Los riesgos contemplan un rango desde
filtrado de información hasta control remoto de root.

➔ 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 111 de TCP (destino): el servicio en segundo plano RPC portmapper se


ejecuta a través de este puerto y presenta una vulnerabilidad crítica: el acceso
remoto a root a través de servicios manejados por portmapper, como NIS y NFS.

➔ 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 143 de TCP (destino): los programas en segundo plano de protocolos


basados en IMAP presentan vulnerabilidades críticas que permiten el acceso
remoto a root en algunas versiones, como WU-IMAPD. También pueden ser
llevados a cabo ataques de búsqueda exhaustiva de claves.

➔ 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 515 de TCP (destino): el servicio en segundo plano printer presenta


muchas fallas de seguridad que permiten el acceso no autorizado a root. El
hecho de controlar el servicio de printer permite al atacante sobrecargar el
servicio con peticiones de impresión, principalmente provocando un DoS de
impresión.

➔ Puerto 1080 de TCP (destino): al puerto proxy SOCKS se le realizan escaneos


constantemente debido a que un proxy mal configurado puede permitir la
conexión de anónimos a través de la red.

➔ 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 6667 de TCP (destino): es utilizado por IRC, un sistema de


comunicaciones con muchas vulnerabilidades. Posibilita el acceso de agentes
atacantes automáticos, gusanos web, entre otros. Los troyanos están diseñados
para comunicar información a través de canales IRC que pueden ser utilizados
para realizar ataques DoS.

6.3.3. ATAQUES REMOTOS A TRAVÉS DE PUERTOS UDP


➔ Puerto 53 de UDP (destino): presenta vulnerabilidades similares al puerto 53 de
TCP, en parte debido a software DNS BIND. Los ataques realizados a este puerto
crean una situación DoS, además de permitir el filtrado de información
importante.

➔ 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.

❏ PHPMailer < 5.2.19 - Sendmail Argument Injection (CVE-2016-1003/CVE-2016-


1004): es de tipo Webapps que aprovecha una vulnerabilidad dentro de
PHPMailer hasta la versión 5.2.19 permitiendo al atacante escribir un archivo
con contenidos parcialmente controlados dirigido a una ubicación arbitraria
mediante la inyección de argumentos. Este módulo escribe una carga al root
web del servidor web antes ejecutarla con una petición HTTP. El usuario que
ejecuta PHPMailer deberá otorgar permisos de escritura al directorio de
WEB_ROOT especificado. Puede tardar unos minutos en llevarse a cabo.

❏ NfSen < 1.3.7 / AlienVault OSSIM 5.3.4 - Command Injection (CVE-2017-6971):


también es de tipo Webapps donde un atacante remoto autenticado (o con una
ID de sesión PHP robada) puede obtener control total de un sistema enviando
una petición que contenga caracteres de control y comandos de shell que serán
ejecutados como root en un sistema vulnerable.

❏ OpenSSL 1.1.0a/1.1.0b (CVE-2016-7054): es un ataque de tipo DoS mediante el


cual un usuario remoto no autenticado puede negociar el conjunto de
programas cifrado de ChaCha20-Poly1305 y enviar un mensaje de suficiente
longitud con una MAC incorrecta para causar que el código vulnerable
encargado del espacio de almacenamiento dinámico sea cero y forzando a que
OpenSSL deje de funcionar. La solución a esto es actualizar la versión de
OpenSSL a 1.1.0c o a una más reciente.

❏ Trustwave SWG 11.8.0.27 - SSH Unauthorized Access (CVE-2017-18001): permite


al atacante enviar una clave SSH al producto SWG que será usada por el propio
SWG como la clave de inicio SSH. Esto permite al usuario no autenticado enviar
una petición POST a /sendkey, que al ser añadida a Trustwave SWG, posibilitará
que el atacante pueda acceder al dispositivo y pueda ejecutar comandos en
root.

❏ 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.

6.4.1 ATAQUES FÍSICOS


Si el atacante solamente posee acceso a un equipo, pero no a ningún usuario dentro de
él, los ataques de naturaleza física suelen ser efectivos. Estos se clasifican como un
ataque local porque requieren un mínimo acceso a la máquina en cuestión, aunque solo
se trate de acceso físico. No obstante, no se consideran como ataques físicos aquellos
donde ocurra el hurto del equipo o de algún dispositivo de almacenamiento extraíble ya
que tienen que ver más con políticas legales o administrativas más que con algún fallo
técnico. Además, robar un ordenador no cuenta como saquearlo.

6.4.2 ATAQUES EN EL COMANDO DE ARRANQUE


Supongamos que el perpetrador del ataque no busca robar el equipo, sino que intenta
reiniciarlo al cortar momentáneamente su fuente de electricidad o apretando el botón
“Reiniciar”. Aunque esta estrategia puede considerarse dañina para cualquier equipo
Unix, casi siempre se reinician sin algún problema e intentan nuevamente iniciar Unix.
Sin embargo, si el ordenador está configurado para iniciar desde una unidad extraíble
(sobre todo un CD-ROM, como en muchos casos de equipos Intel i386), se presentaría
el primer escenario posible de ataque. Si se cambia el modo de arranque, un hacker
podría iniciar la máquina dentro de otro sistema operativo, como DOS, que no tenga las
mismas configuraciones sobre privilegios que Unix. Pueden utilizarse servicios como
Itools Kit (permiten el inicio de discos de Linux desde Windows) para acceder a los
discos duros y comprometer la información sensible. Con esto, el atacante podría
localizar y robar cualquier archivo con contraseñas dentro de dichos discos, incluso si se
utiliza /etc/shadow , o si es sólo legible por un usuario en específico.

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.

6.4.4 ATAQUES EN EL PROTECTOR DE PANTALLA


Al notar que un equipo está bloqueado y que usa un protector de pantalla, el atacante
analiza que aún tiene posibilidades para vulnerarlo ya que los protectores de pantalla
de Unix a veces pueden también ser burlados. Tanto para Windows como para Unix se
puede usar un truco muy conocido que utiliza un CD-ROM de inicio, ya que algunos
equipos con Unix pueden leerlos automáticamente y ejecutar de inmediato la aplicación
especificada. Si esta aplicación es un script de Shell que ejecute killall xlock, se puede
vulnerar fácilmente la defensa del protector de pantalla. En el peor de los casos, si no se
realiza con sigilo, el equipo podría reiniciarse fácilmente y ser atacado en el arranque
con la técnica explicada anteriormente.

6.4.5 ABUSO DE RUTAS


El abuso de rutas es uno de los ataques más fáciles de realizar, pero solo funciona en
sistemas en donde los administradores fueron descuidados lo suficiente para dejar este
camino libre. Si el entorno de root contiene un “.” (directorio actual) en la ruta, el
usuario con credenciales root puede ser engañado para ejecutar programas maliciosos.
Las probabilidades de que esto funcione son muy bajas ya que no todos los sistemas
Unix modernos poseen un “.” en su ruta antes de otros comandos y la mayoría de las
guías prácticas sobre seguridad en Unix sugieren evitar el uso de “.” en los comandos de
ruta.
De cualquier manera, si puedes convencer al administrador de ejecutar algo bajo
privilegios de root el sistema de seguridad estará completamente comprometido. Por
ejemplo: “Por favor, ¿me ayudas?Este programa no tiene permisos para entrar en estos
directorios, quizá puedas ejecutarlo como root para que así compile y puedo utilizar el
binario”

6.4.6 ATAQUES A LAS CONTRASEÑAS


Actualmente con tantas opciones fuertes de encriptación, se puede llegar a pensar que
hacerse con una cierta cantidad de contraseñas encriptadas no será de mucha ayuda
para un atacante. Nada más lejano a la realidad que esto. Los usuarios no capacitados
en este tema normalmente no conocen los esquemas de encriptación más sofisticados.

La complejidad computacional que poseen los algoritmos clásicos de encriptación de


contraseñas, como DES, y la capacidad de las computadoras más modernas permiten
que las contraseñas más sencillas sean atacadas por fuerza bruta. El uso de contraseñas

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.

El ir obteniendo archivo por archivo se convirtió en un proceso más complicado en el


momento en que el password shadowing o seguimiento de contraseñas se volvió
popular. Esto consiste en hacer legibles solo por un usuario root aquellos archivos que
contienen las contraseñas encriptadas. Por tanto, los usuarios ordinarios no podrían
obtener contraseñas con la intención de vulnerar aunque esto no les impide intentar
con combinaciones al azar.

A continuación se muestran otros métodos utilizados para la obtención de contraseñas


de usuarios, tanto encriptadas como desencriptadas, en sistemas modernos de Unix.
Las contraseñas pueden encontrarse en los archivos de usuario como:

~/.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.

Versiones anteriores del programa popauth (llamado APOP)


Se utilizan para guardar contraseñas para el POP3 seguro en texto claro. El
programa necesita una contraseña en claro para generar el protocolo de
respuesta reto y no es capaz de usar una contraseña encriptada para los
archivos estándar /etc/passwd de Unix.

Algunos productos de Software del propietario


Los productos como bases de datos también pueden exponer las contraseñas.
En este caso el atacante solo necesita buscarlos en el directorio del usuario,
suponiendo que tiene acceso a la lectura de dichos documentos, aunque no
siempre es el caso.

Otra forma en la que se pueden encontrar contraseñas encriptadas para vulnerar, es de


la siguiente manera: si una aplicación necesita referirse a archivos estándares de
contraseña de Unix para el control de acceso, las contraseñas también pueden
recuperarse desde los residuos del fallo de la aplicación. Por ejemplo, algunos usuarios
lograron que fallara el servicio FTP de Solaris con un comando (CWD~) sin haber
iniciado sesión, ocasionando un volcado de memoria. Si te investigaras el archivo de
volcado resultante, podrías encontrar los fragmentos de /etc/shadow. El comando
string de Unix es ideal para realizar esto.

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.

6.4.7 ABUSO DE SUID


Los abusos a SUID (Set-user-ID o Configurar ID de usuario) son una buena manera de
aumentar los privilegios en un sistema Unix. Muchos binarios son desplegados en la
root SUID tanto para obtener privilegios de sistema como para encubrir errores en
programas mal realizados o una programación defectuosa. Un claro ejemplo de este
tipo de abuso se encuentra en una vulnerabilidad de eFax, en el cual el programa
utilizado anteriormente para enviar y recibir mensajes de fax desde un equipo Unix es
instalado con root SUID, para poder acceder al dispositivo modem /dev/modem,
muchas veces creado con privilegios limitados:
-rwsr-xr-x 1 root root 96689 Aug 16 10:23 efax

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.

6.4.8 ABUSO DE /TMP Y SYMLINK/HARDLINK


Casi todos los sistemas Unix existentes poseen un área que es editable por todos los
usuarios del sistema y se utiliza para almacenar archivos temporales de gran variedad
de aplicaciones: /tmp. Si alguien sin una buena base segura de programación se encarga
de escribir estas aplicaciones, lo más probable es que se conviertan en posibles abusos.

Examinemos el abuso al enlace simbólico de /tmp (symlink). Si un atacante conoce o


puede adivinar el nombre del archivo temporal creado por la aplicación root, puede
crear un enlace simbólico con el mismo nombre y dirigirlo hacia /etc/shadow, por
ejemplo. De esta manera cuando se inicie la aplicación root, el atacante podrá escribir
cierta información en el archivo temporal, sobrescribiendo el archivo de contraseñas de
Unix y creando una condición DoS (Denial of Service) al conseguir que nadie pueda
iniciar sesión en el sistema si el archivo de contraseñas está corrompido. Los ataques
son más insidiosos si se sobrescribe el archivo de contraseñas con contenido
personalizado.

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.

¿Cómo funciona chroot?


Al escribir /sbinchroot nombre_directorio en la línea de comandos, el nuevo root ahora
es llamado “nombre_directorio”. El comando /bin/ls / muestra la lista de archivos de
“nombre_directorio”, suponiendo que se tenga un comando ls localizado en el nuevo
root. El comando chroot del Shell cambia el directorio del root por un proceso, es decir,
entra en el directorio e inicia un Shell o el comando especificado por el usuario. En caso
de no existir un binario Shell dentro del nuevo directorio y de no especificar un
comando de usuario, el comando chroot falla, tal y como se muestra a continuación:

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.

¿Qué servicios pueden colocarse bajo chroot?


La aplicación de chroot puede ser complicada si un servicio debe acceder a ficheros que
no pueden ser recolectados de un solo lugar fácilmente. Por ejemplo, sendmail necesita
el directorio de correos (/var/spool/mail), otros archivos en el directorio como mqueue,

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.

También es posible colocar chroot en shells de usuarios si necesario mantenerlos en un


directorio en particular. Sin embargo, implica copiar múltiples directorios y archivos del
sistema necesarios para el inicio de sesión y para mantener las funciones del usuario.

¿Qué servicios deberían ser colocados bajo chroot?


Primero, analicemos cómo un atacante puede salir de un confinamiento causado por
chroot.
Mientras mayor sea la cantidad de aplicaciones de usuarios que se desplieguen dentro
del entorno del chroot, mayor es el peligro que se corre porque es muy complicado
controlar todos los programas que un atacante podría utilizar para aumentar sus
permisos y escapar del ambiente 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.

Código ejemplo para forzar la salida desde chroot

Si no se encuentra un usuario root definido dentro del entorno de chroot, no existirían


binarios o dispositivos SUID ya que el servicio de por sí se habría deshecho de los
privilegios de root después de haber hecho la llamada a chroot() y la salida del entorno

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.

Chroot es una buena manera de incrementar la seguridad de un software a modo


defensivo, siguiendo las directrices de programación segura y limitando las llamadas a
chroot() desde el sistema. Al colocar programas o servicios bajo chroot se previenen
muchos ataques locales en Unix, como abuso de SUID y condiciones de carrera en /tmp
y también previene que los atacantes exploren archivos fuera del entorno. No obstante,
una mala implementación de chroot permitirá al atacante obtener acceso al equipo
deseado.

6.4.10 ATAQUES DENIAL-OF-SERVICE


Son considerados los menos elegantes en el mundo del hacking. Los ataques DoS son
todo un mundo en Unix. Pueden lograrse tanto atacando físicamente el equipo
conseguir su destrucción como enviando códigos sofisticados a la consola del sistema.
Estos ataques impiden completamente la utilización de un equipo por un tiempo
indefinido, normalmente hasta su restauración en caso de que no queden
completamente inservibles. Pueden ser tanto ataques remotos como locales y podemos
encontrar:

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

Normalmente, estos ataques son fáciles de prevenir pero no se puede subestimar su


poder. Los atacantes con privilegios de root pueden hacer lo que deseen con el sistema
y con /bin/rm-rf/ se puede causar mucho más daño que con cualquier otro tipo de
manipulación de paquetes en la red. A veces los bugs presentes en algunos programas
pueden proporcionar a los atacantes la habilidad de causar daño sin siquiera tener
privilegios de root. Por ejemplo, un ataque basado en el desbordamiento del buffer
podría causar un fallo en un servicio y abusar de binarios SUID pueden corromper
archivos pertenecientes al root tales como /etc/passwd o /etc/shadow, tal y como se ha
explicado anteriormente. En el caso de los desbordamientos del búfer, si el código de
Shell es incorrecto o no se usa, el atacante podrá hacer que falle la aplicación sin la
necesidad de obtener privilegios de acceso. Por último, hay que comentar también que
algunos bugs en sistemas, como el bug en Linux que hace fallar procesos, les permite a
los usuarios cerrar los procesos de otros usuarios.

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.

Llenado de la estructura de datos Kernel


Es otra manera de atacar a un sistema Unix. La famosa “bomba Fork”, escrita en
lenguajes desde C hasta en scripts de Shell, es un buen ejemplo de esta estrategia. El
ejemplo que aparece a continuación muestra la bomba fork más corta conocida, escrita
en scripts de Shell. Utiliza todos los inodos disponibles, generalmente definidos por el
tiempo de compilación del kernel.

Ejemplo de bomba fork

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 el alcance del ataque: se debe detectar qué equipos fueron


comprometidos, si aún se encuentran operativos o fueron sacados de servicio y si la
información comprometida en el ataque está relacionada con datos importantes de
la compañía o con información privada de los empleados y/o los clientes de la
misma.

❏ 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.

❏ Alertar a los empleados: se debe notificar a los empleados lo antes posible si la


brecha de seguridad compromete su seguridad o la de sus equipos. Se les debe
solicitar que estén alerta ante cualquier anomalía en sus equipos o en las
instalaciones en general y se debe haber otorgado previamente un protocolo de
seguridad para estos casos.

❏ 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.

❏ Asegurar la continuidad de los servicios: aunque un ataque sea de naturaleza crítica,


se debe estabilizar la continuidad de los servicios lo antes posible. Puede ser
mediante sistemas de respaldo o de emergencia implementados previamente y
contemplados en el plan de seguridad general de la empresa.

❏ Eliminar todo rastro existente de la infección: los ataques pueden provenir de


distintas fuentes tal y como se ha visto hasta ahora, pero identificar su fuente suele
ser suficiente para encontrar una forma de eliminar su rastro dentro de los equipos
infectados, pero no siempre ocurre en sentido contrario. Mediante una buena
colaboración del personal de seguridad y de los usuarios, se puede averiguar en
detalle el origen y el alcance que tuvo dentro del equipo. De esta manera se pueden

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.

7.2. INTRODUCCIÓN AL ESTÁNDAR INALÁMBRICO 802.11 – WIFI


El hecho de que un producto cumpla los requisitos de un estándar implica que puede
interactuar con otros que se encuentren bajo el mismo esquema. Un estándar
inalámbrico es una especificación o norma que define las características de una red
inalámbrica. Los estándares se pueden separar entre abiertos (públicamente disponible)
o cerrados (no disponible públicamente).

La especificación IEEE 802.11 fue definida por el Instituto de Ingenieros eléctricos y


electrónicos desde 1990 y es un estándar internacional basado en una red de área local
inalámbrica que establece los estándares de estricto cumplimiento así como el
desarrollo de productos de red. Comprende el uso de la capa física y la capa de enlace
de datos, que constituyen los modelos de interconexión de sistemas abiertos. La capa
física establece la modulación de las ondas electromagnéticas para la transmisión de

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.

7.2.1. VERSIONES DE IEEE 802.11


El estándar IEEE 802.11 ha tenido varias versiones desde su inicio en el año 1997 que se
presentan a continuación:
VERSIONES DESCRIPCIÓN
IEEE 802.11- - Velocidad máxima entre 1 y 2 megabits.
1997 - Transmisión mediante señales infrarrojas.
- Actualmente obsoleta.
IEEE 802.11 a - Velocidad máxima de 54 Mbit/s y velocidad real de 20 Mbit/s.
- Se maneja en la banda 5GHz.
- La señales 802.11 a son absorbidas con mayor facilidad por paredes y
objetos sólidos.
IEEE 802.11b - Velocidad máxima de 11Mbps y velocidad real de 5.9 Mbit/s.
- Opera en la banda 2.4 GHz.
- Apareció en el mercado a principios del año 2000.
- Amplia aceptación como tecnología inalámbrica.
- Alcance de 460 metros.
IEEE 802.11c - Menos utilizado. Se encarga de conectar dos redes de diferente tipo.
- No brinda interés al público en general.
- La instalación de fibra óptica arroja altos costos.
IEEE 802.11d. - Complemento del estándar 802.11
- Pensado para el uso internacional de redes locales.
- Permite intercambio de información entre distintos dispositivos de
acuerdo a la frecuencia establecida por el país de origen.
IEEE 802.11e - Uno de los primeros estándares inalámbricos en el cual es posible
trabajar en un ambiente doméstico.
- Contiene características QoS y soporte multimedia.
- El sistema QoS evita la colisión y mejora la capacidad de entrega.
IEEE 802.11f - Ofrece a los proveedores de puntos de acceso mayor compatibilidad.
- Permite que el usuario se cambie de un punto de acceso a otro
mientras se encuentre en movimiento.
IEEE 802.11g - Ratificado en el año 2003 como evolución de IEEE 802.11 b.
- Opera en la banda 2.4 GHz
- Velocidad máxima de 54 Mbit/s, para un promedio de 22 Mbit/s.
- Utiliza las mismas frecuencias de IEEE802.11b.

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

7.3.1. LAS REDES INALÁMBRICAS


Desde el punto de vista topológico, la diferencia entre una red inalámbrica y una
cableada son sus enlaces. Los enlaces inalámbricos logran la transmisión de datos por
medio de ondas electromagnéticas y pueden ser:
❏ Comunicaciones satelitales: los satélites emiten señales en el rango ultra alto
(UHF) del espectro electromagnético que no son repelidas por la atmósfera
terrestre. Normalmente son colocados en una órbita sincrónica a 35,400 km
sobre el Ecuador y son capaces de recibir y transmitir señales de datos, voz y
televisivas.
❏ Sistemas celulares y de comunicación personal: subdividen las áreas geográficas
en regiones donde cada región tiene un transmisor de bajo rango o una antena
repetidora que lleva la información de un área a otra.
❏ Microondas terrestres: utiliza transmisores terrestres y receptores que parecen
platos satelitales. Se transmiten en el rango bajo de gigahertz, lo cual limita
todas las conexiones porque los nodos deben tener una línea de visión clara
entre ellos. Las estaciones de trasmisión son instaladas con una distancia de
separación de aproximadamente 48 Km.
❏ Tecnologías de espectro ensanchado: las WLANs utilizan tecnologías de alta
frecuencia en un área pequeña para hacer posible la conexión de múltiples

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.

7.3.2. TOPOLOGÍA DE LAS REDES WIFI


Las redes WiFi se dividen en dos modos en un primer nivel: el modo infraestructura y el
modo Ad Hoc; y se desglosan por la relación que tiene cada modo con los puntos de
acceso inalámbricos (WAP). Los puntos de acceso son los encargados de permitir la
conexión de dispositivos inalámbricos a una red cableada.

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.

Wifi modo infraestructura

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

Infraestructura versus Ad-Hoc


Ofrece la ventaja de la escalabilidad, posibilita una gestión de seguridad centralizada y
un amplio alcance. Los dispositivos inalámbricos pueden conectarse a la red local
cableada (práctica común en el ambiente empresarial) y se pueden añadir más puntos
de acceso para ampliar su alcance y para lidiar con los problemas de congestión de la
red.

La desventaja de este modo es el costo de comprar puntos de acceso adicionales. Como


conectan los dispositivos de punto a punto, todo el hardware que se necesita es el
propio dispositivo. En resumen, las redes infraestructura son típicas en casos en los que
se necesite una red de larga duración con implementaciones permanentes.

7.4. SEGURIDAD EN REDES WIRELESS. REDES ABIERTAS

7.4.1. SEGURIDAD DE REDES WIRELESS


Desde un punto de vista de la seguridad, estas redes implican retos particulares. No se
pueden asegurar físicamente como las redes cableadas y un ataque puede provenir
desde cualquier ángulo: kilómetros de distancia, la oficina de al lado, el estacionamiento
del edificio o la casa del frente.

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.

El operador de la red wireless tiene mayores oportunidades de defenderse a sí mismo, a


los activos y a los usuarios al tener en cuenta los riesgos presentes en la red y al tomar
decisiones adecuadas sobre las medidas de seguridad.
150
©Clictic S.L.
Existen algunas compañías que no poseen puntos de acceso inalámbricos y no sienten
la necesidad de tomar medidas de seguridad; pero teniendo en cuenta que actualmente
toda laptop viene equipada con el hardware necesario para seguir protocolos 802.11, el
porcentaje de riesgo se incrementa ya que un hacker podría reunir información de los
dispositivos que contienen datos sensibles sobre la empresa en su disco duro local
conectándose a sus dispositivos inalámbricos, o incluso, podría acceder a la red local
cableada de la misma.

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.4.2. REDES ABIERTAS


Las redes abiertas se clasifican así por su uso: cualquier persona tiene acceso a ella y a
través de ella puede conectarse a otras redes o a Internet. No poseen sistemas de
autenticación y los datos viajan en texto plano. Por supuesto, esto causa serios
problemas de seguridad y lo poco que puede hacerse al respecto es bloquear
direcciones MAC, direcciones IP y cambiar periódicamente el nombre de la red o ESSID
(Extended Service Set Identifier).Todas estas medidas no impiden que un tercero espíe la
transferencia de datos a través de la red.

Uno de los principales problemas de las redes inalámbricas es la intercepción de datos y


para evitarlo se han creado diversos protocolos de cifrado. Uno de los más usados es el
algoritmo de cifrado WEP y se le dedicará una sección entera.

7.5. WEP

7.5.1. PRIVACIDAD EQUIVALENTE AL CABLEADO WEP


Wired Equivalent Privacy (WEP) es un algoritmo de cifrado implementado en 1997 y
desarrollado como parte del estándar de conectividad inalámbrica IEEE 802.11. Su
objetivo es proporcionar una confidencialidad equivalente a la de una red cableada.
Utiliza el criptosistema RC4 y proporciona integridad a la red mediante el sistema
CRC32. Se mantuvo como el estándar hasta ser reemplazado en 2004 por los algoritmos
WPA y WPA2. Asegura confidencialidad, integridad y método de autenticación al
sistema.

7.5.2. CONFIDENCIALIDAD WEP


WEP ofrece confidencialidad de información y los datos son cifrados mediante el
algoritmo RC4. A diferencia del cifrado en bloque donde los datos son cifrados bloque a
bloque, este algoritmo es un cifrado de flujo donde los datos son cifrados de una
manera continua. Es necesario que la llave sea cifrada en una secuencia pseudo-

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.

7.5.3. INTEGRIDAD WEP


La integridad se logra al aplicar un algoritmo de Chequeo de Redundancia Cíclico (Cyclic
Redundancy Check; CRC) que es un sistema de detección de errores encargado de
evitar la pérdida de datos en el proceso de transmisión inalámbrica. Añade información
redundante a los datos para así conservar su integridad. Aunque el nombre de este
código hace alusión a los códigos de tipo cíclico, no se trata de uno.

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.

7.5.4. AUTENTICACIÓN WEP


Este estándar incluye dos opciones de autenticación: la Autenticación de Sistema
Abierto (Open System Authentication; OSA) y la Clave Previamente Compartida (Pre-
Shared Key; PSK). La primera es utilizada por las redes abiertas y las opciones de
autenticación son mínimas ya que permite que cualquier dispositivo se conecte sin
necesidad de identificación. La segunda opción es la que requiere que el administrador
de la red genere una contraseña y se la entregue al usuario que desee unirse a la red.
En el momento de entrar a la red, el usuario debe entregar al punto de acceso la
contraseña proporcionada para obtener el acceso.

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

7.6.1. VULNERABILIDADES DEL ESTÁNDAR WEP


Se han encontrado varias debilidades (la primera en 1995) en el diseño de este tipo de
sistema haciéndolo cada vez más inseguro hasta su reemplazo en 2004. Se pueden
agrupar en 4 grandes debilidades donde cada una posee un tipo de ataque posible
diferente.

Gestión de contraseñas y tamaño de clave


La gestión de contraseñas no se especifica en el estándar WEP y por ello no se les
requiere un estándar de complejidad a las contraseñas, lo que las hace débiles. Como la
mayoría de las redes que utilizan WEP poseen una sola contraseña compartida con
todos los nodos de la red, los puntos de acceso y cada nodo deben ser configurados en
el caso de cambio clave; algo que ocurre con muy poca frecuencia debido a lo tedioso y
difícil que es este proceso en una red extensa.

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.

Reutilización de Llaves de Encriptación o Key Streams


Como en este tipo de seguridad las llaves de encriptación se reutilizan, si se descubre
una de ellas, todos los paquetes encriptados utilizándola podrán ser descifrados con
mucha facilidad. Esta llave se halla teniendo tanto el texto cifrado como el descifrado y
aplicando la operación XOR. Inicialmente ésta no era considerada una debilidad
importante, sin embargo, al aparecer otras maneras de conseguir el texto descifrado, se
comenzó a considerar una preocupación.

La técnica más sencilla para obtener el texto descifrado de un paquete se basa en el


proceso de autenticación de una red inalámbrica de clave compartida. Consiste en que
un equipo autorizado conectado enviará una solicitud al punto de acceso y este le
enviará un número que el equipo deberá descifrar y devolverle. Si es correcto, tendrá
acceso a la red. Un atacante puede emplear un analizador de tráfico en el punto de
acceso para averiguar la llave de encriptación utilizando este proceso. Solo es necesario
interceptar un paquete con la misma llave de encriptación para tener acceso a él.

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.

El CRC es una función lineal de mensaje. Es decir, el atacante puede modificar un


mensaje externo para que parezca uno auténtico pudiendo ser capaz de desplegar una
cantidad de ataques casi infinita. Por ejemplo, puede hacer que el punto de acceso de la
víctima descifre los paquetes por él: basta con capturar un flujo de paquetes cifrado,
modificar la dirección de destino por la dirección IP del atacante, forjar el CRC para que
parezca venidero de un usuario autenticado y finalmente retransmitir el paquete hacia
el punto de acceso. El punto de acceso se encargará de descifrar los paquetes y se los
devolverá al atacante.

7.6.2. DEMOSTRACIÓN DE ATAQUES


La mayoría de los dispositivos que proporcionaban redes inalámbricas poseían la
configuración WEP de fábrica y cuando aparecieron vulnerabilidades en este sistema,
como no eran de gran escala, las grandes compañías no invertían demasiado tiempo en
solucionarlas. Solamente aplicaban parches para mitigarlas, aunque con el paso del
tiempo las técnicas se hicieran más avanzadas y los ataques se volvieran más fuertes.

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 métodos utilizados para invadir esta red fueron:


- Empleando la fuerza bruta para encontrar la clave correcta después de varios
intentos.
- Averiguando los keystream que se utilizaban para cifrar el contenido enviado a
través de la red.
154
©Clictic S.L.
- Empleando métodos estadísticos para encontrar la clave secreta aprovechando
la debilidad de campos IV específicos en el criptosistema RC4.
- Sobrecargando el sistema de detección de errores en el mismo 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.

El ataque se basa en la existencia de un vínculo establecido entre los primeros bytes de


la clave secreta K utilizada en el sistema RC4 para generar la keystream X y el primer
byte correspondiente a X. Al conocer los primeros bytes de K y el primero en específico
de X, es sencillo averiguar el siguiente byte correspondiente a K. La probabilidad de
acertar dicho valor es muy alta, siendo 1 en 256. Esto proporciona cierta ventaja al
atacante a la hora de adivinar la clave con métodos estadísticos de este tipo. El
esquema general del ataque es el siguiente:

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]]

Ahora el valor desconocido es SL+1[L]. Se sustituye:


K[L] = SL-1[SL+1[L]] – jL – SL[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 empezar la siguiente iteración, si j cambia aleatoriamente para el resto del RC4-KSA,


los valores correspondientes a S[1], S[S[1]] y SL no se alterarán con una probabilidad
correspondiente a 5 %.

Al ser retornado el primer byte de X, X[0] por RC4-PRGA, j tomará el valor de Sn[1].

Sn[1] y Sn[j] se intercambiarán pasadas 256 iteraciones, n=256. Después de este


intercambio se sigue cumpliendo la condición de S[1]+S[S[1]], y X[0] será S[L].

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.

Si se cumplen las condiciones de Fluhrer, Mantin y Shamir al alcanzar las n+1


iteraciones, la siguiente función:
𝑆𝑙−1 [𝑋[0]] − 𝑗𝑙 − 𝑆𝑙 [𝑙]

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

Cuando se captura el paquete, se supone que es válido y por tanto su checksum es


acorde al campo de data, y será aprobado por el punto de acceso. Al ser esto cierto,
debe cumplirse la ecuación siguiente:
𝑃 ≡ 𝑃𝑂𝑁𝐸

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 + 𝑅 + 𝑅 ≡ 𝑃𝑂𝑁𝐸 + 𝑅

R +R se anula, pues el anillo posee característica 2.


𝑄 · 𝑋 8 ≡ 𝑃𝑂𝑁𝐸 + 𝑅

X8 es invertible debido a que F2[X ]/(PCRC ) es un cuerpo.


𝑋 8 · 𝑃𝐼𝑁𝑉 ≡ 1
𝑃𝐼𝑁𝑉 = 𝑋 + 𝑋 + 𝑋 +𝑋 24 +𝑋 23 +𝑋 22 +𝑋 20 + 𝑋17 + 𝑋16 + 𝑋15 +
31 29 27

𝑋14 + 𝑋13 + 𝑋10 + 𝑋 9 + 𝑋 7 + 𝑋 5 + 𝑋 2 + 𝑋


𝑄 · 𝑋 8 · 𝑃𝐼𝑁𝑉 ≡ (𝑃𝑂𝑁𝐸 + 𝑅) · 𝑃𝐼𝑁𝑉

𝑋 8 · 𝑃𝐼𝑁𝑉 se anula porque 𝑋 8 · 𝑃𝐼𝑁𝑉 ≡ 1


𝑃𝑄 = 𝑃𝐼𝑁𝑉 · (𝑃𝑂𝑁𝐸 + 𝑅) ≡ 𝑄

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.
𝑇 = 𝑃𝐼𝑁𝑉 · (𝑃𝑂𝑁𝐸 + 𝑅𝑃𝑅𝑈𝐸𝐵𝐴 ) + 𝑃𝑂𝑁𝐸
𝑃𝑁𝑈𝐸𝑉𝑂 = 𝑇 + 𝑄 = 𝑃𝐼𝑁𝑉 · (𝑃𝑂𝑁𝐸 + 𝑅𝑃𝑅𝑈𝐸𝐵𝐴 ) + 𝑄 + 𝑃𝑂𝑁𝐸
𝑃̃𝑁𝑈𝐸𝑉𝑂 = 𝑇 + 𝑄̃ = 𝑃𝐼𝑁𝑉 · (𝑃𝑂𝑁𝐸 + 𝑅𝑃𝑅𝑈𝐸𝐵𝐴 ) + 𝑄̃ + 𝑃𝑂𝑁𝐸

Si RPRUEBA es correcto, PQ=PINV⋅(PONE+RPRUEBA )+Q≡0, debido a que ambos son


equivalentes en el cuerpo F2[X ]/(PCRC ) y con ello se tendría el polinomio PONE, que
concuerda con PONE módulo PCRC. Para averiguar esto, se genera un paquete a partir del
PNUEVO de la cara cifrada y se envía al punto de acceso. Si es correcto, el punto de acceso
le pedirá al atacante una autenticación, de lo contrario el paquete de datos será
descartado silenciosamente.

Para averiguar el siguiente byte correspondiente a P, primer es necesario averiguar el


último byte de PNUEVO siguiendo exactamente el mismo procedimiento. No obstante,
este byte no corresponderá con el byte claro del polinomio P, por tanro hay que cumplir
un paso extra. Por cada iteración, el polinomio T, que modifica a Q para validarlo, se
acumula hasta formar un polinomio D.

𝐷𝑖 = 𝑇𝑖−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.

7.7 OTROS MECANISMOS DE CIFRADO


El trabajo en las soluciones para ofrecer mayor seguridad a las redes inalámbricas
comenzó al conocer las vulnerabilidades del protocolo de seguridad WEP incluso antes
de llevar a cabo su implementación formal. Aparecieron sistemas de cifrado que
proporcionaron una protección mucho más eficiente que su antecesor. Algunos de ellos
siguen utilizándose actualmente combinados con otras soluciones en sistemas
actualizados. A continuación se muestran algunos:

7.7.1 WIRELESS PROTECTED ACCESS (WPA)


El “Acceso inalámbrico protegido” surge desde los problemas detectados en la red WEP
aproximadamente un año antes de la descontinuación del mismo. Funcionó como la
medida de seguridad preferida por todo aquel que valorara la seguridad de sus equipos
inalámbricos mientras WEP continuaba vigente y se desarrollaba el nuevo protocolo
IEEE 802.11i que lo sustituiría. Por esta misma razón, este sistema también es conocido
como “bosquejo del IEEE 801.11i”.

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.

7.7.2 WIRELESS PROTECTED ACCESS VERSIÓN 2 (WPA2)


Es una nueva y mejorada versión 2 de Wireless Protected Access que se introdujo
inmediatamente cuando se implementó el protocolo IEEE 820.11i en 2004
descontinuado oficialmente a WEP como el método de seguridad estándar para
conexiones inalámbricas. El uso de WPA2 se volvió obligatorio como estándar en todo
dispositivo inalámbrico que saliera al mercado o para todo aquel que requiriera llevar la
marca registrada de Wi-Fi desde marzo de 2006.

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.

Actualmente la principal vulnerabilidad presente en un sistema WPA2 ocurre cuando el


atacante posee el acceso a la red WiFi segura en la que quiere intervenir. Puede utilizar
esta conexión inalámbrica para realizar un ataque a todos los dispositivos que se
encuentren conectados a esta red. Realmente, estas vulnerabilidades son importantes
desde el punto de vista empresarial y no constituyen mucha preocupación con respecto
a las redes domésticas.

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.

No obstante, en el año 2011 se dio a conocer una de sus principales fallas: si la


configuración WPS permite la introducción de un nuevo dispositivo a través de un PIN
de 8 dígitos, el atacante podrá recuperar dicho PIN en menos de 4 horas, mediante un
ataque automatizado de fuerza bruta. Si obtiene el PIN, podrá conocer la llave de
encriptación de WPA/WPA2 y por tanto tendrá acceso a todos los dispositivos
conectados a dicha red sin ningún tipo de limitación.

Una solución para lo mencionado anteriormente se trata de simplemente deshabilitar el


modo de introducción por PIN o desactivar por completo el uso del protocolo WPS. Sin
embargo, existen algunos dispositivos un poco más antiguos pero que aún son capaces
de utilizar la seguridad WPA/WPA2, que aunque aparentemente desactivan la función
de emparejamiento por PIN, permanece activa en segundo plano haciendo que el
router siga siendo vulnerable. La mejor solución en caso de que se quiera mantener el
uso del protocolo WPS es mantener todos los dispositivos actualizados, aunque ello
signifique actualizar el hardware.De todas maneras, cuando se trata de una red
empresarial, es preferible mantener completamente desactivado el modo de
emparejamiento facilitado por WPS.

Botón azul para activación y sincronización wps en un router cisco

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. CRIPTOGRAFÍA Y CRIPTOANÁLISIS: INTRODUCCIÓN Y DEFINICIÓ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.

Cifrar los documentos permite mantener la información y las comunicaciones


resguardadas dentro de la organización. Únicamente deben tener acceso a las claves y
sistema de cifrado utilizados, los administradores de los sistemas de seguridad. En este
apartado se hablará sobre la criptografía y se mostrarán ejemplos de su utilidad en el
momento de mantener a salvo la información desde tiempos tan remotos como Julio
César.

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

Triple DES (TDES): es un tipo de criptografía computarizada donde los algoritmos de


cifrado DES se aplican tres veces a cada bloque de datos. El tamaño de la clave de
DES se incrementa para garantizar mayor seguridad. Cada bloque contiene 64 bit de
datos. Fue desarrollado en 1998.

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.

Diffie-Hellman: es una técnica de intercambio de clave que permite alcanzar mejor


seguridad ante contraseñas débiles. Presenta el concepto de PAKE (acuerdo de
claves autenticadas por contraseña) y cuando un hacker utiliza una contraseña para
atacar un sistema, la estructura de la clave cambia, de forma tal que el hacker
pueda utilizar una sola contraseña por intento de ataque.

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:

❏ Vulnerabilidad del texto no cifrado-texto no cifrado: es una transmisión de dos


textos diferentes que no están cifrados y se encriptan con la misma llave. Si el método
de cifrado sigue pasos que forman grupos, entonces una “diferencia” p1 – p2 de dos
textos no cifrados p1, p2 y una “diferencia” c1 – c2 de dos textos no cifrados c1,c2
pueden ser definidas, entonces el papel de la clave se descifra en c1 – c2 = p1 – p2. Por
tanto, tras varios intentos de adivinar el lenguaje utilizado en el texto no cifrado, se crea
un método “zig-zag” que descompone c1 – c2. Este tipo de vulnerabilidades no es
extraña en sistemas de cifrado con claves periódicas.

❏ Vulnerabilidad del texto no cifrado-texto cifrado: es ocasionada por una


transmisión de un mensaje cifrado seguido por una transmisión del mismo mensaje en
texto no cifrado y se debe a una distorsión en el canal de comunicación. La clave para
descifrar el texto se encontrará expuesta si se conoce la información del método de
cifrado o si puede ser adivinado.

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.

❏ Ataques de fuerza bruta o de búsqueda exhaustiva: es el método más simple para


realizar un criptoanálisis a un bloque de cifrado. El criptoanalista tiene como objetivo
encontrar la llave “k”, usada en el bloque de cifrado “E” para cifrar un texto “P” para
crear un texto cifrado: C, C = Ek(P).

Una vez conocido “K”, el criptoanalista puede encontrar el texto no cifrado


descifrando el texto cifrado, P = Ek-1(C). Una manera sencilla de encontrar “k” es
mediante la búsqueda exhaustiva donde se intenta descifrar el texto cifrado C
con cada clave posible hasta encontrar “k”.

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.

El tiempo necesario para completar la búsqueda exhaustiva varía según el


número “k” de claves posibles, el tiempo “t” que lleva probar cada clave
candidata y el número p de procesadores que realizan la búsqueda. Cada
procesador se encarga aproximadamente de K / p claves y tardaría Kt / p para
probar cada una de ellas. El tiempo de espera se convierte en Kt / (2p) ya que,
en promedio, se espera encontrar la clave a mitad de la búsqueda.

Existen diferentes métodos de cifrados que se pueden aplicar tanto a bloques de


cifrado como a corrientes de cifrado y algoritmos MAC. Sin embargo, los cifrados
modernos con claves de más de 128 bits hacen que la búsqueda exhaustiva sea una
tarea poco práctica para vulnerar sistemas, debido a los estándares actuales impuestos
por la Data Encryption Standard.

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 en texto no cifrado elegido: este ataque plantea un escenario


donde el atacante tiene la habilidad de elegir los textos no cifrados (Pi) y ver sus textos
cifrados correspondientes (Ci). Se considera poco práctico en comparación con el
ataque basado en texto no cifrado conocido. Sin embargo, sigue constituyendo una
amenaza considerable. Si el algoritmo cifrado es vulnerable a un ataque de texto no
cifrado, automáticamente es vulnerable a un ataque basado en texto no cifrado elegido.

❏ Ataque basado en texto cifrado elegido: Es un escenario a través del cual el


atacante tiene la habilidad de elegir los textos cifrados (Ci) y ver sus textos descifrados
(Pi). En esencia es el mismo escenario de un ataque basado en texto no cifrado elegido,
pero aplicado a una función de descifrado, en vez de una función de cifrado. Este
ataque es menos práctico en situaciones reales que el del ataque de textos no cifrados.
Sin embargo, no existe correlación entre las complejidades de un texto no cifrado
elegida y ataques de textos cifrados elegidos.
Un ataque de texto cifrado elegido resulta ser un escenario importante en la
criptografía de claves públicas donde un texto conocido e incluso un texto no cifrado
elegido siempre están disponibles para el atacante ya que las claves de cifrado públicas
son conocidas. Por ejemplo, el sistema de cifrado de claves públicas RSA no es seguro
ante ataques adaptables de texto cifrado elegido.

❏ 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.

❏ Ataque basado en texto no cifrado conocido: estos ataques plantean un


escenario donde el atacante tiene acceso a los pares (Pi, Ci),i = 1,..., N del texto no
cifrado conocido y sus textos cifrados correspondientes. Son considerados altamente
prácticos por el Springer Encylopedia of Crypto, sobre todo si la cantidad de pares N no
es muy larga y son más prácticos que el ataque de texto no cifrado elegido. El

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.

8.1.6. MÉTODOS ESTADÍSTICOS DE CRIPTOANÁLISIS


Emparejamiento por frecuencia
Es un método utilizado para descifrar cifrados monoalfabéticos como el Cifrado de
César. Determina la frecuencia de caracteres en un texto cifrado y la compara con la
frecuencia de caracteres en un idioma del cual se sabe o del cual se asume su uso en el
texto no cifrado.

La frecuencia de caracteres en inglés es la siguiente:

Gráfica con la frecuencia de uso de caracteres en inglés

Si un texto cifrado tiene 349 caracteres y su distribución de frecuencia es como la que


se muestra a continuación:

Gráfica distribución de caracteres en ejemplo de cifrado

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.

{etaoin} {srh} {ld} {cumfpgwyb} {vk} {xjqz}

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.

A continuación se muestra un ejemplo de profundidad de 5 líneas:

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.

Al formar diferencias de los elementos en columnas seleccionadas, se logra una


reducción de la profundidad de un cifrado monoalfabético.

Esto hace posible derivar la clave de cifrado

Ejemplo de clave de cifrado

que descifrará la profundidad, utilizando la tabla de Vigenère:

Ejemplo de tabla de Vigenère

Al encontrar el valor que define el periodo en un sistema de cifrado periódico


polialfabético, es posible formar una profundidad utilizando métodos como el método
de Kasiski. Sin embargo, no es posible formarla si la clave no es periódica. De igual
forma, tampoco es posible formar una profundidad con la cantidad suficientes de
elementos (normalmente más de seis) para cifrados poli-alfabético, si la clave es corta.

La simetría de la posición es la cualidad que posee la distancia de cualquier par de letras


en una tabla de cifrado y es la misma en todas las filas de la tabla. Sucede cuando los
alfabetos que se utilizan en una sustitución periódica polialfabética están compuestos
por un alfabeto mezclado y una versión traspuesta del mismo. Para un periodo

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.

Para poder determinar el periodo de un cifrado polialfabético, hay que determinar la


distancia entre dos “paralelos” en un texto cifrado (pares, triples, cuádruples, etc.). La
distancia de paralelos genuinos será un múltiplo del periodo y el divisor más común de
estas distancias es una pausa, que puede no ser muy larga. Por otra parte, el análisis del
periodo podría estar afectado por paralelos falsos.

En 1863 Kasiski desarrolló esta prueba fundamental para periodos de claves


destruyendo así la creencia de que el cifrado polialfabético era indescifrable.

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.

Si se aplica la prueba Kappa a un texto cifrado “C” y a sus versiones traspuestas


cíclicamente “C(u)”, donde “u” denota el número de transposiciones, el valor sería “K
(C, C(u))”. Si el texto cifrado es periódico con un periodo d, entonces u = d y para todos
los múltiplos de d ocurrirá un valor significativamente mayor que el de 1/N, mientras
que en el resto de casos se hallará un valor cercano a 1/N.

Lo explicado anteriormente es el uso de la prueba Kappa para encontrar el período,


siendo así un instrumento más eficiente que el método de Kasiski. Esta prueba también
puede ser utilizada para ajustar dos textos cifrados: “C, C’”, los cuales se encuentran
cifrados con la misma clave, pero con distintas posiciones de inicio, llamadas
superimposiciones. Cuando se calcula K(C(u) , C’ ), una transposición “d” determinada
como un valor de u para la cual K(C(u) , C’ ) es alta, se colocan ambos textos cifrados
“C(d)” y “C’” en posición. Es decir, se producen dos isologs. De esta forma, se puede
formar una profundidad de n cantidad de textos mediante la superimposición partiendo

170
©Clictic S.L.
de una vulnerabilidad del texto cifrado-texto cifrado de una n cantidad de textos
cifrados.

Ataque “De Viaris”


En 1893 Gaëtan Henri Léon de Viaris inventó un método de criptoanálisis para resolver
el sistema de cifrado propuesto por Étienne Bazeries, mediante el cual los alfabetos no
formaban un cuadrante de Latín.

El cuadrante de Latín es un orden mediante el cual una determinada cantidad de


caracteres “N” se coloca en una matriz de “N x N” sobre el alfabeto de tal forma que
cada carácter aparece una sola vez en cada línea y en cada columna.

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”.

Descarte de patrones por falseo


Existen algunos criptosistemas que poseen peculiaridades tales como permutaciones
recíprocas que evitan que un carácter se reemplace a sí mismo en el cifrado, para que
no aparezca ningún patrón. Esta característica sólo puede existir en sistemas de cifrado
polialfabéticos. Esta técnica también es conocida como non-coincidence exhaustion.

171
©Clictic S.L.
8.2. CIFRADO Y DESCIFRADO

8.2.1. CIFRADO Y DESCIFRADO


Un cifrado es el proceso por el cual un texto no cifrado se convierte en un texto cifrado,
basándose en una clave de cifrado determinada anteriormente. Lo realiza una
aplicación que sigue un procedimiento establecido por un algoritmo de cifrado que
provee una clave que permitirá revertir el proceso. Este último es conocido como
descifrado.

8.2.2. CIFRADO SIMÉTRICO


Este tipo de cifrado también es conocido como cifrado convencional o cifrado de una
sola llave. Fue el único sistema de cifrado ante la creación de los sistemas de clave
pública en los años 70.

Requiere de cinco elementos:


 Texto no cifrado o texto claro: es el mensaje o dato original entendible que se
proporciona al algoritmo.
 Algoritmo de cifrado: el algoritmo de cifrado realiza varias sustituciones y
transformaciones del texto no cifrado.
 Clave o clave secreta: la clave secreta también se incluye dentro del algoritmo de
cifrado. Es un valor independiente del texto no cifrado y del algoritmo. El algoritmo
producirá un contenido diferente dependiendo de qué tipo de clave se esté
utilizando. Las sustituciones y transformaciones realizadas dependen totalmente de
la llave.
 Texto cifrado: es el mensaje obtenido como resultado de un algoritmo de cifrado.
Depende del texto no cifrado y la clave secreta. Para un mismo mensaje, dos claves
distintas producirán dos textos cifrados distintos que aparentan ser una sucesión
aleatoria de caracteres.
 Algoritmo de descifrado: es la contraparte del algoritmo de cifrado. Trabaja
inversamente al algoritmo de cifrado, convirtiendo el texto cifrado de vuelta a su
estado original no cifrado.

Sistema de cifrado simétrico

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.

Sistema de cifrado asimétrico

8.3. EJEMPLO DE CIFRADO: RELLENO DE UNA SOLA VEZ Y CRIPTOGRAFÍA


CLÁSICA

8.3.1 RELLENO DE UNA SOLA VEZ


Se conoce también como libreta de un solo uso y se considera el sistema de cifrado
perfecto. Se trata de un cifrado de sustitución y su nombre deriva de su manera de
cifrar los mensajes: se escribe un conjunto de claves que no se repiten en hojas de
papel y se juntan en una libreta.

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.

Sin embargo, este método tiene dos problemas:


 Requiere que tanto emisor como receptor conozcan las páginas que se usarán.
 Necesita una cantidad ilimitada de claves.

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.

El material final en la hoja seleccionada es la clave que se utilizará para descifrar el


mensaje. Cada letra de la libreta será combinada de manera predeterminada con una
letra del mensaje. Se le pueden asignar valores numéricos a las letras, como que “A” es
0, “B” es 1 y así sucesivamente hasta llegar a 26.

La técnica que se emplea es combinar la clave y el mensaje utilizando un proceso de


suma modular, para crear un sistema de integradores aritmético donde los números
alcanzan cierto valor. Los valores numéricos de las letras del mensaje se juntan con una
suma de módulo 27. Esto nos da que, si la clave comienza por “X M C K”, significa que
nuestro relleno de una sola vez será:

24 (X) 12 (M) 2 (C) 10 (K) clave


+ 7 (H) 15 (O) 11 (L) 0 (A) mensaje
= 31 27 13 10 clave + mensaje
= 4 (E) 0 (A) 13 (N) 10 (K) Resultado (mod 27) = texto cifrado

Si un número es mayor que 26, la cantidad restante después de realizar la sustracción


de 26, se realiza en aritmética modular. Es decir, si los cálculos superan la Z, la
secuencia comienza de regreso a la A.

El texto cifrado enviado a la persona B es “EANK”. Esta utiliza la clave correspondiente


dentro de una página y el proceso inverso para obtener el texto descifrado. La clave es
extraída del texto, utilizando aritmética modular:

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.

De esta forma, la persona B recibe el mensaje “HOLA” de la persona A. Tanto A como B


destruirán la hoja con la clave después de su uso para prevenir que no se reutilice.

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.

8.3.3. CIFRADOS CLÁSICOS


Cifrado de César
El nombre de este tipo de cifrado fue acuñado por el historiador romano Suetonius,
alegando que Julio César lo utilizaba.

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.

Ejemplo de cifrado de César

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.

Ejemplo de cifrado de Vigenère

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.

En este texto: “WBLBXYLHRWBLWYH”, existe un grupo de tres letras (WBL) que


aparecen dos veces en un intervalo de longitud nueve letras. Un criptoanalista puede
llegar a la conclusión de que la longitud de la clave podría ser nueve o un valor divisible
por nueve. También, podría deducir que la palabra que se encuentra repetida es THE y
por tanto, podría determinar que DUH es una posible clave de cifrado.

El siguiente paso para descifrar el método de Vigenère consiste en determinar la clave


real utilizada, mediante un método llamado análisis de frecuencia, que vulnera la
distribución desigual de las letras en los diferente idiomas.

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”).

Entre otros métodos criptográficos se encuentran:

❏ Cifrado de Polybios: técnica inventada por el historiador griego Polybios


implantada en el siglo II A.C. Es el sistema de cifrado por sustitución de caracteres más
antiguo del que se tienen registros. Consistía en hacer corresponder cada letra del
alfabeto con otras dos según la columna y la fila de la matriz a la cual pertenecía.

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.

❏ Cifrado de Alberti: primer tipo de cifrado de sustitución polialfabética y fue


creado por Leon Battista Alberti. Consistía en un dispositivo llamado Formula,
compuesto por dos discos concéntricos unidos por un punto en común, que pueden
rotar con respecto al otro. La circunferencia de cada disco estaba dividida en 24 células
iguales. El disco externo (llamado “Stabilis”) contenía un alfabeto en mayúsculas junto
con números del 1 al 4 para el texto limpio y el disco interno (llamado “Mobilis”)
contenía un alfabeto desordenado en minúsculas, para el texto cifrado.
En su época, era un método imposible de descifrar sin conocimiento del mismo debido
a que la distribución de frecuencia de las letras estaba escondida y el análisis de
frecuencia, que era el único método de descifrado conocido para la época, no podía
descifrarlo.

Disco de Alberti – formula

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:

Cifrado por sustitución


Sistemáticamente se reemplazan los grupos de letras por otro grupo de letras como se
hacía en el cifrado César, explicado anteriormente, donde las letras del mensaje eran
sustituidas por la letra de tres posiciones siguientes en el abecedario. En este caso, la
letra “A” sería reemplazada por la “D”, la “B” por la “E”, la “C” por la “F” y así
sucesivamente. Las letras “X”, “Y”, y “Z” eran reemplazadas por las letras “A”, “B”, y “C”
respectivamente.

Cifrado por transposición


Se cambian las posiciones de un texto claro siguiendo un sistema dando lugar a la
creación de un texto cifrado. El orden de las unidades es cambiado.

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:

E . ... ……..E . . ………. S . . . …..E . .


…. S ..…O …. S…. . N …... E …. R… . T .
. ……...….T . . ……… U . . ………… C ….. . . ……O

El texto cifrado obtenido es: “EESE SOSNERT TUCO”

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

Otro método es el cifrado de transposición por columnas, donde se escribe un mensaje


en filas con una longitud y cantidad predeterminada, que luego serán leídas
nuevamente, columna por columna. Estas columnas se eligen en un orden
aparentemente aleatorio. Tanto el ancho de las filas como la permutación de las
columnas generalmente son definidas por una palabra clave. Por ejemplo, si la palabra
clave es “CEBRA”, se deberá asignar un número a cada una de las letras de la palabra
siguiendo un orden alfabético. En este caso obtendríamos el código 3(C) 4(E) 2(B) 5(R)
1(A).

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

Para el caso irregular, la tabla se vería de la siguiente forma:


3 4 2 5 1
E S T E E
S E E L S
E C R E T
O

Y por tanto el texto cifrado se leería de la siguiente manera:


ESTT ERES EOSE CELE

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

8.4.1. ADVANCED ENCRYPTION STANDARD


El estándar avanzado de cifrado (AES), es el método de cifrado moderno más común y
ha sido el estándar de cifrado mundial desde el 2000. La mayoría de los productos de
cifrado que se venden a día de hoy soportan AES. Un ejemplo de su uso es el cifrado de
los documentos de las agencias de inteligencia.

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.

Bloque de cifrado AES

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).

AES utiliza una estructura SPN (substitution-permutation network o red de sustitución-


permutación) con 10 rondas para claves de 128 bit, 12 rondas para claves de 192 bit y
14 rondas para claves de 256 bits, para cambiar su estado.

Diagrama de rondas de AES


180
©Clictic S.L.
En el diagrama anterior se muestran los cuatro bloques de una ronda de AES, donde
todas las rondas que son menores a la última se basan en SubBytes, ShiftRows,
MixColumns y AddRoundKey:
❏ SubBytes: reemplaza cada byte (s = s0, s1, . . . , s15) por otro byte.
❏ ShiftRows: cambia la fila número “i” de las posiciones de “i”, donde “i”
pertenece al rango de 0 a 3.
❏ MixColumns: aplica la misma transformación lineal a cada una de las
cuatro columnas del estado.
❏ AddRoundKey: aplica cifrado XOR a una clave de ronda para el estado
interno.

La capa de sustitución es SubBytes y la capa de permutación es la combinación de


ShiftRows y MixColumns.

El algoritmo de programación de la clave AES es la función KeyExpansion mostrada en la


figura anterior. Esta expansión crea 11 rondas de claves (K0, K1, . . . , K10) de 16 bytes
cada una a partir de la clave de 16 bytes, utilizando la misma S-box como SubBytes y
una combinación de XORs.

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.

Shiftrows rotan bytes dentro de cada fila del estado interno

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.

8.4.2. CIFRADO EN LINUX


Como hemos visto anteriormente, los archivos con los que trabaja una empresa son de
gran importancia. Para mantenerlos seguros, no basta con tener un protocolo de acceso
a las redes seguro, sino que es necesario cifrar los archivos importantes para evitar que
terceros sepan su contenido. De esta manera, si ocurre una brecha de seguridad, los
archivos a los que podrían acceder los hackers estarán protegidos, asegurando la
integridad de la información de los clientes y otros recursos valiosos para la compañía
(contraseñas, estados de cuentas, etc.)

CCRYPT es una herramienta de cifrado disponible para varios sistemas operativos. Se


basa en el bloque de cifrado Rijndael o AES, también usado en el protocolo de seguridad
AES.

Los sistemas operativos que soporta CCRYPT son:


 Linux
 Android 4+
 Windows NT
 Mac OS X
 OpenBSD
 FreeBSD
 NetBSD
 Sun Solaris

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.

Para descifrar el archivo, se debe utilizar el siguiente comando:

183
©Clictic S.L.
8.5. COMENTARIOS SOBRE CLAVES PÚBLICAS Y PRIVADAS: SESIONES

8.5.1 CRIPTOGRAFÍA BASADA EN CLAVES PÚBLICAS Y PRIVADAS


La criptografía basada en claves públicas y privadas es un método utilizado para cifrar
mensajes mediante una clave que no es privada. Incluye varios métodos como
autenticación, esquemas de firma digital, y acuerdo de claves. Las firmas digitales son
empleadas para firmar mensajes con la clave privada del emisor y esta firma puede ser
verificada por cualquiera que tenga acceso a la clave pública del emisor, asegurando así
la autenticidad del mensaje y comprobando que la persona que envió el contenido
cifrado es realmente el emisor original.

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.

La criptografía de claves públicas se suele utilizar para asegurar comunicaciones


electrónicas en un ambiente de redes abiertas como Internet sin tener que contar con
un canal oculto. Este tipo de entornos son susceptibles a una gran variedad de
problemas de seguridad y ataques de intermediarios.

La seguridad de la comunicación generalmente requiere:


- Que la comunicación no sea legible durante el tránsito, para preservar la
confidencialidad.
- Que la comunicación no sea modificada durante el tránsito, para preservar la
integridad.
- Que la comunicación venga de una parte identificada, para autenticar la
identidad del emisor.
- Que el receptor no sea capaz de repudiar o negar el recibimiento de la
información.

8.5.2 MÉTODOS DE CRIPTOGRAFÍA BASADA EN CLAVES PÚBLICAS


En los métodos de cifrado asimétrico, el hecho de conocer la clave pública no vulnera al
sistema y no permite descifrar el mensaje. Se generan un par de claves de cifrado y
descifrado por cada receptor y todas las claves de cifrado son publicadas. Al enviar un
mensaje secreto a un receptor, el emisor elige la clave de cifrado público del receptor y
cifra el mensaje con ella. El mensaje cifrado puede ser recuperado mediante la clave de
cifrado correspondiente, que únicamente debe tener la persona a la cual se le envió el
mensaje.

Un esquema de cifrado de clave pública está formado por tres algoritmos:


 Algoritmo de generación de clave
 Algoritmo de cifrado
 Algoritmo de descifrado

La seguridad de este tipo de esquemas se evalúa mediante medidas de seguridad


llamadas “seguridad semántica”. Estas medidas establecen que, si un esquema de

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.

Enveloped Public Key Encryption (EPKE)


Es un método que aplica criptografía de claves públicas con el objetivo de asegurar la
integridad y confidencialidad de un canal electrónico de comunicación. El canal
transmite el contenido de la comunicación, protegido ante alguna modificación,
preservando su integridad, y de forma tal que no puede ser negado, logrando así el
principio del no repudio.

Este método es comúnmente utilizado para asegurar canales de comunicación en


ambientes abiertos de redes mediante el protocolo TSL. Se trata de un proceso de dos
etapas que incluye tanto el cifrado por claves públicas como las firmas digitales.

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.

8.5.3. INFRAESTRUCTURA DE LLAVES PÚBLICAS


Este concepto se emplea para etiquetar cualquier arquitectura de seguridad donde los
usuarios finales tienen la capacidad de utilizar firmas digitales y posiblemente cifrados
basados en claves públicas.

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).

Transport Layer Security


Es un protocolo criptográfico que proporciona seguridad a una comunicación dentro de
una red de ordenadores. El uso de TLS abarca desde la navegación web en navegadores,
el envío de correos electrónicos, el envío de fax a través de Internet hasta mensajería
instantánea y servicios de llamadas mediante Internet.
El protocolo TLS provee privacidad e integridad de datos entre dos aplicaciones de un
equipo con una comunicación establecida. Como están aseguradas mediante TLS, las
conexiones entre cliente (navegador web) y servidor (sitio web), cumplen las siguientes
propiedades:
 Conexión privada: los datos están cifrados debido a la criptografía simétrica
utilizada. Las claves para este cifrado son generadas de manera única para cada
conexión y compartidas previamente al inicio de cada sesión.
 Autenticidad: la identidad de las partes es autenticada mediante el uso de
criptografía de claves públicas. Normalmente es utilizada sólo desde la parte del
servidor.
 Integridad: la conexión asegura que exista integridad utilizando un código de
autenticación de mensajes que previene pérdidas o alteración de datos durante
la transmisión.

Algoritmos de intercambio o acuerdo de claves


Antes de que se establezca el intercambio de información a través de TLS entre un
cliente y un servidor, estos deben intercambiar de manera segura o acordar
previamente la clave de cifrado y utilizar un algoritmo para cifrar los datos. Existen
distintos métodos para llevar a cabo esta tarea, entre los cuales se destacan:
RSA – Rivest Shamir Adleman: es uno de los primeros sistemas cifrados a través
de claves públicas. El algoritmo sigue cuatro pasos: generación de clave,
distribución de clave, cifrado y descifrado.

❏ 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.

❏ Cifrado: Después de que A obtiene la clave pública de B, puede enviar el mensaje


M. Para ello, convierte M en un número entero m, 0 ≤ m < n al utilizar un protocolo
reversible previamente acordado conocido como esquema de relleno. Se procede a
calcular el texto cifrado c utilizando la clave pública de B, e, por lo que:

𝑐 ≡ 𝑚𝑒 (𝑚𝑜𝑑 𝑛)

❏ Descifrado: B puede entonces recuperar m de c utilizando su exponente de clave


privada d al calcular:
𝑐 𝑑 ≡ (𝑚𝑒 )𝑑 ≡ 𝑚 (𝑚𝑜𝑑 𝑛)

Una vez obtenido el resultado de m, B puede recuperar el contenido original del


mensaje M al revertir el esquema de relleno.

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.

9.1. VALIDACIÓN DE IDENTIFICACIÓN DE REDES

9.1.1. DEFINICIÓN DE AUTENTICACIÓN


Vamos a comenzar con un ejemplo simple de la vida cotidiana antes de comentar las
definiciones técnicas de este apartado: usualmente tu vecino te reconoce, te ve con
frecuencia, sabe quién eres y por tanto sabe que eres alguien que debería entrar en tu
casa. De la misma forma, puede diferenciar cuando se trata de alguien distinto
intentando entrar a ella, sobre todo si esa persona se comporta de manera sospechosa.
Por tanto, al asociar este tipo de eventos con el sonido de un cristal rompiéndose,
podría llegar a avisar a la policía.

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.

Por otra parte, la autenticación debería ser confiable. Si la identificación afirma la


identidad de una persona, la autenticación confirma que esa persona es realmente
quien asegura ser. Como ya se comentó antes, la autenticación debe ser privada
aunque los identificadores puedan ser públicos o fácilmente determinados. No
obstante, el proceso de autenticación no será seguro si no es lo suficientemente fuerte.
Un ejemplo es lo ocurrido con el correo de una candidata presidencial, que fue
comprometido al no seguir un proceso de autenticación riguroso.

Correo expuesto de la ex-candidata vicepresidencial Sarah Palin


189
©Clictic S.L.
La cuenta de esta candidata fue hackeada durante la campaña presidencial
estadounidense del 2008. Se hizo pública en Internet la lista de contactos y el contenido
de algunos correos. El autor, un estudiante de 20 años, de la Universidad de Tennessee,
David Kernell, fue condenado por el acceso no autorizado al ordenador para obtener
información y sentenciado a cumplir un año de prisión.

Ahora bien, ¿cómo es posible que un estudiante universitario tuviera acceso al


ordenador de una oficial pública de alto perfil (en aquel entonces gobernadora de
Alaska) y candidata a la vicepresidencia de los Estados Unidos bajo protección del
Servicio Secreto? Muy fácil: simplemente pretendió ser ella. La cuenta de la
Gobernadora Palin era gov.palin@yahoo.com. Su ID era conocido públicamente debido
a una serie de noticias que la involucraron utilizando cuentas de e-mail personales para
asuntos oficiales. Por otra parte, el nombre de la cuenta no habría sido difícil de adivinar
aun sin la publicidad proporcionada por estos artículos.

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.

9.1.3. AUTENTICACIÓN DENTRO DE LA GESTIÓN DE SEGURIDAD DE REDES


La autenticación es uno de los tres pilares que soportan la gestión de la red en una
organización, acorde con el modelo actual. Estos pilares son Autenticación, Autorización
y Responsabilidad en La Red; y conforman una tecnología llamada AAA (Network
Authentication, Authorization and Accounting) que ha estado utilizándose incluso antes
de conocer Internet como lo hacemos a día de hoy.

➔ La Autenticación pregunta: “¿quién o qué eres?”


➔ La Autorización pregunta: “¿qué se te está permitido realizar?”
➔ La Responsabilidad pregunta: “¿qué has hecho dentro de la red?”

El objetivo principal de AAA es proporcionarle movilidad y dinamismo a la seguridad. Sin


esta tecnología las redes tendrían que ser configuradas de estáticamente para poder
controlar el acceso a ellas. Es decir, las direcciones IP serían estáticas, el hardware
estaría fijo y las opciones de conectividad deberían estar definidas a un nivel de detalle
inmenso. Actualmente el auge que han tenido los dispositivos móviles junto con el

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.

TACACS (Terminal Access Controller Access Control System, Sistema de Control de


Acceso Mediante Control del Acceso desde Terminales) es otro protocolo muy popular
desarrollado cuatro años antes que RADIUS. Aunque nunca llegó a convertirse en un
estándar, evolucionó a XTACACS y posteriormente a TACACS+, versión actualmente en
uso.

Antes de seguir en profundidad con los protocolos de autenticación, es necesario


entender los papeles que se representan dentro de un sistema AAA.

9.1.4. COMPONENTES PRINCIPALES DE AAA


 Cliente: es el dispositivo que intenta acceder a la red. Se autentica o actúa como
un proxy para autenticar al usuario.
 Punto de Cumplimiento de Políticas (Autenticador): también denominado
autenticador o servidor de marcado, cortafuegos, switch Ethernet, concentrador
de VPN, punto de acceso inalámbrico (WAP), nodo de soporte del Servicio
General de Paquetes Vía Radio (General Packet Radio Service; GPRS) o una
entrada de seguridad en línea. Es responsable de hacer cumplir los términos del
acceso de un cliente. Varía según las capacidades del PCP y lo analizaremos más
adelante.
 Punto de Información de Política (PIP): es un repositorio de información para
ayudar la toma de decisión de acceso. Puede ser una base de datos de ID de
dispositivo, un Servidor de tokens de Contraseña de Uso Único (One Time
Password; OTP), un directorio de usuario como el Protocolo Ligero de Acceso a
Directorios (Lightweight Directory Access Control; LDAP) o cualquier otro
sistema que contenga datos relevantes para un dispositivo o para cualquier
solicitud de acceso de usuario.

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.

Es importante tener en cuenta que las categorías descritas anteriormente son


contenedores lógicos de funciones y no necesariamente dispositivos físicos dedicados.
En ocasiones, estos elementos se combinan. Por ejemplo PEP con PDP y PDP con PIP.

9.1.4. CASO TÍPICO DE PROCESO AAA


Una vez visto los componentes de una solución AAA, la siguiente imagen muestra un
ejemplo de un cliente que intenta obtener acceso a la red.

Ejemplo de flujo AAA

Paso 1: el cliente intenta conectarse a la red y se le solicita la información de identidad.


Una vez obtenida, se envía al PCP. En este ejemplo, vamos a suponer que el cliente es
un ordenador portátil con un empleado que intenta acceder a la VPN de una
organización desde una ubicación remota y asumimos que este es un uso válido y
permitido de la red.

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 4: el PIP devuelve al PDP un mensaje de éxito o de error, según el chequeo de


validación de credenciales, junto con información adicional sobre el cliente para su
evaluación. Esta información podría incluir la función del usuario, la ubicación de inicio
para el usuario, entre otras.

Paso 5: el PDP evalúa la información recibida y cualquier información contextual (como


la hora) contra sus políticas configuradas. Procede a tomar una decisión de autorización
en base a esta información.

Paso 6: el PDP envía al PCP el resultado de la autenticación y cualquier autorización


específica del cliente. Estas activan acciones PCP específicas para aplicar al cliente. Por
ejemplo, los datos de autorización pueden desplegar Listas De Control De Acceso
específicas o asignaciones de grupo de IP para el cliente.

Paso 7: el PDP envía el resultado de esta transacción al sistema de Responsabilidades.

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.

Paso 9: el cliente accede a la red de producción a través del PEP.

9.2. MÉTODOS DE AUTENTICACIÓN DE RED


Existen cuatro medios para autenticar la identidad de los usuarios y pueden ser usados
solos o en combinación con otros:
 Algo que el individuo posee: tarjetas electrónicas, tarjetas inteligentes, claves
criptográficas y claves físicas. A este tipo de Autenticador se le llama Token.
 Algo que el individuo conoce: contraseñas, una clave secreta o respuestas a un
conjunto de preguntas previamente acordado.
 Algo que el individuo es (biométrica estática): reconocimiento de huella digital,
facial y de retina.
 Algo que el individuo hace (biométrica dinámica): reconocimiento por patrón,
patrón de voz, características de la caligrafía y ritmo de escritura.

Estos métodos indicados anteriormente, si se implementan y se usan correctamente,


son capaces de proveer una autenticación de usuario segura. No obstante, cada uno
presenta problemas: alguien podría adivinar o robar una contraseña; podría copiar o
robar un token; el propio usuario podría olvidar la contraseña o perder un token. Y
además de todo esto, existe un descuido administrativo considerable con respecto a la
gestión de contraseñas y de tokens. En el caso de los autenticadores biométricos,

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.

9.2.1. AUTENTICACIÓN MUTUA


El protocolo de autenticación mutua consiste en el enlace de comunicación que
establecen dos personas con el objetivo de autenticar la identidad de cada una,
generalmente con la finalidad de establecer una línea segura de comunicación para
realizar el intercambio de claves de sesión. Estos protocolos son utilizados en
situaciones donde dos usuarios quieren establecer una sesión privada y para ello
necesitan intercambiar claves de sesión, pero para asegurarse de que la sesión no
quede comprometida, primero deben estar seguros de que ambas partes son quienes
dicen ser.

El proceso de autenticación mutua es susceptible a los ataques Man In The Middle,


donde un tercero espía o se hace pasar por alguna de las partes para hurtar las claves
cifradas y acceder a los datos cifrados. Una técnica utilizada para lidiar con estos
ataques es añadir una secuencia de números ascendentes a cada mensaje. Cada nuevo
mensaje es aceptado sólo si sigue la secuencia que espera. La dificultad de esto es que
requiere que ambas partes mantengan un seguimiento del número del mensaje más
reciente y del anterior. Es por ello que la secuencia de números no se usa generalmente
para autenticar e intercambiar claves. En su lugar, se utilizan alguna de estas dos
técnicas:
 Marcas de tiempo: A acepta la autenticidad del mensaje sólo si contiene una
marca de tiempo que, según estima A, concuerda con la hora de B. Esta técnica
requiere que los relojes de cada uno de los participantes estén sincronizados.
 Desafío/Respuesta: A espera una respuesta reciente de B. Primero le envía un
“desafío” que consiste en una secuencia numérica que requiera resolución y le
solicita que el siguiente mensaje debe contener dicha solución.

Debido a la dificultad de asegurar la sincronización de los relojes, se puede argumentar


que la técnica de la marca de tiempo no debería ser utilizada en una red de acceso
remoto.

9.2.2. AUTENTICACIÓN UNIDIRECCIONAL


Existe otro método de autenticación y es el protocolo de autenticación de usuario con
una entidad impersonal, es decir, un servidor, una página web o una persona que no se
encuentre conectada a la hora de enviar los datos. El usuario que envía la información

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.

Antes de nada es importante comprender las dos formas básicas de criptografía: la de


clave simétrica o clave secreta y la de clave pública.

9.3. VERIFICACIÓN DE IDENTIFICACIÓN BASADA EN CLAVE COMPARTIDA


La Autenticación de Claves Compartidas (Shared Key Authentication; SKA) es uno de los
métodos más simple de verificación utilizado por los protocolos de cifrado simétricos
(WEP, WPA y WPA2). En este método solo existe una clave que se comparte
previamente con el dispositivo que intenta acceder a la red. La generación y la gestión
de la clave quedan a mano del administrador de la red ya que no se encuentran
establecidas dentro del protocolo. Para una correcta implementación de este sistema se
requiere una gestión diligente y constante.

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.

El problema de la gestión de claves es atenuado por sistemas de gestión de


autenticación y autorización como Kerberos (se explicará más adelante), mientras que
los Centros de Distribución de Claves (Key Distribution Centers; KDS) son los encargados
del problema de mantener un estándar de seguridad alto para cada clave.

9.4. ESTABLECIMIENTO DE UN CLAVE COMPARTIDA: INTERCAMBIO DE


CLAVES DIFFIE-HELLMAN

9.4.1. INTERCAMBIO DE CLAVES DIFFIE-HELLMAN


El intercambio de claves Diffie-Hellman es un método seguro para intercambiar claves
criptográficas que permite que dos partes que no tengan conocimiento previo entre sí
establezcan una clave secreta compartida, incluso si es sobre un canal inseguro y de
comunicaciones abiertas. Fue inventado por Whitfield Diffie y Martin Hellman en 1976
como el primer método práctico para establecer un código secreto compartido.

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.

9.4.1 EJEMPLO DE INTERCAMBIO DE CLAVES DIFFIE-HELLMAN


A continuación se muestra un ejemplo para comprender mejor el funcionamiento de
este método. En el ejemplo se utilizan colores para visualizar los datos del sistema y a
dos personas: Alice y Bob, que representan cualquier dispositivo o nodo de la red.

1. El proceso comienza cuando Alice y Bob acuerdan un color arbitrario (la


clave pública) que no es necesario mantener en secreto. El color es amarillo.
2. Cada parte selecciona un color secreto (la clave privada) en este caso rojo y
azul.
3. La parte importante del proceso es cuando Alice y Bob mezclan su color
secreto con el color común, obteniendo como resultado naranja para Alice y
verde para Bob.
4. Una vez realizada la mezcla, Alice y Bob comparten estos colores mediante
vías públicas. La seguridad del cifrado asume que la separación de los colores
mezclados es tan extenuante que los atacantes ni siquiera intentan hacerlo.
5. Finalmente Bob y Alice mezclan los colores recibidos con sus respectivos
colores secretos, obteniendo ambos marrón.

En el caso de que un tercero presencie el intercambio, sería computacionalmente difícil


identificar los colores secretos. De hecho, cuando se utilizan números grandes en lugar
de colores, esta acción resulta computacionalmente muy costosa incluso para los
superordenadores modernos.

Ejemplo visual del intercambio de claves Diffie-Hellman

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).

9.5. VALIDACIÓN DE IDENTIFICACIÓN USANDO UN CENTRO DE DISTRIBUCIÓN


DE CLAVES
Un centro de distribución de claves (KDC) es un sistema que proporciona claves a los
usuarios de una red en la que se comparten datos privados o confidenciales. Cada vez
que se establece una conexión entre dos equipos en una red, ambas solicitan al KDC la
generación de una contraseña única que puedan utilizar los usuarios finales del sistema
para la verificación.

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.

Modelo de centro de distribución de claves

9.6. PROTOCOLO DE AUTENTICACIÓN KERBEROS.


Como mencionamos anteriormente, Kerberos es un protocolo de autenticación de
redes creados por el MIT, que maneja un sistema de claves secretas utilizadas para
autenticar un usuario de manera segura en un entorno de red inseguro. El servidor de
aplicaciones y el cliente tienen como tarea intercambiar claves cifradas (tickets), en
lugar de un conjunto de ID de usuario y contraseña en forma de texto claro, para
determinar las credenciales de un usuario en la red. Un servidor KDC (centro de
198
©Clictic S.L.
distribución de claves) genera un ticket después de validar el correcto inicio de sesión
del usuario.

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.

Funcionamiento del protocolo Kerberos


A continuación se describen las abreviaturas que se utilizarán a lo largo de esta
explicación:
➢ AS = Authentication Server
➢ TGS = Ticket Granting Server
➢ SS = Service Server

El funcionamiento de este protocolo es el siguiente:


El cliente se valida a sí mismo contra el AS para demostrar al TGS que tiene la
autorización para recibir un ticket de servicio. Cuando lo recibe, aclara al SS que fue
aceptado para que utilice el servicio kerberizado. Es decir:
1. Un usuario teclea el nombre de usuario que le pertenece y su contraseña en el
cliente.
2. El cliente crea una clave hash partiendo de la contraseña que utilizará como la
clave secreta.
3. El cliente emite un mensaje en texto al AS solicitando servicio en nombre del
usuario. No se envían ni la clave secreta ni la contraseña, solamente la petición
del servicio.
4. El AS valida si el cliente existe en su base de datos, y en caso afirmativo, crea la
clave secreta haciendo uso de la función hash con la contraseña del usuario que
fue encontrada en su base de datos. Al finalizar, se envía al cliente los siguientes
dos pasos:
 Mensaje A: Client/TGS session key cifrada haciendo uso de la clave
secreta del usuario.

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.

6. Cliente envía los mensajes siguientes al TGS:


 Mensaje C: combinado del Ticket-Granting del ID de la solicitud de
servicio y del mensaje B.
 Mensaje D: autenticador (composición del ID del cliente y una marca de
tiempo) que se encuentra cifrado haciendo uso del client/TGS session
key.

7. En el momento en que se reciben los mensajes A, B y C, el TGS se encarga de


descifrar el mensaje D (Autenticador) mediante el client/TGS session key y le
envía estos mensajes al cliente:
 Mensaje E: Client-to-server ticket que incluye el ID del cliente, la
dirección de red del cliente, una Client/Server session key, el período de
validez cifrado tras utilizar la clave secreta del servicio.
 Mensaje F: Client/server session key que se encuentra cifrada y está
haciendo uso del client/TGS session key.
8. Una vez recibidos los mensajes E y F por el cliente, se sabe que ya cuenta con
toda la información suficiente para identificarse contra el SS. El cliente realiza la
respectiva conexión al SS y se comienzan a enviar mensajes como los de a
continuación:
 Se realiza lo mismo que el mensaje E del paso anterior.
 Mensaje G: incluye un Autenticador nuevo que contiene una marca de
tiempo, el ID de cliente y que se encuentra cifrado usando el
client/server session key.
9. El SS descifra el ticket mediante la clave secreta correspondiente y envía el
mensaje siguiente al cliente para que confirme su identidad:
 Mensaje H: la marca de tiempo que se obtiene en el último Autenticador
que es recibido del cliente más uno, cifrado del client/server sessionkey.
10. Cuando el cliente realiza la interpretación de la confirmación a través del
client/server session key y verifica si la marca de tiempo tiene la actualización
correspondiente, se fiará del servidor y comenzará a utilizar el servicio ofrecido
por este.

11. El servidor se encarga de proveer del servicio al cliente.

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.

9.7.1 SERVICIOS DE SEGURIDAD


Las transacciones electrónicas no pueden ocurrir sin contar con la habilidad para
identificar electrónicamente a las máquinas o a las personas de manera fiable. La
tecnología de clave pública es la forma más segura para la protección de los datos
electrónicos y también para la identificación electrónica, mediante el uso de las tarjetas
de identidad electrónica o los certificados digitales.

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.

La infraestructura de clave pública ofrece los servicios necesarios para obtener


relaciones electrónicas de confianza. Para lograrlo, las TTPs (terceras partes de
confianza) tienen la responsabilidad de garantizar la relación segura de las entidades
con los datos socioeconómicos acreditados por éstas. También relacionan de forma
segura una fecha específica con unos datos específicos o ratifican que las relaciones
establecidas siguen siendo válidas aunque pase el tiempo.

Estas entidades de confianza, se clasifican en tres grupos según el tipo de


responsabilidad obtenida:
201
©Clictic S.L.
1. Autoridades de Certificación: entidades que tienen la responsabilidad de
gestionar y emitir de los certificados digitales.
2. Autoridades de Validación: entidades que tienen la responsabilidad de asegurar
si un certificado digital es válido.
3. Autoridades de Sellado de Tiempo: entidades responsables de afirmar la fecha
en la que tuvieron existencia unos datos concretos.

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.

La CA se dedica exclusivamente a la generación de las listas de revocación y los


certificados y poseen los certificados inválidos. Cuando el componente RA interactúa
con las entidades que realizan las solicitudes de los certificados y con el sistema
encargado de tomar decisiones en la compañía para poder obtener los datos o atributos
de quien realizó la solicitud, el componente CA es el responsable exclusivo de procesar
todas las solicitudes que fueron aprobadas para la emisión de los certificados
correspondientes.

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.

Autoridad de Sellado de Tiempo:


Determina el tiempo y realiza la asociación con unos datos concretos. El resultado
obtenido es la generación de un sello de tiempo que se entregará al solicitante. Este
sello suministrado por la TSA contiene su firma digital y proporciona un valor probatorio
a dichos datos. La TSA garantiza solamente un tiempo asociado a algunos datos, no los
verifica ni puede acceder a ellos. Los sellos de tiempo tienen beneficios como: aseguran
el momento de la existencia de una firma y verifican las firmas a lo largo del tiempo.
Algunos ejemplos son: servicios de Notaría Electrónica o presentación de validez de
ofertas, servicios de Administraciones Públicas que precisen garantizar fechas de
entregas, entre otros.

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

9.8. VALIDACIÓN DE IDENTIFICACIÓN DE CLAVE PÚBLICA: PROTOCOLO DE


INTERBLOQUEO
Los criptosistemas de clave pública que cuentan con centros de distribución que
autentican y distribuyen las claves, ofrecen un alto grado de protección a sus usuarios.
No obstante, en el caso de redes grandes, poco organizadas y en constante cambio, es
casi imposible de mantener un directorio central y las partes en comunicación tienen
que confiar en directorios locales e inseguros o tienen que intercambiar sus claves
públicas por cuenta propia. El objetivo del protocolo de interbloqueo es proteger a los
miembros de la red, incluso si se dan estos casos.

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.

Funcionamiento del protocolo:


1. Anne envía su Clave Pública (CA) a Bob.
2. Bob envía su Clave Pública (CB) a Anne.
3. Anne cifra un Mensaje (MA) con CB. Divide en dos el Resultado del Cifrado (RCA) y
envía la primera mitad a Bob.
4. Bob cifra un Mensaje (MB) con CA. Divide en dos el Resultado del Cifrado (RCB) y
envía la primera mitad a Anne.
5. Anne le envía a Bob la segunda mitad de RCA.
6. Bob envía a Anne la segunda mitad de RCB.
7. Anne y Bob unen las dos mitades de RCB y RCA.
8. Anne y Bob descifran RCB y RCA con sus claves secretas correspondientes.

En este protocolo cada parte realiza un paso, solamente después de recibir la


información enviada por la otra parte en el paso previo.

Suponiendo que el oponente (Marco) logra reemplazar CA y CB con su Clave Pública


(CM), veamos la situación después del tercer paso:

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.

También podría gustarte