Auditoria
Autenticación en Web
El tráfico en Internet puede ser espiado y alterado con mucha facilidad ¿Cómo intercambiar datos confidenciales?
Packet Sniffing
Login y pass van en caberas HTTP. Contenidos en HTML (texto) Cabeceras HTTP en texto plano
Seguridad, alternativas
… o emplear un canal seguro
Codificar el mensaje …
Tipos deautenticación
autentificación HTTP > básica
Autentificación HTTP Básica
Desde el protocolo HTTP 1.0 Muy simple Poco seguro Cuando el navegador solicita un recurso (jsp, por ejemplo), el servidor solicita usuario y contraseña, que viajan codificadas en base 64 bits. Se puede reforzar combinándola con protocolo HTTPs, de forma que las peticiones HTTP viajen encriptadas.
autentificaciónHTTP > básica
Autentificación HTTP Básica
Navegador Servidor
autentificación HTTP > básica
Autentificación HTTP Básica
Login: Aladdin, pass: open sesame “Aladdin:open sesame”
QWxhZGRpbjpvcGVuIHNlc2FtZQ==
Base64
Aladdin
autentificación HTTP > básica
Codificación Base64
Los caracteres ASCII se secuencian y se tomas de 6 en 6 bits. Cada grupo de 6 bits es índice de la tablade caracteres Base64
autentificación HTTP > digest
Autentificación HTTP digest (hash)
Incorporada en la versión 1.1 de la especificación del protocolo HTTP. Algo más complicada internamente que la autentificación básica. La codificación va en base al timestamp generado por el servidor en el momento de la petición -> Más difícil de decodificar -> Más seguro. No está totalmente difundida niaceptada por todos los navegadores y servidores.
autentificación HTTP > digest
Autentificación HTTP digest
Navegador
Challenge: “nonce” en Base64
nonce(client-IP ":" time-stamp ":" private-key )
Servidor
MD5: Algoritmo de hash, genera una cadena de 32 char a partir de cualquier longitud de mensaje
autentificación HTTP > digest
Hashing
Message Digest (MD4, MD5, …) Unalgoritmo produce como resultado una secuencia de bits de tamaño fijo al aplicarlo sobre unos datos
digest = hash(datos, longitud) digest tiende a ser aleatorio y uniformemente distribuido
Solo funciona en un sentido
No existe datos = hash-1(digest)
nov-08 Alberto M.F.A. 12
autentificación HTTP > digest
Hashing
Si digest es suficientemente largo (>= 128 bits) se puede usar comoidentificador único de un documento Prácticamente ningún otro documento con la misma función hash() producirá el mismo digest
Cualquier cambio en los datos, por mínimo que sea, producirá otro digest impredeciblemente diferente
nov-08 Alberto M.F.A. 13
autentificación HTTP > HTTPS (SSL)
Autentificación HTTPs
Es el más seguro de los disponibles hoy en día. Se basa en mecanismos de Clave Pública (PKI):SSL (aka TLS) Requiere certificado(s) generado(s) por una autoridad certificadora (CEA) Hay un proceso “complicado” de handshake que garantiza la conexión segura.
autentificación HTTP > HTTPS (SSL)
Seguridad para WEB (HTTPS)
HTTPS = HTTP Secure HTTP sobre un protocolo de transporte seguro
HTTP SSL TCP
SSL también es conocido como TLS según IETF
nov-08 Alberto M.F.A. 15autentificación HTTP > HTTPS (SSL)
SSL (o TLS)
El servidor tiene un certificado
opcionalmente el cliente tiene el suyo
Permite intercambio seguro de datos (p.e. claves de sesión) Usa algoritmos de clave simétrica y asimétrica Del servidor siempre, Ofrece: del cliente si tiene
Autentificación Confidencialidad Integridad No repudio
certificado
autentificación HTTP > HTTPS (SSL)
Cifrado conclave simétrica
Ambas partes (A y B) conocen la clave Existe una pareja de funciones, de forma que: m* = f m, k
( ) −1 m = f (m*, k )
Con:
m, mensaje original m*, mensaje cifrado k, clave
nov-08 Alberto M.F.A. 17
autentificación HTTP > HTTPS (SSL)
Esquema
nov-08
Alberto M.F.A.
18
autentificación HTTP > HTTPS (SSL)
Claves asimétricas
También conocidos como Sistemas...
Regístrate para leer el documento completo.