Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CRIPTOGRAFA
JORGE IVN MORALES SALAZAR
Acreditador
ING, HAROLD EMILIO CABRERA MEZA
Medelln
Julio de 2013
INTRODUCCIN
Los numerosos riesgos inmersos no solo en la gran red de redes, Internet, sino en las
mismas redes domsticas y/o empresariales, hacen necesario adoptar mecanismo de
proteccin para garantizar en la medida de lo posible, la confidencialidad de la
informacin, uno de los tres grandes pilares de la seguridad de la informacin.
Una de las medidas que se pueden adoptar es el empleo la criptografa, herramienta
esta quepermite evitar que cuando un intruso intercepte de alguna forma los datos de
una vctima, este no pueda leer la informacin para poderla manipular posteriormente
de acuerdo con su conveniencia.
En la primera parte del curso se har una introduccin en losconceptos de criptografa
necesarios para entender cmo se aplica a la proteccinde las comunicaciones.
El objetivo principal de la criptografa es el envo/intercambio de informacin mediante
un modelo de seguridad tal, que solo permita ser ledo por aquellos usuarios a los que
solo se autoriza esta accin (proceso este que es conocido como confidencialidad de
la informacin).
En virtud de lo anteriormente expuesto, se hace evidente el uso de tcnicas
criptogrficas para prevenir algunas faltas de seguridad en un sistema de informacin.
Por lo tanto, la seguridad en general debe ser considerada como un aspecto de gran
importancia en cualquier organizacin que trabaje con TICs. Es por esto que se dice
que el hecho que gran parte de actividades humanas sea cada vez ms
dependiente de los sistemas computarizados hace que la seguridad juegue un papel
importante.
INDICE DE CONTENIDO
11
14
18
19
23
30
33
35
38
39
41
44
54
56
58
61
62
64
66
67
69
71
72
74
76
78
91
103
104
107
108
110
111
LISTADO DE TABLAS
24
4
6
14
20
42
54
65
66
89
96
104
107
113
UNIDAD 1
Nombre de la Unidad
Introduccin
Introduccin a la criptografa
La criptografa es la herramienta que permite al usuario
proteger las comunicaciones (intercambio de datos) de tal
suerte que aunque los intrusos puedan interceptar las
comunicaciones, no les ser posible manipular o falsificar
los datos transmitidos.
Su objetivo principal es el intercambio de informacin bajo
unos criterios de seguridad aplicando una transformacin,
conocida como cifrado, a la informacin quequeremos
mantener en secreto.
Aunque un atacante consiga ver los datos que se estn
enviando,no le ser posible leerlos. Slo el
destinatariolegtimo
ser
capaz
de
realizar
la
transformacin inversa y recuperar los datosoriginales.
Es imprescindible que durante el proceso no se permita
que un impostor pueda suplantar al destinatario de la
informacin para que pueda leer la informacin.
Justificacin
Intencionalidades
Formativas
Figura 1: Proceso de
http://2.bp.blogspot.com
cifrado
descifrado
simtrico.
Fuente:
Las claves privadas deben ser conocidas solo por su propietario, mientras que las
correspondientes claves pblicas pueden ser dadas a conocer sin restriccin
alguna. Si Andrea quiere enviar a Bruno un mensaje de forma que slo l pueda
entenderlo, lo codificar con la clave pblica de Bruno. Bruno utilizar su clave
privada, para poderlo leer. Otroprobableempleo del sistema es garantizar la
identidad del remitente. Si Andrea enva a Bruno un mensaje codificado con la
clave privada de ella, Bruno necesitar la clave pblica de Andrea para descifrarlo.
Es posible combinar ambos: Andrea puede enviar a Bruno un mensaje cifrado dos
veces, con la clave privada de ella y con la clave pblica de Bruno. As se
consigue garantizar la identidad del emisor y del receptor.
El xito de la seguridad del sistema se encuentra en mantener en secreto la clave
privada. Cuando los participantes en una comunicacin quieren intercambiarse
mensajes confidenciales, tienen que escoger un clave secreta y usarla para cifrar
4
los mensajes. Entonces, pueden enviar estos mensajes por cualquier canal de
comunicacin, con la confianza que, aun que el canal sea inseguro y susceptible
de ser monitoreado por terceros, ningn espa ser capaz de interpretarlos.
Se ha propuesto una forma de manejar las revocaciones con las llamadas listas de
revocacin de certificados (CRL, certificate revocation list). Una CRL es una lista
de todos los certificados revocados por la CA y que an no expiran por otras
razones. Idealmente, una CA emite una CRL a intervalos regulares. Adems de
listar los certificados revocados, la CRL especfica durante cunto tiempo es vlida
y dnde obtener la siguiente CRL.
En teora, las CRL son interesantes por que permiten a los computadores que no
estn conectados a una red determinar si un certificado es vlido o si se ha
revocado. No obstante, en la prctica tienen varios problemas:
Figura 3: Infraestructura
http://www.chipychip.com
de
clave
pblica
PKI.
Fuente:
10
12
13
Figura
5:
Flujo
http://pic.dhe.ibm.com
del
protocolo
de
autenticacin.
Fuente:
14
Por confidencialidad se entiende que los datos transferidos sean slo entendidos
por los participantes de la sesin.
Por integridad se entiende que los datos no sean modificados en el trayecto de la
comunicacin.
Por autenticidad se entiende por la validacin de remitente de los datos.
Por proteccin a repeticiones se entiende que una sesin no pueda ser grabada y
repetida a no ser que se tenga autorizacin para hacerlo.
AH provee autenticacin, integridad y proteccin a repeticiones pero no
confidencialidad. La diferencia ms importante con ESP es que AH protege partes
del header IP, como las direcciones de origen y destino.
ESP provee autenticacin, integridad, proteccin a repeticiones y confidencialidad
de los datos, protegiendo el paquete entero que sigue al header.
AH sigue al header IP y contiene diseminaciones criptogrficas tanto en los datos
como en la informacin de identificacin. Las diseminaciones pueden tambin
cubrir las partes invariantes del header IP.
El header de ESP permite rescribir la carga en una forma encriptada. Como no
considera los campos del header IP, no garantiza nada sobre el mismo, slo la
carga.
Una divisin de la funcionalidad de IPSec es aplicada dependiendo de dnde se
realiza la encapsulacin de los datos, si es la fuente original o un gateway:
Control de acceso
Integridad sin conexin
Autenticacin del origen de los datos
Proteccin antireplay (una forma de integrabilidad parcial de la secuencia)
Confidencialidad por encriptacin
Confidencialidad limitada del flujo de trfico
Estos servicios se implementan en lacapa IP, y ofrecen proteccin para este nivel
y/o los nivelessuperiores.
Profundizacin Leccin 5: El estudiante debe profundizar en cada leccin
que sea vista para adquirir conocimientos a fondo y lograr un aprendizaje
ptimo.
Request for Comments: 2401 S. Kent
Link: http://www.rfc-es.org/rfc/rfc2401-es.txt
16
Criptografa simtrica.
Criptografa asimtrica.
Funciones de Hash.
digitales.
La particularidad de la criptografa de clave pblica es que a partir de la clave
pblica es prcticamente imposible deducir la clave privada. Esto permite que
cualquiera que conozca la clave pblica de un usuario pueda usarla para cifrar
datos confidenciales, con la seguridad que solamente quien tenga la clave privada
correspondiente podr descifrarlos, y sin necesidad de acordar ninguna clave
secreta a travs de un canal seguro. El uso de las claves al revs (la privada para
cifrar y la pblica para descifrar) es la base de las firmas digitales.
Las firmas digitales proporcionan el servicio de autenticacin de mensaje. Los
llamados cdigos MAC tambin proporcionan este servicio, pero utilizando claves
secretas compartidas en lugar de claves pblicas.
En lo referente a su seguridad, un posible ataque contra las firmas digitales
consiste en hacer creer que el firmante ha calculado el hash con otro algoritmo (p.
ex. MD4 en lugar de MD5), y si este algoritmo es menos seguro que el original,
puede ser que el atacante sea capaz de obtener un mensaje diferente que de el
mismo hash con este otro algoritmo, de modo que la firma continuara siendo
vlida.
Para realizar esta funcin de identificacin del origen, se combina una funcin
hash con la criptografa de clave pblica. De esta manera se consigue lo que
llamamos una firma digital, que identifica inequvocamente al emisor.
En el siguiente grfico podremos observar de una manera ms sencilla el proceso
de firma difital descrito en los apartados inmediatamente anteriores.
19
XolidoSign
Clicksign
Adobe Acrobat X Pro
DigiSigner
Secrefirmas
U-Sign PDF
Aloaha PDF Suite
eFactura Seteco
21
22
Ojo - Retina
Fiabilidad
Facilidad de
uso
Prevencin de
ataques
Aceptacin
Estabilidad
Identificacin y
autenticacin
Estndars
Muy alta
Media
Muy alta
Baja
Huellas
dactilares
Alta
Alta
Muy Alta
Muy alta
Alta
Alta
Media
Media
Media
Alta
Ambas
Media
Alta
Ambas
Media
Alta
Ambas
Alta
Media
Autenticacin
Muy alta
Media
Ambas
Alta
Media
Autenticacin
SVAPI
Interferencias
Gafas
Irritaciones
Artritis,
reumatismo ...
Instalaciones
nucleares,
servicios
mdicos,
centros
penitenciarios
Instalaciones
nucleares,
servicios
mdicos,
centros
penitenciarios
Firmas
fciles o
cambiantes
Industrial
Ruido,
resfriados ...
Utilizacin
ANSI/NIST,
FBI
Suciedad,
heridas,
asperezas ...
Polica,
industrial
Tabla
1.Comparacin
http://mmc.geofisica.unam.mx.
de
Geometra de
la mano
Alta
Alta
Escritura Firma
Alta
Alta
Alta
Alta
General
mtodos
Voz
Accesos
remotos en
bancos o bas
biomtricos.Fuente.
Los dispositivos biomtricos tienen tres partes principales; por un lado, disponen
de un mecanismo automtico que lee y captura una imagen digital o analgica de
la caracterstica a analizar. Adems disponen de una entidad para manejar
aspectos como la compresin, almacenamiento o comparacin de los datos
capturados con los guardados en una base de datos (que son considerados
vlidos), y tambin ofrecen una interfaz para las aplicaciones que los utilizan. El
proceso general de autenticacin sigue unos pasos comunes a todos los modelos
24
Verificacin de escritura
Aunque la escritura (generalmente la firma) no es una caracterstica estrictamente
biomtrica, se suele agrupar dentro de esta categora; de la misma forma que
suceda en la verificacin de la voz, el objetivo aqu no es interpretar o entender lo
que el usuario escribe en el lector, sino autenticarlo basndose en ciertos rasgos
tanto de la firma como de su rbrica.
La verificacin en base a firmas es algo que todos utilizamos y aceptamos da a
da en documentos o cheques; no obstante, existe una diferencia fundamental
entre el uso de las firmas que hacemos en nuestra vida cotidiana y los sistemas
biomtricos; mientras que habitualmente la verificacin de la firma consiste en un
simple anlisis visual sobre una impresin en papel, esttica, en los sistemas
automticos no es posible autenticar usuarios en base a la representacin de los
trazos de su firma.
En los modelos biomtricos se utiliza adems la forma de firmar, las
caractersticas dinmicas (por eso se les suele denominar Dynamic Signature
Verification, DSV): el tiempo utilizado para rubricar, las veces que se separa el
bolgrafo del papel, el ngulo con que se realiza cada trazo, etc.
Para utilizar un sistema de autenticacin basado en firmas se solicita en primer
lugar a los futuros usuarios un nmero determinado de firmas ejemplo, de las
cuales el sistema extrae y almacena ciertas caractersticas; esta etapa se
denomina de aprendizaje, y el principal obstculo a su correcta ejecucin son los
usuarios que no suelen firmar uniformemente.
Contra este problema la nica solucin (aparte de una concienciacin de tales
usuarios) es relajar las restricciones del sistema a la hora de aprender firmas, con
lo que se decrementa su seguridad.
Una vez que el sistema conoce las firmas de sus usuarios, cuando estos desean
acceder a l, se les solicita tal firma, con un nmero limitado de intentos
(generalmente ms que los sistemas que autentican mediante contraseas, ya
que la firma puede variar en un individuo por mltiples factores).
La firma introducida es capturada por un lpiz ptico o por una lectora sensible (o
por ambos), y el acceso al sistema se produce una vez que el usuario ha
introducido una firma que el verificador es capaz de distinguir como autntica.
Verificacin de huellas
Tpicamente la huella dactilar de un individuo ha sido un patrn bastante bueno
para determinar su identidad de forma inequvoca, ya que est aceptado que dos
dedos nunca poseen huellas similares, ni siquiera entre gemelos o entre dedos de
27
la misma persona. Por tanto, parece obvio que las huellas se convertiran antes o
despus en un modelo de autenticacin biomtrico: desde el siglo pasado hasta
nuestros das se vienen realizando con xito clasificaciones sistemticas de
huellas dactilares en entornos policiales, y el uso de estos patrones fu uno de los
primeros en establecerse como modelo de autenticacin biomtrica.
Cuando un usuario desea autenticarse ante el sistema ubica su dedo en un rea
determinada (rea de lectura, no se necesita en ningn momento una impresin
en tinta). Aqu se toma una imagen que posteriormente se normaliza mediante un
sistema de finos espejospara corregir ngulos, y es de esta imagen normalizada
de la que el sistema extrae las minucias (ciertos arcos, bucles o remolinos de la
huella) que va a comparar contra las que tiene en su base de datos; es importante
resaltar que lo que el sistema es capaz de analizar no es la huella en s sino que
son estas minucias, concretamente la posicin relativa de cada una de ellas.
Est demostrado que dos dedos nunca pueden poseer ms de ocho minucias
comunes, y cada uno tiene al menos 30 o 40 de stas.
Si la comparacin de las posiciones relativas de las minucias ledas con las
almacenadas en la base de datos es correcta, se permite el acceso al usuario,
denegndosele obviamente en caso contrario.
Los sistemas basados en reconocimiento de huellas son relativamente baratos (en
comparacin con otros biomtricos, como los basados en patrones retinales); sin
embargo, tienen en su contra la incapacidad temporal de autenticar usuarios que
se hayan podido herir en el dedo a reconocer (un pequeo corte o una quemadura
que afecte a varias minucias pueden hacer intil al sistema).
Tambin elementos como la suciedad del dedo, la presin ejercida sobre el lector
o el estado de la piel pueden ocasionar lecturas errneas. Otro factor a tener muy
en cuenta contra estos sistemas es psicolgico, no tcnico.
Verificacin de patrones oculares
Los modelos de autenticacin biomtrica basados en patrones oculares se dividen
en dos tecnologas diferentes: o bien analizan patrones retinales, o bien analizan
el iris.
Estos mtodos se suelen considerar los ms efectivos: para una poblacin de 200
millones de potenciales usuarios la probabilidad de coincidencia es casi 0, y
adems una vez muerto el individuo los tejidos oculares degeneran rpidamente,
lo que dificulta la falsa aceptacin de atacantes que puedan robar este rgano de
un cadver.
La principal desventaja de los mtodos basados en el anlisis de patrones
oculares es su escasa aceptacin; el hecho de mirar a travs de un binocular (o
28
29
31
conocierael algoritmo que hemos empleado para camuflar nuestro mensaje dentro
de la imagen, el sistema quedara automticamente comprometido. Alguien podra
proponer entonces emplear la Criptografa y almacenar en los bits menos
significativos de cada pxel la versin codificadadel mensaje.
Existe sin embargo, una forma ms elegantede proteger la informacin sin
emplear ningn algoritmo criptogrfico.
Podramos generar una gran cantidad de informacin irrelevante y subdividirla
junto con el mensaje original en pequeos paquetes, a los que aadiramos un
cdigo de identificacin(firma o signatura), de forma que slo los paquetes que
corresponden al mensaje contengan una signaturacorrecta.
Si enviamos una secuencia de paquetes en la que aparece el mensaje
originalentremezclado con la basura, slo quien disponga del mecanismo de
autentificacin correcto que podra depender de una clave, estara en condiciones
de recuperar el mensaje original.
Sin embargo, el mensaje ha sido enviado como texto claro, sin ser codificado en
ningn momento.
El ejemplo del mapa de bits no sera ms que un caso particular de este esquema,
en elque el algoritmo de autentificacin simplemente considera vlidos los bits
menos significativos de cada pxel y descarta todos los dems.
36
37
39
41
Sin duda, podemos encontrar muchas otras definiciones. Pero todas contienen
aadidos, aluden a temas de distinta ndole y producen cierta confusin
semntica, uno de los principales motivos por los que las bases de datos son los
objetos menos protegidos de la infraestructura de las tecnologas de la
informacin.
El planteamiento del problema no termina aqu. La descentralizacin de los
sistemas de informacin y la disponibilidad de entornos de programacin eficaces
para los usuarios finales, como las hojas de clculo, han creado vulnerabilidades
potencialmente descontroladas en la integridad de los datos, ya que esas hojas de
clculo se utilizan como fundamento de decisiones ejecutivas, sin evaluar, muchas
veces, la calidad e integridad de los datos. Cmo deberamos abordar este
problema?, en primer lugar, podramos considerar que se trata de un problema
que atae:
44
Quizs podramos concluir que abarca los tres aspectos; en tal caso, el siguiente
paso consistira en determinar quin debera abordar el problema (el propietario de
los datos, el usuario final que dise la hoja de clculo, el departamento o
proveedor de servicios de tecnologas de la informacin o todos juntos).
Acabamos de analizar a modo de ejemplo, el uso de hojas de clculo diseadas
por los usuarios sin someterlas a pruebas ni incluir documentacin (hecho que se
ve agravado por la introduccin manual de datos, particularmente cuando no se
validan los valores ingresados), pero existen otros disparadores de problemas que
podran resultar an ms graves:
1. Modificacin de los permisos y privilegios de acceso.
2. Imposibilidad de rastrear el uso de contraseas privilegiadas, en especial
cuando es compartido.
3. Errores del usuario final que afectan los datos de produccin.
4. Aplicaciones vulnerables a la introduccin de cdigos ocultos (como los
backdoors).
5. Procesos de control de cambios y acreditacin deficientes o no desarrollados
plenamente.
6. Fallas en la configuracin de software y dispositivos de seguridad.
7. Aplicacin de parches en forma incorrecta o incompleta.
8. Conexin de dispositivos no autorizados a la red corporativa.
9. Uso de aplicaciones no autorizadas en dispositivos conectados a la red
corporativa.
45
2.
3.
4.
5.
6.
Hace aos que las organizaciones que operan tanto en el sector pblico como en
el privado sufren alteraciones en sus sitios web, pero, ms all del eventual
perjuicio a la reputacin de una empresa, ninguno de los daos ocasionados
puede considerarse catastrfico.
Las bombas lgicas, el software no autorizado que se introduce en un sistema por
accin de las personas encargadas de programarlo/mantenerlo, los troyanos y
dems virus similares tambin pueden afectar la integridad de los datos a travs
de la introduccin de modificaciones (por ejemplo, al definir una frmula incorrecta
en una hoja de clculo) o la encriptacin de datos y posterior exigencia de un
rescate para revelar la clave de desencriptacin. En los ltimos aos se han
producido numerosos ataques de caractersticas similares a las mencionadas, que
afectan principalmente los discos duros de las computadoras personales. Debera
esperarse que tarde o temprano se produzcan ataques de este tipo destinados a
los servidores.
La modificacin no autorizada de sistemas operativos (servidores y redes) y/o de
software de aplicaciones (como los backdoors o cdigos no documentados),
tablas de bases de datos, datos de produccin y configuracin de infraestructura
tambin se consideran ataques a la integridad de los datos. Es lgico suponer que
los hallazgos de las auditoras de TI incluyen con regularidad las fallas producidas
en procesos clave, particularmente en la gestin del acceso privilegiado, la gestin
46
2.
2.
3.
4.
5.
6.
7.
8.
50
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Link:http://books.google.com.co/books?id=ibSu6896I_YC&pg=PA584&dq=
no+repudio&hl=es&sa=X&ei=KLYHUsCPGsa6yQGQ_oGIAQ&ved=0CC4Q
6AEwAA#v=onepage&q=no%20repudio&f=false
Link:http://books.google.com.co/books?id=_z2GcBD3deYC&pg=PA384&dq
=no+repudio&hl=es&sa=X&ei=KLYHUsCPGsa6yQGQ_oGIAQ&ved=0CD0
Q6AEwAw#v=onepage&q=no%20repudio&f=false
54
2.
la red.
Protocolos de correo seguro:
No existe un protocolo concreto que implemente seguridad en el correo,
peropuede usarse lo siguiente:
Webmail basado en https.
Los protocolos IMAP4 y POP36 tienen posibilidad de funcionar sobre SSL,
lo que les aporta seguridad en el transporte.
Link:https://www.youtube.com/watch?v=JmF2FMsMYMA
56
UNIDAD 2
Nombre de la Unidad
Introduccin
Aplicaciones seguras
Es necesario la proteccin de las aplicaciones que nos
permiten el intercambio de datos con servidores en
nuestro trabajo cotidiano. SSH es un ejemplo de una
aplicacin de proteccin que permite que los datos se
transmitan cifrados. A su vez, SSH tambin permite
encapsulamiento de conexiones TCP a cualquier puerto.
Otra aplicacin que hoy en da amerita su proteccin en
cualquier organizacin debido a lo crtica que se ha vuelto,
es el correo electrnico. Con los mecanismos de
proteccin adecuados se puede propender por la
confidencialidad
(nadie
diferenteal
destinatario
legtimopodr ver el contenido de los mensajes) y por la
autenticidad (los destinatarios podrn comprobar que
nadie ha falsificado el mensaje). Las diferentes versiones
de correo electrnico normalmente utilizan las firmas
digitales para brindar el servicio de autenticacin de
mensaje.
Una particularidad del correo electrnico seguro respecto
a otras aplicaciones como SSH es que la proteccin se
realiza preferentemente sobre los mensajes enviados,
ms que sobre los protocolos de comunicacin utilizados.
Justificacin
Intencionalidades
Formativas
Captulo 4
Leccin 16
Leccin 17
Leccin 18
Leccin 19
Leccin 20
Captulo 5
Leccin 21
Leccin 22
Leccin 23
Leccin 24
Leccin 25
Captulo 6
Leccin 26
Leccin 27
Leccin 28
Leccin 29
Leccin 30
El protocolo SSH
Caractersticas del protocolo SSH
Tneles a nivel de transporte
La capa de transporte SSH
Ataques contra el protocolo SSH
Aplicaciones que utilizan el protocolo SSH
Correo electrnico seguro
Seguridad en el correo electrnico
Autenticacin de mensaje
Compatibilidad con los sistemas de correo no seguro
S/MIME
PGP y OpenPGP
Proteccin del nivel de transporte y Redes privadas
virtuales
Caractersticas del protocolo SSL/TLS
El transporte seguro SSL/TLS
Ataques contra el protocolo SSL/TLS
Aplicaciones que utilizan SSL/TLS
Definicin, tipos y configuraciones de VPN
58
59
SSH
tambin
est
diseado
con
los
siguientes
60
61
con
tnles
SSH.-
Fuente
Link:https://www.youtube.com/watch?v=qI9DZmRKgHQ
63
de
la
capa
de
transporte
SSH.-
Fuente
64
Cuando hay autenticacin del sistema cliente, el servidor confa que los
usuarios no tendrn acceso a la clave privada de este sistema, porque si no
podran utilizarla para generar mensajes de autenticacin con la identidad
de otro usuario.
Finalmente, igual que pasa con SSL/TLS, el protocolo SSH est diseado
paraofrecer determinadas protecciones, pero el nivel de seguridad que
proporcione en cada caso vendr dado por las implementaciones y por el uso que
se hagadel mismo.
Se recomienda que se puedan deshabilitar o restringir las caractersticas(mtodos
de autenticacin de usuario, redireccin de puertos TCP,etc.) que en un
determinado entorno impliquen alguna vulnerabilidad o posibilidadde abuso.
Link:https://www.youtube.com/watch?v=Wswx3harxsk
66
67
Link:https://www.youtube.com/watch?v=qMlIKnjvThE
68
Confidencialidaddel flujo de trfico (que nose sepa quin manda mensajes a quin
ycundo, y qu longitudtienen), proteccin contranegacin de recepcin(que un
usuario no puedadecir que no ha recibidoun mensaje, o que untercero no pueda
borrarmensajes para que eldestinatario no los lea) ocontra ataques derepeticin
de mensajes,etc.
71
73
75
Tipo
identificador nico
Data,
SignedData,
EnvelopedData,
SignedAndEnvelopedData,
DigestedData,
o EncryptedData
77
78
Campo
version
digestAlgorithms(rep.)
algorithm
parameters
contentInfo
certificates (opc. rep.)
crls (opc. rep.)
signerInfos (rep.)
version
issuerAndSerialNumber
issuer
serialNumber
digestAlgorithm
algorithm
parameters
authenticatedAttributes (opc. rep.)
digestEncryptionAlgorithm
algorithm
parameters
encryptedDigest
unauthenticatedAttributes (opc. rep.)
Tipo
entero
identificador nico
(depende del algoritmo)
mensaje PKCS #7
certificado X.509
CRL
entero
DN
entero
identificador nico
(depende del algoritmo)
atributo X.501
identificador nico
(depende del algoritmo)
cadena de bytes
atributo X.501
79
Como podemos ver, PKCS #7 permite que cada firmante aada atributosa
su firma, que pueden ser autenticados o no autenticados. Cada uno deestos
atributos sigue la estructura definida en la Recomendacin X.501,que
simplemente consta de un nombre de atributo y de uno o ms valores.
Cuando hay atributos autenticados, uno de ellos tiene que ser
obligatoriamenteun atributo llamado messageDigest, que tiene como valor
elhash del campo contentInfo. En este caso, la firma se calcula a partirdel
hash de todo el subcampo authenticatedAttributes. Deeste modo se puede
comprobar la autenticidad de los datos del mensaje(contentInfo) y del resto
de atributos autenticados.
Cuando no hay atributos autenticados, la firma se calcula simplemente
apartir del hash del campo contentInfo.
3) El tipo EnvelopedData
El tipo EnvelopedData contiene datos con sobre digital. Los
datoscorresponden recursivamente a otro mensaje PKCS #7. La estructura
delcontenido de tipo EnvelopedData es la siguiente:
Campo
version
recipientInfos (rep.)
version
issuerAndSerialNumber
issuer
serialNumber
Tipo
entero
entero
DN
entero
80
keyEncryptionAlgorithm
algorithm
parameters
encryptedKey
encryptedContentInfo
contentType
contentEncryptionAlgorithm
algorithm
parameters
encryptedContent (opc.)
identificador nico
(depende del algoritmo)
cadena de bytes
identificador nico
identificador nico
(depende del algoritmo)
cadena de bytes
Podemos ver, por lo tanto, que si un mensaje se tiene que firmar y cifrar,
sepueden realizar las dos operaciones en cualquier orden, segn interese.
Porejemplo, firmar primero y cifrar despus permite que el destinatario guarde
elmensaje descifrado para verificaciones posteriores, posiblemente por parte
deterceros. Cifrar primero y firmar despus permite verificar la autenticidad deun
mensaje sin necesidad de descifrarlo.
Formato de los mensajes S/MIME
Un mensaje S/MIME es un mensaje MIME con las siguientes caractersticas:
Para los mensajes S/MIME que slo estn firmados existe una
representacinalternativa, llamada firma en claro, que veremos ms adelante.
Compatibilidad con versiones anteriores de S/MIME
Para los tipos de contenido, como pkcs7-mime y otros que veremos a
continuacin,las primeras versiones de S/MIME utilizaban nombres que
empezaban por x-.
En las versiones experimentales de algunos protocolos es habitual utilizar un
prefijocomo ste para representar valores que an no estn estandarizados. Por
compatibilidad con estas versiones, las aplicaciones de correo S/MIME deberan
tomar enconsideracin los nombres antiguos equivalentes a los nombres sin
prefijo, como porejemplo:
Nombre antiguo
x-pkcs7-mime
x-pkcs7-signature
x-pkcs10
Nombre actual
pkcs7-mime
pkcs7-signature
pkcs10
83
86
87
88
89
Las versiones 2.6.x y sus variantes han sido durante mucho tiempo las ms
difundidas. El formato de los mensajes, llamado indistintamente versin 2 o
versin 3 (V3), est documentado en la especificacin RFC 1991.
En las versiones 4.x se introdujeron, entre otras novedades, las claves de una
sola funcin: claves slo para cifrar o slo para firmar.
Lo que se empez a disear con el nombre de PGP 3.0 finalmente dio lugar a
las versiones 5.x, que utilizan un nuevo formato para los mensajes, conocido
como versin 4 (V4) o OpenPGP y documentado en la es pecificacin RFC
2440.
Las nuevas versiones (PGP 6 y posteriores) aaden mejoras a la
funcionalidad,pero manteniendo la compatibilidad con las anteriores.
90
firmadapor la propia clave (la que se quiere invalidar o la que gener el certificado
quese quiere anular) y, una vez emitida, es irrevocable.
Otra posibilidad para realizar la distribucin es a travs de un servidor declaves
PGP, que gestiona un almacn global de claves pblicas con sus certificados(y
revocaciones, si es el caso). Varios de estos servidores estnsincronizados entre
si, de modo que las actualizaciones del almacn que serealicen en uno de ellos se
propagan automticamente a todos los dems.
Cualquier usuario puede enviar a un servidor PGP los certificados de su clave,ode
las claves de otros usuarios, para que los aada al Keyring global. En estecaso se
pueden realizar consultas a los servidores para obtener la clave y loscertificados
asociados a un determinado nombre de usuario (o a los nombresque contengan
una determinada subcadena, si no se conoce su valor exacto).
Es importante sealar que los servidores PGP no son autoridades decertificacin:
cualquier clave pblica que se les enve ser aadida alalmacn sin realizar
ninguna verificacin respecto a la identidad delpropietario.
Es responsabilidad de cada usuario que quiera utilizar una clave de un
servidorPGP asegurarse de la autenticidad de dicha clave. Para ello, se puede
tener encuenta que otros usuarios han certificado esta clave.
El proceso de certificacin PGP
Para facilitar el intercambio y la certificacin de claves, PGP asigna acada clave
pblica una huella (fingerprint), que es simplemente un hashdel valor de la clave.
Esta huella se utiliza para que un usuario pueda comprobar que la clave queha
recibido de otro, o de un servidor de claves, sea efectivamente la que querarecibir
y no una falsificacin. El identificador de clave no es suficiente paraeste fin, ya que
es posible para un impostor construir una clave pblica dela cual conozca la clave
privada y que tenga el mismo identificador que otraclave pblica. En cambio,
construir una clave con la misma huella que otra esprcticamente imposible.
El uso de la huella facilita la comprobacin de la autenticidad de la clave.
La alternativa sera comprobar todos los bytes uno por uno, lo cual puedeser
incmodo y pesado teniendo en cuenta que actualmente se suelen utilizarclaves
de 1.024 bits (256 dgitos hexadecimales) o incluso de 2.048 bits.
Supongamos, por ejemplo, que un usuario A necesita certificar la clave deotro
usuario B porque tiene que intercambiar con l mensajes seguros. Elusuario A
puede pedir a B que le mande su clave pblica por correo electrnicotradicional, o
bien obtenerla de un servidor de claves. Entonces A tiene quecomprobar que
96
Si es un mensaje cifrado con sobre digital, primero hay tantos paquetes como
destinatarios, cada uno con la clave de sesin cifrada con la clave pblica del
destinatario correspondiente. A continuacin aparece el cuerpo del mensaje,
posiblemente comprimido, en un paquete cifrado simtricamente con la clave
de sesin.
97
98
99
100
101
102
103
con
certificados
SSL.
Fuente
Pero ni SSL 3.0 ni TLS 1.0 especifican ningn algoritmo concretode compresin.
Extensibilidad. Al inicio de cada sesin, cliente y servidor negocian los
algoritmosque utilizarn para el intercambio de claves, la autenticacin y el
cifrado(a ms del algoritmo de compresin). Las especificaciones de los
protocolosincluyen
unas
combinaciones
predefinidas
de
algoritmos
criptogrficos,pero dejan abierta la posibilidad de aadir nuevos algoritmos si se
descubrenotros que sean ms eficientes o ms seguros.
105
que
proporciona
SSL/TLS
se
puede
Figura
14:
Modelo
http://www.vircom.com
TCP/IP
Protocolo
SSL/TLS.
Fuente
con mtodos de clave pblica, que el atacante tendra que rompersi quiere saber
cuales son los valores acordados.
Es preciso advertir, pero, que dependiendo de la aplicacin que lo utilice,
elprotocolo SSL/TLS puede ser objeto de ataques con texto en claro conocido.
Por ejemplo, cuando se utiliza conjuntamente con HTTP para acceder a
servidoresweb con contenidos conocidos.
Si la comunicacin es totalmente annima, es decir sin autenticacin de servidorni
cliente, s que existe la posibilidad de capturar las claves secretas conun ataque
conocido como hombre en el medio (en ingls, man-in-themiddleattack). En
este ataque el espa genera sus propias claves pblicas yprivadas, y cuando una
parte enva a la otra informacin sobre su clave pblica,tanto en un sentido como
en el otro, el atacante la intercepta y la sustituyepor la equivalente con la clave
pblica fraudulenta. Dado que el intercambioes annimo, el receptor no tiene
manera de saber si la clave pblica que recibees la del emisor autntico o no.
En cambio, si se realiza la autenticacin de servidor y/o cliente, es necesarioenviar
un certificado donde tiene que haber la clave pblica del emisor firmadapor una
autoridad de certificacin que el receptor reconozca, y por tanto nopuede ser
sustituida por otra.
Suplantacin de servidor o cliente. Cuando se realiza la autenticacin de
servidoro cliente, el certificado digital debidamente firmado por la CA sirve
paraverificar la identidad de su propietario. Un atacante que quiera hacerse
pasarpor el servidor (o cliente) autntico debera obtener su clave privada, o bienla
de la autoridad de certificacin que ha emitido el certificado para podergenerar
otro con una clave pblica diferente y que parezca autntico.
Alteracin de los paquetes. Un atacante puede modificar los paquetes paraque
lleguen al destinatario con un contenido distinto del original (si estn cifradosno
podr controlar cual ser el contenido final descifrado, solamente sabrque ser
distinto al original). Si pasa esto, el receptor detectar que el paqueteha sido
alterado porque el cdigo de autenticacin (MAC) casi con totalseguridad ser
incorrecto.
Si la alteracin se realiza en los mensajes de negociacin cuando aun no seaplica
ningn cdigo MAC, con la finalidad por ejemplo de forzar la adopcinde
algoritmos criptogrficos ms dbiles y vulnerables, esta manipulacin
serdetectada en la verificacin de los mensajes Finished.
Repeticin, eliminacin o reordenacin de paquetes. Si el atacante vuelvea
enviar un paquete correcto que ya haba sido enviado antes, o suprime
algnpaquete haciendo que no llegue a su destino, o los cambia de orden, el
receptorlo detectar porque los cdigos MAC no coincidirn con el valor esperado.
108
Estas aplicaciones con SSL/TLS funcionan exactamente igual que las originales.
Las nicas diferencias son el uso de la capa de transporte seguro queproporciona
SSL/TLS y la asignacin de nmeros de puerto TCP propios: 443para HTTPS y
563 para NNTPS.
En muchos otros casos, pero, es preferible aprovechar los mecanismos de
extensinprevistos en el propio protocolo de aplicacin, si hay, para negociar eluso
de SSL/TLS, a fin de evitar la utilizacin innecesaria de nuevos puertosTCP.
As lo hacen aplicaciones como:
Una red privada virtual (VPN) es una configuracin que combina eluso de dos
tipos de tecnologas:
Por tanto, una VPN es una red lgica o virtual creada sobre una
infraestructuracompartida, pero que proporciona los servicios de proteccin
necesarios parauna comunicacin segura.
Dependiendo de la situacin de los nodos que utilizan esta red, podemos
considerartres tipos de VPN:
VPN entre redes locales o intranets. Este es el caso habitual en que una
empresadispone de redes locales en diferentes sedes, geogrficamente
separadas,en cada una de las cuales hay una red privada o intranet, de acceso
restringidoa sus empleados. Si interesa que desde una de sus sedes se pueda
acceder a lasintranets de otras sedes, se puede usar una VPN para interconectar
estas redesprivadas y formar una intranet nica.
VPN de acceso remoto. Cuando un empleado de la empresa quiere acceder ala
intranet des de un ordenador remoto, puede establecer una VPN de este tipoentre
este ordenador y la intranet de la empresa. El ordenador remoto puedeser, por
ejemplo, un PC que el empleado tiene en su casa, o un ordenadorporttil des del
cual se conecta a la red de la empresa cuando est de viaje.
VPN extranet. A veces, a una empresa le interesa compartir una parte de
losrecursos de su intranet con determinados usuarios externos, como por
ejemploproveedores o clientes de la empresa. La red que permite estos accesos
externosa una intranet se llama extranet, y su proteccin se consigue medianteuna
VPN extranet.
Configuraciones y protocolos utilizados en VPN
A cada uno de los tipos de VPN que acabamos de ver le suele corresponderuna
configuracin especfica.
En las VPN entre intranets, la situacin ms habitual es que en cada intranet hay
una pasarela VPN, que conecte la red local con Internet. Esta pasarela se
comunica con la de las otras intranets, aplicando el cifrado y las protecciones que
sean necesarias a las comunicaciones de pasarela a pasarela a travs de Internet.
111
112
de
conectividad
con
VPN.
Fuente
REFERENCIAS
[1] http: //www.acis.org.co/archivosAcis/Inseguridad.doc, Jeimy Cano, 2004
113
[2] Moron Lerma, Esther. (2002). Internet y derecho penal: Hacking y otras
conductas ilcitas en la red. Editorial Aranzadi, S.A.
[3] Villaln Huerta, Antonio. (2002). Seguridad en UNIX y redes. Versin 2.1,
http://www.rediris.es/cert/doc/unixsec/
[4] Colobran Huguet, Miguel. (2002): Administracin de sistemas operativos en
Zarza. Barcelona: Universidad Oberta de Catalunia
[5] Schneier Bruce, Beyond Fear. Thinking Sensibly about security in an uncertain
world. Copernicus Books. 2003
[6] Stallings, W. (2003). Cryptography and Network Security, Principles
andPractice,3rd ed. Upper Saddle River: Prentice Hall.
[7] Menezes, A. J.; van Oorschot, P. C.; Vanstone, S. A. (1996). Handbook of
AppliedCryptography. Boca Raton: CRC Press.
[8] Yuan, R.; Strayer, W. T. (2001). Virtual Private Networks, Technologies and
Solutions.Boston: Addison-Wesley.
[9] RFC 2440: Open PGP Message Format.
http://www.ietf.org/rfc/rfc2440.txt
[10] RFC 1750: Randomness Recommendations for Security.
http://www.it.kth.se/docs/rfc/rfcs/rfc1750.txt
[11] Pgina Web de Kriptopolis.
http://www.kriptopolis.com
[12] Pgina Web de PGP International.
http://www.pgpi.org
[13] Pgina Web de Zedz Consultants (antes Replay).
http://www.zedz.net
114