Aplicaci贸n de Tarjetas Inteligentes de Red a autenticaci贸n en entornos cr铆ticos Joaquin Torres, M. Carbonell, J. Tellez and J.M. Sierra Carlos III University of Madrid, Spain Computer Science Department
Esquema Nuestra Nuestra “Tarjeta “Tarjeta Inteligente Inteligente de Red” de Red” ¿Integración ¿Integración de Tarjetas de Tarjetas Inteligentes enInteligentes las redes? en las redes?
Arquitectura Arquitectura completa para completa para autenticación autenticación Aplicación de Aplicación Tarjetas de Tarjetas Inteligentes de Red Inteligentes deen Red a autenticación a autenticación entornos críticosen entornos críticos
© 2009 evalues
2
Nuestros Objetivos •
Tarjeta de identificación debería participar como stand-alone supplicant (claimant) – Aislando el protocolo de la implementación en el Terminal y – Minimizando los requisitos de recursos del Terminal. Protocolo de autenticación será implementado como una parte integral de la tarjeta de identificación
•
Una pila de protocolos ligera sería más sencillamente soportada por la tarjeta inteligente – Protocolo de autenticación de capa 2 del IETF • proponemos la integración de la tarjeta de identificación en un esquema de autenticación en capa 2 • Basado en nuestro concepto de tarjeta inteligente de red (Network Smart Card), ID-NSCard
•
Esquema de autenticación mútuo extremo a extremo – Autenticación Remota de Dispositivos (Remote Device Authentication): nuestro trabajo asume a priori un entorno no confiabe
© 2009 evalues
3
En nuestra Network Smart Cards, ID-NSCards • Basada en el protocolo Extensible Authentication Protocol, EAP [RFC 3748 ]
EAP-MD5,EAP-TLS, EAP-MD5,EAP-TLS,EAP-SIM/AKA,…, EAP-SIM/AKA,…,EAP-? EAP-?
EAP-Methods
• EAP-Methods: EAP authentication method, con propósitos de autenticación individuales
EAP Peer/Auth EAP Layer
EAP
PPP
PPP
ISO 7816
ISO 7816
ID-NSCard
Access Control E.
Pass-through Authenticator
• Terminal=ACE= passthrough authenticator © 2009 evalues
Stand-alone supplicant
4
Arquitectura de Autenticación y Autorización
EAP-ID
EAP-ID
EAP
PPP
ISO7816 ID-NSCard
EAP
EAP RADIUS Client
RADIUS Proxies
RADIUS Server
UDP/IP
UDP/IP
UDP/IP
L2/L1
L2/L1
L2/L1
PPP
ISO7816 ACE
Network AAA Proxies
Authentication & Authorization Server
Observar Observarque quese sepuede puedereutilizar reutilizarelelesquema esquemapara: para: EAP-MD5, EAP-MD5,EAP-TLS, EAP-TLS,EAP-SIM/AKA,…, EAP-SIM/AKA,…,EAP-? EAP-? Aboba, B., Calhoum, P., RADIUS (Remote Authentication Dial In User Service) Support For Extensible Authentication Protocol (EAP), IETF RFC 3579, September 2003. Observar que el protocolo DIAMETER puede ser implementado en nuestra arquitectura.
© 2009 evalues
5
… banco de pruebas de nuestra arquitectura •
Servidor de autenticación remota es implementado por freeRadius: soporta EAP/RADIUS y EAP el desarrollo de otros métodos.
•
AP como proxy RADIUS
•
Portátil como cliente RADIUS (NAS): JRadius-Client
•
Pila de protocolos en la tarjeta -cumpliendo la máquina de estados estandarizada – ha sido implementada en una tarjeta programable JavaCard
© 2009 evalues
RADIUS Proxy
Servidor RADIUS
ACE
ID-NSCard
(Autenticación, Autorización)
6
Prototipo EAP-MD5 ID-NSCard Shared Shared secrets secrets K Ksecret secret
ACE
Authentication and Authorization Server
PPP LCP Request –EAP Auth
Shared Shared secrets secrets K Ksecret secret
PPP LCP ACK –EAP Auth
1. PPP EAP-Req[Identity] 2. PPP EAP-Response [Identity] 3. RADIUS Access-Req[EAP_Response[Identity]] 5. PPP EAP-Req[MD5-Challenge]
4. RADIUS Access-Challenge [EAP-Req[MD5-Challenge]]
•Generates •Generates challenge challenge
Computes Computes response response to to challenge challenge 6. PPP EAP-Resp [MD5-Challenge] 7. RADIUS Access-Req[EAP_Response[MD5-Challenge]] •Verifies •Verifies challenge challenge
9. PPP EAP-SUCCESS
© 2009 evalues
8. RADIUS Access-Accept[EAP_SUCCESS]
•Authenticates •Authenticates Citizen Citizen
7
ID-NSCard como DNI-e: flujo de autenticación y ...
Shared Shared secrets secrets KKENC y K MAC ENC y KMAC
IDNSCard
ACE
Authentication and Authorization Server Shared Shared secrets secrets KKENC y K MAC ENC y KMAC
PPP LCP Request –EAP Auth PPP LCP ACK –EAP Auth
1. PPP EAP-Req[Start- ID] 2. PPP EAP-Response [M1] •Verifies •Verifies ACG1 ACG1 and and authenticates authenticates Server Server •Generates •Generates rrCC,and ,and SSC SSCCC
3. RADIUS Access-Req[EAP_Response[M1]] 5. PPP EAP-Req[ACG1]
4. RADIUS Access-Challenge [EAP-Req[ACG1]]
•Computes •Computes ACG1 ACG1
•Derives •Derives KKSKSK
Computes Computes ACG2 ACG2
•Generates •Generates rrSS
6. PPP EAP-Resp [ACGA2] 7. RADIUS Access-Req[EAP_Response[ACG2]]
9. PPP EAP-Resp [M2]
8. RADIUS Access-Challenge[EAP_Response[M2]]
•Signs with KKuIuI •Signs TT with 10. PPP EAP-Request [M3]
•Verifies •Verifies ACG2 ACG2 and and Autenticates Autenticates ID-NSCard ID-NSCard •Derives •Derives KKSKSK •Generates SSCSS •Generates SSC
•Generates •Generates challenge challenge TT
11. RADIUS Access-Req[EAP_Req[M3]] 12. RADIUS Access-Accept[EAP_SUCCESS]
•Authenticat •Authenticat es es Citizen Citizen
13. PPP EAP-SUCCESS
© 2009 evalues
8
ID-NSCard Shared Shared secrets secrets KKENC y K MAC ENC y KMAC
ACE
Authentication and Authorization Server Shared Shared secrets secrets KKENC y K MAC ENC y KMAC
PPP LCP Request –EAP Auth PPP LCP ACK –EAP Auth
1. PPP EAP-Req[Start- ID] 2. PPP EAP-Response [M1] ••Verifies Verifies ACG1 ACG1 and and authenticates authenticates Server Server •Generates and •Generates rrCC,,and SSC SSCCC
3. RADIUS Access-Req[EAP_Response[M1]] 5. PPP EAP-Req[ACG1]
4. RADIUS Access-Challenge [EAP-Req[ACG1]]
•Generates •Generates rrSS ••Computes Computes ACG1 ACG1
•Derives •Derives KKSKSK
Computes Computes ACG2 ACG2
6. PPP EAP-Resp [ACGA2] 7. RADIUS Access-Req[EAP_Response[ACG2]]
9. PPP EAP-Resp [M2]
8. RADIUS Access-Challenge[EAP_Response[M2]]
•Signs •Signs T with KKuIuI 10. PPP EAP-Request [M3]
13. PPP EAP-SUCCESS
© 2009 evalues
••Verifies Verifies ACG2 ACG2 and and Autenticates Autenticates IDIDNSCard NSCard •Derives •Derives KSKSK •Generates SSCSS •Generates SSC
••Generates Generates challenge challenge TT
11. RADIUS Access-Req[EAP_Req[M3]] 12. RADIUS Access-Accept[EAP_SUCCESS]
••Authenticates Authenticates Citizen Citizen
9
Seguridad y Confianza del modelo • no proponemos un protocolo de autenticación totalmente nuevo – en el contexto de los sistemas de identificación
• nuestra arquitectura está diseñada con protocolos conocidos (y estandarizados) • algunos de ellos implementados dentro de la tarjeta con una nueva aproximación – una nueva forma de transportar mensajes de autenticación • entre la tarjeta y el servidor AAA – la tarjeta toma el control en el lado del usuario
• Las debilidades y amenazas de seguridad son derivadas de la naturaleza de los protocolos estandarizados usados – y de la corrección de su implementación © 2009 evalues
10
Conclusiones •
Una nueva aproximación basada en las tarjetas inteligentes de red con propósito de identificación, ID-NSCards.
•
nos permite transportar de forma segura mensajes de autenticación entre la tarjeta y el servidor remoto.
•
La tarjeta inteligente se comporta como un solicitante autónomo de autenticación, independientemente del terminal de acceso y de las características del escenario (flexibilidad y robustez)
•
Esta solución puede reutilizar de forma transparente los mecanismos de autenticación para las tarjetas de identificación europeas.
•
¡La tarjeta de red es un host de la red!
© 2009 evalues
11