Integración de la autorización basada en certificados de atributos para SSH

16
Integración de la autorización basada en certificados de atributos para SSH Victor Manuel Fernández Albor

description

Integración de la autorización basada en certificados de atributos para SSH. Victor Manuel Fernández Albor. OPEN-SSH Proyecto e Integrantes. - Proyecto IFEC - PowerPoint PPT Presentation

Transcript of Integración de la autorización basada en certificados de atributos para SSH

Page 1: Integración de la autorización basada en certificados de atributos para SSH

Integración de la autorización basada en certificados de

atributos para SSH

Victor Manuel Fernández Albor

Page 2: Integración de la autorización basada en certificados de atributos para SSH

OPEN-SSH Proyecto e Integrantes

- Proyecto IFEC

- Estudio, diseño y desarrollo de una infraestructura de Firma digital cualificada basada en una infraestructura de gestión de privilegios y una autoridad de sellado de tiempos.

INTEGRANTES

Page 3: Integración de la autorización basada en certificados de atributos para SSH

OPEN-SSH Criptografía

- Hoy día la criptografía se basa en problemas matemáticos con difícil resolución.

- Criptografía simétrica

- Como compartimos las claves?

- Para N usuarios:

N(N-1)/2 pares de claves

- Ejemplos: AES, Blowfish

Page 4: Integración de la autorización basada en certificados de atributos para SSH

OPEN-SSH Criptografía

- Criptografía asimétrica

- 2 Claves: Una pública y otra privada.

- Para N usuarios:

N pares de claves

- Menos fuerte que la simétrica.

- Ejemplos: RSA, DSA, ElGamal,Elliptic Curve

Compartir secretos

- Muestra híbrida entre los esquemas

simétricos-asimétricos.

- No repudio

- Envío autenticación

- Firma Digital

Page 5: Integración de la autorización basada en certificados de atributos para SSH

OPEN-SSH Criptografía

- La identidad de los certificados está conectado a la clave pública con una identidad.

- El certificado necesita ser firmado para asegurar la conexión.

- La firma es realizada con una clave asimétrica, y necesita de otro certificado para certificar al que firma.

- Esto genera una cadena, y al final de la cadena existe una autoridad que se autofirma su propio certificado.

- El usuario ha decidido si confía en la autoridad o no.

- Normalmente estas autoridades son bien conocidas y soportadas por los gobiernos.

Root CA

Sub-CA

Page 6: Integración de la autorización basada en certificados de atributos para SSH

OPEN-SSH Criptografía

Cada usuario tiene un conjunto de roles o atributos

Una política de autorización verifica las acciones mostradas con los roles atributos

La política no incrementa con el número de usuarios

Page 7: Integración de la autorización basada en certificados de atributos para SSH

OPEN-SSH

Page 8: Integración de la autorización basada en certificados de atributos para SSH

OPEN-SSH Arquitectura necesaria

Necesidades de Open-SSH con PMI

- Usuario del SSH- Certificado de identidad- Certificado de atributos- SSH Client - PMI

- Institución del Usuario- Certificado de SOA- Certificado de Usuario- Servidor PMI- Gestor de políticas

- Proveedor de servicios- Gestor de políticas (Todavía no disponible)- SSH Server - PMI

Page 9: Integración de la autorización basada en certificados de atributos para SSH

OPEN-SSH PMI Arquitectura necesaria

Page 10: Integración de la autorización basada en certificados de atributos para SSH

OPEN-SSH Problemática en el desarrollo y modificación del protocolo

Estes son los principales problemas encontrados en la realización del proyecto:

1) La falta de documentación acerca del código ssh, escrito integramente en C puro.

Por un lado SSHD, y por otro SSH cliente, con sus diferentes capas.

Conexion - Authenticación – Transporte

connect ---- authXX ---- kex

Mezcla de capas en ficheros ssh.c y sshd.c.

Utilización de algunos ficheros C, tanto por parte del cliente como por parte del servidor, da lugar a confusiones.

2) Una vez conseguido desencriptar código: ¿ Como es la comunicación entre el cliente y el servidor?

Definidos en el RFC de SSH, las nomenclaturas no coincidian.

Los nombres de los códigos enviados entre cliente y servidor, no coincidian en muchos de los casos.

Page 11: Integración de la autorización basada en certificados de atributos para SSH

OPEN-SSH Problemática en el desarrollo y modificación del protocolo

33) Una vez se consigue comunicar SSHD y SSH client, se necesita enviar certificados ¿Como los envio?

Funciona por Sockets, se creo una secuencia de códigos específica para el envio: mensaje códigoNumericoMensaje

4) Una vez enviados los certificados, el SSHD necesita verificarlos,

SSH, no permitia escribirlos en ficheros, ni poder verificarlos, ni siquiera acceder a archivos del sistema.

-Cambio del CHROOT

-Borrar permisos de escritura-lectura en disco (setGid, setUid)

-Duplicación de procesos

-Memoria compartida

Estes son los principales problemas encontrados en la realización del proyecto:

Page 12: Integración de la autorización basada en certificados de atributos para SSH

OPEN-SSH Problemática en el desarrollo y modificación del protocolo

Estes son los principales problemas encontrados en la realización del proyecto:

5) Una vez que tenemos los certificados, necesitabamos conectar una aplicación en C puro, con otra en java para la obtención de una respuesta, varias alternativas,Pruebas Axis c++, GCJ, Gsoap, Swig, Jace, JVM en C en linux.

- Llamada app Java directamente, pero se necesitaba pasarle los certificados

a) Primera versión en ficheros → operativa

b) Segunda versión a través de stdin, stdout → problemas con caracteres de fin de fichero existentes en certificados, mala interpretación de las funciones tanto de C como de Java. → Operativa.

Page 13: Integración de la autorización basada en certificados de atributos para SSH

OPEN-SSH Estructura diagrama

Page 14: Integración de la autorización basada en certificados de atributos para SSH

Get Information of PMI

Validate every chain with OCSP or CRL in middleware

Validate att certificate with OCSP or CRL in PMI

Verify the dates of chain certificates, Soa certificate and Att Certificate

Load the trustStore and validate sign of Certificates.

Verify the XACML policy

OPEN-SSH Validación-Verificación

Page 15: Integración de la autorización basada en certificados de atributos para SSH

XACML

Page 16: Integración de la autorización basada en certificados de atributos para SSH

PROYECTO IFEC

Víctor Manuel Fernández Albor ([email protected]) Luis Manuel Carril Rodríguez ([email protected])

Tomás Fernández PenaUniversidad de Santiago de Compostela

Andrés Gómez, Ignacio López Cabido{agomez,nlopez}@cesga.es

Centro de Supercomputación de Galicia

Sergio RodríguezJuan Manuel Alonso Alonso

Aldaba Soluciones y Proyectos

Felipe Gil CastiñeiraJorge

Javier CastañoUniversidade de Vigo