Análisis y propuesta de un protocolo de autenticación robusta mediante One-Time Passwords usando tarjetas inteligentes
Enviado por Beatriz Andrés Castellanos
RESUMEN
En este trabajo, se realiza un análisis de un protocolo de autenticación robusta usando tarjetas inteligentes para redes digitales en el hogar, propuesto por Vaidya, Hyuk, Yeo y Rodríguez (2011). Este tipo de redes digitales ha ido creciendo en aplicaciones para el confort y la atención médica a distancia, entre otras opciones. En estos entornos delicados, no siempre se puede garantizar la seguridad de los canales de comunicación, por lo que se requiere de otras alternativas que brinden un alto nivel de seguridad. Los actuales mecanismos de autenticación robusta usando OTPs (One Time Passwords) vienen a ser una solución factible para ello. Teniendo en cuenta que normalmente en este tipo de redes intervienen clientes inalámbricos, se han venido desarrollando una serie de protocolos basándose en operaciones criptográficas ligeras, como es el caso del protocolo analizado en este trabajo. Estas operaciones usadas son preferentemente las operaciones Hash y XOR. Las cadenas de hash han sido el mecanismo preferido en este tipo de esquemas, sin embargo, suelen implicar un alto número de operaciones para, al menos, una de las partes involucradas, lo cual atenta contra la eficiencia computacional. Teniendo en cuenta que los protocolos de seguridad son bastante sutiles, cualquier protocolo planteado debe ser sometido a una extensa revisión y análisis en busca de deficiencias y vulnerabilidades. En la presente investigación no sólo se analizan algunas vulnerabilidades del protocolo de Vaidya et al. (2011), sino que también se proponen mejoras a la seguridad y la eficiencia de este protocolo, optimizando de este modo su funcionamiento.
PALABRAS CLAVES: protocolo de autenticación robusta; cadenas de hash; tarjetas inteligentes; OTP; one time password; redes digitales en el hogar
ABSTRACT
In this thesis we discuss about the security and efficiency of a robust authentication scheme using smart cards for accessing digital home networks, proposed by Vaidya, Hyuk, Yeo and Rodríguez (2011). Digital home networks have been employed in recent times in applications increasing comfort, as well as remote healthcare and more others. In these delicate environments, communication channel protection cannot always be easy to guarantee. So other alternatives that offer a high level of security are required. The actual mechanisms of robust authentication, using OTPs (one time passwords), are a feasible solution to this concerning. Taking into account that generally in this kind of networks wireless clients are usually involved, this led to the developing a series of protocols based in light cryptographic operations, as it"s the case of the protocol analyzed in this thesis.
These operations are preferably Hash and XOR. The hash chains has been the preferred mechanism in this types of schemes; however it used to involve a high amount of operations for, at least, one of the parts implicated, so it attempt against computing efficiency. Based on the fact that the security protocols are quite sensitive, any protocol proposed should be subjected to an extensive review looking for vulnerabilities. In the present research, not only we analyze some vulnerabilities of the Vaiyad et al. (2011) protocol, but we also propose improvements in order to solve some of the security vulnerabilities and enhance the computational efficiency of the protocol.
KEYWORDS: Robust authentication scheme; hash chain; smart card; one time passwords; OTP; digital home networks.
INTRODUCCION
El desarrollo que se ha alcanzado en la protección de la información hoy en día, no hubiera sido posible sin el uso indispensable de la Criptografía. En la actualidad se han logrado enormes avances en esta rama de las ciencias, haciendo uso de bases matemáticas y los enormes avances tecnológicos existentes. Así, el acelerado avance de las tecnologías ha permitido diversas estrategias para la protección de la información y la seguridad informática, pero al mismo tiempo ha traído consigo nuevas amenazas. Aunque en la actualidad la información se puede proteger mucho mejor de aquellos que carecen de conocimientos suficientes, o no disponen de los recursos apropiados para romper los métodos de protección, debemos darnos cuenta de que la tecnología existe y se desarrolla tanto para aquellos que necesitan proteger la información, como para aquellos que pretenden romper los mecanismos de seguridad existentes. De este modo, podríamos decir que este tema de la seguridad informática ha sido, y será siempre, una lucha incesable entre aquellos que trabajan en función de crear nuevos mecanismos y estrategias para la protección de la información, y aquellos que se esfuerzan por buscar sus vulnerabilidades y tratan de violar los mismos, con el respaldo de una tecnología equivalente.
Debido al crecimiento exponencial de los usuarios de Internet, y los dispositivos inalámbricos conectados en todo momento a la gran red de redes, la computación ubicua ha tomado un papel importante en el progreso de las tecnologías y las redes de hoy día. Las redes domésticas avanzadas permiten conectividad a los usuarios del hogar a través de Internet, para el acceso y el control de dispositivos digitales interconectados entre sí y asociados a la vida en el hogar.
Las redes digitales en el hogar son una de las tecnologías representativas del fenómeno de la computación ubicua. Este tipo de redes se dedican fundamentalmente al confort, ocio y cuidado de la salud de los moradores del hogar; aunque también han sido validadas para proteger lugares y para optimizar procesos como el consumo de energía.
Aún cuando las redes digitales proveen conveniencias a los usuarios residenciales, brindando servicios de valor agregado; las características heterogéneas de las mismas, y lo delicado del ambiente, hacen que resulte un desafío importante la protección de la privacidad y confidencialidad de la información que se transmite. En la mayoría de los casos es deseable que los usuarios legítimos puedan realizar el acceso remoto a distintos servicios que estas redes brindan. Sin embargo, a no ser que estas redes estén bien protegidas, usuarios ilegítimos podrían conseguir acceso a estos servicios, poniendo en riesgo la seguridad del hogar. Así, la autenticación de usuarios es uno de los mecanismos de seguridad más importantes requeridos en las redes digitales para el hogar, el cual ha generado creciente interés de la comunidad científica.
Los mecanismos de autenticación robusta actualmente existentes, en particular los mecanismos de autenticación mediante doble factor, vienen a proporcionar una solución viable para la seguridad de las redes digitales en el hogar. A pesar de ello la sutileza que implican los protocolos de seguridad informática requiere la constante revisión y perfeccionamiento de los mecanismos que se van planteando, a fin de cumplir cada vez mejor las exigencias de seguridad de cada momento y entorno en el que son aplicados.
Los métodos de autenticación robusta para el acceso remoto han sido extensamente desarrollados; y la autenticación por medio de contraseñas sigue siendo vista como uno de los métodos más simples y convenientes, por sus notables beneficios en cuanto al costo de implementación y su facilidad de uso. Para prevenir los ataques que se basan en la interceptación de información transmitida por la red (eavesdroping attack), muchos de los esquemas de autenticación modernos se han basado en las contraseñas de un solo uso (OTPs).
Dada la creciente presencia de los dispositivos inalámbricos en las redes, para los cuales es importante el ahorro de consumo energético, se ha generado una tendencia a producir protocolos más ligeros para los entornos en los que puedan intervenir este tipo de equipos. Actualmente existen mecanismos bastante eficientes y seguros de OTPs, como lo son el HOTP -OTP basado en HMAC (Hash Message Authentication Code)-, y otros, que son factibles para su aplicación en estos escenarios. Por ello, estas contraseñas dinámicas, en combinación con las tarjetas inteligentes, constituyen una de las formas más simples y populares de autenticación de doble factor; y han sido ampliamente adoptadas debido a su bajo costo computacional y su conveniente portabilidad.
A pesar de las ventajas de estos esquemas, hay investigaciones que indican que algunos métodos sofisticados pueden extraer secretos y valores de verificación de las tarjetas inteligentes (Kocher, Jaffe, & Jun, 1999; Messerges, Dabbish, & Sloan, 2002). Por lo tanto, la debilidad de los esquemas de autenticación usando tarjetas inteligentes se debe fundamentalmente al hecho de que la información guardada en dicha tarjeta pueda ser utilizada por un adversario para construir un mensaje válido de autenticación que le permita acceder ilegalmente al sistema, suplantando al usuario legítimo, aun sin el conocimiento de la contraseña. Esta es una problemática que no tiene una solución sencilla. Sin embargo, recientemente Vaidya et al. (Vaidya, Park, Yeo, & Rodrigues, 2011) han propuesto un esquema de autenticación robusta para redes residenciales usando tarjetas inteligentes, basado en el algoritmo HOTP. En el protocolo propuesto, los autores han evitado la sincronización de tiempo y el uso de verificadores de contraseña en el servidor de autenticación. Estos afirman además que, a diferencia de los anteriores, el protocolo es seguro contra ataques con robo de la tarjeta inteligente. Este esquema planteado incurre en costos computacionales algo más elevados que esquemas precedentes, en orden de brindar más seguridad. Sin embargo, un trabajo posterior (Kim & Kim., 2011) ha señalado importantes fallas de seguridad del protocolo de Viadya et al. (2011) que contradicen el planteamiento de sus autores sobre el nivel de seguridad de este protocolo.
I.1 Objetivos de la tesis
Con el presente trabajo de tesis nos proponemos alcanzar los siguientes objetivos
Objetivo General: Modificar el protocolo de Vaidya et al. (2011) para obtener un protocolo más seguro y eficiente.
Para conseguir este objetivo general nos hemos propuesto lograr una serie de objetivos específicos que exponemos a continuación:
· Realizar un análisis, lo más exhaustivo y detallado posible, de las bondades, deficiencias y vulnerabilidades del protocolo de autenticación robusta mediante one-time passwords usando tarjetas inteligentes para redes digitales en el hogar, propuesto por Vaidya et al. (2011): Este análisis permitirá la comprensión en detalle del funcionamiento del protocolo en cuestión, lo cual es de vital importancia para proponer cualquier cambio con el objetivo de mejorar el mismo en cualquier aspecto.
· Reducir el número de operaciones criptográficas del protocolo de Vaidya et al. (2011) por medio del uso de un mecanismo distinto de las cadenas de hash durante la fase de solicitud de acceso al servicio: Aunque las cadenas de hash han sido uno de los mecanismos preferidos de autenticación robusta mediante OTPs, estas resultan costosas en general en cuanto a cantidad de operaciones para al menos alguna de las partes que interviene el en protocolo. Como parte de una de las modificaciones más importantes que nos proponemos, está la sustitución de este mecanismo por uno más eficiente que no sacrifique la seguridad del protocolo con el objetivo de mejorar el rendimiento computacional del mismo.
· Rectificar algunas de las vulnerabilidades de seguridad más relevantes del protocolo de Vaidya et al. (2011): En nuestro trabajo evidenciaremos que el protocolo propuesto por Vaidya et al. (2011) no es tan seguro como han afirmado sus autores, lo que nos lleva a proponer modificaciones al mismo para solucionar algunas de sus vulnerabilidades y deficiencias.
· Proponer un nuevo protocolo más eficiente y seguro que el de Vaidya et al. (2011), como resultado de las modificaciones realizadas: Las modificaciones que se planteen, no solo se justificarán de forma aislada, sino que además se combinarán con la buena estructura y principios de funcionamiento del protocolo de Vaidya et al., para resultar en un nuevo protocolo usando tarjetas inteligentes, para redes digitales en el hogar, más eficiente y seguro.
· Lograr un nivel de seguridad similar al del protocolo de Kim et al. (2011): Basado en los tipos de ataques factibles contra este tipo de esquemas, evidenciaremos que nuestra propuesta alcanza un nivel de seguridad equiparable a la propuesta de Kim et al. (2011), aportando incluso ventajas desde el punto de vista de la eficiencia por encima de este último.
I.2 Organización de la tesis
El cuerpo restante del presente trabajo de tesis está organizado de la siguiente manera: En el Capítulo 1: "Fundamentos Teóricos", se analizan las características fundamentales, desde el punto de vista matemático, de los principales elementos relacionados con la criptografía, que se usarán como herramientas indispensables en los mecanismos y protocolos con los que se van tratar en este trabajo. Además se especifican los dos puntos de vista desde los cuales puede ser tratada la seguridad de los mecanismos relacionados con la criptografía. Seguido de esto se introducen las bases conceptuales para la autenticación de entidades. También se describen los tipos de factores a partir de los cuales este proceso puede ser llevado a cabo, haciendo énfasis en la autenticación basada en contraseñas, a la cual se le dedica especial atención. Dentro de esta última temática se revelan las deficiencias y debilidades de las contraseñas estáticas, para así dar paso al estudio de mecanismos de autenticación robusta basados en contraseñas de un solo uso (One Time Passwords). Todos estos temas son tratados en este capítulo con un lenguaje sencillo y sin entrar en formalidades matemáticas con todo rigor, ya que nuestra intención es que se entiendan, lo más claramente posible, las propiedades, ideas y conceptos importantes para la comprensión y análisis de los métodos utilizados en los protocolos de autenticación robusta, para lo cual no es imprescindible el conocimiento a fondo de los elementos criptográficos formales.
En el Capítulo 2: "Aspectos Metodológicos", se brindan conceptos e ideas esclarecedoras para el mejor entendimiento de lo que es un protocolo de autenticación de entidades, y se plantean las bases para el análisis y diseño de los mismos. De igual forma se plantea el ámbito general dentro del cual será enmarcado el tema de la seguridad de los protocolos que se exponen. Seguido de esto, se ilustra el proceso paulatino de construcción de un protocolo seguro, hasta un cierto nivel, mediante la eliminación sucesiva de algunos ataques básicos. Durante este proceso, se introducen notaciones y terminologías que serán utilizadas en el resto de la tesis, así como observaciones generales importantes para el fortalecimiento de la seguridad de los protocolos de autenticación. Todo esto sirve como una guía útil para la reducción de vulnerabilidades en protocolos de autenticación robusta. Luego de ello se realiza un estudio detallado de los parámetros variables con el tiempo, que pueden ser conjugados con las contraseñas estáticas para aportar dinamismo a las mismas, lo cual constituye la solución más efectiva a las vulnerabilidades de este tipo de contraseñas estudiadas en el Capítulo 1. A partir de esto, se propone un nuevo tipo de parámetro variable con el tiempo, que conjuga dos de los tipos de parámetros estudiados con el objetivo de aprovechar las ventajas de cada uno de ellos para brindar un uso más eficiente de los mismos; esta iniciativa no ha sido encontrada en ninguna de las bibliografías revisadas en el presente trabajo y hemos decidido nombrarle Valor de Estados Semi-Aletorios. Este tipo de parámetro que hemos introducido servirá posteriormente para mejorar el rendimiento del protocolo de Vaiya et al. lo cual es uno de los objetivos principales de esta tesis. Por último se estudian en este capítulo los diferentes tipos de contraseñas de un solo uso (OTPs) haciendo hincapié en aquellas que usan cadenas de hash y luego se describe brevemente el algoritmo de HOTP, ya que estos mecanismos son utilizadas en el protocolo de Vaidya et al. (2011), que tiene especial relevancia para nuestro trabajo.
En el Capítulo 3: "El protocolo de Vaidya et al. (2011), resultado de la evolución de la autenticación robusta", se expone un recorrido evolutivo por del estado del arte de los protocolos de autenticación robusta que usan One Time Passwords, hasta llegar al protocolo de Vaidya et al. (2011). En este punto, antes de presentar dicho protocolo se expone el tipo de escenario, la infraestructura de trabajo, y el funcionamiento general del mismo, con el objetivo de brindar todas facilidades posibles para su entendimiento. Finalmente se presenta una descripción detallada del protocolo de Vaidya et al., en la cual se muestran los mensajes intercambiados y la forma de actuar de cada ente principal a lo largo de cada fase de ejecución del protocolo.
En el Capítulo 4: "Análisis y Discusión de los Resultados", se analizan las bondades y deficiencias más importantes del protocolo de Vaidya et al. (2011). Este análisis integral se basa en gran parte en las pautas delineadas en el Capítulo 2, así como en la metodología de reducción de vulnerabilidades planteada en este mismo capítulo. Como resultado de ello se identifican las deficiencias de rendimiento y vulnerabilidades de seguridad más importantes del protocolo de Vaidya et al. Además se analizan algunas modificaciones ya propuestas por Kim y Kim (2011) al protocolo en cuestión, las cuales, aunque resuelven algunos problemas, lo hacen a costa la disminución de la eficiencia del protocolo de Vaidya et al. Todos estos análisis y las ideas planteadas durante el capítulo 2 dan lugar a las modificaciones que hemos realizado al protocolo de Vaidya et al. (2011), con el objetivo de obtener un protocolo más seguro, pero a la vez más eficiente, las cuales se plantean y se argumentan en este capítulo. Una descripción detallada del protocolo propuesto, como consecuencia de estas modificaciones, también es incluida en esta parte. Posteriormente se realiza un análisis de la seguridad de nuestro protocolo, a partir de los ataques factibles contra el mismo. Seguido de esto, se compara nuestro protocolo con el de Vaidya et al., haciendo hincapié en la notable reducción de las operaciones criptográficas que se logra con nuestras modificaciones, lo cual ilustramos a través de graficas, y de igual modo, se incluye una tabla comparativa del nivel de seguridad entre nuestra propuesta, el protocolo de Vaidya et al. y el protocolo de Kim et al., en base a los ataques presentados en los acápites 4.3 a) y 4.3 b).
Luego se exponen las Conclusiones, en las cuales se resumen los resultados y logros de nuestro trabajo, teniendo en cuenta los objetivos que nos hemos planteado.
Finalmente se plantean las Recomendaciones y Trabajos Futuros, donde se exponen los retos y posibles líneas de investigación que podrían dar continuidad a nuestro trabajo.
CAPÍTULO 1:
FUNDAMENTOS TEÓRICOS
1.1 Antecedentes
Desde tiempos antiguos se han desarrollado mecanismos de protección de la información los cuales comenzaron por hacer un uso importante de medidas físicas. En las últimas décadas, con el cambio radical de la forma en se transmite la información, la cual a migrado hacia el formato electrónico, se hace mucho más fácil la capacidad y habilidad para copiar y manipular la misma sin que esto sea advertido. El principal impulso para el desarrollo de técnicas criptográficas avanzadas ha estado durante muchos años movido por las esferas militares y gubernamentales, dado el interés por la protección de los secretos nacionales. Sin embargo, la rápida proliferación y popularización de los ordenadores personales desde los años 1960s ha traído consigo la demanda del sector privado de proteger información digital para brindar servicios seguros. De este modo, la criptografía ha jugado, desde hace mucho tiempo, un papel fundamental como una herramienta que proporciona seguridad a la información de forma independiente a los medios físicos donde esta es almacenada o trasmitida.
En este capítulo nos basaremos en algunos elementos matemáticos generales, para introducir ciertos conceptos, terminología y planteamientos más específicos, relacionados con la criptografía y la seguridad de la información; sin los cuales no pueden ser comprendidos los algoritmos, análisis y planteamientos que se hacen en el presente trabajo, y que a la vez, dejan ver la complejidad y dificultad de los temas tratados.
Definición 1.1: La Criptografía es el estudio de técnicas matemáticas relacionadas a aspectos de la seguridad de la información, tales como confidencialidad, integridad de datos, autenticación de entidades y autenticación de origen de los datos (Menezes, Oorschot, & Vanstone, 1997).
La seguridad de la información se manifiesta de diferentes modos en dependencia del contexto y los requerimientos. Sin importar quién esté involucrado, las partes que intervienen en una transacción necesitan confiar en que ciertos objetivos relacionados a la seguridad de la información son cumplidos durante el intercambio de la misma.
Expliquemos los 4 objetivos centrales que persigue la criptografía (Menezes et al., 1997).
· Confidencialidad: Es un servicio usado para mantener el contenido de una información legible solo para aquellos que están autorizados a acceder a ella, y sin sentido útil para aquellos sin esta autorización. Secrecía es un término utilizado que es sinónimo de lo planteado.
· Integridad de Datos: Es un servicio que evita la modificación no autorizada de datos. Para lograr este objetivo es necesario tener la habilidad de detectar manipulación de datos por partes no autorizadas, donde la manipulación incluye: inserción, eliminación y sustitución.
· Autenticación: Es un servicio relacionado con la identificación, el cual se aplica tanto a entidades como a información en sí. Dos partes que establecen una comunicación deben identificarse mutuamente. Igualmente, la información que se entrega durante una comunicación debe ser autenticada teniendo en cuenta parámetros como el origen, la fecha de emisión, el contenido, el tiempo de envío, etc. Por estas razones este aspecto de la criptografía se subdivide en dos clases fundamentales: autenticación de entidades y autenticación de datos. La autenticación de origen de datos incluye la integridad de datos ya que si estos han sido modificados entonces la fuente ha cambiado.
· No-Repudio: Es un servicio que previene que una entidad niegue un compromiso asumido o ciertas acciones llevadas a cabo por esta. Esto proporciona un medio para resolver disputas en las que una entidad niega que ciertas acciones tuvieron lugar. Estos casos, por lo general, requieren la intervención de una tercera parte de confianza.
Podríamos decir que la criptografía se ha creado para prevenir y detectar el engaño y otros tipos de actividades maliciosas relacionadas con el manejo de información y la comunicación de la misma. Para lograr estos objetivos se usan una serie de herramientas criptográficas básicas a las cuales se les suele llamar primitivas.
Estas primitivas son: las funciones hash de longitud arbitraria, las funciones de un solo sentido, las sucesiones aleatorias y pseudo-aleatorias, los cifradores de clave simétrica, cifradores de clave pública, las firmas digitales, las primitivas de identificación.
Estas primitivas se pueden evaluar con respecto a varios criterios los cuales son (Menezes et al., 1997):
· Nivel de Seguridad: que es, por lo general, un factor difícil de cuantificar. Para medirla se suele usar el número de operaciones que un atacante tiene que utilizar para vulnerar el sistema. Típicamente se define con una cota superior de la cantidad de trabajo necesaria para derrotar el objetivo, a lo cual se suele llamar factor de trabajo (work factor).
· Funcionalidad: Por lo general varias primitivas deben ser combinadas para alcanzar los objetivos de seguridad requeridos. En dependencia de las propiedades básicas de las mismas estas resultarán más o menos efectivas y operables dentro del esquema donde son puestas en práctica.
· Métodos de operación: Las primitivas pueden ser aplicadas en diferentes formas y con diferentes entradas, produciendo diferentes tipos de funcionalidad en sus modos de operación.
· Rendimiento: Se refiere a la eficiencia de una primitiva en un modo particular de operación, y puede ser medido en diferentes formas; siendo entre las más usuales el conteo de cantidad de operaciones y el costo computacional por unidad de tiempo.
· Facilidad de Implementación: Se refiere al nivel de dificultad que implica llevar a cabo una instancia práctica de una primitiva dada. Esto puede incluir la complejidad de implementación de la primitiva en software o hardware.
El nivel de importancia de los diferentes criterios de evaluación de las primitivas criptográficas es relativo, y varía de acuerdo al tipo de aplicación de las mismas y los recursos de que se disponen en el entorno donde son puestas en práctica. Por ejemplo, en un entorno donde el consumo de potencia es limitado, puede ser preferible sacrificar un poco el nivel de seguridad por un mejor rendimiento del sistema en general.
Para el presente trabajo solo nos importa el uso de ciertas primitivas las cuales nos restringiremos a estudiar brevemente. En particular nos interesan aquellas primitivas que se usan en el contexto de la criptografía de clave simétrica y que proporcionan un rendimiento aceptable en su aplicación, ya que éstas contribuyen a la reducción del costo computacional de las operaciones criptográficas involucradas, lo cual es primordial para el cumplimiento de los objetivos de nuestro trabajo.
1.2 Funciones de un solo sentido (One-Way functions)
Existen ciertos tipos de funciones que juegan un papel muy importante en la criptografía como son las funciones de un solo sentido.
Sacrificando un poco el rigor en busca de simplicidad, daremos a continuación una definición, casi intuitiva, de las mismas.
EL PRESENTE TEXTO ES SOLO UNA SELECCION DEL TRABAJO ORIGINAL. PARA CONSULTAR LA MONOGRAFIA COMPLETA SELECCIONAR LA OPCION DESCARGAR DEL MENU SUPERIOR.
Página siguiente |