774 2006 esime-zac superior mejia nogales

87
INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA SECCIÓN DE ESTUDIOS DE POSGRADO E INVESTIGACIÓN Sistema de Acceso Seguro a Recursos de Información para Redes Inalámbricas 802.11 TESIS QUE PARA OBTENER EL GRADO DE MAESTRO EN CIENCIAS EN INGENIERÍA DE TELECOMUNICACIONES Presenta: Ing. Jose Luis Mejia Nogales Director de Tesis: M. en C. Sergio Vidal Beltrán México D. F. 2006

Upload: jose-carlos-escobar-martinez

Post on 27-Jun-2015

171 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 774 2006 Esime-zac Superior Mejia Nogales

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA

MECÁNICA Y ELÉCTRICA SECCIÓN DE ESTUDIOS DE POSGRADO E INVESTIGACIÓN

Sistema de Acceso Seguro a Recursos de Información

para Redes Inalámbricas 802.11

TESIS QUE PARA OBTENER EL GRADO DE MAESTRO EN CIENCIAS EN INGENIERÍA DE

TELECOMUNICACIONES

Presenta: Ing. Jose Luis Mejia Nogales

Director de Tesis:

M. en C. Sergio Vidal Beltrán

México D. F. 2006

Page 2: 774 2006 Esime-zac Superior Mejia Nogales

Maestría en Ciencias en Ingeniería de Telecomunicaciones

- i -

Page 3: 774 2006 Esime-zac Superior Mejia Nogales

Maestría en Ciencias en Ingeniería de Telecomunicaciones

- ii -

INSTITUTO POLITECNICO NACIONAL

SECRETARIA DE INVESTIGACION Y POSGRADO

CARTA CESION DE DERECHOS En la Ciudad de México, D. F., el día 13 del mes de marzo del año 2006

el que sus MEJIA NOGALES JOSE LUIS alumno del Programa de

MAESTRÍA EN CIENCIAS EN INGENIERÍA DE TELECOMUNICACIONES

con número de registro A030630 adscrito a la Sección de Estudios de Posgrado e

Investigación de la E.S.I.M.E. Unidad Zacatenco, manifiesta que es autor intelectual del

presente Trabajo de Tesis bajo la dirección del M. EN C. SERGIO VIDAL BELTRÁN

y cede los derechos del trabajo intitulado:

"SISTEMA DE ACCESO SEGURO A RECURSOS DE INFORMACIÓN PARA REDES INALÁMBRICAS 802.11”,

al Instituto Politécnico Nacional para su difusión, con fines Académicos y de Investigación.

Los usuarios de la información no deben reproducir el contenido textual, gráficas o datos del

trabajo sin el permiso expreso del autor y/o director del trabajo. Este puede ser obtenido

escribiendo a la siguiente dirección: [email protected]

Si el permiso se otorga, el usuario deberá dar el agradecimiento correspondiente y citar la

fuente del mismo.

JOSE LUIS MEJIA NOGALES

Page 4: 774 2006 Esime-zac Superior Mejia Nogales

Maestría en Ciencias en Ingeniería de Telecomunicaciones

- iii -

“Todo se debe hacer lo más sencillo posible, pero no más sencillo”

Albert Einstein

Page 5: 774 2006 Esime-zac Superior Mejia Nogales

Maestría en Ciencias en Ingeniería de Telecomunicaciones

- iv -

Agradezco:

A mis padres Antonio y Marela, por su infinito amor hacia sus hijos.

A mis hermanos Marisol y Ramiro, por su constante apoyo y ánimo.

Al Instituto Politécnico Nacional por acogerme como uno más de sus alumnos

A mis profesores, por compartirme sus conocimientos en forma desprendida.

Y a todos mis amigos y familiares, por su cariño desinteresado.

Page 6: 774 2006 Esime-zac Superior Mejia Nogales

Maestría en Ciencias en Ingeniería de Telecomunicaciones

- v -

Contenido Relación de Figuras y Tablas vi Resumen vii Abstract viii Antecedentes ix Justificaciones x Objetivo General xi Objetivos Específicos xi Introducción 1 Capítulo 1 Seguridad Inalámbrica 1. Introducción 3

2. Redes Inalámbricas 802.11 3 3. Riesgos de las Redes Inalámbricas 5 4. Algoritmo WEP 7 5. Algoritmo WPA 10 6. Estándar 802.11i 12

6.1 Estándar 802.1x 12 6.2 Protocolo Modo Contador con CBC-MAC 15

7. Punto de Acceso para Proveedores de Información 16 7.1. Componentes de PAPI 16 7.2. Fase de Autenticación 18 7.3. Claves Temporales 20 7.4. Fase de Control de Acceso 21 7.5. Distribución PAPI 22

8. Referencias 22 Capítulo 2 Análisis del Sistema

1. Introducción 24 2. Portal Cautivo 25 3. Servidor de Autenticación 27 4. Punto de Acceso 30 5. Referencias 33

Capítulo 3 Diseño del Sistema 1. Introducción 34 2. Escenario Principal 34 3. Definición de Estados 36 4. Descripción de Funciones 39

Capítulo 4 Implementación 1. Introducción 45 2. Esquema de Implementación 45 3. Resultados 54

Conclusiones 58 Recomendaciones 60 Sugerencias para Trabajos Futuros 61 Bibliografía 62 Apéndice A Estándar de Encriptación Avanzado 64 Apéndice B Software Libre 67 Glosario 71

Page 7: 774 2006 Esime-zac Superior Mejia Nogales

Maestría en Ciencias en Ingeniería de Telecomunicaciones

- vi -

Relación de Figuras y Tablas Figura 1.1 Sistema Abierto 4 Figura 1.2. Utilización de Claves Compartidas 5 Figura 1.3 Diagrama en Bloque del Cifrado WEP 8 Figura 1.4 Diagrama en Bloque del Descifrado WEP 8 Figura 1.5 Estructura de Encriptación WEP 9 Figura 1.6 Estructura de Encriptación TKIP 11 Figura 1.7 Diagrama en Bloque del Cifrado TKIP 11 Figura 1.8 Arquitectura de un Sistema de Autenticación 802.1x 13 Figura 1.9 Diálogo EAPOL – RADIUS 14 Figura 1.10 Estructura de Encriptación CCMP 15 Figura 1.11 Diagrama en Bloques de CCMP 15 Figura 1.12 La Arquitectura PAPI 17 Figura 1.13 Interacción entre PoA y GPoA 19 Figura 2.1 Arquitectura del Sistema de Acceso Seguro 25 Figura 2.2 Flujo del Portal Cautivo 26 Figura 2.3 Flujo del Servidor de Autenticación 28 Figura 2.4 Subsistema Servidor de Autenticación 29 Figura 2.5 Subsistema Punto de Acceso 30 Figura 2.6 Estructura de Claves Temporales 32 Figura 3.1 Casos de Uso del Sistema 35 Figura 3.2 Diagrama de Estados del Caso de Uso: Capturar Primer Pedido 36 Figura 3.3 Diagrama de Estados del Caso de Uso: Autenticar Usuario 37 Figura 3.4 Diagrama de Estados del Caso de Uso: Controlar Acceso 38 Figura 3.5 Diagrama de Secuencias del Caso de Uso: Capturar Primer Pedido 40 Figura 3.6 Diagrama de Secuencias del Caso de Uso: Autenticar Usuario 41 Figura 3.7 Diagrama de Secuencias del Caso de Uso: Controlar Acceso 42 Figura 4.1 Componentes del Sistema de Acceso Seguro a Recursos de Información para Redes Inalámbricas 47 Figura 4.2 Diagrama de Red 54 Figura 4.3 Ventana de Presentación 55 Figura 4.4 Ventana con Enlaces Autorizados 55 Figura 4.5 Ventana con Autenticación Rechazada 56 Figura 4.6 Respuesta a la Opción Test 57 Figura 4.7 Respuesta a la Opción Salir 57 Tabla 1.1 Familia 802.11 4 Tabla 1.2 Simbología Warchalking 6 Tabla 3.1 Estados del Caso de Uso: Capturar Primer Pedido 37 Tabla 3.2 Estados del Caso de Uso: Autenticar Usuario 38 Tabla 3.3 Estados del Caso de Uso: Controlar Acceso 39 Tabla 3.4 Componentes del Sistema 40 Tabla 3.5 Flujo de Datos del Caso de Uso: Capturar Primer Pedido 41 Tabla 3.6 Flujo de Datos del Caso de Uso: Autenticar Usuario 42 Tabla 3.7 Flujo de Datos del Caso de Uso: Controlar Acceso 44 Tabla 4.1 Características del Punto de Acceso de la Red Inalámbrica 46 Tabla 4.2 Características del Servidor Central 46 Tabla 4.3 Software Utilizado 47

Page 8: 774 2006 Esime-zac Superior Mejia Nogales

Maestría en Ciencias en Ingeniería de Telecomunicaciones

- vii -

Resumen La seguridad siempre ha sido uno de los factores más delicados al momento de diseñar un sistema de comunicaciones y más aún cuando se transmite información confidencial a través de él. Las redes inalámbricas son un caso muy particular porque los datos viajan a través de un medio totalmente inseguro, lo que da origen a la necesidad de crear un sistema de seguridad específico para este tipo de tecnología. El sistema aquí propuesto proporciona a sus usuarios un acceso seguro a recursos de información confidencial a través de redes inalámbricas del tipo 802.11. La seguridad del sistema se distribuye en tres procesos: un Portal Cautivo, un Servidor de Autenticación y un Punto de Acceso. El Portal Cautivo es un firewall que solamente acepta tráfico HTTP y consultas al DNS, pero su principal objetivo es redireccionar todas las peticiones de nuevos usuarios hacia el Servidor de Autenticación. Todo usuario que pretenda ingresar a la información confidencial deberá pasar previamente por el Servidor de Autenticación central, el cual lanza un reto al usuario nuevo para autenticarlo. Una vez autenticado, el usuario recibe de manera codificada datos que deberá presentarlos al Punto de Acceso que actúa como guardián de la información. El Punto de Acceso verifica los datos presentados por el usuario, si son válidos entrega al navegador web del usuario claves codificadas como cookies. El navegador almacena estas cookies que serán la forma de identificar al usuario en peticiones posteriores. La característica principal del sistema propuesto es que el usuario no necesita de componentes adicionales para acceder a la información, solo utiliza su navegador web. Además, todo el procedimiento de seguridad es transparente para los usuarios.

Page 9: 774 2006 Esime-zac Superior Mejia Nogales

Maestría en Ciencias en Ingeniería de Telecomunicaciones

- viii -

Abstract The security always has been one of the most delicate factors to the moment to design a communications system and even more when confidential information is transmitted across it. The wireless networks are a very particular case because the information travels across a totally insecure way, that’s why a specific security system creation is needed for this kind of technology. The proposed system provides to the users a sure access to confidential information resources across wireless networks 802.11. The security of the system is distributed in three processes: a Captive Portal, an Authentication Server and an Access Point. The Captive Portal is a firewall that only accepts HTTP traffic and consults to the DNS, but the principal objective is forward all the requests of new users to the Authentication Server. Every user who tries to access to the confidential information will have to pass before for the Authentication Server, that throws a challenge to authenticate a new user. Once authenticated, the user receives codified information that will have to provide to the Access Point as protector of the information. The Access Point verifies the information presented by the user; if they are valid the user’s web browser receives a key codified like a cookie. The web browser stores this cookie as an identification of the user in posterior requests. The principal characteristic of the proposed system is that the user does not need additional components to access to the information, only a web browser. Besides, the whole procedure of security is transparent for the users.

Page 10: 774 2006 Esime-zac Superior Mejia Nogales

Maestría en Ciencias en Ingeniería de Telecomunicaciones

- ix -

Antecedentes Una de las tecnologías que más ha evolucionado en los últimos años son las Redes de Área Local Inalámbricas (Wireless Local Area Networks - WLAN), que ofrecen a sus usuarios conexión a una red de computadoras local o a Internet sin la necesidad de enlazarse físicamente. No obstante, uno de los grandes obstáculos al que sea ha enfrentado el crecimiento en las redes inalámbricas ha sido la seguridad. Las redes inalámbricas son más difíciles de proteger que las redes convencionales, debido a que utilizan el espacio libre como medio de transmisión. Para garantizar la seguridad en redes inalámbricas el Instituto de Ingenieros Eléctricos y Electrónicos (Institute of Electrical and Electronics Engineers - IEEE) define mecanismos de encriptación y autenticación dentro de su estándar 802.11, en la edición de 1999. Sin embargo, en 2001 se publicaron una serie de artículos que expusieron la vulnerabilidad de este mecanismo de encriptación y cuestionaron la forma de autenticar del estándar 802.11. Para cubrir todas las necesidades de seguridad sobre las redes inalámbricas el IEEE publicó su estándar 802.11i a mediados de 2004, este nuevo estándar incorpora una capa de seguridad específica. Pese al problema de inseguridad el uso de redes inalámbricas ha aumentado, se estima que en los próximos años las computadoras de escritorio sean desplazadas en buena medida por las computadoras portátiles. Pero los equipos portátiles no tienen cabida únicamente en el ámbito profesional, son utilizados también por estudiantes para desarrollar sus actividades académicas, incluso al aire libre, aprovechando que muchos campus están implementando redes inalámbricas. Otro servicio que ha crecido son los hotspots o lugares públicos de acceso a Internet a través de tecnología inalámbrica, la mayor cantidad de hotspots implementados se ubica principalmente en hoteles, restaurantes, cafés, centros comerciales, aeropuertos, comunidades de negocios y universidades. Estimaciones sugieren que para el próximo año los hotspots tendrán unos 44 millones de usuarios en el mundo. Todo esto refleja la tendencia que ha experimentado el mercado en los últimos tiempos. Se calcula que el segmento de las computadoras de escritorio está creciendo entre el cinco y el siete por ciento al año, mientras que el de portátiles lo hace al 20 por ciento. Esto se debe a que la tecnología inalámbrica cumple mejor con las expectativas de los consumidores, que están asociadas con la movilidad, necesidades de comunicación, información y entretenimiento.

Page 11: 774 2006 Esime-zac Superior Mejia Nogales

Maestría en Ciencias en Ingeniería de Telecomunicaciones

- x -

Justificaciones El funcionamiento de las redes inalámbricas se basa en la emisión y recepción de datos a través de frecuencias de radio. Una de las principales razones para instalarlas es poder compartir servicios y recursos entre los dispositivos móviles, sin embargo, la conexión a Internet es la funcionalidad que resulta más apreciada por los usuarios. Las principales ventajas que presentan las redes de este tipo son su libertad de movimiento, la sencillez en la reubicación de equipos y la rapidez de instalación. Pero el punto más débil de este tipo de redes está asociado a la seguridad que ofrecen. Solamente se necesita colocar un receptor dentro del área de cobertura de una red inalámbrica para detectarla, una vez detectada es susceptible a sufrir ataques, por ejemplo, la intercepción de la señal transmitida con el propósito de recopilar información confidencial, como contraseñas, datos de autenticación o cualquier dato sensible. Existe una gran variedad de técnicas de ataques a las redes inalámbricas, los cuales son cada vez más populares debido a su rápida difusión. Para proteger el acceso a redes inalámbricas se utiliza métodos de autentificación y cifrado, los cuales impide el acceso a personas no autorizadas y que algún intruso que intercepte una comunicación pueda descifrarla. Uno de los inconvenientes de la utilización de estos mecanismos es la necesidad de configurar o instalar algún software específico en el equipo móvil del usuario. Muchos de los puntos de acceso utilizados en la construcción de redes inalámbricas no traen ningún tipo de seguridad activa, para que el montaje de la red sea simple. Además, los administradores de redes inalámbricas no activan los mecanismos de seguridad disponibles y cuando lo hacen utilizan mecanismos vulnerables como el algoritmo WEP.

Page 12: 774 2006 Esime-zac Superior Mejia Nogales

Maestría en Ciencias en Ingeniería de Telecomunicaciones

- xi -

Objetivo General Diseñar un sistema seguro que permita a un usuario móvil ingresar a contenidos de información a través de un punto de acceso de una red inalámbrica, sin hacer pública su información personal de acceso.

Objetivos Específicos

• Evaluar la evolución de la seguridad en redes inalámbricas 802.11 para diseñar un sistema de seguridad estandarizado.

• Diseñar un procedimiento de acceso a la red inalámbrica mediante mecanismos

centralizados y completamente transparentes, para que el usuario pueda acceder de forma sencilla.

• Diseñar un sistema de autenticación seguro, para proteger la información

personal del usuario cuando acceda a la red inalámbrica.

• Diseñar un procedimiento acceso a los contenidos de información confidencial para que únicamente los usuarios autorizados puedan acceder.

• Construir un prototipo del sistema de seguridad para redes inalámbricas

utilizando software libre.

Page 13: 774 2006 Esime-zac Superior Mejia Nogales

Introducción

- 1 -

Introducción Con la evolución tecnológica de las redes inalámbricas y el abaratamiento de los equipos móviles ha crecido una gama de nuevos servicios que intentan explotar las ventajas que ofrecen las redes inalámbricas. No obstante, la aparición de estos nuevos servicios implica nuevas necesidades y requerimientos, entre los cuales uno de los más críticos es la seguridad. El impacto del problema de seguridad depende en gran medida del tipo de red inalámbrica que se esté utilizando. Una red inalámbrica de tipo público no requiere una seguridad de acceso para sus usuarios, por otro lado, la red interna de una empresa privada necesita una fuerte autenticación de usuarios debido a la información confidencial que maneja. Podemos dividir la seguridad en las redes inalámbricas en dos categorías: la seguridad al momento de autenticar los usuarios e identificar sus correspondientes permisos, y la seguridad al momento de transmitir los datos entre dispositivos inalámbricos usando ondas de radio. El sistema propuesto abarca únicamente la primera categoría de seguridad. En este trabajo se desarrolla un sistema que brinda acceso seguro a recursos de información confidencial a través de redes inalámbricas del tipo 802.11, actualmente existen técnicas que podrían brindar este servicio de manera eficaz, pero su implementación implicaría, en la mayoría de los casos, instalar algún software específico en los equipos de los usuarios o utilizar las direcciones físicas y lógicas de los componentes móviles para crear un filtro de acceso. El propósito de diseñar una nueva alternativa mediante el sistema aquí propuesto, es ofrecer mecanismos de control de acceso seguros, abiertos y flexibles, pero sobre todo, transparentes para los usuarios. Antes de construir el sistema propuesto se debe conocer los estándares de seguridad para redes inalámbricas 802.11 y los sistemas de control de acceso que cubren las necesidades a satisfacer. En el capítulo 1 se describen los ataques más comunes a redes inalámbricas y la evolución por la que ha pasado esta tecnología en el área de seguridad. Además, se explica el funcionamiento del sistema PAPI (Punto de Acceso a Proveedores de Información) desarrollado por la RedIris, este sistema facilita el acceso

Page 14: 774 2006 Esime-zac Superior Mejia Nogales

Introducción

- 2 -

a recursos de información a través de Internet y sus características son similares a las del sistema propuesto. En el capítulo 2 se hace un análisis general del ambiente de trabajo del sistema propuesto, y para facilitar el estudio se divide al sistema en tres subsistemas. El primero se denomina Portal Cautivo, es el que dará la bienvenida a los usuarios y lo enviará hacia el segundo subsistema, el Servidor de Autenticación, este último se encargará de identificar a los usuarios válidos. Finalmente, el subsistema del Punto de Acceso que negará el ingreso a la información confidencial a usuarios no autorizados. El diseño del sistema se desarrolla en el capítulo 3, donde se describe de forma detallada los estados de cada subsistema, haciendo énfasis en sus características particulares. También, en este capítulo se detallan los componentes involucrados en el sistema propuesto y cómo interactúan entre sí. La parte práctica de este trabajo se describe en el capítulo 4, juntamente con las propiedades del hardware y software utilizado en la implementación del prototipo del sistema propuesto. Se realizaron diferentes configuraciones y adecuaciones en el software de código abierto utilizado y se siguieron diferentes pasos al momento de construir el prototipo, toda esta información es detallada en este capítulo. Al final del presente trabajo se muestran las conclusiones, las recomendaciones y los posibles trabajos futuros que complementarían al sistema de acceso seguro a recursos de información para redes inalámbricas 802.11.

Page 15: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 3 -

Capítulo 1

Seguridad Inalámbrica 1. Introducción En este capítulo se establece las características principales de las Redes Inalámbricas de Área Local, además de los ataques más comunes a los que están expuestos este tipo de redes. Posteriormente se muestra los mecanismos de seguridad implementados para las redes inalámbricas dentro del estándar 802.11, entre los que se encuentran el algoritmo WEP, algoritmo WPA y el estándar 802.11i. Finalmente, se detalla el funcionamiento del Punto de Acceso para Proveedores de Información PAPI, el cual proporciona control de acceso a recursos de información mediante mecanismos transparentes para el usuario. 2. Redes Inalámbricas 802.11 Existen diferentes tipos de estándares y productos para las Redes Inalámbricas de Área Local. Los estándares determinan los detalles físicos de transmisión y recepción, como la velocidad de los datos, la banda de radio donde operan y las potencias máximas de transmisión. Para las redes de área local inalámbricas el Instituto de Ingenieros Eléctricos y Electrónicos sugiere su estándar 802.11 [1]. Dentro de la familia 802.11 los estándares más conocidos son:

• 802.11b: Introducido en 1999 para redes domésticas y pequeños negocios, permite lograr una velocidad límite de 11 Mbps, tiene un rango de operación óptima de 50 metros en interiores y 100 metros en exteriores. En la práctica se logran velocidades entre 2 y 5 Mbps que depende de: el número de usuarios, la distancia entre transmisor y receptor, los obstáculos y la interferencia causada

Page 16: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 4 -

por otros dispositivos. La interferencia es el factor más crítico, porque los equipos 802.11b operan en la banda libre de 2.4 GHz.

• 802.11a: Se introdujo al mismo tiempo que 802.11b, con la intención de

constituirla en la norma para redes inalámbricas para uso empresarial. Ofrece velocidades de hasta 54 Mbps, en la práctica alcanza hasta 22 Mbps, su rango de operación óptima es menor a la del 802.11b y opera en la banda de 5 GHz, la cual está regulada en algunos países.

• 802.11g: Surgió en 2003, como una evolución del estándar 802.11b, por lo que

son compatibles. Esta norma ofrece velocidades hasta de 54 Mbps en la banda de 2.4 GHz.

En la tabla 1.1 se resumen las características principales de los estándares más conocidos de la familia 802.11 [2].

Estándar Máxima Velocidad de Transmisión Frecuencia

802.11 2 Mb/s 2.4 GHz 802.11b 11 Mb/s 2.4 GHz 802.11g 22 Mb/s 2.4 GHz 802.11a 54 Mb/s 5 GHz

Tabla 1.1 Familia 802.11 La topología de las redes inalámbricas consta de dos elementos clave: las estaciones y los puntos de acceso, la comunicación puede realizarse entre estaciones o a través de puntos de acceso. Un punto de acceso transmite señales de gestión periódicamente, una estación después de recibir esta señal inicia la autenticación mediante el envío de una trama [2]. Una vez realizada la autenticación se produce la asociación entre los dos equipos. El estándar IEEE 802.11 provee la seguridad mediante dos métodos primarios: autenticación y encriptación [3]. Además, define dos tipos de servicios de autenticación: sistema abierto y claves compartidas:

• Sistema Abierto. Permite al dispositivo móvil establecer una conexión con el punto de acceso, sin la necesidad de aplicar ningún mecanismo de autenticación por parte del punto de acceso sobre el dispositivo móvil. Este sistema se utiliza normalmente en puntos de acceso públicos y se describe en la figura 1.1.

Figura 1.1 Sistema Abierto

Inspiron7000 000

PowerLAN

LINK ACT

ADSLTest

ACTLINK

Petición de Conexión

Conexión Concedida

Punto de Acceso Dispositivo

Móvil

Page 17: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 5 -

• Claves Compartidas. En este servicio de autenticación existen claves que están

en posesión del punto de acceso y el dispositivo móvil. La autenticación se muestra en la figura 1.2 y se realiza en cuatro pasos:

1. El punto de acceso pide al dispositivo móvil que se autentique mediante

el envío de una trama de datos.

2. Tras la recepción de ésta, el dispositivo móvil debe codificar dicha trama y reenviarla al punto de acceso.

3. El punto de acceso decodificará la trama retransmitida por el dispositivo

móvil.

4. Si la trama es igual a la original, el punto de acceso permitirá al dispositivo móvil establecer una asociación, en caso contrario se niega el acceso.

Figura 1.2. Utilización de Claves Compartidas 3. Riesgos de las Redes Inalámbricas La utilización del espacio libre como medio de transmisión es un factor que pone en riesgo la información confidencial [4]. A los ataques dirigidos a la seguridad de una red inalámbrica se los puede dividir en dos tipos:

• Ataques Pasivos. El principal objetivo de este tipo de atacante es obtener información confidencial o hacer uso ilegítimo de los recursos de la red. Son agresiones como monitoreos o escuchas de la red.

• Ataques Activos. En este tipo de ataques se realizan modificaciones en el flujo

de datos o se crean falsos flujos en la transmisión de datos. Por ejemplo, un intruso puede configurar un punto de acceso propio para que dispositivos móviles de la red se conecten a él y de esta manera dañar directamente a los usuarios.

Con el afán de interceptar, atacar y descubrir redes inalámbricas se crearon y difundieron diferentes métodos de intercepción, entre los más comunes podemos citar:

El warchalking, consiste en caminar por la calle con un computador portátil dotado de una tarjeta WLAN, buscando la señal que emiten los puntos de acceso [5]. Cuando se encuentra una señal, se dibuja un símbolo característico en la acera o en un muro, indicando la presencia del punto de acceso y el tipo

Inspiron7000 000

PowerLAN

LINK ACT

ADSLTest

ACTLINK

Petición de Conexión

Conexión Concedida Punto de Acceso Dispositivo

Móvil

Trama a Codificar

Trama Codificada

Page 18: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 6 -

de seguridad que tiene configurado. De este modo cualquier persona puede conocer la localización de la red inalámbrica, en la tabla 1.2 se muestran los símbolos más utilizados.

Clave Símbolo

Nodo

Abierto

Nodo

Cerrado

Nodo WEP

Tabla 1.2 Simbología Warchalking.

El wardriving, consiste en localizar puntos de acceso desde un automóvil. Para realizar este ataque se requiere de un computador portátil con una tarjeta WLAN, una antena especial de construcción casera, un dispositivo GPS para localizar exactamente los puntos de acceso en un mapa, y software especializado en detección de redes inalámbricas [6].

Interceptar una señal, este atacante intenta identificar el origen y el destino de la

transmisión [5]. Tras haber interceptado la señal, el atacante intentará recopilar información del sistema que pueda ser considerada confidencial, como contraseñas, datos de autenticación o cualquier otra información sensible.

WEP Cracking. La Privacidad Equivalente al Cableado (Wired Equivalent

Privacy - WEP) es un mecanismo de seguridad propuesto por el estándar 802.11 para codificar los datos que se transfieren a través de una red inalámbrica. WEP posee un vector de inicialización de 24 bits y claves estáticas de encriptación [7]. Si un atacante recopila suficientes tramas basadas en el mismo vector de inicialización, podría determinar los valores compartidos entre tramas y de esta forma determinar una clave, dando la posibilidad de decodificar en su totalidad las tramas capturadas.

Suplantación. En esta técnica el intruso pretende hacerse pasar por un usuario

real. Por ejemplo, el atacante puede utilizar la técnica Spoofing o burla, en la que se falsifica información para enviarla a través de la red, la forma más sencilla de esta técnica es redefinir la dirección física de la tarjeta WLAN del

W

ssid

ancho de banda

ssid

ancho de banda

ssid

ancho de banda

Page 19: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 7 -

atacante por una dirección válida dentro del sistema atacado. También, el atacante puede utilizar la técnica de Hijacking o secuestro, en la que se intenta asociar una dirección IP válida del sistema atacado, con la dirección física de la tarjeta WLAN del intruso.

Negación de Servicio. Este atacante intenta ocupar la mayoría de los recursos

disponibles de una red inalámbrica, para impedir a los usuarios disponer de estos [5]. Existen varias técnicas para realizar este ataque, una de ellas es el ataque Smurf, que inserta dentro de una red una petición de respuesta a una dirección IP falsa, enviándola a todos los usuarios de la red. De este modo cada usuario contesta la petición dirigida a una IP falsa, aumentando el tráfico de la red y pudiendo negar una petición de respuesta de una IP que pertenece a la red.

4. Algoritmo WEP La Privacidad Equivalente al Cableado WEP fue el primer mecanismo de seguridad que se implementó bajo el estándar 802.11 aprobado por la IEEE y opera en la capa dos del modelo OSI. Este algoritmo permite codificar los datos que se transfieren a través de una red inalámbrica y autenticar los dispositivos móviles que se conectan al punto de acceso [8]. Para codificar los paquetes de información, WEP se basa en el algoritmo de encriptación RC4, el cual utiliza a la entrada 4 claves estáticas de 40 bits junto con un vector de inicialización aleatorio de 24 bits, haciendo un total de 64 bits. En la figura 1.3 se describe el proceso de cifrado del algoritmo WEP, el cual se realiza de la siguiente manera:

− A la trama original se le agrega un código de integridad ICV (Integrity Check Value) mediante el algoritmo CRC-32. Este código de integridad se concatena con la trama, y es empleado por el receptor para comprobar si la trama ha sido alterada durante la transmisión.

− Se escoge una clave secreta compartida entre emisor y receptor.

− Para evitar que las tramas cifradas sean similares, la clave secreta se concatena

con un número aleatorio llamado Vector de Inicialización (Initialization Vector - IV) de 24 bits, esta concatenación se conoce como semilla. El vector de inicialización al ser aleatorio es distinto para cada trama.

− La concatenación de la clave secreta y el vector de inicialización se emplea

como la entrada de un generador RC4 de números pseudo-aleatorios. El generador RC4 es capaz de generar una secuencia seudo-aleatoria tan larga como se desee a partir de su entrada, en nuestro caso el generador RC4 origina una secuencia seudo-aleatoria, denominada secuencia llave, del mismo tamaño de la trama a cifrar.

− Se ejecuta una operación XOR bit por bit con la trama y la secuencia llave,

obteniéndose como resultado la trama cifrada.

Page 20: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 8 -

− El vector de inicialización y la trama cifrada se transmiten juntos.

Figura 1.3 Diagrama en Bloque del Cifrado WEP

Figura 1.4 Diagrama en Bloque del descifrado WEP

En el receptor se lleva a cabo el proceso inverso para el descifrado, en la figura 1.4 se describe este proceso que sigue los pasos siguientes:

− Se concatenan el vector de inicialización recibido y la clave secreta compartida para generar la misma semilla que se utilizó en el transmisor.

− Un generador RC4 produce la secuencia llave a partir de la semilla.

Vector de Inicialización

Secuencia Llave

Semilla

Código de Integridad

Clave Secreta

Trama

Algoritmo CRC-32

Generador װRC4

װ

Mensajeװ

Trama Cifrada

Vector de Inicialización

Secuencia Llave

Semilla

Código de Integridad - ICV

Clave Secreta

Trama

Algoritmo CRC-32

װ

Generador RC4

װ

Mensaje

װ

Trama Cifrada

ICV’

ICV’ = ICV

Trama

Page 21: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 9 -

− Se ejecuta la operación XOR bit por bit entre la secuencia de clave y la trama cifrada, para obtener la trama original y el código de integridad.

− Finalmente, a la trama obtenida se le aplica el algoritmo CRC-32 para obtener

un segundo código de integridad, que se compara con el código de integridad recibido.

− Si los códigos de integridad coinciden, la trama se acepta; en caso contrario se

rechaza. La estructura de encriptación del algoritmo WEP se muestra en la figura 1.5.

Figura 1.5 Estructura de Encriptación WEP

ICV es una secuencia de verificación de grupo sobre la trama cifrada, calculada con el algoritmo CRC-32. El vector de inicialización tiene una longitud de tres octetos, más seis bits de relleno y dos bits que indican la llave compartida que se utilizó en el cifrado. Sin embargo, el algoritmo WEP presenta algunas debilidades:

− La encriptación WEP no cubre las transmisiones desde el principio hasta el final, solamente protege la información de los paquetes de datos, pero no protege a nivel físico. Esto implica que datos de control necesarios para gestionar la red pueden ser capturados por dispositivos móviles extraños.

− WEP emplea claves de cifrado estáticas, las cuales son configuradas

manualmente y deben ser cambiadas periódicamente. Un intruso puede acumular grandes cantidades de texto cifrado con la misma clave e intentar un ataque por fuerza bruta.

− El vector de inicialización es de longitud insuficiente. En una red de alto tráfico

se pueden agotar los vectores de inicialización en corto tiempo. Si un atacante logra conseguir dos tramas con los vectores de inicialización idénticos, puede efectuar un XOR entre ellas y obtener los textos de ambas tramas mediante un

IV (4 octetos)

Trama Cifrada (n octeto)

ICV (4 octetos)

Vector de Inicialización (3 octetos)

(1 Octeto)

Relleno (6 bits)

ID Clave (2 bits)

Encriptado

Page 22: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 10 -

ataque estadístico. Con el texto de una trama y su respectivo texto cifrado se puede obtener la secuencia de clave. Teniendo esta información y utilizando el algoritmo RC4 es posible obtener la clave estática compartida y descifrar toda la transmisión.

− WEP no ofrece un servicio de autenticación real. El cliente no puede autenticar a

la red, ni el punto de acceso puede autentificar al usuario. Solo es necesario que el equipo móvil y el punto de acceso compartan la clave estática WEP para que la comunicación pueda llevarse a cabo.

5. Algoritmo WPA El algoritmo de Acceso Protegido Wifi (Wifi Protected Access - WPA) se desarrolló para mejorar el nivel de seguridad existente en WEP, fue propuesto por los miembros de la Wi-Fi Alliance en colaboración con el grupo de trabajo 802.11i de la IEEE [9]. WPA implementa como método de autenticación el estándar 802.1x y el Protocolo de Autenticación Extensible (Extensible Authentication Protocol - EAP). Además, utiliza el protocolo de integridad de clave temporal (Temporary Key Integrity Protocol - TKIP), como método de encriptación. Según la complejidad en la autenticación, un punto de acceso que implementa el algoritmo WPA puede operar en dos modalidades:

Modalidad 802.1x: Para operar en esta modalidad se requiere de un servidor de autenticación RADIUS (Remote Authentication Dial-In User Service) en la red. El punto de acceso emplea 802.1x y EAP para la autenticación, mientras que el servidor RADIUS suministra las claves compartidas que se usarán para encriptar las tramas.

Modalidad Pre-Clave Temporal: WPA opera en esta modalidad cuando no se

dispone de un servidor de autenticación en la red. Simplemente se requiere introducir una clave compartida en el punto de acceso y en los dispositivos móviles. Únicamente los dispositivos móviles cuya clave compartida estática coincida con la del punto de acceso podrán asociarse.

Para solucionar los problemas de encriptación descubiertos en WEP, WPA implementa el protocolo TKIP que se encarga de cambiar la clave compartida entre el punto de acceso y el dispositivo móvil periódicamente [10]. El protocolo TKIP incorpora dos elementos nuevos en el proceso de encriptación:

Un código de integración de mensajes, (Message Integration Code – MIC). Este código de integridad es más robusto que el utilizado en la encriptación WEP. Esta medida protege contra ataques por suplantación.

Un vector de inicialización de 48 bits, denominado secuencia de conteo TKIP

(TKIP Sequence Counter - TSC). Se utiliza esta secuencia para extender la vida útil de la clave temporal. Es decir, pueden enviarse 248 paquetes utilizando una sola clave temporal.

Page 23: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 11 -

TKIP extiende la estructura de encriptación WEP agregando doce octetos, cuatro octetos para el vector de inicialización extendido y ocho octetos para el código de integración de mensajes, como se muestra en la figura 1.6. La secuencia de conteo TSC se construye con los primeros dos octetos de vector de inicialización original y los cuatro octetos del vector de inicialización extendido [11]. En la encriptación se utilizan la clave temporal y la clave MIC, que son claves compartidas generadas en el proceso previo de autenticación.

Figura 1.6 Estructura de Encriptación TKIP

La clave temporal, la dirección del emisor y la secuencia de conteo TSC se combinan para obtener una clave temporal de 128 bits. Esta clave se divide para generar las entradas en la encriptación WEP, es decir, el vector de inicialización de 24 bits y la clave secreta de 104 bits. El código de integración de mensajes MIC se calcula sobre la dirección física origen y destino y la trama original, utilizando la clave MIC y la secuencia de conteo TSC. Si es necesario, la trama original puede ser segmentada incrementando la secuencia de conteo TSC para cada segmento, antes de pasar a la encriptación WEP. En la figura 1.7 se describe el proceso de cifrado TKIP:

Figura 1.7 Diagrama en Bloque del Cifrado TKIP

En la desencriptación se examina la secuencia de conteo TSC para asegurar que el paquete recibido tiene un valor mayor que el anterior, en caso contrario se descarta el paquete para prevenir posibles ataques.

IV

(4 octetos)

Trama Cifrada

(n octeto)

ICV

(4 octetos)

IV Extendido (4 octetos)

MIC

(8 octetos)

Encriptado

Dirección Origen

Vector de Inicialización WEP

Clave Secreta WEP

Clave Temporal

װ

WEP TSC

Clave MIC

MIC

Trama

Trama

Direcciones Origen y Destino

Trama Cifrada

MIC +TSC

Page 24: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 12 -

El código de integración de mensaje MIC se vuelve a calcular utilizando la trama recibida desencriptada, este nuevo valor se compara con el recibido para verificar la integridad del mensaje. Sin embargo, cuando las claves compartidas utilizadas son de una longitud corta, WPA se vuelve inseguro, porque un intruso sólo necesita interceptar el tráfico inicial de intercambio de claves y con un ataque de diccionario se puede obtener la clave compartida [12]. 6. Estándar 802.11i El estándar de seguridad 802.11i propuesto por la IEEE fue ratificado en junio de 2004. Este nuevo estándar incorporará una capa de seguridad específica para redes inalámbricas, la cual se divide en tres categorías:

1. Protocolo de Integridad de Clave Temporal. El protocolo TKIP se implementó en la encriptación WPA como una solución a los problemas de la encriptación WEP. TKPI puede ser usada en los viejos equipos 802.11 para proveer integridad y confidencialidad.

2. Protocolo Modo Contador con CBC-MAC (Counter Mode with CBC-MAC

Protocol -CCMP). El protocolo CCMP está documentado en el RFC2610, utiliza en el proceso de encriptación el Estándar de Encriptación Avanzado (Advanced Encryption Standard - AES) con el algoritmo CBC-MAC. Para desarrollar este tipo de encriptación se requiere de un procesador con un alto desempeño por lo que es necesario contar con hardware 802.11 actual para implementar el protocolo CCMP.

3. 802.1x Control de Acceso a Red Basado en Puerto (Port-Based Network Access

Control) [13]. En este control de acceso se puede utilizar los protocolos TKIP o CCMP para la encriptación y se utilizará el estándar IEEE 802.1x para la autenticación.

Como un método de encriptación opcional se puede utilizar el Protocolo de Autenticación Robusto para Redes Inalámbricas (Wireless Robust Authentication Protocol - WRAP) en lugar de CCMP. Este protocolo también está basado en el algoritmo AES, fue el originalmente propuesto para el estándar IEEE 802.11i pero finalmente fue remplazado por CCMP. 6.1 Estándar 802.1x 802.1x es un estándar de control de acceso y autenticación basado en la arquitectura cliente / servidor, que restringe la conexión de equipos no autorizados a una red. Este estándar fue inicialmente creado por la IEEE para uso en redes de área local cableadas, pero se ha extendido a las redes inalámbricas [14]. En la figura 1.8 se muestra la arquitectura de un sistema de autenticación 802.1x.

Page 25: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 13 -

Figura 1.8 Arquitectura de un Sistema de Autenticación 802.1x El protocolo 802.1x involucra tres participantes:

• El Suplicante, o equipo del usuario que desea conectarse con la red.

• El Servidor de Autenticación, que contiene toda la información necesaria para saber qué equipos o usuarios están autorizados para acceder a la red.

• El Autenticador, es un equipo de red que recibe la conexión del suplicante, actúa

como intermediario entre el suplicante y el servidor de autenticación, solamente permite el acceso del suplicante cuando el servidor de autenticación lo autoriza.

802.1x fue diseñado para emplear servidores RADIUS, cuya especificación se puede consultar en la RFC 2058. Estos servidores fueron creados inicialmente para autenticar el acceso de usuarios remotos por conexión vía telefónica. En el proceso de autenticación del usuario se utiliza el Protocolo de Autenticación Extensible y se realizan los siguientes pasos:

− El proceso inicia cuando el usuario logra enlazarse con la red. El punto de acceso tiene el acceso bloqueado para tráfico normal, lo único que admite es el tráfico EAPOL (EAP over LAN), que es el requerido para efectuar la autenticación.

− El dispositivo móvil envía un mensaje EAPOL-Start al autenticador, indicando

que desea iniciar el proceso de autenticación.

− El autenticador solicita a la estación que se identifique, mediante un mensaje EAP-Request-Identity.

− La estación se identifica mediante un mensaje EAP-Response/Identity.

− Una vez recibida la información de identidad, el autenticador envía un mensaje

RADIUS-Access-Request al servidor de autenticación, con los datos de identificación del usuario.

− El servidor de autenticación responde con un mensaje RADIUS-Access-

Challenge, en el cual envía información de un reto que debe ser resuelto

Inspiron7000

000

PowerLAN

LINK ACT

ADSLTest

ACTLINK

EAP sobre Radius EAPOL

Autenticador Suplicante Infortrend

1

2

3

4

5

6

7

ENT ESC

PO WER

BU SY

ATTEN

Servidor de Autenticación

Page 26: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 14 -

correctamente por el usuario para lograr el acceso. Dicho desafío puede ser una contraseña o involucrar una función criptográfica más elaborada. El autenticador reenvía el desafío al usuario en un mensaje EAP-Request.

− El cliente responde al desafío mediante un mensaje EAP-Response. El

autenticador reenvía el desafío al servidor en un mensaje RADIUS-Access-Response.

− Si toda la información de autenticación es correcta, el servidor envía al

autenticador un mensaje RADIUS-Access-Accept, que autoriza al autenticador a otorgar acceso al usuario, además envía un juego de claves dinámicas para cifrar la conexión. El servidor RADIUS se encarga de cambiar las claves periódicamente.

− El autenticador envía un mensaje EAP-Success al usuario y le autoriza el

acceso. Existen variantes del protocolo de autenticación extensible según la modalidad de autenticación utilizada, se puede emplear certificados de seguridad o contraseñas [14]. En la figura 1.9 se muestra el diálogo básico entre un nuevo usuario y el punto de acceso a la red, durante el proceso de autenticación.

Figura 1.9 Diálogo EAPOL - RADIUS El protocolo de autenticación extensible que emplea certificados de seguridad requiere de la instalación de certificados en los usuarios y en el servidor de autenticación. Proporciona una autenticación mutua, es decir, el servidor autentica al cliente y el cliente autentica al servidor. Sin embargo, la administración de los certificados de seguridad es costosa y complicada, el diálogo de autenticación es largo. Cuando un usuario en movimiento cambia de un punto de acceso debe reautenticarse. Por otro lado, el protocolo de autenticación extensible que utilizan contraseñas es susceptible a ataques de diccionario, el atacante puede cifrar múltiples contraseñas hasta que encuentre una cuyo texto cifrado coincida con una contraseña cifrada capturada [8]. En este tipo de autenticación el cliente no tiene manera de autenticar al servidor, no se puede garantizar que el usuario se está conectando a la red correcta.

Inspiron7000 000

PowerLAN

LINK ACT

ADSLTest

ACTLINK

Petición de Acceso

Acceso Aceptado o Rechazado Punto de

Acceso Dispositivo Móvil

Desafío

Respuesta a Desafío

Page 27: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 15 -

6.2 Protocolo Modo Contador con CBC-MAC El Protocolo Modo Contador con CBC-MAC (Counter Mode with CBC-MAC Protocol -CCMP) utiliza el estándar de encriptación AES con el algoritmo CBC-MAC. AES es un cifrado de bloque iterativo simétrico, encripta en bloques de 128 bits de longitud y utiliza la misma clave al encriptar y al desencriptar [3]. La estructura de encriptación del protocolo CCMP se muestra en la figura 1.10.

Figura 1.10 Estructura de Encriptación CCMP

Como en el protocolo TKIP, la clave temporal se genera en el proceso previo de autenticación, también el cálculo del código de integración de mensajes y la encriptación de la trama se realizan en forma paralela. CCMP utiliza un vector de inicialización de 48 bits denominado número de paquete PN, el cual se utiliza para el cálculo del código de integración de mensaje y para encriptar la trama [3].

Figura 1.11 Diagrama en Bloques de CCMP

Para el cálculo del código de integración de mensajes MIC se utiliza un vector de inicialización formado por el número de paquete, la clave temporal y datos del encabezado de la trama original. Este vector de inicialización ingresa a un bloque AES

IV

(4 octetos)

Trama Cifrada

(n octeto)

IV Extendido (4 octetos)

MIC

(8 octetos)

Encriptado

VI

AES AES AES AES AES

Encabezado PN Datos MIC

Contador

Encabezado PN Datos MIC

AESAES AES

Cálculo MIC

Encriptación

Trama

Trama Encriptada

Page 28: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 16 -

y luego pasa por un operador XOR junto a un segmento de la trama original, el resultado de este proceso pasa a ser la entrada del siguiente bloque AES y la salida de este bloque junto con el siguiente segmento de la trama original pasan por un operador XOR. Este proceso continúa hasta capturar el último segmento de la trama original, se tomarán los primeros 64 bits del resultado final de este proceso como el código de integración de mensajes MIC final. En el proceso de encriptación de la trama original se utiliza un contador precarga formado por el número de paquete, la clave temporal, datos del encabezado de la trama original y un contador que inicializa en 1. Este contador precarga entra en un bloque AES y su salida pasa por un operador XOR junto con un segmento de 128 bits de los datos de la trama, este proceso dará como resultado los primeros 128 bits encriptados. Posteriormente el contador se incrementa y se repite el mismo proceso con el siguiente segmento de datos para generar los siguientes 128 bits encriptados, el procedimiento continúa hasta encriptar la totalidad de los datos. El último contador se pone en 0 y entra en el bloque AES, su salida pasa por un operador XOR junto con el código de integración de mensajes calculado anteriormente. En la figura 1.11 se muestra el diagrama en bloques del proceso completo de encriptación del protocolo CCMP. El proceso de desencriptación es esencialmente la reversa del proceso de encriptación. Al igual que en el protocolo TKIP, el código de integración de mensaje MIC se vuelve a calcular utilizando la trama recibida desencriptada, para compararlo con el recibido y de esta forma verificar la integridad del mensaje transmitido. 7. Punto de Acceso para Proveedores de Información El Punto de Acceso para Proveedores de Información (Point of Access to Providers of Information - PAPI) es un sistema que proporciona mecanismos de control de acceso a recursos de información a través de Internet [15]. Estos mecanismos de control de acceso son completamente transparentes al usuario y compatibles con prácticamente todos los navegadores y sistemas operativos. El sistema PAPI también es compatible con otros sistemas de control, dado que no impone requisitos a ningún procedimiento adicional, que se deseara emplear para este propósito. Por tanto, se puede considerar al control de acceso PAPI completamente ortogonal a otros mecanismos, como la protección por medio de contraseñas, filtros basados en direcciones IP o control de acceso por medio de certificados. 7.1. Componentes de PAPI PAPI consta de dos elementos independientes: el Servidor de Autenticación (AS) y el Punto de Acceso (PoA). Esta estructura hace que el sistema tenga una gran flexibilidad y permite su integración en diferentes entornos operativos, en la figura 1.12 se describe la arquitectura PAPI. El propósito del Servidor de Autenticación es ofrecer a los usuarios un punto único de autenticación y proporcionarles de manera transparente las claves temporales que les permitirán acceder a los recursos, para los que estén autorizados.

Page 29: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 17 -

El Punto de Acceso realiza el control de acceso para un conjunto de localizaciones web dentro de un determinado servidor. El proveedor de información tiene la responsabilidad de gestionar el Punto de Acceso de acuerdo a políticas establecidas.

Figura 1.12 La Arquitectura PAPI

No se requiere ningún tipo de correspondencia entre un determinado Servidor de Autenticación y un determinado Punto de Acceso. Un Punto de Acceso es capaz de manejar peticiones desde cualquier número de servidores de autenticación y dirigirlos hacia cualquier número de servidores web. Un Punto de Acceso PAPI puede ser adaptado a cualquier servidor web, con independencia de la plataforma sobre la que esté implementado. Las características del sistema PAPI permiten a un servidor web contener más de un Punto de Acceso o a un Punto de Acceso controlar más de un servidor web. Los Puntos de Acceso pueden ser combinados de manera jerárquica en grupos, controlados por un Punto de Acceso de Grupo (GPoA), a través del cual se validan los intentos iniciales de acceso. Inicialmente, el usuario establece su identidad por medio del Servidor de Autenticación de la organización con la que está directamente relacionado, usualmente proporciona datos que no desea se hagan públicos [16]. Una vez autenticado, el usuario es automáticamente dirigido hacia el punto de entrada del Punto de Acceso. El Servidor de Autenticación no envía ningún dato proporcionado por el usuario hacia el Punto de Acceso, únicamente se limita a preparar un mensaje sobre la identidad del usuario en los términos requeridos por el Punto de Acceso y lo firma digitalmente usando su clave privada. El único requisito de este mensaje es que el identificador de la misma debe mantenerse único durante el tiempo que sean válidas las claves temporales proporcionadas por el Punto de Acceso.

Servidor de Autenticación

Punto de Acceso

BD de Claves

Servidor WEB

Navegador

Datos de Autenticación

Aserciones de Identidad

Petición HTTP

Claves Temporales

Página WEB

Claves Nuevas

Petición HTTP

Página WEB

Page 30: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 18 -

El Punto de Acceso utiliza la información firmada digitalmente por el Servidor de Autenticación y las políticas de la organización que administra el Punto de Acceso, para decidir si permite el acceso del usuario. Una vez que el Punto de Acceso acepta el mensaje proveniente del Servidor de Autenticación se generan dos claves temporales, que se almacenan por medio de cookies HTTP (Hypertext Transport Protocol – Protocolo de Transporte de Hipertexto) en el navegador del usuario. Los sucesivos accesos al recurso que el Punto de Acceso protege serán aceptados o denegados por medio de estas claves temporales. El protocolo empleado por PAPI puede dividirse en dos fases: la Autenticación y el Control de Acceso. 7.2. Fase de Autenticación Esta etapa se inicia en el Servidor de Autenticación, donde el usuario es autenticado y finaliza cuando un conjunto de claves temporales es almacenado por el navegador del usuario. La fase de autenticación comienza cada vez que un usuario accede al Servidor de Autenticación para obtener claves temporales válidas. Durante el período que dura la validez de estas claves, este usuario no necesita volver a pasar por esta fase [17]. El usuario debe reiniciar la fase de autenticación antes de la expiración de sus claves en los siguientes casos:

• Cuando las claves temporales son eliminadas del navegador. Esto puede ocurrir si las cookies son borradas explícitamente o si el archivo de cookies es dañado.

• Cuando ocurre una corrupción de las claves temporales. • Cuando las claves temporales se copian a otro navegador y son empleadas por

otro usuario. • Cuando la clave simétrica principal del Punto de Acceso ha sido cambiada.

El usuario accede al Servidor de Autenticación por medio de un navegador web y proporciona los datos que el Servidor de Autenticación requiere para reconocerlo como un usuario válido. Si la autenticación es correcta se siguen las políticas de acceso a los recursos disponibles, establecidas por cada organización. La política de acceso puede basarse en atributos tales como el tipo de usuario o su relación con la organización. Entonces, se genera una lista de URLs (Uniform Resource Locator – Localizador de Recursos Uniforme) que corresponden a los puntos de acceso que deben ser contactados para descargar las claves temporales. Esta lista de URLs se envía al navegador del usuario integrada en una página HTML (HyperText Markup Language - Lenguaje de Marcación de Hipertexto), que da cuenta del resultado positivo del proceso de autenticación.

Page 31: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 19 -

Cada una de los URLs incluyen una referencia al procedimiento que el Punto de Acceso correspondiente emplea para generar las claves temporales, junto con tres parámetros que se envían empleando el método GET de HTTP: el identificador del Servidor de Autenticación, un código de petición y un mensaje encriptado acerca del usuario. El mensaje creado por el servidor de acceso contiene:

• Una cadena de texto que describe al usuario y sus derechos. • Una descripción típica del usuario, que incluye referencias al usuario y a los

grupos a los que pertenezca. • La duración que se solicita para la clave temporal principal que se va a generar. • Una marca de tiempo, para evitar ataques por medio de repeticiones de los

datos. Los puntos de acceso son contactados de manera completamente transparente para el usuario, dado que el navegador recibe la lista de URLs incorporados en una página HTML. El Punto de Acceso verifica la integridad y la marca de tiempo de la petición, empleando para ello la clave pública del Servidor de Autenticación. También se verifican las reglas de control de acceso aplicables según los datos que se reciben acerca del usuario. Si todos los datos son correctos, se generan dos claves temporales: la clave temporal principal Hcook y la clave temporal secundaria Lcook. La clave temporal principal, junto con una cadena generada de manera aleatoria, se almacenan en un registro de claves temporales administrado por el Punto de Acceso. Ambas claves temporales se envían al navegador del usuario, codificadas como cookies HTTP.

Figura 1.13 Interacción entre PoA y GPoA

Servidor de Autenticación

Punto de Acceso

Navegador

Datos de Autenticación

Claves

Petición HTTP

sin Claves del PoA

Página WEB

Claves del PoA

Redirección + Claves del GPoA

Redirección + Datos para el PoA

Punto de Acceso de

Grupo

Page 32: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 20 -

Además de ser contactado directamente por un Servidor de Autenticación, un Punto de Acceso puede también ser contactado por otros puntos de acceso, cuando está incluido en un grupo controlado por un Punto de Acceso de grupo, este proceso esta descrito en la figura 1.13. Un Punto de Acceso de grupo recibe peticiones de sus puntos de acceso subordinados por medio de redirecciones HTTP. Si los procedimientos de control de acceso devuelven un resultado válido para el Punto de Acceso de grupo, éste construye un URL similar al descrito para el Servidor de Autenticación y redirige el navegador de vuelta al Punto de Acceso subordinado que lo contactó inicialmente. En función a los datos que recibe por medio de esta redirección, el Punto de Acceso subordinado decide si genera su par de claves temporales. 7.3. Claves Temporales El uso de dos claves temporales diferentes pretende un balance entre seguridad y eficiencia del protocolo, se trata de evitar accesos no autorizados por medio de duplicación de las claves e intenta evitar la repetición excesiva de cálculos criptográficos largos [17]. Hcook es la clave temporal primaria, criptográficamente más fuerte y que contiene más datos. Contiene un conjunto de campos con información de control de acceso, codificados con una clave simétrica que es exclusiva del Punto de Acceso. Los campos de control de acceso son:

• Un código de usuario, derivado del mensaje recibido desde el AS. • La localización a la que da acceso esta clave. • El momento en que la clave expira. • Un bloque generado de manera aleatoria.

En el registro de claves temporales del Punto de Acceso se mantienen las claves temporales primarias que son válidas. Este registro se usa para evitar los accesos ilegales por medio de duplicación de cookies, cada vez que el Punto de Acceso comprueba la validez de una Hcook recibida, compara el bloque aleatorio que contiene con el último que generó y almacenó en su registro. Lcook la clave temporal secundaria, se emplea en la fase de control de acceso para realizar comprobaciones más rápidas y consiste también en un conjunto de campos de control de acceso, codificados con otra clave simétrica, que también es exclusiva del Punto de Acceso, aunque más corta que la utilizada en Hcook. Los campos que contiene la clave temporal son:

• La localización a la que da acceso esta clave. • El momento en que la clave fue generada.

Page 33: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 21 -

El tiempo de vida típico de una clave secundaria es de unos pocos segundos, mientras que las claves primarias son recalculadas en intervalos del orden de varios minutos. La clave temporal primaria puede considerarse como una clave de página HTML, mientras que el uso de la clave temporal secundaria pretende evitar retardos adicionales cuando se cargan los elementos que componen la página HTML. 7.4. Fase de Control de Acceso En esta fase el Punto de Acceso se encarga de verificar las claves temporales asociadas con la localización que el navegador ha solicitado [17]. Dado que las claves están almacenadas como cookies HTTP, cada vez que se intenta acceder a una localización controlada, el navegador las envía automáticamente sin necesidad de ninguna intervención por parte del usuario. Cuando un Punto de Acceso recibe una petición de acceso a una localización protegida, lleva a cabo los siguientes pasos:

1. Busca las claves temporales almacenadas en las cookies identificadas como Lcook y Hcook. Si no se han recibido las cookies, el Punto de Acceso intenta redirigir la petición hacia su correspondiente Punto de Acceso de grupo, si está definido. En otro caso, la petición es rechazada.

2. El Punto de Acceso verifica la clave secundaria: decodifica Lcook usando su

clave simétrica correspondiente, luego comprueba si son correctas la localización y la marca de tiempo. Si esta comprobación tiene éxito, la petición es aceptada.

3. Si el tiempo de validez de Lcook ya ha expirado es necesario proceder a la

verificación de la clave primaria Hcook, la cual se decodifica usando su clave simétrica correspondiente. La petición es aceptada si cumple las siguientes condiciones:

• El período de acceso no ha expirado. • La localización codificada en la clave es válida. • El bloque aleatorio codificado en la clave coincide con el que se

encuentra almacenado en el registro de claves temporales.

4. Si Hcook es correcta, una nueva clave primaria conteniendo un nuevo bloque aleatorio, es generada y almacenada en el registro de claves temporales. Asimismo, una nueva clave secundaria es generada, y los dos nuevos valores son enviados codificados como cookies hacia el navegador del usuario, a la vez que se envían los resultados de la petición original.

A partir de este momento, si se reciben nuevas peticiones con el valor antiguo de Hcook, el valor de su bloque aleatorio no coincidirá con el almacenado en el registro, por lo que el PoA asume que se ha producido una duplicación de cookies y rechaza la petición.

Page 34: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 22 -

7.5. Distribución PAPI La distribución PAPI contiene un Servidor de Autenticación basado en Perl, que incluye soporte para diferentes métodos de validación de la identidad del usuario y de sus derechos de acceso, basados en LDAP (Lighweight Directory Access Protocol), POP3 (Post Office Protocol 3) o una base de datos interna derivada del formato Berkeley. El Servidor de Autenticación puede emplearse como un CGI (Common Gateway Interface - Interfaz de Puerta de Enlace Común) dentro de cualquier servidor web y proporciona una interfaz para extenderlo por medio de métodos de autenticación adicionales [18]. El Punto de Acceso incluido en la distribución PAPI se basa en el módulo mod_perl de Apache. Puede ser integrado con cualquier servidor web basado en Apache y configurado por medio de directivas específicas dentro del propio fichero de configuración de Apache. La arquitectura y los protocolos en los que se basa el sistema están diseñados para garantizar la independencia de los actores y preservar la privacidad de los usuarios. Todos los procedimientos son transparentes para el usuario, de manera que no se requiere formación adicional, por lo que el sistema puede ser fácilmente incorporado en cualquier organización. 8. Referencias

[1] Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) SpecificationsANSI/IEEE Std 802.11, 1999 Edition, The Institute of Electrical and Electronics Engineers, 20 August 1999, http://standards.ieee.org/getieee802/download/802.11-1999.pdf

[2] Seguridad en WiFi, Stewart S. Miller, 268 p. Editorial McGraw-Hill, 2004. [3] Real 802.11 Security: Wi-Fi Protected Access and 802.11i, Jon Edney,

William A. Arbaugh, 451 p. Editorial Addison-Wesley, August 2003.

[4] 802.11 Wireless Networks: The Definitive Guide, Matthew Gast, 192 p. Editorial O'Reilly & Associates, 2001.

[5] WPA, Seguridad en Redes Inalámbricas, Francisco García López. Ingeniero

Técnico de Telecomunicación. Consultor y Formador en TI edubis.com, Diciembre 2003, www.coitt.es/antena/pdf/154/06c_Reportaje_Seguridad.pdf

[6] Pescando Sin Sedal Wardriving, Incubus, 15 julio 2004,

http://suburbia.sindominio.net/article.php3?id_article=127

[7] The Evolution of Wireless Security in 802.11 Networks: WEP, WPA and 802.11 Standards, Stanley Wong, GSEC Practical v1.4b, May 20, 2003, http://www.sans.org/rr/papers/68/1109.pdf

Page 35: 774 2006 Esime-zac Superior Mejia Nogales

Seguridad Inalámbrica

- 23 -

[8] 802.11 Security, Bruce Potter, Bob Fleck, 192 p. Editorial O'Reilly & Associates, December 2002.

[9] WPA: A Key Step Forward in Enterpriser-class Wireless LAN (WLAN)

Security, Meetinghouse Whitepaper, Jon A. LaRosa, VP, Engineering, May 26, 2003, http://www.mtghouse.com/MDC_WP_052603.pdf

[10] Enterprise Solutions for Wireless LAN Security, Wi-Fi Alliance, February

6, 2003, http://www.wi-fi.org/OpenSection/pdf/Whitepaper_Wi-Fi_Enterprise2-6-03.pdf

[11] Securing Wi-Fi Wireless Networks with Today’s Technologies, Wi-Fi

Alliance, February 6, 2003, http://www.wi-fi.org/OpenSection/pdf/Whitepaper_Wi-Fi_Networks2-6-03.pdf

[12] Wi-Fi Protected Access: Strong, standards-based, interoperable security

for today’s Wi-Fi networks, Wi-Fi Alliance, April 29, 2003, http://www.wi-fi.org/OpenSection/pdf/Whitepaper_Wi-Fi_Security4-29-03.pdf

[13] IEEE Standard for Local and Metropolitan Area Networks—Port-Based

Network Access Control, IEEE Std 802.1X-2001, The Institute of Electrical and Electronics Engineers, Approved 14 June 2001 IEEE-SA Standards Board and Approved 25 October 2001American National Standards Institute, http://standards.ieee.org/getieee802/download/802.1X-2001.pdf

[14] EAP Methods for 802.11 Wireless LAN Security, Web ProForum Tutorials,

The International Engineering Consortium, http://www.iec.org/online/tutorials/acrobat/eap_methods.pdf

[15] A Detailed Description of the PAPI Protocol, The PAPI Development Team,

RedIRIS, http://papi.rediris.es/doc/PAPI_Protocol_Detailed.pdf [16] The PAPI System - Point of Access to Providers of Information, Rodrigo

Castro-Rojo, Diego R. López, 2003, RedIRIS, http://papi.rediris.es/doc/TERENA-2001/

[17] PAPI - Guide for Beginners, Rodrigo Castro-Rojo, Diego R. López, 2003,

RedIRIS, http://papi.rediris.es/dist/pod/PAPI-gb.html [18] Acceso Ubicuo a Recursos de Información en Internet: El Sistema PAPI,

Diego R. López, Rodrigo Castro-Rojo, RedIRIS, http://papi.rediris.es/dist/pod/PAPI-gb.html

Page 36: 774 2006 Esime-zac Superior Mejia Nogales

Análisis del Sistema

- 24 -

Capítulo 2

Análisis del Sistema 1. Introducción En un principio las WLAN se dirigían solamente a aplicaciones muy concretas, pero ahora se está generalizando su uso, convirtiéndose en una solución idónea para prácticamente todos los sectores. Entre los sistemas más comunes se encuentran: los Hotspot un sistema público o semi-público que dispone de conexión a Internet a través de tecnología WLAN y los Proveedores de Servicios de Internet Inalámbricos (Wireless Internet Service Provider - WISP). Los WISP son empresas dedicadas a ofrecer conectividad inalámbrica a sus clientes, instalando Hotspots en lugares como hoteles, restaurantes, cafeterías, parques, bibliotecas y aeropuertos, donde gente equipada con dispositivos móviles son capaces de conectarse a Internet. Un Hotspot común en un WISP tiene instalado uno o varios puntos de acceso, un gateway o control del punto de acceso y una línea de acceso a Internet. El control del punto de acceso se encarga de impedir el acceso a Internet a los clientes conectados que no hayan sido previamente autenticados, para ello se les suele mostrar una página HTML donde deben introducir su nombre de usuario y contraseña. En la Internet, también se ha vuelto común el acceso a recursos restringidos de información, como publicaciones y bibliotecas digitales. El control de acceso a estos recursos restringidos de información se realiza por medio del uso del tradicional nombre de usuario y contraseña, o por mecanismos basados en la dirección IP origen de la petición, aceptando sólo aquéllas provenientes de determinados rangos. Tras identificar estos conceptos, surge la necesidad de un sistema que permita a usuarios inalámbricos tener acceso a recursos restringidos de información de una red

Page 37: 774 2006 Esime-zac Superior Mejia Nogales

Análisis del Sistema

- 25 -

privada y al mismo tiempo acceder a la red pública o Internet, dependiendo del tipo de permiso que posean. Además, el sistema garantizará a los usuarios una comunicación segura. La arquitectura del sistema de acceso seguro a recursos de información para redes inalámbricas se muestra en la figura 2.1, este sistema se dividirá en tres subsistemas:

1. Portal Cautivo 2. Servidor de Autenticación 3. Punto de Acceso

Figura 2.1 Arquitectura del Sistema de Acceso Seguro

En atención a los requerimientos de seguridad se deben definir una serie de fases que son necesarias cumplir:

• Capturar Primer Pedido: debemos establecer los mecanismos necesarios para que cada vez que un nuevo usuario entre en el radio de acción de la red inalámbrica, seamos capaces de limitarle el acceso a los servicios de la red.

• Autenticar usuario: una vez que un usuario ha sido capturado, para que pueda

tener acceso a los recursos de la red es necesario que se autentique.

• Controlar Acceso: una vez autenticado el usuario será necesario establecer mecanismos para garantizar una comunicación segura con el usuario.

2. Portal Cautivo Se considerará que el usuario no es especializado, es decir, que no cuenta con un software especializado adicional para comunicarse a la red. Por esta razón utilizaremos el concepto de Portal Cautivo.

Portal Cautivo Servidor de

Autenticación

Punto de Acceso Base de

Datos

Red Pública

Usuario

Page 38: 774 2006 Esime-zac Superior Mejia Nogales

Análisis del Sistema

- 26 -

La arquitectura del sistema de Portal Cautivo es un gateway que redirige las conexiones [1]. Cada vez que un nuevo usuario entra en la red inalámbrica es necesario capturarle para que solo pueda acceder a los servicios de la red una vez se haya autenticado a través del Servidor de Autenticación. Puesto que lo que queremos es dar acceso a una red inalámbrica, el punto de acceso actuará como el gateway. Cuando el usuario situado detrás del portal intente acceder a una página HTML, es capturado, esto significa que el usuario es redirigido a una página HTML con información acerca de la red WLAN a la que está conectado, además se le suministra un formulario de acceso. El diagrama de flujo del Portal Cautivo se muestra en la figura 2.2.

Figura 2.2 Flujo del Portal Cautivo

Se utilizará un Portal Cautivo para controlar los accesos a la red inalámbrica, hasta que el usuario no sea autenticado no se le permitirá ningún tipo de tráfico a través del punto de acceso de la red inalámbrica. La filosofía del subsistema del Portal Cautivo para una red inalámbrica, se puede resumir en dos pasos:

1. Proporcionar una dirección IP a cada nuevo usuario que llega. 2. Capturar la primera petición HTTP que hace el usuario.

Usuario abre el navegador

Usuario ingresa una URL

¿Tiene página HTML de

inicio?

Página HTML por defecto

Usuario Contraseña

no

Page 39: 774 2006 Esime-zac Superior Mejia Nogales

Análisis del Sistema

- 27 -

Cuando un nuevo usuario accede a la red interna recibe una dirección IP, para ello es necesario que el usuario sea reconocido como un cliente DHCP (Dynamic Host Configuration Protocol - Protocolo de Configuración Dinámica de Servidor), es decir, que tenga la interfaz WLAN configurada para que haga uso del protocolo DHCP. Una vez que el usuario ha sido configurado a través del protocolo DHCP puede comenzar a navegar por la red. Es precisamente cuando el usuario intenta cargar la primera página HTML en su navegador, que es capturado. También se debe tomar en cuenta algunas necesidades al momento de configurar el Portal Cautivo como: controlar qué usuarios han sido capturados ya, para que una vez autenticados puedan navegar sin restricciones e implementar algún mecanismo que nos permita redirigir una petición HTTP a un servidor web de nuestra red [2]. 3. Servidor de Autenticación De acuerdo con el concepto descrito en el estándar 802.1x implementaremos un Servidor de Autenticación que sea quien verifique la autenticidad del usuario utilizando los datos capturados en la transmisión HTTP. La primera petición HTTP del nuevo usuario se redirige a una página HTML donde se le informa que es necesario realizar una autenticación previa, antes de tener acceso a los servicios de la red. Para pedir los datos del usuario se establece una comunicación segura, en la que se presenta al usuario un formulario donde debe introducir los datos necesarios para su autenticación. En este subsistema del Servidor de Autenticación se puede utilizar el servidor RADIUS para proporcionar un mecanismo centralizado de toma de decisiones de autenticación. Como el sistema de acceso seguro a recursos de información permite la autenticación a cualquier cliente que desee conectarse a la red inalámbrica, se realizará una validación de cualquier dato introducido en el formulario de autenticación, contra los datos del servidor RADIUS. Aunque en la especificación 802.1x se habla de los servidores de autenticación en términos genéricos [3], en la práctica se trata de elementos diseñados según los criterios del marco Autenticación, Autorización y Contabilidad (Authentication Authorization and Accounting - AAA). Este marco define los elementos básicos necesarios para autenticar usuarios, manejar peticiones de autorización y realizar la contabilidad del sistema. Un servidor AAA debe ser capaz de recibir peticiones, examinar el contenido de dichas peticiones, determinar qué autorización se está pidiendo, recuperar las políticas que necesite de un repositorio, evaluar la petición y obtener la respuesta a la petición, o bien, reenviar la petición a otro servidor AAA. RADIUS es un protocolo encuadrado dentro del marco AAA y utilizado principalmente en entornos donde los usuarios envían información a un punto de acceso a la red. Este punto de acceso mandan al servidor la información que un nuevo usuario intenta conectarse, tras lo cual el servidor realiza el proceso de autenticación del usuario y devuelve al punto de acceso la información de configuración necesaria para que éste trate al usuario de la manera adecuada. Toda la comunicación entre el punto de acceso

Page 40: 774 2006 Esime-zac Superior Mejia Nogales

Análisis del Sistema

- 28 -

y el servidor RADIUS se encuentra cifrada mediante claves compartidas que nunca se transmiten por la red. En la figura 2.3 se muestra el diagrama de flujo del Servidor de Autenticación.

Figura 2.3 Flujo del Servidor de Autenticación

El propósito del Servidor de Autenticación es proveer al usuario un solo punto de autenticación y después, proveer de forma transparente todas las claves temporales que permitirán el acceso a los servicios autorizados. La estructura del Servidor de Autenticación se muestra en la figura 2.4 y está compuesta por los siguientes módulos:

• El Módulo de Autenticación implementa los mecanismos de autenticación que pueden ser configurados por los administradores del sistema.

• El Módulo Base de Datos genera una lista de las páginas HTML con información

restringida que cada usuario puede acceder, utilizando la información acerca del usuario y reglas administrativas de acceso al sistema.

Fin de sesión

¿Usuario válido?

Página HTML con información

restringida

no

Página HTML pública en

Internet

Página HTML por defecto

Usuario Contraseña

¿Usuario miembro?

sí / no

Page 41: 774 2006 Esime-zac Superior Mejia Nogales

Análisis del Sistema

- 29 -

• La Interfase del Servidor de Autenticación presenta el formulario de

autenticación que el usuario debe llenar y enviar al Módulo de Autenticación para ser identificado.

Una vez identificado el usuario, se extrae de la base de datos la lista de las direcciones URLs a las que el usuario puede acceder. Cada elemento de esta lista es encriptado usando una clave privada que representa al Servidor de Autenticación, como si fuera una firma digital [4]. Finalmente, se envía al navegador del usuario la información en forma de una lista de URLs para conectarse, en una página HTLM con el resultado de la autenticación. En el caso que un usuario no fue autenticado por el Servidor de Autenticación se envía un mensaje de error.

Figura 2.4 Subsistema Servidor de Autenticación

La fase de autenticación se muestra en la figura 2.4 y está compuesta por los siguientes pasos:

1. El usuario envía el formulario de autenticación al Servidor de Autenticación, el cual identifica al usuario utilizando los datos recibidos y los métodos establecidos en el sistema.

2. Si la autenticación es válida y dependiendo de las autorizaciones que posea el

usuario, se genera la lista de URLs correspondiente a los puntos de acceso donde el usuario enviará su petición, para acceder a la página con información restringida. El formato de cada URL será:

Módulo Base de Datos

Interfase del Servidor

Base de Datos

Servidor Web

Lista de URLs

OK / Error

Lista de sitios autorizados

Datos de autenticación

Módulo de Autenticación

Datos de autenticación

Datos de autenticación

2

1

3

4

5

6

7

Page 42: 774 2006 Esime-zac Superior Mejia Nogales

Análisis del Sistema

- 30 -

• La dirección del generador de claves temporales. • El nombre del Servidor de Autenticación que verificó al usuario. • La lista de parámetros encriptados con la clave privada del Servidor de

Autenticación, que son: o El código identificador del usuario. o El tiempo de expiración de la clave temporal que será generada. o Un sello de tiempo de la URL, para que la petición no sea reutilizada.

3. El navegador del usuario recibirá la lista de URLs y accederá a un Punto de

Acceso de la lista, todo de forma transparente para el usuario. 4. Punto de Acceso El subsistema Punto de Acceso controla los accesos al conjunto de recursos de información restringida, la entrega de esta información confidencial presentada en formato HTML, es la responsabilidad del administrador de este subsistema. El Punto de Acceso puede controlar uno o más servidores web [5].

Figura 2.5 Subsistema Punto de Acceso

La estructura del subsistema Punto de Acceso está descrita en la figura 2.5 y se compone de dos tipos de módulos:

• Un Módulo de Generación de Claves para la fase de autenticación, en este módulo se generan y envían las claves temporales para acceder a los servicios controlados por este subsistema.

Módulo de Control de

Acceso

Hcook Base de Datos

Navegador Web

Clave Temporal Clave Temporal

Página Web Nuevas Claves

Claves temporales

Lista de sitios autorizados

Módulo de Generación de

Claves

Petición HTTP Clave temporales

21

3

4

5 3’

Servidor Web

Page 43: 774 2006 Esime-zac Superior Mejia Nogales

Análisis del Sistema

- 31 -

• Módulos de Control de Acceso, estos módulos reciben las peticiones de las páginas HTML con información restringida. En cada petición se controla la clave temporal específica de la página HTML a la que se quiere acceder, enviada por el navegador web del usuario. Si la verificación es válida se atiende a la petición y se envía el resultado al usuario.

Cuando el Punto de Acceso recibe una petición de un usuario válido, verifica la integridad del mensaje, para lo cual utiliza la clave privada del Servidor de Autenticación para desencriptar los parámetros encriptados, además verifica el sello de tiempo para asegurarse que la petición es reciente. Si toda la verificación es correcta se generan las dos claves temporales: la clave temporal primaria Hcook y la clave temporal secundaria Lcook. La clave temporal primaria junto a un bloque aleatorio de bits es almacenado en una base de datos de claves temporales en el Punto de Acceso [4]. Además, ambas claves temporales son enviadas al navegador del usuario por medio de cookies HTTP. Los formatos utilizados en este proceso son:

• Hcook, contiene información de control de acceso encriptada con una clave simétrica K1 que es privada para el Punto de Acceso. Los campos de control de acceso son:

o El código de usuario. o La dirección que esta clave da acceso. o El tiempo de expiración. o Un bloque aleatorio.

• La clave temporal Database es el registro de todas las claves primarias

temporales válidas. Esta clave se utiliza para evitar accesos por copia de cookies, cuando se verifica una clave Hcook el Punto de Acceso necesita comparar el bloque aleatorio de la clave Hcook con el que tiene almacenado. Los atributos almacenados por cada clave primaria son:

o El código de usuario. o La dirección que esta clave da acceso. o El tiempo de expiración. o Un bloque aleatorio actual para esta clave. o Un sello de tiempo para la última modificación

• Lcook se usa en la fase de control de acceso para mejorar el desempeño. Esta

clave contiene un conjunto de datos de control de acceso encriptados con otra clave simétrica K2, que también es privada para el Punto de Acceso pero es más corta que la clave K1. Los campos de esta clave son:

o La dirección que esta clave da acceso. o El tiempo de creación.

Page 44: 774 2006 Esime-zac Superior Mejia Nogales

Análisis del Sistema

- 32 -

Figura 2.6 Estructura de Claves Temporales

En la figura 2.6 se muestra la estructura de las claves temporales. La utilización de dos claves temporales se justifica porque la clave secundaria es válida durante un periodo de tiempo corto y no requiere de una verificación compleja al reducirse los cálculos criptográficos en el Punto de Acceso [6]. Cuando expira la clave temporal secundaria se desarrolla una verificación más robusta, la clave temporal primaria es verificada, se genera una nueva clave temporal primaria, se almacena en la clave temporal Database y se envía al navegador del usuario [7]. Los pasos de la fase de Punto de Acceso son:

1. Cada vez que el usuario trata de acceder a una dirección controlada, el navegador del usuario envía las claves temporales junto con la petición en forma transparente para el usuario. Esto se logra porque las claves temporales están implementadas como cookies.

2. El Punto de Acceso verifica la clave temporal secundaria:

• Desencripta la cookie usando K2. • Controla si la dirección y el sello de tiempo en la cookie son correctas. • Si son correctas se responde a la petición. • Si la dirección es errónea la petición es rechazada.

3. Si la clave temporal secundaria ha expirado, se verifica la clave temporal

primaria:

• Desencripta la clave temporal primaria con K1. • Si la clave ha expirado, la petición se rechaza. • Si la dirección en la cookie no es válida, la petición es rechazada. • Si el bloque aleatorio en la clave temporal primaria es diferente al bloque

aleatorio almacenado en la clave temporal Database, la petición es rechazada.

• Si la clave temporal primaria es correcta se genera una nueva y un nuevo bloque aleatorio, ambos son almacenados en la clave temporal Database. Luego se genera una nueva clave temporal secundaria y se envían las dos nuevas claves al navegador del usuario junto con la respuesta a la petición.

El propósito de este sistema es satisfacer la necesidad de los usuarios que acceden a recursos de información por medio de una red inalámbrica. Con el Portal Cautivo

Código del Usuario

La Dirección a Controlar

Tiempo de Expiración

Bloque Aleatorio Hcook

Código del Usuario

La Dirección a Controlar

Tiempo de Creación Lcook

Page 45: 774 2006 Esime-zac Superior Mejia Nogales

Análisis del Sistema

- 33 -

tratamos de restringir los accesos no deseados o peligrosos para la seguridad de nuestra información, con el Servidor de Autenticación tipificamos a nuestros usuarios válidos enviándoles las direcciones donde se encuentra la información restringida a la que pueden acceder, por último, con el Punto de Acceso aseguramos que solo los usuarios con autorización verificable puedan acceder a la información restringida. 5. Referencias

[1] NoCat Authentication System, Toni Díaz, NoCatAuth, http://nocat.net/download/NoCatAuth/

[2] 802.11 Wireless Networks: The Definitive Guide, Matthew Gast, 192 p.

Editorial O'Reilly & Associates, 2001.

[3] Una Arquitectura de Control de Acceso a Redes de Área Local Inalámbricas 802.11, Manuel Sánchez Cuenca, Óscar Cánovas Reverte, XIV Jornadas de Paralelismo - Leganes, Madrid, septiembre 2003.

[4] The PAPI System - Point of Access to Providers of Information, Rodrigo

Castro-Rojo, Diego R. López, 2003, RedIRIS, http://papi.rediris.es/doc/TERENA-2001/

[5] A Detailed Description of the PAPI Protocol, The PAPI Development Team,

RedIRIS, http://papi.rediris.es/doc/PAPI_Protocol_Detailed.pdf

[6] Acceso Ubicuo a Recursos de Información en Internet: El Sistema PAPI, Diego R. López, Rodrigo Castro-Rojo, RedIRIS, http://papi.rediris.es/dist/pod/PAPI-gb.html

[7] PAPI - Guide for Beginners, Rodrigo Castro-Rojo, Diego R. López, 2003,

RedIRIS, http://papi.rediris.es/dist/pod/PAPI-gb.html

Page 46: 774 2006 Esime-zac Superior Mejia Nogales

Diseño del Sistema

- 34 -

Capítulo 3

Diseño del Sistema 1. Introducción En este capítulo se muestra el diseño del sistema de acceso seguro a recursos de información para redes inalámbricas, este diseño es uno de los principales aportes del presente documento. Primeramente se define el escenario principal del sistema para lo cual utilizaremos los diagramas del Lenguaje Unificado de Modelado (Unified Modelling Language - UML). Posteriormente, basados en los casos de uso definidos en el escenario principal, se establece los diferentes estados por los cuales el sistema pasará durante su utilización. Finalmente, se muestra el flujo de información dentro del sistema, describiendo las funciones de cada uno de los participantes involucrados en la ejecución del mismo. 2. Escenario Principal Para cumplir con las características deseadas del sistema de acceso seguro a recursos de información para redes inalámbricas, dividiremos el sistema completo en tres casos de uso, basados en los subsistemas definidos en el capítulo anterior, como se muestra en la figura 3.1. El usuario interactuará directamente con cada uno de los casos de uso en forma independiente. Inicialmente el usuario debe acceder a la red inalámbrica de forma controlada, por tal razón debe pasar un reto antes de utilizar los servicios que ofrece la red local, esta primera etapa hace referencia al subsistema Portal Cautivo, descrito en el análisis del sistema. A partir de las características de este subsistema se construirá el primer caso de uso Capturar Primer Pedido, que se encargará de que ningún usuario tenga acceso a los servicios de la red inalámbrica sin antes pasar por un proceso de autenticación.

Page 47: 774 2006 Esime-zac Superior Mejia Nogales

Diseño del Sistema

- 35 -

En el primer caso de uso Capturar Primer Pedido, sólo se aceptarán peticiones HTTP y todas las peticiones las redireccionará al URL de presentación del Servidor de Autenticación donde se pide al usuario una contraseña. El segundo caso de uso Autenticar Usuario hace referencia al subsistema Servidor de Autenticación que se ocupa de identificar al usuario. El Servidor de Autenticación enviará al usuario un reto, el usuario devolverá al servidor una respuesta al reto y si el servidor determina que el usuario ha pasado el reto le enviará las direcciones de los contenidos de información a los que tiene permiso de acceso, en forma de enlaces a sus correspondientes URLs. Si el usuario no cumple con el reto se le negará cualquier acceso a la red local. En la construcción del prototipo del sistema se utilizará como reto el método básico de autenticación basado en el nombre de usuario asociado a una contraseña de texto plano. El Servidor de Autenticación, además de las URLs, envía al usuario una clave temporal con su identificador para que el Punto de Acceso a los contenidos de información sepa quién autorizó el acceso.

Figura 3.1 Casos de Uso del Sistema

El último caso de uso Controlar Acceso tiene como objetivo que solamente los usuarios autorizados accedan a los contenidos de información, este caso de uso hace referencia al subsistema Punto de Acceso. Para controlar el acceso a los contenidos de información se utilizarán claves temporales que identificarán a cada usuario en todo momento. Las claves temporales serán enviadas al usuario como parte de la página web que solicitó el usuario en su petición HTTP.

1. Capturar

Primer Pedido

2. Autenticar

Usuario

3. Controlar Acceso

Usuario

Sistema de Acceso Seguro

Datos del Usuario

Información Confidencial

Internet

Page 48: 774 2006 Esime-zac Superior Mejia Nogales

Diseño del Sistema

- 36 -

3. Definición de Estados Para describir cómo se comporta el sistema de acceso seguro a recursos de información para redes inalámbricas, definiremos los estados de cada uno de los tres casos de uso construidos anteriormente, puesto que son independientes.

Figura 3.2 Diagrama de Estados del Caso de Uso: Capturar Primer Pedido

Caso de Uso 1: Capturar Primer Pedido Estado Descripción Escuchar nuevo usuario

El punto de acceso de la red inalámbrica se encuentra en sistema abierto sin cifrado, es decir, que cualquier usuario dentro del alcance de la red inalámbrica puede ingresar al sistema.

Detectar usuario El equipo móvil del usuario debe estar configurado como cliente DHCP para que una vez que tenga acceso al sistema por parte del punto de acceso de la red inalámbrica, haga una petición al Servidor DHCP.

Asignar IP Cuando el usuario configurado como cliente se conecta al Servidor DHCP, éste último devuelve la configuración de red al cliente que incluye una dirección IP, la dirección del Gateway y las direcciones de los DNSs. Con la configuración de red el equipo móvil del usuario está en condiciones de interactuar con la red local.

Esperar petición La red local contará con un Firewall que controlará en todo momento los accesos al sistema, solo permitirá el tráfico HTTP y peticiones DNS.

Redireccionar petición Cuando el sistema reciba una nueva petición HTTP, independientemente de la dirección a la que esté dirigida, ésta será redireccionada hacia el Servidor de Autenticación.

Escuchar nuevo usuario Detectar usuario

Asignar IP Esperar petición Redireccionar petición

Mostrar página para la autenticación

Page 49: 774 2006 Esime-zac Superior Mejia Nogales

Diseño del Sistema

- 37 -

Mostrar página para la autenticación

Cuando se redirecciona la nueva petición HTTP, se cambia el URL original por el URL de la presentación del Servidor de Autenticación. Entonces, se enviará al usuario una página web, que consta de una bienvenida a la red inalámbrica y una petición para que el usuario ingrese su nombre de usuario junto con su contraseña.

Tabla 3.1 Estados del Caso de Uso: Capturar Primer Pedido

Figura 3.3 Diagrama de Estados del Caso de Uso: Autenticar Usuario

Caso de Uso 2: Autenticar Usuario

Estado Descripción Esperar ingreso de contraseña

El Servidor de Autenticación se pondrá en un estado de espera después de enviar su página web de presentación, la cual está compuesta por una bienvenida a la red inalámbrica y la petición de nombre de usuario y contraseña.

Autenticar usuario Cuando el Servidor de Autenticación recibe un nombre de usuario y su contraseña, compara estos datos con su base de datos, para determinar si dicho usuario es válido. Por motivos de seguridad, el Servidor de Autenticación manejará las contraseñas de forma codificada. Si los datos del usuario no coinciden con los almacenados en el servidor, se enviará al usuario otra página web con un mensaje de error.

Consultar permisos del usuario

Una vez realizada la autenticación, se procede a determinar los permisos que posee el usuario válido. Basándose en estos permisos, se capturan de la base de datos del Servidor de Autenticación las URLs de los contenidos de información a los que el usuario tiene permitido el acceso.

Codificar datos del usuario

Posteriormente el Servidor de Autenticación codifica la información del usuario obtenida en su base de datos utilizando su clave privada.

Codificar datos del usuario

Autenticar usuario

Consultar permisos del usuario

Mostrar URLs autorizadas

Esperar ingreso de contraseña

Page 50: 774 2006 Esime-zac Superior Mejia Nogales

Diseño del Sistema

- 38 -

Mostrar URLs autorizadas

Finalmente, se envía al usuario una página web con varios enlaces, cada enlace corresponde a un contenido de información donde el usuario tiene permitido el acceso. A esta información se le adiciona los datos del usuario en formacodificada, más el identificador del Servidor de Autenticación.

Tabla 3.2 Estados del Caso de Uso: Autenticar Usuario

Figura 3.4 Diagrama de Estados del Caso de Uso: Controlar Acceso

Caso de Uso 3: Controlar Acceso

Estado Descripción Comprobar datos del usuario

Cuando el navegador del usuario recibe la lista de URLs desde el Servidor de Autenticación, se conecta con el Punto de Acceso de los contenidos de información de forma transparente al usuario. El Punto de Acceso utiliza la clave pública del Servidor de Autenticación para verificar la integridad de la información codificada del usuario, que recibe desde el navegador [8]. Si todo está correcto se crean las claves temporales Hcook y Lcook, ambas son enviadas al navegador del usuario codificadas como cookies y se almacena el cuerpo de las claves en la base de datos del Punto de Acceso.

Esperar petición HTTP

El Punto de Acceso cuenta con un servidor web donde se almacenan los contenidos de información confidencial, solo los usuarios autorizados y previamente autenticados podrán acceder a esta información. Sin embargo, el servidor estará activo en todo momento en espera de alguna petición HTTP.

Verificar clave temporal

Cuando el Punto de Acceso recibe una petición HTTP verifica si en las cookies recibidas se encuentran las claves temporales Hcook y Lcook. En primera instancia se desencripta y se verifica la clave Lcook, si es correcta se procede con la petición, pero si está vencida se desencripta y verifica la clave Hcook [8]. Si se encuentra alguna falla en el proceso de verificación se niega la petición y se envía un mensaje de error al usuario.

Comprobar datos del usuario

Capturar página web

Crear nueva clave temporal

Esperar petición HTTP

Enviar página web

Verificar clave temporal

Page 51: 774 2006 Esime-zac Superior Mejia Nogales

Diseño del Sistema

- 39 -

Crear nueva clave temporal

Después de desencriptar y verificar satisfactoriamente la clave Hcook, se crean nuevas claves temporales Hcook y Lcook y se almacena el cuerpo de las claves en la base de datos del Punto de Acceso.

Capturar página web Cuando las claves temporales han sido verificadas, el Punto de Acceso captura del servidor web la página en formato HTML solicitada en la petición HTTP.

Enviar página web Finalmente, el Punto de Acceso envía al usuario la página web solicitada con las nuevas claves temporales Hcook y Lcookcodificadas como cookies, si fueron creadas.

Tabla 3.3 Estados del Caso de Uso: Controlar Acceso

4. Descripción de Funciones Una vez identificados los estados de los tres casos de uso, que conforman el sistema de acceso seguro a recursos de información para redes inalámbricas, se describirán los roles o participantes involucrados en el funcionamiento del sistema.

Componente Descripción Usuario Persona con equipo móvil que desea utilizar alguno de los

servicios de la red inalámbrica local. Punto de Acceso de la red

Equipo de hardware que permite la comunicación entre la red local y los equipos inalámbricos.

Servidor DHCP Servidor encargado de enviar la configuración de red al cliente, incluida: una dirección IP que utilizará el equipo móvil del usuario, la dirección del Gateway y las direcciones de los DNSs.

Firewall Dispositivo lógico que controla el acceso entre el punto de acceso de la red inalámbrica y la red local. El Firewall realiza un filtrado de paquetes según las políticas de seguridad de la red local.

Servidor de Autenticación

Servidor que ofrece a los usuarios un punto único de autenticación. Además permite la obtención de las claves temporales de manera totalmente transparente, las cuales permitirán al usuario acceder a los recursos de información, para los que estén autorizados.

Base de Datos Usuario

Repositorio de los datos confidenciales de los usuarios que incluye el nombre de usuario y la contraseña. El Servidor de Autenticación utiliza estos datos para cumplir su función.

Base de Datos URLs

Repositorio de los datos de los diferentes contenidos de información confidencial, dentro de esta información se encuentra sus localizaciones dentro del servidor HTTP.

Punto de Acceso Programa que realiza el control de acceso efectivo para un conjunto de localizaciones web dentro del servidor HTTP. Este software utiliza las claves temporales codificadas como cookiespara determinar a los usuarios con acceso autorizado.

Base de Datos Claves

Repositorio de datos donde se almacenan el cuerpo de las claves temporales que crea el Punto de Acceso para cada usuario autenticado. Cada registro de este repositorio está asociado a un contenido de información donde el usuario tiene autorizado el acceso.

Page 52: 774 2006 Esime-zac Superior Mejia Nogales

Diseño del Sistema

- 40 -

Servidor HTTP Programa que implementa el protocolo HTTP. Este protocolo de transporte soporta la transferencia de archivos codificados con el lenguaje HTML. Estos archivos son almacenados en servidores dedicados.

Tabla 3.4 Componentes del Sistema

La relación entre los componentes del sistema está definida por el flujo de información, por lo que se hace necesario describir qué datos son enviados y recibidos por cada componente en los diferentes estados del sistema. A continuación se describirán los flujos de información para los tres casos de uso del sistema de acceso seguro a recursos de información para redes inalámbricas.

Figura 3.5 Diagrama de Secuencias del Caso de Uso: Capturar Primer Pedido

Caso de Uso 1: Capturar Primer Pedido Flujo de Datos Descripción Estado Asociado 1. SSID El punto de acceso de la red

inalámbrica transmite periódicamente su identificador de conjunto de servicio (Service Set Identifier – SSID).

Escuchar nuevo usuario

2. Petición de acceso El equipo móvil de usuario escucha el SSID del punto de acceso de la red inalámbrica y lo retransmite para lograr una asociación.

Detectar usuario

3. Petición de IP El equipo móvil del usuario envía una petición DHCP al servidor.

Detectar usuario

Usuario Punto de Acceso Servidor DHCPServidor de

Autenticación

1. SSID

2. Petición de acceso

3. Petición de IP

4. Dirección IP

5. Petición HTTP

6. Redireccionamiento

7. Petición de contraseña

Page 53: 774 2006 Esime-zac Superior Mejia Nogales

Diseño del Sistema

- 41 -

4. Dirección IP El Servidor DHCP devuelve la configuración de red al usuario, que incluye una dirección IP, la dirección del Gateway y las direcciones de los servidores DNSs.

Asignar IP

5. Petición HTTP El usuario hace una petición HTTP con una dirección URL específica.

Esperar petición

6. Redireccionamiento El Portal Cautivo de la red inalámbrica cambia la dirección URL de la petición HTTP recibida, por la dirección URL del servidor de autenticación y la reenvía.

Redireccionar petición

7. Petición de contraseña

El Servidor de Autenticación envía su página web de presentación tras recibir la petición HTTP.

Mostrar página para la autenticación

Tabla 3.5 Flujo de Datos del Caso de Uso: Capturar Primer Pedido

Figura 3.6 Diagrama de Secuencias del Caso de Uso: Autenticar Usuario

Caso de Uso 2: Autenticar Usuario Flujo de Datos Descripción Estado Asociado 1. Contraseña de usuario

El usuario envía una respuesta de autenticación con su nombre de usuario y contraseña.

Esperar ingreso de contraseña

2. Datos del usuario El Servidor de Autenticación lee los nombres de usuario y contraseñas de su base de datos para comparar con los datos del usuario recibidos.

Autenticar usuario

3. Contraseña incorrecta

El Servidor de Autenticación envía una página web al usuario, informándole que los datos recibidos no son válidos.

Autenticar usuario

UsuarioServidor de

Autenticación

1. Contraseña de usuario

2. Datos del usuario

3. Contraseña incorrecta

3’. Datos del usuario

4. Permisos

5. Lista de enlaces

Datos Usuario URLs

Page 54: 774 2006 Esime-zac Superior Mejia Nogales

Diseño del Sistema

- 42 -

3’. Datos del usuario El Servidor de Autenticación utiliza el nombre de usuario para consultar en la base de datos de las URLs, los permisos del usuario.

Consultar permisos del usuario

4. Permisos El Servidor de Autenticación lee los datos de los contenidos de información donde el usuario tiene autorizado el acceso.

Consultar permisos del usuario

5. Lista de enlaces El Servidor de Autenticación envía una página web de enlaces que incluye: las URLs de los contenidos de información, los datos del usuario codificados y su identificador.

Mostrar URLs autorizadas

Tabla 3.6 Flujo de Datos del Caso de Uso: Autenticar Usuario

Figura 3.7 Diagrama de Secuencias del Caso de Uso: Controlar Acceso

Usuario Punto de Acceso

3’. Acceso rechazado

8’. Acceso rechazado

6. Petición HTTP

8. Página web

Claves Servidor HTTP

1. Firma del S A

3. Claves temporales

2. Cuerpo de claves temporales

4. Petición HTTP

7. Cuerpo de claves temporales

5. Cuerpo de claves temporales

Page 55: 774 2006 Esime-zac Superior Mejia Nogales

Diseño del Sistema

- 43 -

Caso de Uso 3: Controlar Acceso Flujo de Datos Descripción Estado Asociado 1. Firma del Servidor de Autenticación

El navegador del usuario envía al Punto de Acceso las URLs de los contenidos de información, los datos del usuario codificados y el identificador del Servidor de Autenticación.

Comprobar datos del usuario

2. Cuerpo de claves temporales

El Punto de Acceso almacena el cuerpo de las nuevas claves temporales que se compone de: el nombre de usuario, URL donde las claves dan acceso, el tiempo de expiración de las claves, un bloque aleatorio y un registro de la última modificación.

Comprobar datos del usuario

3. Claves temporales El Punto de Acceso envía a la página web de enlaces, las claves temporales codificadas como cookies y un objeto para informar al usuario a qué enlaces tiene autorizado el acceso. El objeto generalmente es una imagen característica que aparece al lado izquierdo de cada enlace.

Comprobar datos del usuario

3’. Acceso rechazado El Punto de Acceso envía un objeto a la página web de enlaces para informar al usuario a qué enlaces no tiene autorizado el acceso. El objeto es una imagen característica que aparece al lado izquierdo del enlace.

Comprobar datos del usuario

4. Petición HTTP El usuario envía una petición HTTP por medio del enlace de la página web que está cargada en su navegador. También se envía de forma transparente al usuario las claves temporales codificadas como cookies.

Esperar petición HTTP

5. Cuerpo de claves temporales

El Punto de Acceso lee de su base de datos el cuerpo de las claves temporales, para verificar la validez de las claves temporales recibidas en la petición HTTP.

Verificar clave temporal

6. Petición HTTP El Punto de Acceso reenvía la petición HTTP al servidor correspondiente.

Capturar página web

Page 56: 774 2006 Esime-zac Superior Mejia Nogales

Diseño del Sistema

- 44 -

7. Cuerpo de claves temporales

El Punto de Acceso almacena el cuerpo de las nuevas claves temporales que se compone de: el nombre de usuario, URL donde las claves dan acceso, el tiempo de expiración de las claves, un bloque aleatorio y un registro de la última modificación.

Crear nueva clave temporal

8. Página web El Punto de Acceso envía al usuario la página web que solicitó, junto con las claves temporales codificadas como cookies.

Enviar página web

8’. Acceso rechazado El Punto de Acceso envía al usuario una página web informándole que no tiene autorizado el acceso al contenido de información que solicitó.

Enviar página web

Tabla 3.7 Flujo de Datos del Caso de Uso: Controlar Acceso

Page 57: 774 2006 Esime-zac Superior Mejia Nogales

Implementación

- 45 -

Capítulo 4

Implementación 1. Introducción En este capítulo se describe los pasos que se siguieron para instalar y configurar los diferentes componentes del sistema de acceso seguro a recursos de información para redes inalámbricas. El objetivo de esta implementación es construir un prototipo que cumpla las características propuestas en el análisis y el diseño del sistema. Primeramente se muestra el esquema de implementación que se siguió, juntamente con las características del hardware utilizado, el software instalado y las configuraciones lógicas que se hicieron para obtener el prototipo deseado. Para finalizar, se muestra la información que recibe el usuario cuando el prototipo está ejecutándose en una red local. 2. Esquema de Implementación La construcción del prototipo se basó fielmente en los componentes descritos en el diseño del sistema, también se utilizó el flujo de información del sistema para mostrar una implementación ordenada y coherente. Se tomó como punto de partida del sistema al usuario móvil con necesidad de conexión a la red local, por consiguiente el primer componente con el que interactúa este usuario es el punto de acceso de la red inalámbrica, en la implementación del prototipo se utilizó un equipo de la marca 3Com con las características descritas en la tabla 4.1. Punto de Acceso 3Com OfficeConnect Código 3CRWE41196 Usuarios soportados Hasta 128 usuarios simultáneos

Page 58: 774 2006 Esime-zac Superior Mejia Nogales

Implementación

- 46 -

Compatibilidad con normas inalámbricas

Certificación Wi-Fi, IEEE 802.11b

Velocidades de datos soportadas

1, 2, 5.,5, 11 Mbps

Banda de frecuencias 2,4 - 2,4835 GHz Distancia operativa Máxima en interiores: 91 metros

Máxima en exteriores: 457 metros Sensibilidad en recepción

1 Mbps; -88 dBm 2 Mbps; -85 dBm 5,5 Mbps; -84 dBm 11 Mbps; -81 dBm

Medio inalámbrico DSSS (Espectro Disperso de Secuencia Directa) Protocolo de acceso al medio

CSMA/CA

Canales operativos 1 - 11 (EE.UU. y Canadá) 1 - 13 (mundial)

Alimentación Suministrada usando una fuente de alimentación externa con: Tensión de entrada operativa: 10-30V Frecuencia operativa: 47-63Hz Consumo máximo de potencia: 6,5W

Puertos físicos LAN: 1 Puerto 10/100 Seguridad Encriptación por clave compartida WEP de 40, 64 y 128 bits

Tabla 4.1 Características del Punto de Acceso de la Red Inalámbrica Por otra parte, el punto de acceso de la red inalámbrica se conectó a un Servidor Central de la marca Hewlett Packard con las características descritas en la tabla 4.2. Servidor Hewlett Packard NetServer E 800 Marca del procesador Intel Pentium III Velocidad del procesador 800MHz Memoria Cache 256 KB Memoria RAM 128MB ECC SDRAM expandible hasta 2GB Disco Duro Partición boot hda1 98.7MB

Partición raíz hda2 73.0GB Dispositivos Dos conexiones Ethernet

Controlador Ultra2 SCSI de dos canales Tabla 4.2 Características del Servidor Central

Los equipos anteriormente descritos conforman todo el hardware utilizado en la conexión entre la red local y la red inalámbrica. Adicionalmente y con el objeto de poner en marcha el servidor central se instaló el software descrito en la tabla 4.3. Software Versión Descripción GNU Linux Red Hat 9

con kernel 2.4.20 Sistema Operativo

Apache 1.3.34 Servidor HTTP, servidor de páginas web. Perl 5.8.0 Lenguaje de programación

Page 59: 774 2006 Esime-zac Superior Mejia Nogales

Implementación

- 47 -

ModPerl 1.29 Software instalado en Apache que permite introducir en los ficheros HTML código desarrollado en Perl.

OpenSSL 0.9.7 Conjunto de herramientas de administración y librerías relacionadas con la criptografía.

Tabla 4.3 Software Utilizado Tomando en cuenta el análisis y el diseño del sistema descrito en capítulos anteriores, y utilizando el hardware y software anteriormente mencionado, se implementó en el servidor central los siguientes componentes, que son parte del sistema de acceso seguro a recursos de información para redes inalámbricas:

• Firewall • Servidor de Autenticación • Base de Datos del Usuario • Base de Datos URLs • Punto de Acceso a contenidos de información • Base de Datos de Claves • Servidor HTTP

Figura 4.1 Componentes del Sistema de Acceso Seguro a Recursos de Información para Redes Inalámbricas

En la figura 4.1 se muestran todos los componentes del sistema. El primer componente es un Firewall que se encarga de filtrar la información no deseada; antes que cualquier otro componente procese la información enviada a la red local a través de la red inalámbrica, los datos pasarán por el Firewall. Para lograr un filtrado óptimo se utilizó el sistema de firewall IPtables vinculado al sistema operativo Linux, el cual fue extendido a partir de la versión 2.4 del kernel.

Firewall Servidor de Autenticación Servidor HTTPPunto de Acceso a

Contenidos de Información

Base de Datos del Usuario

Base de Datos de Claves

Page 60: 774 2006 Esime-zac Superior Mejia Nogales

Implementación

- 48 -

Existen dos maneras de implementar un firewall: con una política de aceptar en principio todos los paquetes que entran y salen por el firewall y solo denegar lo que se indique explícitamente, o con una política donde todo está denegado y solo se permite pasar por el firewall aquellos paquetes que se indiquen explícitamente. La primera política facilita la gestión de un firewall, ya que simplemente se ocupa en proteger los puertos o direcciones específicas, en la segunda política el firewall se convierte en un muro infranqueable aunque es más complejo configurarlo porque se debe tener un conocimiento amplio de cómo funciona el sistema. El Firewall del sistema de acceso seguro a recursos de información para redes inalámbricas se basa en la segunda política de implementación, por lo que incorpora las siguientes reglas de filtrado al servidor central:

# Primeramente se borran todas las reglas anteriores de filtrado iptables -F # Se inicializa el firewall negando el acceso a todas las señales de entrada, y aceptando el tráfico de salida y hacia otras redes. iptables -P INPUT DROP iptables -P FORWARD ACCEPT iptables -P OUTPUT ACCEPT # Se niega el acceso de toda señal proveniente del punto de acceso a través de la primera conexión ethernet del servidor central. iptables -A INPUT -i eth1 -j DROP # Se acepta todo el tráfico entrante HTTP hacia el servidor central. iptables -A INPUT -p tcp -m tcp --dport 80 --syn -j ACCEPT iptables -A INPUT -p tcp -m tcp --dport 443 --syn -j ACCEPT # Se acepta cualquier tráfico interno del servidor central. iptables -A INPUT -i lo -j ACCEPT iptables -A OUTPUT -i lo -j ACCEPT # Se niega cualquier tráfico de otras redes que pase por el punto de acceso de la red inalámbrica. iptables -A FORWARD -i eth1 -j DROP iptables -A FORWARD -o eth1 -j DROP # Se establece al servidor central como el gateway de la red inalámbrica. iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE echo "1" > /proc/sys/net/ipv4/ip_forward

Con la implementación de estas reglas se logra que todos los paquetes desde y hacia el punto de acceso de la red inalámbrica sean administrados por el Portal Cautivo, es

Page 61: 774 2006 Esime-zac Superior Mejia Nogales

Implementación

- 49 -

decir, que todo el tráfico HTTP nuevo sea redireccionado hacia el Servidor de Autenticación. El siguiente componente del sistema es el Portal Cautivo, y para implementarlo se utilizó reglas IPtables vinculado al sistema operativo Linux del servidor central, las cuales fueron configuradas para reenviar todas las primeras peticiones HTTP de los usuarios a la dirección: http://148.204.31.129/cgi-bin/AuthServer, en donde se tiene cargado el programa que activa el Servidor de Autenticación. El usuario únicamente puede estar en dos estados: no autenticado o autenticado, cuando se encuentra en el estado no autenticado toda petición que envíe a través de la red inalámbrica será redireccionada hacia el Servidor de Autenticación. Para implementar el componente Servidor HTTP se utilizó el software Apache, el cual es un servidor de código abierto y para uso comercial que se emplea en la mayoría de los sitios web de Internet. La versión Apache incluida en Red Hat Linux ofrece la posibilidad de configurar servidores HTTP seguros con la eficaz función de cifrado SSL de los paquetes mod_ssl y OpenSSL. Al utilizar el protocolo SSL (Secure Sockets Layer) proporcionamos privacidad de la información entre el usuario y el servidor central mediante el uso de criptografía. SSL supone una serie de fases básicas: negociar entre las partes el algoritmo que se usará en la comunicación, el intercambio de claves públicas y la encriptación del tráfico basado en cifrado simétrico. El cifrado simétrico es aquel método criptográfico que emplea una misma clave para cifrar y para descifrar los mensajes. La comunidad Linux en su constante interés por ofrecer los servicios de cualquier solución comercial en el campo de las redes de forma gratuita, creó distintas soluciones para implementar el protocolo SSL. Una de estas soluciones que goza de más estabilidad y reputación es OpenSSL, que permite no sólo el uso de SSL en servidores HTTP, sino que añade esta funcionalidad a diversos protocolos como el POP, FTP y SMTP, entre otros. Para implementar el Servidor de Autenticación y el Punto de Acceso a los contenidos de información, se utilizó el software de código abierto PAPI en su versión 1.4, el cual está desarrollado en el lenguaje de programación Perl. El Servidor de Autenticación está conformado por un directorio de trabajo que contiene los documentos con formato HTML que verá el usuario cuando se autentifique, la clave privada del Servidor de Autenticación y la clave pública asociada. Adicionalmente se tienen un archivo ejecutable y un archivo de configuración que deberán estar almacenados en el directorio de los CGIs del servidor HTTP. Los CGIs son programas que utiliza el servidor HTTP para interactuar con el navegador web del usuario. Con objeto de ajustar el Servidor de Autenticación a las necesidades del prototipo se propone la siguiente configuración:

# Se elige una autenticación basada en nombre de usuario y contraseña. use PAPI::BasicAuth; my $authType = "basic";

Page 62: 774 2006 Esime-zac Superior Mejia Nogales

Implementación

- 50 -

# Se define el directorio de trabajo del servidor de autenticación. $$cfg{workingDirectory} = '/var/www/cgi-bin/etc'; # Se definen los documentos con formato HTML que se mostrarán al usuario, los cuales están localizadas en el directorio de trabajo del servidor de autenticación. $$cfg{loginTemplate} = fromFile("login.html"); $$cfg{acceptTemplate} = fromFile("accept.html"); $$cfg{testTemplate} = fromFile("test.html"); $$cfg{logoutTemplate} = fromFile("logout.html"); $$cfg{rejectTemplate} = fromFile("reject.html"); # Se define la localización, el identificador, la clave privada de codificación y la clave pública de codificación del servidor de autenticación. $$cfg{asLocation} = 'http://148.204.31.129/cgi-bin/AuthServer'; $$cfg{serverID} = 'SAuno'; $$cfg{privateKey} = 'privkey.pem'; $$cfg{publicKey} = 'pubkey.pem'; # Se define la localización donde se almacenarán las cookies y el periodo de tiempo en el cual una cookie será validada después de generarse. $$cfg{authCookieDB} = '/var/www/cgi-bin/etc/PAPIAuthenCookies'; $$cfg{authCookieTimeToLive} = 3600; # Se define el fichero donde se almacenarán los datos de los usuarios necesarios en el proceso de autenticación. $$cfg{basicAuthDB} = "Basic.pdb"; # Se definen las características del punto de acceso a contenidos de información predeterminado. $$cfg{defTimeToLive} = 1800; $$cfg{defLocation} = '/'; $$cfg{defService}= 'mitpoa'; $$cfg{defPoA} = 'http://148.204.31.129/local'; $$cfg{defDescription} = 'LOCAL MIT'; $$cfg{defAuthURI} = '/papi/cookie.cgi';

Los valores definidos como características del Punto de Acceso a contenidos de información predeterminado serán utilizados por el Servidor de Autenticación para acceder a los datos confidenciales protegidos. Para almacenar estas características se definen las siguientes variables:

$$cfg{defTimeToLive}. El tiempo que esperará el Servidor de Autenticación la respuesta del Punto de Acceso a contenidos de información.

$$cfg{defLocation}. La dirección donde se almacenará los datos confidenciales

que controla el Punto de Acceso a contenidos de información.

Page 63: 774 2006 Esime-zac Superior Mejia Nogales

Implementación

- 51 -

$$cfg{defService}. El identificador de servicio que utilizará el Punto de Acceso a

contenidos de información para identificarse en la Base de Datos del Usuario. $$cfg{defPoA}. El método de acceso y el nombre de dominio para el Punto de

Acceso a contenidos de información. $$cfg{defDescription}. Una descripción de los datos que controla el Punto de

Acceso a contenidos de información. $$cfg{defAuthURI}. Es una dirección que no corresponde a un documento HTML

o a un CGI real, esta dirección se utiliza como credencial cuando el usuario accede por primera vez al Punto de Acceso a contenidos de información.

Para obtener la clave privada y la clave pública del Servidor de Autentificación se puede utilizar los siguientes comandos: Clave Privada: openssl genrsa 1024 > privkey.pem

Clave Pública: openssl rsa –in privkey.pem –pubout –out pubkey.pem

Posteriormente, se construyó la Base de Datos codificada con la información de los usuarios en el archivo binario Basic.pdb, localizado en el directorio de trabajo del Servidor de Autenticación. En este archivo se encuentran los nombres de usuario, las contraseñas codificadas, el grupo al que pertenece cada usuario y las URLs a las que tienen permitido el acceso. También aparecen en este archivo las características del Punto de Acceso a contenidos de información que controlan los datos confidenciales. A continuación se muestra la información que forma parte de la Base de Datos del Usuario:

#Usuarios #usuario::ID::contraseña::ID alternativo::grupo::lista de URLs user::user1::papAq5PwY/QQM::Prueba1::group1::localmit,extramit user::user2::papAq5PwY/QQM::Prueba2::group1::localmit #Grupos #grupo::ID:: lista de URLs group::group1::group01::localmit #Sitios #sitio::ID::descripción::URL::punto de acceso::TTL::servicio::localización site::localmit::LOCALMIT::http://148.204.31.129/local::/papi/cookie.cgi::1800::mitpoa::/::index.html site::extramit::EXTRASMIT::http://148.204.31.129/extra::/papi/cookie.cgi::1800::defaul::/::index.html

Esta información de los usuarios deberá ser almacenada en un archivo simple de autenticación y autorización Basic.src, para luego ser codificada y almacenada en el archivo binario Basic.pdb con el uso del siguiente comando:

Page 64: 774 2006 Esime-zac Superior Mejia Nogales

Implementación

- 52 -

Pdimport –n -s Basic.src Basic.pdb El Punto de Acceso a contenidos de información es el último componente con el que interactúa el usuario, y se implementa añadiendo al archivo de configuración del Servidor HTTP Apache las siguientes líneas de código:

# Mediante el software mod_perl se carga el programa principal del Punto de Acceso a contenidos de información. PerlModule PAPI::Conf # Se definen las características predeterminadas del Punto de Acceso a contenidos de información. <PAPI_Main>

# Se define la ubicación de las claves temporales del Punto de Acceso a contenidos de información, Hcook y Lcook. HKEY_File /papi/PoA/hkey LKEY_File /papi/PoA/lkey Hcook_DB /papi/PoA/hcookdb Lcook_Timeout 1800 # Se define la dirección virtual que se utiliza como credencial cuando el usuario accede por primera vez al Punto de Acceso a contenidos de información. Auth_Location /papi/cookie.cgi # Se define las imágenes que avisarán al usuario cuándo tiene permitido el acceso a la información confidencial y cuándo no. Accept_File /papi/PoA/puerta.gif Reject_File /papi/PoA/candado.gif # Se define la clave pública de codificación del Servidor de Autenticación. Pubkeys_Path /papi/PoA/ # Se define el nombre de dominio del Servidor HTTP, y por consiguiente del Punto de Acceso a contenidos de información. Domain 148.204.31.129

</PAPI_Main> # Se crea un alias para el directorio que contiene los datos confidenciales dentro del Servidor HTTP y se habilita este directorio para responder a peticiones de información. Alias /local/ "/papi/prueba1/" <Directory "/papi/prueba1">

Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from all

Page 65: 774 2006 Esime-zac Superior Mejia Nogales

Implementación

- 53 -

</Directory> # Se habilita el Punto de Acceso a contenidos de información confidencial para rechazar peticiones no autorizadas. <Location /local>

PerlSendHeader On # Se habilitan las características predeterminadas del Punto de Acceso a contenidos de información. PerlAccessHandler PAPI::Main # Se definen las características locales del Punto de Acceso a contenidos de información específicos. <PAPI_Local>

# Se define el identificador de servicio que utilizará el Punto de Acceso a contenidos de información para identificarse en la Base de Datos del Usuario. Service_ID mitpoa # Se definen las características del Servidor de Autenticación confiable, es decir, su localización y su identificador. PAPI_AS SAuno http://148.204.31.129/cgi-bin/AuthServer SAuno

</PAPI_Local> </Location> # De la misma forma que se configuró para el primer contenido de información se define para el segundo. Alias /extra/ "/papi/prueba2/" <Directory "/papi/prueba2">

Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from all

</Directory> <Location /extra>

PerlSendHeader On PerlAccessHandler PAPI::Main <PAPI_Local>

Service_ID defaul </PAPI_Local>

</Location>

Page 66: 774 2006 Esime-zac Superior Mejia Nogales

Implementación

- 54 -

Es importante destacar que el nombre de dominio es el mismo para el Servidor de Autenticación, el Servidor HTTP y el Punto de Acceso a contenidos de información, debido a que todos están instalados en el mismo equipo. El nombre de dominio que se utilizó en la implementación del prototipo es una dirección IP que pertenece a la red local cableada. En la figura 4.2 se muestra el diagrama de red después de implementar el prototipo del sistema de acceso seguro a recursos de información para redes inalámbricas 802.11.

Figura 4.2 Diagrama de Red El usuario que pretenda conectarse al prototipo propuesto simplemente debe cumplir con los siguientes requisitos mínimos: tener un equipo móvil con tarjeta de red inalámbrica compatible con el estándar 802.11b y habilitar su configuración de red como cliente DHCP. 3. Resultados El sistema diseñado en el presente trabajo proporciona acceso seguro a recursos de información confidencial a través de una red inalámbrica 802.11, esta característica diferencia al sistema propuesto con otros sistemas de seguridad similares. Otra característica fundamental que ofrece el sistema es su transparencia frente al usuario. Una vez que el usuario intente conectase al punto de acceso de la red inalámbrica, comienza el intercambio de información entre los componentes del sistema de acceso seguro a recursos de información para redes inalámbricas. El usuario no advierte en su totalidad este flujo de información, es decir, que no percibe el envió de datos codificados entre el sistema y su navegador HTTP de su equipo móvil. Cuando el usuario abra su navegador HTTP le aparecerá automáticamente la ventana de presentación del Servidor de Autenticación que se muestra en la figura 4.3:

Page 67: 774 2006 Esime-zac Superior Mejia Nogales

Implementación

- 55 -

Figura 4.3 Ventana de Presentación El usuario tendrá que ingresar su Username y su Password para poder acceder a la información de la red local. Si la autenticación es correcta le aparecerá la ventana que se muestra en la figura 4.4.

Figura 4.4 Ventana con Enlaces Autorizados

Page 68: 774 2006 Esime-zac Superior Mejia Nogales

Implementación

- 56 -

En la ventana de la figura 4.4 se informa al usuario que ha sido identificado correctamente por el Servidor de Autenticación, también se le muestra los enlaces a los que tiene autorizado el acceso, según la base de datos del Servidor de Autenticación. Además, el punto de acceso al contenido de información avisa al usuario si los enlaces están habilitados, mediante una imagen característica que se muestra al lado izquierdo de cada enlace. Después de ser autenticado el usuario podrá acceder a la red de Internet de forma normal y a los contenidos de información confidencial habilitados haciendo uso de su enlace correspondiente. Si la autenticación falla, el usuario recibirá la ventana que se muestra en la figura 4.5.

Figura 4.5 Ventana con Autenticación Rechazada En la ventana de presentación aparecen dos opciones auxiliares: Test y Salir, la primera de ellas evalúa las cookies almacenadas por el navegador web y envía una nueva ventana con la lista de enlaces a los que el usuario tiene permitido el acceso y si estos enlaces están habilitados, esta ventana se muestra en la figura 4.6. Al elegir la opción salir se borra todas las cookies almacenadas por el navegador del usuario. En la figura 4.7 se muestra la ventana que se envía como resultado de esta opción. Es importante reiterar que el usuario solamente utiliza su navegador web para ingresar a la información confidencial, todos los procesos que realiza el sistema de acceso seguro a recursos de información para redes inalámbricas son transparentes para él. Desde el ingreso de su contraseña hasta que le aparece la información deseada, el

Page 69: 774 2006 Esime-zac Superior Mejia Nogales

Implementación

- 57 -

usuario no se percata de la codificación y verificación de claves o de la generación e intercambio de cookies.

Figura 4.6 Respuesta a la Opción Test

Figura 4.7 Respuesta a la Opción Salir

Page 70: 774 2006 Esime-zac Superior Mejia Nogales

Conclusiones

- 58 -

Conclusiones Las redes inalámbricas comenzaron como una ventaja competitiva en el ámbito empresarial, actualmente están cada vez más presentes en nuestra vida diaria, ya sea en empresas, domicilios particulares, bibliotecas, restaurantes o aeropuertos. A pesar de su rápido desarrollo, las redes inalámbricas actualmente no son totalmente seguras, por tanto no conviene tratarlas como tales y más aún cuando hay información confidencial involucrada. Existen muchos trabajos de investigación para aumentar la seguridad de las redes inalámbricas, uno de los más recientes es el estándar 802.11i que está siendo implementado por los fabricantes en sus nuevos productos. Pero, mientras este estándar sea aceptado por los consumidores o exista la necesidad de mantener el hardware de redes inalámbricas ya existente se deberán considerar algunas precauciones de seguridad extras al momento de diseñar una red inalámbrica. En este trabajo se diseñó un sistema de acceso seguro a recursos de información para redes inalámbricas 802.11, el cual permite a un usuario móvil ingresar a contenidos de información confidencial a través de un punto de acceso, sin hacer pública su información personal. Para lograr los objetivos planteados se realizaron los siguientes pasos:

• Se evaluó la seguridad en redes inalámbricas 802.11, donde se mostró las debilidades de los algoritmos WEP y WAP. Además, se describió el funcionamiento del nuevo estándar 802.11i haciendo énfasis en los métodos que utiliza para proveer seguridad, entre ellos los estándares 802.1x y AES.

• Se realizó un análisis del sistema propuesto, logrando una independencia entre

sus tres subsistemas:

o El Portal Cautivo ofrece al usuario un mecanismo de acceso seguro, centralizado y completamente transparente.

o El Servidor de Autenticación cumple con la estructura del estándar

802.1x y proteger la información personal del usuario al cifrarla. o El Punto de Acceso protege los contenidos de información para que

únicamente los usuarios previamente autenticados puedan acceder, para lograrlo utiliza claves temporales.

• Se utilizó los diagramas UML para desarrollar el diseño del sistema, estos

diagramas proporcionan una sencilla interpretación del funcionamiento del sistema propuesto.

Page 71: 774 2006 Esime-zac Superior Mejia Nogales

Conclusiones

- 59 -

• Se construyó un prototipo basado en el análisis y el diseño del sistema

propuesto, para lo cual se utilizó únicamente software libre. Luego de implementar el prototipo se determinó que el sistema de acceso seguro a recursos de información para redes inalámbricas 802.11, ofrece las siguientes ventajas:

Estandarización. En el análisis y el diseño del sistema se consideraron las recomendaciones del estándar IEEE 802.11i y los artículos que pusieron en evidencia la vulnerabilidad de sus predecesores.

Independencia entre subsistemas. La arquitectura del sistema está diseñada

para garantizar la independencia entre los tres subsistemas. Este aspecto ayuda a realizar modificaciones y actualizaciones a cada subsistema sin afectar el funcionamiento de los demás.

Procedimientos transparentes. Para proporcionar accesos seguros, el sistema

propuesto utiliza procedimientos completamente transparentes a los usuarios, de manera que no se requiere de una capacitación adicional para la utilización del sistema.

Flexibilidad. El administrador de una red inalámbrica que implemente el sistema

propuesto tendrá la opción de emplear esquemas de autenticación propios, según sus políticas de seguridad.

Compatibilidad. El sistema propuesto ofrece compatibilidad con cualquier otro

procedimiento adicional de seguridad, es decir, que puede trabajar en forma paralela con otros sistemas de control de acceso.

Utilización de Software Libre. Esta ventaja ofrece a los administradores de la red

inalámbrica la posibilidad de realizar cambios según las políticas de seguridad o los requerimientos de la red. Se deberá tener conocimientos de programación y del funcionamiento del sistema para realizar cambios en el código fuente del software utilizado.

Fácil implementación. Los requisitos necesarios para implementar el sistema de

acceso seguro a recursos de información para redes inalámbricas son mínimos, solo se necesita el hardware para la puesta en marcha de una red inalámbrica y la obtención del Software Libre.

Después de autenticar a un usuario el sistema propuesto determinará sus permisos utilizando su base de datos. Cada usuario tendrá un perfil único, es decir, podrá acceder a determinados contenidos de información restringida dentro de la red local, a Internet o a ambos, dependiendo de su perfil de usuario. El usuario móvil simplemente debe autenticarse con el sistema para acceder a la información confidencial, la única herramienta que utilizará para lograrlo será su navegador web preferido. En ningún momento el usuario necesita instalar programas específicos, realizar configuraciones complicadas o informar la identidad de su equipo móvil, mediante la dirección IP o la MAC de su tarjeta de red.

Page 72: 774 2006 Esime-zac Superior Mejia Nogales

Conclusiones

- 60 -

Recomendaciones Por definición, las redes inalámbricas tienen un problema de seguridad inherente porque su medio físico es común, es decir, que todos los datos transmitidos son accesibles para todo el mundo, por tanto siempre existe la posibilidad de sufrir ataques que técnicamente son sencillos de realizar. Al momento de implementar una red inalámbrica que brinde el acceso a información confidencial, se debe considerar la realización de las siguientes tareas:

• Definir e implementar políticas de seguridad para la red inalámbrica, basadas en los tipos de usuarios que recibirá y los servicios que proporcionará.

• Limitar el área de trabajo mediante la adecuada colocación del punto de acceso

de la red inalámbrica. • Construir un firewall entre el punto de acceso de la red inalámbrica y la red local

cableada. Las políticas de filtrado del firewall deberán adecuarse a las políticas de seguridad de la red.

• Instalar un servidor de autenticación de usuarios basado en el estándar 802.1x,

en cada punto de acceso de la red inalámbrica. • Identificar y proteger con mecanismos de acceso seguro, la información

clasificada en las políticas de seguridad como importante o confidencial. • Monitorear de forma periódica el tráfico de entrada y salida en los puntos de

acceso de la red inalámbrica. • Definir procedimientos de contingencia a posibles ataques con el propósito de

no interrumpir el servicio a los usuarios. Además de considerar estas actividades se debe consultar permanentemente las recomendaciones publicadas por el IEEE sobre el estándar 802.11 y los trabajos de investigación relacionados.

Page 73: 774 2006 Esime-zac Superior Mejia Nogales

Conclusiones

- 61 -

Sugerencias Para Trabajos Futuros Es importante señalar que el prototipo implementado cumple con las características del sistema de acceso seguro a recursos de información para redes inalámbricas 802.11. Con el objeto de ampliar la funcionalidad del sistema se propone considerar los siguientes desarrollos:

• Implementar otro tipo de mecanismos de autenticación, como por ejemplo, la utilización de certificados digitales. Se deberá seleccionar el mecanismo más apropiado para trabajar sobre un ambiente de redes inalámbricas.

• Adicionar calidad de servicio al sistema de acceso seguro a recursos de

información, para equilibrar el tráfico de los usuarios basado en sus privilegios y limitar el tráfico restante.

• Realizar pruebas de descentralización del sistema para optimizar el desempeño

del sistema en ambientes más complejos y de mayor tráfico.

• Migrar el sistema de acceso seguro a recursos de información para redes inalámbricas del tipo 802.11, al nuevo estándar emergente IEEE 802.16.

Para medir la aceptación en los usuarios y la flexibilidad del sistema, también se sugiere implementarlo en redes inalámbricas que ya tengan tiempo funcionando y que utilicen otros mecanismos de seguridad.

Page 74: 774 2006 Esime-zac Superior Mejia Nogales

Bibliografía

- 62 -

Bibliografía 802.11 Security, Bruce Potter, Bob Fleck, 192 p. Editorial O'Reilly & Associates,

December 2002. 802.11 Wireless Networks: The Definitive Guide, Matthew Gast, 192 p. Editorial

O'Reilly & Associates, 2001. Acceso Ubicuo a Recursos de Información en Internet: El Sistema PAPI, Diego

R. López, Rodrigo Castro-Rojo, RedIRIS, http://papi.rediris.es/dist/pod/PAPI-gb.html A Detailed Description of the PAPI Protocol, The PAPI Development Team,

RedIRIS, http://papi.rediris.es/doc/PAPI_Protocol_Detailed.pdf EAP Methods for 802.11 Wireless LAN Security, Web ProForum Tutorials, The

International Engineering Consortium, http://www.iec.org/online/tutorials/acrobat/eap_methods.pdf

Enterprise Solutions for Wireless LAN Security, Wi-Fi Alliance, February 6,

2003, http://www.wi-fi.org/OpenSection/pdf/Whitepaper_Wi-Fi_Enterprise2-6-03.pdf IEEE Standard for Local and Metropolitan Area Networks—Port-Based

Network Access Control, IEEE Std 802.1X-2001, The Institute of Electrical and Electronics Engineers, Approved 14 June 2001 IEEE-SA Standards Board and Approved 25 October 2001American National Standards Institute, http://standards.ieee.org/getieee802/download/802.1X-2001.pdf

NoCat Authentication System, Toni Díaz, NoCatAuth,

http://nocat.net/download/NoCatAuth/ PAPI - Guide for Beginners, Rodrigo Castro-Rojo, Diego R. López, 2003, RedIRIS,

http://papi.rediris.es/dist/pod/PAPI-gb.html

Page 75: 774 2006 Esime-zac Superior Mejia Nogales

Bibliografía

- 63 -

Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) SpecificationsANSI/IEEE Std 802.11, 1999 Edition, The Institute of Electrical and Electronics Engineers, 20 August 1999, http://standards.ieee.org/getieee802/download/802.11-1999.pdf

Pescando Sin Sedal Wardriving, Incubus, 15 julio 2004,

http://suburbia.sindominio.net/article.php3?id_article=127

Real 802.11 Security: Wi-Fi Protected Access and 802.11i, Jon Edney, William A. Arbaugh, 451 p. Editorial Addison-Wesley, August 2003.

Securing Wi-Fi Wireless Networks with Today’s Technologies, Wi-Fi Alliance,

February 6, 2003, http://www.wi-fi.org/OpenSection/pdf/Whitepaper_Wi-Fi_Networks2-6-03.pdf

Seguridad en WiFi, Stewart S. Miller, 268 p. Editorial McGraw-Hill, 2004.

The Evolution of Wireless Security in 802.11 Networks: WEP, WPA and 802.11

Standards, Stanley Wong, GSEC Practical v1.4b, May 20, 2003, http://www.sans.org/rr/papers/68/1109.pdf

The PAPI System - Point of Access to Providers of Information, Rodrigo Castro-

Rojo, Diego R. López, 2003, RedIRIS, http://papi.rediris.es/doc/TERENA-2001/ Una Arquitectura de Control de Acceso a Redes de Área Local Inalámbricas

802.11, Manuel Sánchez Cuenca, Óscar Cánovas Reverte, XIV Jornadas de Paralelismo - Leganes, Madrid, septiembre 2003

Wi-Fi Protected Access: Strong, standards-based, interoperable security for

today’s Wi-Fi networks, Wi-Fi Alliance, April 29, 2003, http://www.wi-fi.org/OpenSection/pdf/Whitepaper_Wi-Fi_Security4-29-03.pdf

WPA: A Key Step Forward in Enterpriser-class Wireless LAN (WLAN) Security,

Meetinghouse Whitepaper, Jon A. LaRosa, VP, Engineering, May 26, 2003, http://www.mtghouse.com/MDC_WP_052603.pdf

WPA, Seguridad en Redes Inalámbricas, Francisco García López. Ingeniero

Técnico de Telecomunicación. Consultor y Formador en TI edubis.com, Diciembre 2003, www.coitt.es/antena/pdf/154/06c_Reportaje_Seguridad.pdf

Page 76: 774 2006 Esime-zac Superior Mejia Nogales

Apéndice A

- 64 -

Apéndice A

Estándar de Encriptación Avanzado El Instituto Nacional de Estándares y Tecnología (National Institute of Standards and Technology – NIST) organizó una competencia internacional para definir el algoritmo AES (Advanced Encryption Standard - Estándar de Encriptación Avanzado). Los participantes de esta contienda tenían que escribir un código en los lenguajes de programación ANSI-C y Java. Como plataforma se especificó el procesador Pentium de Intel de 32 bits y procesadores de 8 bits que se utilizan en tarjetas inteligentes. NIST explicó que los criterios para escoger el algoritmo ganador serían: seguridad, velocidad y sencillez del diseño. Además, todo participante oficial en el concurso debía garantizar que si ganase renunciaría a todo derecho de propiedad intelectual sobre su algoritmo. NIST aceptó 15 candidatos oficiales, de los cuales se eligió el algoritmo Rijndael de Bélgica, su nombre impronunciable proviene de la concatenación de los nombres de sus diseñadores Vincent Rijmen y Joan Daemen. El diseño del algoritmo se basa en un conocido y respetado algoritmo llamado SQUARE. El nuevo algoritmo AES cifra bloques de 128, 192, o 256 bits y usa claves simétricas también de 128, 192 o 256 bits. La versión de AES con una clave de 128 bits puede ser implementada en el estándar 802.11i, porque su longitud es suficiente para proporcionar seguridad y requiere menos tiempo de procesamiento que una clave más larga. El algoritmo consiste en iteraciones que se componen de 4 transformaciones que se denominan:

• ByteSub o substitución de bytes. • ShiftRow o corrimiento de renglones. • MixColumn o mezcla de columnas. • AddRoundKey o suma de subclave.

Page 77: 774 2006 Esime-zac Superior Mejia Nogales

Apéndice A

- 65 -

Para iniciar el algoritmo se realiza la transformación AddRoundKey, posteriormente se realiza un número r de rondas que pueden ser 10,12 o 14 dependiendo de la longitud del bloque y de la clave. Las primeras r-1 rondas consisten de las 4 transformaciones y la última ronda consiste solo de ByteSub, ShiftRow y AddRoundKey. En la versión de AES con una clave de 128 bits, la entrada del algoritmo también es un bloque de 128 bits o 16 bytes, con este bloque se forma una matriz cuadrada B[ji] llamada state array de la siguiente forma:

Sean el bloque de entrada los 16 bytes:

B[00]B[10]B[20]B[30]B[01]B[11]B[21]B[31]B[02]B[12]B[22]B[32]B[03]B[13]B[23]B[33]

La matriz mapeada queda como:

B[00] B[01] B[02] B[03] B[10] B[11] B[12] B[13] B[20] B[21] B[22] B[23] B[30] B[31] B[32] B[33]

Antes de iniciar el cifrado se debe realizar la derivación de las subclaves K[r], que se obtiene de un proceso de extensión de la clave original K. Como una forma de almacenamiento se utilizan los arreglos W[m] que tienen una longitud que depende tanto de la longitud del bloque de entrada y del número de rondas, concretamente la longitud de W[m] es [Nb*(Nr+1)], donde Nb es el número de columnas de B[i,j] y Nr el número de rondas. Para la versión de AES con una clave de 128 bits, se tiene Nb = 4, Nr = 10, es decir, que la longitud de W será [4*(10+1)] = 44 palabras de 32 bits cada una, donde cada bloque de 4 palabras constituye una subclave. La primera subclave se denota como K[0] y es la copia de la clave original, quedando así llenos W[0],W[1],W[2] y W[3]. Las subclaves posteriores se derivan de la primera y la regla de obtención se describe a continuación:

W[4] = W[0] xor temp W[5] = W[1] xor W[4] W[6] = W[2] xor W[5] W[7] = W[3] xor W[6] W[8] = W[4] xor temp

... W[43] = W[39] xor W[42] W[44] = W[40] xor temp

Cuando i mod Nk <> 0, tenemos:

W[i] = W[i-Nk] xor W[i-1] Donde: Nk = 4.

Cuando i mod Nk = 0, tenemos:

W[i] = W[i-Nk] xor temp

Page 78: 774 2006 Esime-zac Superior Mejia Nogales

Apéndice A

- 66 -

Donde: temp = ByteSub [S(1)(W[i-1])] xor rcon[r]

ByteSub se aplica a W[i-1] con un byte recorrido y rcon[i] está definido como rcon[i]=(RC[i], 00, 00, 00), con RC[1] = 1 y RC[i] = X*RC[i-1] = X^(i-1), visto como un elemento de GF(2^8). Una vez calculadas las subclaves K[r] se inicia el proceso de cifrado con la transformación AddRoundKey o suma de subclave:

B[j,i] = B[j,i] XOR K[0][j,i] Esta transformación solo implica un XOR entrada por entrada de las matrices B[j,i] y la subclave K[0][j,i], que es copia de la clave original. El resultado se almacena en la misma matriz B[j,i]. Posteriormente se inicia la primera ronda con la transformación ByteSub o substitución de bytes, donde se substituye byte por byte de la matriz de entrada B[j,i] por el resultado de dos operaciones. La primera operación asocia el inverso multiplicativo de cada elemento B[j,i] en GF(2^8) representado con una base polinomial usando el polinomio irreducible f(x)=x^8+x^4+x^3+x+1, el cero se asocia al cero.

[0] a[j,i]^-1 = [0] La segunda operación aplica una transformación lineal de GF(2^8) en GF(2^8) que tiene la forma ilustrada entran los bits x7,..,x0 de a[j,i]^-1 y salen los bits y7,..,y0 que es el [j,i] elemento de ByteSub(a[j,i]) que es el resultado de la transformación ByteSub. Luego se aplica la transformación ShiftRow o corrimiento de renglones, es decir en las filas de B[j,i] simplemente se efectúa un corrimiento de bytes. La fila 1 no se recorre, la fila 2 se recorre 1 byte, la fila 3 se recorre 2 bytes y la fila 4 se recorre 3 bytes. A continuación se realiza MixColumn o mezcla de columnas, esta transformación se aplica a las columnas de B[j,i] y se obtiene como resultado de multiplicar cada columna vista como un polinomio de GF(2^8)[x] por un polinomio fijo c(x). Para finalizar la ronda se aplica la transformación AddRoundKey o suma de subclave, que es un simple XOR byte por byte de las matrices B[j,i] y K[r][j,i]. Para concluir el cifrado se deben realizar las 10 rondas estipuladas con sus respectivas transformaciones. En el proceso de descifrado se aplican las transformaciones inversas que en general no tienen grandes cambios.

Page 79: 774 2006 Esime-zac Superior Mejia Nogales

Apéndice B

- 67 -

Apéndice B

Software Libre El movimiento de Software Libre tuvo sus orígenes en el Instituto de Tecnología de Massachussets (MIT). Richard Stallman es considerado el creador del movimiento del Software Libre y empezó a trabajar en los laboratorios informáticos del MIT en la década de los 70. Los programadores de aquella época podían examinar los programas y modificarlos, sin restricciones, debido a que el código fuente se encontraba disponible junto con el programa. Además, en aquél entonces no existían las leyes de copyright que controlaran y penaran por modificar un programa. Las empresas tenían la política de donar sus máquinas y programas de software a los laboratorios y universidades. También publicaban el código fuente en archivos legibles para que cualquier programador pudiera leer y mejorar los programas. Luego las empresas pedían prestadas esas modificaciones para incorporarlas en versiones actualizadas para el mercado comercial. Los programadores en la década de los 70 podían tomar prestadas copias de software para poder modificar el código fuente del programa, sin privar a sus autores del uso del programa original. Si un programador al pedir prestado el código fuente introducía mejoras al programa, sus autores también tenían la libertad de tomar prestadas a su vez estas modificaciones. Durante los años 80, programadores del MIT abandonaron el Laboratorio de Inteligencia Artificial y firmaron acuerdos comerciales con diversas empresas. El compromiso de mantener en secreto el software durante sus primeras etapas de desarrollo les permitía trabajar en los mejores proyectos. Por otro lado, como la mayoría de los acuerdos de privacidad tenía fecha de expiración, se pensaba que el software tendería de volverse de conocimiento público.

Page 80: 774 2006 Esime-zac Superior Mejia Nogales

Apéndice B

- 68 -

Stallman rechazó las propuestas laborales que incluían acuerdos de mantener en secreto el software porque consideraba que en esos tipos de contratos no se respetaba la libertad de los programadores para compartir los códigos fuentes de los programas que ellos escribían. Esta postura indujo a Richard Stallman a crear la Fundación del Software Libre (Free Software Foundation - FSF) y el Proyecto GNU con el objetivo de crear un sistema operativo completo totalmente libre. GNU es un acrónimo recursivo que significa "GNU No es UNIX", UNIX es un sistema operativo propietario técnicamente estable. El sistema GNU fue diseñado para ser totalmente compatible con UNIX. Para asegurar que el software GNU permaneciera libre el proyecto debía ser liberado bajo una licencia diseñada para garantizar esos derechos y a la vez que evitase restricciones posteriores de los mismos. El concepto de Software Libre se refiere a la libertad de los usuarios para ejecutar, copiar, distribuir, estudiar, cambiar y mejorar el software. El vocablo free en inglés posee dos significados: gratis y libre. Por ello el término ha ocasionado confusiones dándose a entender equivocadamente que el software libre es gratuito. El software libre permite al usuario el ejercicio de las siguientes cuatro libertades básicas:

Libertad 0. La libertad de usar el programa, con cualquier propósito.

Libertad 1. La libertad de estudiar cómo funciona el programa y adaptarlo a las necesidades del usuario. El acceso al código fuente es una condición previa para esto.

Libertad 2. La libertad de distribuir copias.

Libertad 3. La libertad de mejorar el programa y hacer públicas las mejoras a los

demás, de modo que toda la comunidad se beneficie. El acceso al código fuente es un requisito previo para esto.

Un programa es Software Libre sólo si permite todas estas libertades. Los usuarios tienen la posibilidad y la libertad de distribuir copias, con o sin modificaciones, de forma gratuita o cobrando una cantidad de dinero por la distribución, a cualquiera y en cualquier lugar. El ser libre de hacer esto significa que no es necesario pedir o pagar permisos por las acciones antes detalladas. El usuario al poseer el código fuente podrá modificar los programas adquiridos, este hecho permite a los profesionales de la informática y a los desarrolladores de sistemas un libre intercambio de información e investigación sobre cómo funcionan los programas. Se puede compartir conocimiento y experiencias con este tipo de software, también se puede trabajar en proyectos remotamente, permitiendo que un mismo software sea desarrollado en distintas partes del mundo. De acuerdo a la licencia que poseen y según la Fundación del Software Libre, los tipos de software libre se clasifican en:

Page 81: 774 2006 Esime-zac Superior Mejia Nogales

Apéndice B

- 69 -

Software protegido por copyleft o GPL (General Public License). Software libre no protegido por copyleft.

Software de dominio público.

El software protegido con copyleft es aquél Software Libre cuyos términos de distribución no permiten a los redistribuidores agregar ninguna restricción adicional cuando éstos redistribuyen o modifican el software. Significa que cada copia del software, aún si ha sido modificado el código fuente, debe ser Software Libre. El Software Libre no protegido por copyleft tiene la autorización para que cualquier persona lo pueda redistribuir y modificar así como añadirle restricciones adicionales, es decir, una empresa de software puede compilar el programa, con o sin modificaciones, y vender el archivo ejecutable. El software de dominio público es un tipo especial de Software Libre no protegido con copyleft, es decir, algunas copias o versiones modificadas pueden no ser totalmente libres. Mediante la licencia un autor permite el uso de su creación a otras personas, de la manera que él cree aceptable. En este sentido la licencia es el instrumento que regula las maneras en que el usuario puede utilizar el software. Una licencia de software es un contrato que determina en qué condiciones el usuario puede utilizar el programa informático y qué obligaciones adquiere para su uso. Cuando se instala un programa informático, o a veces por el simple hecho de abrir el sobre que lo contiene, se están aceptando las condiciones de su licencia de software. El software con licencia Open Source podría traducirse como código fuente abierto. Es un tipo particular de software que ofrece al usuario la posibilidad de entrar en su interior para poder estudiarlo o modificarlo. Pero no sólo hace referencia al libre acceso al código fuente. El propósito de establecer una definición oficial de Open Source es establecer la esencia de lo que los programadores quieren que signifique: que aseguren que los programas distribuidos con licencia Open Source estarán disponibles para su continua revisión y mejora para que alcancen niveles de fiabilidad que no pueda conseguir ningún programa comercial cerrado, sin discriminar a personas ni a grupos de personas que quiera utilizarlo. A la idea esencial del Open Source, ofrecer programas con acceso al código fuente, van unidas los siguientes conceptos:

Flexibilidad. Si el código fuente está disponible, los desarrolladores pueden modificar los programas de acuerdo a sus necesidades. Además, se produce un flujo constante de ideas que mejora la calidad de los programas.

Fiabilidad y seguridad. Con muchos programadores a la vez escrutando el

mismo trabajo, los errores se detectan y corrigen antes, por lo que el producto resultante es más fiable y eficaz que el comercial.

Rapidez de desarrollo. Las actualizaciones y ajustes se realizan a través de una

comunicación constante vía Internet.

Page 82: 774 2006 Esime-zac Superior Mejia Nogales

Apéndice B

- 70 -

Relación con el usuario. El programador se acerca mucho más a las necesidades reales de su cliente, y puede crear un producto específico para él.

Es necesario aclarar que Open Source y Software Libre son esencialmente lo mismo, la diferencia radica en que los defensores del Software Libre no están ciento por ciento de acuerdo con que las empresas usen y distribuyan Software Libre ya que, según ellos, el mercado corporativo antepone la utilidad a la libertad, a la comunidad y a los principios y por ende no va de la mano con la filosofía original detrás del Software Libre. Para la Fundación del Software Libre el software Open Source posee inaceptables restricciones. El argumento principal de emplear el término Software de Código Fuente Abierto en lugar de Software Libre se debe a que éste último concepto no es fácil de entender para ciertas personas. Debido a que Software Libre implica hablar sobre libertad, sobre tópicos éticos, sobre responsabilidades, así como también sobre conveniencia. Cuestiones que puede producir malestar y conducir a que algunas personas rechacen la idea por esos motivos. Mientras que el movimiento del Código Abierto permite tomar una aplicación de código abierto, modificarla y no exige publicar el código fuente de estas modificaciones, el movimiento de Software Libre exige explícitamente que cualquier mejora que se realice y se publique debe ir acompañada de su correspondiente código fuente. Esta diferencia, que puede parecer pequeña, tiene grandes connotaciones. El Software Libre, al obligar a publicar el código fuente de los trabajos derivados, no permite a terceros tomar un programa, aplicarle modificaciones y apropiarse de la versión modificada. De este modo, se garantiza que cualquier trabajo derivado de un proyecto de Software Libre continuará siendo libre. También recalcan que la relación entre el movimiento Software Libre y el movimiento Fuente Abierta, son por igual dos partes políticas dentro de la misma comunidad. Están en desacuerdo en los principios básicos, pero están, sin embargo de acuerdo en la mayoría de recomendaciones prácticas y trabajan juntos en muchos proyectos específicos. En el movimiento del Software Libre, no piensan en el movimiento de Fuente Abierta como un enemigo. El enemigo común de ambos movimientos es el software privativo.

Page 83: 774 2006 Esime-zac Superior Mejia Nogales

Glosario

- 71 -

Glosario AES Estándar de Encriptación Avanzado (Advanced Encryption

Standard), también conocido como Rijndael, es un esquema de cifrado por bloque adoptado como un estándar de encriptación por el gobierno de los Estados Unidos, y se espera que sea usado en el mundo entero. Fue adoptado por el Instituto Nacional de Estándares y Tecnología (NIST) en noviembre del 2001 después de 5 años del proceso de estandarización.

CGI Interfaz de Puerta de Enlace Común (Common Gateway Interface) es una importante tecnología de la World Wide Web que permite a un cliente solicitar datos de un programa ejecutado en un servidor web. CGI especifica un estándar para transferir datos entre el cliente y el programa. Es un mecanismo de comunicación entre el servidor web y una aplicación externa.

Cookies Es un fragmento de información que se almacena en el disco duro del visitante de una página web a través de su navegador, a petición del servidor de la página. Esta información puede ser luego recuperada por el servidor en posteriores visitas.

DHCP Protocolo de Configuración Dinámica de Servidor (Dynamic Host Configuration Protocol) es un protocolo de red en el que un servidor provee los parámetros de configuración a las computadoras conectadas a la red informática que los requieran y también incluye un mecanismo de asignación de direcciones IP.

DNS Sistema de Nombre de Dominio (Domain Name System) es una base de datos distribuida y jerárquica que almacena información asociada a nombres de dominio en redes como Internet. Aunque como base de datos el DNS es capaz de asociar distintos tipos de información a cada nombre, los usos más comunes son la asignación de nombres de dominio a direcciones IP y la localización de los servidores de correo electrónico de cada dominio.

Page 84: 774 2006 Esime-zac Superior Mejia Nogales

Glosario

- 72 -

Firewall Es un elemento de hardware o software utilizado en una red de

computadoras para prevenir algunos tipos de comunicaciones prohibidas por las políticas de la red, las cuales se fundamentan en las necesidades del usuario.

FTP

Protocolo de Transferencia de Archivos (File Transfer Protocol) es un protocolo de la red Internet, y es el ideal para transferir grandes bloques de datos por la red.

GPS Sistema de Posicionamiento Global (Global Positioning System) es un Sistema Global de Navegación por Satélite (GNSS) el cual permite determinar en todo el mundo la posición de una persona, un vehículo o una nave, con una precisión de entre cuatro y quince metros. El sistema fue desarrollado e instalado, y actualmente es operado, por el Departamento de Defensa de los Estados Unidos.

Hotspots Es una zona con cobertura Wi-Fi, en el que un punto de acceso o varios proveen servicios de red a través de un proveedor de Internet inalámbrico. Los hotspots se encuentran en lugares públicos, como aeropuertos, bibliotecas, centros de convenciones, cafeterías u hoteles. Este servicio permite mantenerse conectado a Internet en lugares públicos. Este servicio puede brindarse de manera gratuita o pagando una suma que depende del proveedor.

HTML Acrónimo de Lenguaje de Formato de Documentos de Hipertexto (Hypertext Markup Language), es un lenguaje de marcas diseñado para estructurar textos y presentarlos en forma de hipertexto, que es el formato estándar de las páginas web. Gracias a Internet y a los navegadores, el HTML se ha convertido en uno de los formatos más populares que existen para la construcción de documentos.

HTTP Protocolo de Transferencia de Hipertexto (HyperText Transfer Protocol) es el protocolo usado en cada transacción de la web. El hipertexto es el contenido de las páginas web, y el protocolo de transferencia es el sistema mediante el cual se envían las peticiones de acceder a una página web, y la respuesta de esa web, remitiendo la información que se verá en pantalla. También sirve el protocolo para enviar información adicional en ambos sentidos, como formularios con mensajes y otros similares.

IEEE Instituto de Ingenieros Eléctricos y Electrónicos (Institute of Electrical and Electronics Engineers) es una asociación técnico-profesional mundial dedicada a la estandarización, entre otras cosas. Es la mayor asociación internacional sin fines de lucro formada por profesionales de las nuevas tecnologías, como ingenieros de telecomunicaciones, ingenieros electrónicos e ingenieros en informática.

Page 85: 774 2006 Esime-zac Superior Mejia Nogales

Glosario

- 73 -

IEEE 802.11 Es un estándar de protocolo de comunicaciones de la IEEE que

define el uso de los dos niveles más bajos de la arquitectura OSI (capas física y de enlace de datos), especificando sus normas de funcionamiento en una WLAN.

IEEE 802.1x Es una norma de la IEEE para el control de admisión de red basada en puertos. Permite la autenticación de dispositivos conectados a un puerto LAN, estableciendo una conexión punto a punto o previniendo el acceso por ese puerto si la autenticación falla. Es utilizado en algunos puntos de acceso inalámbricos cerrados y se basa en el protocolo de autenticación extensible.

LDAP Protocolo de Acceso a Directorios (Lighweight Directory Access Protocol) es un protocolo de red que permite el acceso a un servicio de directorio ordenado y distribuido para buscar diversa información en un entorno de red. LDAP puede considerarse una base de datos a la que pueden realizarse consultas.

Navegador web Es una aplicación de software que permite al usuario recuperar y visualizar documentos de hipertexto, comúnmente descritos en HTML, desde servidores web de todo el mundo a través de Internet.

NIST Instituto Nacional de Estándares y Tecnología (National Institute of Standards and Technology) es un organismo de los Estados Unidos que se ocupa de la Ciencia, de la medida en Ciencia y Tecnología.

Perl Lenguaje Práctico de Extracción y Reporte (Practical Extraction and Report Language) es un lenguaje de programación desarrollado por Larry Wall inspirado en otras herramientas de UNIX.

POP3 Protocolo de Oficina de Correos 3 (Post Office Protocol 3) es la tercera versión del protocolo diseñado para la gestión, el acceso y la transferencia de mensajes de correo electrónico entre dos máquinas, habitualmente un servidor y una máquina de usuario. El puerto que utiliza es generalmente el 110.

RADIUS Acrónimo de Remote Access Dial-In User Server, es un protocolo de autenticación, autorización y reporte para aplicaciones de acceso a la red o movilidad IP. Una de las características más importantes del protocolo RADIUS es su capacidad de manejar sesiones, notificando cuándo comienza y termina una conexión, así que al usuario se le podrá determinar su consumo y facturar en consecuencia; los datos se pueden utilizar con propósitos estadísticos.

Page 86: 774 2006 Esime-zac Superior Mejia Nogales

Glosario

- 74 -

RedIris Es la red española para Interconexión de los Recursos

Informáticos de las Universidades y centros de investigación. Como tal provee de servicios de conexión a Internet a universidades y centros de investigación.

Servidor HTTP Es un programa que implementa el protocolo HTTP (Hypertext Transfer Protocol). Este protocolo está diseñado para transferir lo que llamamos hipertextos, páginas web.

SMTP Protocolo Simple de Transferencia de Correo Electronico (Simple Mail Transfer Protocol) es un protocolo de red basado en texto utilizado para el intercambio de mensajes de correo electrónico entre computadoras o distintos dispositivos.

SSID Identificador de Conjunto de Servicio (Service Set Identifier) es un código incluido en todos los paquetes de una red inalámbrica Wi-Fi para identificarlos como parte de esa red. El código consiste en un máximo de 32 caracteres alfanuméricos. Todos los dispositivos inalámbricos que intentan comunicarse entre sí deben compartir el mismo SSID.

SSL Capa de Protección Segura (Secure Sockets Layer) es un protocolo criptográfico que proporciona comunicaciones seguras en Internet.

UML Lenguaje Unificado de Modelado (Unified Modelling Language) es el lenguaje de modelado de sistemas de software. Es un lenguaje gráfico para visualizar, especificar, construir y documentar un sistema de software. EL UML ofrece un estándar para escribir un plano del sistema, incluyendo aspectos conceptuales tales como procesos de negocios y funciones del sistema, y aspectos concretos como expresiones de lenguajes de programación, esquemas de bases de datos y componentes de software reutilizables.

URL Localizador Uniforme de Recurso (Uniform Resource Locutor) es la cadena de caracteres con la cual se asigna una dirección única a cada uno de los recursos de información disponibles en Internet. Existe un URL único para cada página de cada uno de los documentos de la web.

Web o WWW World Wide Web es un sistema de hipertexto que funciona sobre Internet. Para ver la información se utiliza una aplicación llamada navegador web para extraer elementos de información, llamados páginas web, de los servidores web y mostrarlos en la pantalla del usuario. El usuario puede entonces seguir hiperenlaces que hay en la página a otros documentos o incluso enviar información al servidor para interactuar con él. A la acción de seguir hiperenlaces se le suele llamar navegar por la Web.

Page 87: 774 2006 Esime-zac Superior Mejia Nogales

Glosario

- 75 -

WEP Acrónimo de Privacidad Equivalente al Cableado (Wired

Equivalency Privacy), es el sistema de cifrado incluido en el estándar 802.11 como protocolo para redes Wi-Fi que permite encriptar la información que se transmite. Proporciona encriptación a nivel 2. Está basado en el algoritmo de encriptación RC4, y utiliza claves de 64bits, de 128bits o de 256 bits. Es inseguro debido a su arquitectura, por lo que el aumentar los tamaños de las claves de encriptación sólo aumenta el tiempo necesario para romperlo.

Wi-Fi Acrónimo de Wireless Fidelity, es un conjunto de estándares para redes inalámbricas basado en las especificaciones IEEE 802.11. Wi-Fi se creó para ser utilizada en redes locales inalámbricas, pero es frecuente que en la actualidad también se utilice para acceder a Internet. Wi-Fi es una marca de la Wi-Fi Alliance, la organización comercial que prueba y certifica que los equipos cumplen los estándares IEEE 802.11.

WLAN Redes de Área Local Inalámbricas (Wireless Local Area Networks) son sistemas de comunicación de datos inalámbricos flexibles muy utilizados como alternativa a las redes de computadoras cableadas o como una extensión de éstas. Utilizan tecnología de radiofrecuencia que permite mayor movilidad a los usuarios al minimizarse las conexiones cableadas.

WPA Acceso Protegido Wi-Fi (Wi-Fi Protected Access) es un sistema para asegurar redes inalámbricas, creado para corregir la seguridad del sistema previo WEP. WPA implementa la mayoría del estándar IEEE 802.11i, y fue creado como una medida intermedia para ocupar el lugar de WEP mientras 802.11i era preparado. WPA fue creado por la Alianza Wi-Fi.