You are on page 1of 48

Seguridad en redes corporativas Windows

Tema 2
Introduccin a las herramientas
criptogrficas en Windows 7
Enrique Soriano esoriano@lsub.org
Instituto Nacional de Administracin Pblica
Plan Interadministrativo de Administracin Electrnica
2012

Criptografa

Es el estudio y prctica para mantener


comunicaciones seguras en presencia de
adversarios.

Es la principal herramienta para proporcionar


seguridad en los sistemas informticos.
E(M) = C
D(C) = M
D(E(M)) = M

Cifrar (E).
Descifrar (D).
Mensaje en claro o plaintext (M).
Mensaje cifrado o ciphertext (C).

Criptografa

Clave: datos de los que depende el cifrado y


descifrado de un mensaje.

El texto cifrado depende del texto claro y de la clave.

El algoritmo y la longitud de la clave determinan la


seguridad del cifrado.

Clave Contrasea

Por lo general, es secreta.


La longitud de la clave est determinada por el
algoritmo de cifrado.

Seguridad en el cifrado

Algoritmo incondicionalmente seguro:

El texto cifrado no proporciona nada de


informacin sobre el texto plano.

Algoritmo computacionalmente seguro:

Tericamente, el atacante puede romper el


algoritmo, pero en la prctica no es
computacionalmente viable.

Son vulnerables a ataques de fuerza bruta.

One time pad


(Vernam cipher)

Cifrado perfecto, incondicionalmente seguro.


K tiene que ser aleatoria.
K no se puede reutilizar.
La longitud de K es la longitud de M.

Ejemplo perfecto de que la herramienta ms segura,


si se usa mal, puede ser la ms insegura.

Criptografa:
clave simtrica

Se usa la misma clave (k) para cifrar y descifrar.


Dos tipos: stream cipher y block cipher.
Block cipher, distintos modos (ECB, CBC, CTR)
Algoritmos de ejemplo: RC4 (stream), AES,
3DES, DES, Blowfish, CAST5.
Ek (M) = C
Dk (C) = M
Dk (Ek (M)) = M

Criptografa:
clave asimtrica
Se usan dos claves (k1, k2): lo que cifra k1
se descifra con k2, y viceversa.

Algoritmos de ejemplo: RSA, ElGamal.


Ek1 (M) = C
Dk2 (C) = M
Dk2 (Ek1 (M)) = M

Criptografa
Clave Pblica

Uso particular de la criptografa de clave asimtrica.


Un usuario tiene un par de claves:

Una clave es pblica (Kpub): la conoce todo el


mundo. Se usa para cifrar mensajes para el
usuario.

La otra clave es privada (Kpriv): slo la conoce el


dueo. El usuario descifra los mensajes que le
llegan con ella.

RSA
Generacin de claves:

Cifrado:

Simtrica o asimtrica?
Son distintas, cada una tiene un propsito.
Simtrica: es ms rpida.
Por ejemplo: RSA es 100 veces ms
lento que DES.

Pblica: facilita la distribucin de claves.


Hay esquemas hbridos que usan ambos
tipos.

Resmenes (hash)

Funcin que a partir de cualquier cantidad de


datos genera un resumen de tamao fijo.

Cualquier modificacin de la entrada modifica


todo el resumen.

Tiene un nico sentido:

Del dominio a la imagen es muy rpida.


No es computacionalmente posible calcular
los datos a partir de la imagen.

Hash seguras

Propiedades:

Primera resistencia pre-imagen: para cualquier resumen


dado, no es computacionalmente posible encontrar la
pre-imagen que lo genera.

Segunda resistencia pre-imagen: no es computacionalmente


posible encontrar una pre-imagen que genere el mismo
resumen que otra pre-imagen dada.

Resistencia a la colisin: no es computacionalmente posible


encontrar dos pre-imgenes cualquiera que generen el
mismo resumen.

Funciones hash

Las ms usadas:

MD4: resumen de 128 bits. No se considera segura.


Ataque de colisin en microsegundos. Primera resistencia
pre-imagen rota en 2^102 operaciones.

MD5: resumen de 128 bits. No se considera segura.


Ataque de colisin de 2^24 operaciones (unos cuantos
segundos).

SHA-1: resumen de 160 bits. Estndar actual. Empieza a


tener problemas: ataque de colisin de 2^51 operaciones.

SHA-2: resmenes de 224, 256, 384 o 512 bits. Segura.

Firma digital

Basadas en algoritmos de clave pblica.


Idea:
EKpriv (HASH(M))

Proporciona autenticacin e integridad:

No es falsificable.
No es reusable.
No es alterable.
No es repudiable.

Algoritmos ms usados: DSA, EC-DSA.

Firma digital

Certificado digital

Certificado: documento que incluye la clave pblica de


un sujeto firmado por otro sujeto del que nos fiamos.

Autoridad certificadora: entidad firma el certificado y da


fe de que la clave pertenece al sujeto.

Public Key Infrastructure (PKI):

Se establece una cadena de confianza desde los


certificados raz hasta el sujeto.

Los certificados raz vienen preinstalados en el


software o son fcilmente cotejables.

Certificados X.509

Versin

Validez (desde-hasta)

Nmero de serie
Algoritmo de cifrado
Emisor, que es un nombre x.500 (rfc1779) que tiene atributos tales como el pas (C),
estado (ST), nombre comn (CN), organizacin (O), e-mail, localidad (L), etc.
Sujeto
Clave pblica del sujeto (algoritmo y clave)
Id del Emisor (opcional)
Id del sujeto (opcional)
...(extensiones)...
Algoritmo de la firma
Firma

Certificados X.509
Certificate:
Data:
Version: 1 (0x0)
Serial Number: 7829 (0x1e95)
Signature Algorithm: md5WithRSAEncryption
Issuer: C=ZA, ST=Western Cape, L=Cape Town, O=Thawte Consulting cc,
OU=Certification Services Division,
CN=Thawte Server CA/emailAddress=server-certs@thawte.com
Validity
Not Before: Jul 9 16:04:02 1998 GMT
Not After : Jul 9 16:04:02 1999 GMT
Subject: C=US, ST=Maryland, L=Pasadena, O=Brent Baccala,
OU=FreeSoft, CN=www.freesoft.org/emailAddress=baccala@freesoft.org
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public Key: (1024 bit)
Modulus (1024 bit):
00:b4:31:98:0a:c4:bc:62:c1:88:aa:dc:b0:c8:bb:
33:35:19:d5:0c:64:b9:3d:41:b2:96:fc:f3:31:e1:
...
Exponent: 65537 (0x10001)
Signature Algorithm: md5WithRSAEncryption
93:5f:8f:5f:c5:af:bf:0a:ab:a5:6d:fb:24:5f:b6:59:5d:9d:
92:2e:4a:1b:8b:ac:7d:99:17:5d:cd:19:f6:ad:ef:63:2f:92:
ab:2f:4b:cf:0a:13:90:ee:2c:0e:43:03:be:f6:ea:8e:9c:67:
d0:a2:40:03:f7:ef:6a:15:09:79:a9:46:ed:b7:16:1b:41:72:
0d:19:aa:ad:dd:9a:df:ab:97:50:65:f5:5e:85:a6:ef:19:d1:
5a:de:9d:ea:63:cd:cb:cc:6d:5d:01:85:b5:6d:c8:f3:d9:f7:
8f:0e:fc:ba:1f:34:e9:96:6e:6c:cf:f2:ef:9b:bf:de:b5:22:
68:9f

Revocacin y caducidad

Si una clave privada queda comprometida, hay que


revocar su certificado. Para los certificados X.509 se
suele usar:

CLR: una lista negra de certificados.


OCSP: protocolo sobre HTTP para revocar
certificados.

La fecha de caducidad del certificado es la que se


puso en creacin y no tiene en cuenta si el algoritmo
o la longitud de la clave puede dejar de ser segura.

Software firmado

Al intentar ejecutar software, el sistema


comprueba si:

Est firmado

Por Microsoft (totalmente confiable).


Por terceros (confiable si se confa en
dicha organizacin).

No est firmado (no confiable).

Software firmado

Click, te deja ver los detalles de


la firma.

Software firmado
Detalles de la firma:
Informacin del firmante: nombre, correo,
fecha y hora de la firma.

Contrafirmas: la firma que estamos tratando


ha sido firmada por otra entidad (una CA).

Permite inspeccionar el certificado usado


para la firma.

Certificados
Permite ver la cadena de
confianza
Dueo
Emisor

Permite ver los


valores de los campos
del certificado

Certificados
Cadena de confianza

Estado

Administracin de
certificados
certmgr.msc permite gestionar los

certificados instalados en el sistema:

Certificados raz (nota: no aparecen todos

los certificados de CAs, el sistema puede


aadir ms certificados de forma automtica
y transparente).

Certificados revocados (no confiables).


Certificados de personas de confianza...

Cifrar datos en
Windows
Dos opciones de serie:
BitLocker (slo Windows 7 Enterprise y
Windows 7 Ultimate).

Encrypted File System (EFS).

BitLocker
Panel de control Seguridad Cifrado de unidad BitLocker

Slo est disponible para Windows 7 Ultimate


y Windows 7 Enterprise.

Permite cifrar ficheros, carpetas, unidades


extrables y la unidad del sistema.

Acta de forma automtica si est activo.


Slo lo puede configurar un administrador.
Si hay hardware TPM (Trusted Platform Module),
lo usa.

EFS
secpol.msc Directivas de clave publica Sistema de cifrado de archivos
propiedades

Permite cifrar los archivos del usuario que estn dentro de


carpetas aseguradas.

No permite cifrar datos del sistema.


Cada usuario puede elegir las carpetas y los archivos que
desee (en el explorador aparecen en color verde).
Propiedades (de fichero/carpeta) General Opciones Avanzadas Cifrar contenido
para proteger datos

Es independiente del hardware.


Al usar EFS por primera vez, se crea el par de claves y el
certificado del usuario.

EFS
Propiedades (de fichero/carpeta) General Opciones Avanzadas Cifrar contenido para proteger datos

EFS

Al crear el par de claves sugiere hacer una copia


de seguridad.

En cualquier momento podremos realizar una


copia de nuestras claves en un fichero PFX
(PKCS#12 con el par de claves y el certificado).
certmgr.msc doble-click en nuestro certificado personal detalles
copiar en archivo

Debemos elegir una contrasea para proteger el


fichero PFX.

EFS
certmgr.msc doble-click en nuestro certificado personal detalles copiar en archivo

Doble-click

Exportar a un
fichero PFX

EFS
Para importar el certificado, simplemente

doble-click sobre el fichero PFX. Detalles:

Proteccin clave privada: avisar antes de


usarla.

Exportable: marcar si se va a poder

exportar el par de claves. Si no es


exportable, slo se puede exportar el
certificado con la clave pblica.

EFS
Doble-click

EFS

Agente de recuperacin: par de claves para que


el administrador pueda recuperar los archivos
del usuario cifrados con EFS.

Cuidado: en este caso, el poseedor del agente de


recuperacin podr acceder a los datos cifrados.

Crear el agente:
comando: cipher /r:nombre_del_certificiado_de_recuperacion

EFS

secpol.msc nos permite agregar el certificado del agente de


recuperacin:

secpol.msc Directivas de clave publica Sistema de cifrado de archivos Agregar Agente


de recuperacin de datos

Actualizamos las polticas:


comando: gpupdate

Actualizamos los archivos cifrados del usuario para que el


agente de recuperacin pueda recuperar los datos:
comando: cipher /u

Para usar el agente de recuperacin, simplemente hay que


importar el certificado del agente y acceder a los datos.

EFS
secpol.msc Directivas de clave publica Sistema de cifrado de archivos Agregar Agente de recuperacin de datos

Botn
derecho

EFS
Inconvenientes:
Slo se puede usar con Windows y NTFS.
No nos permite comunicarnos de forma

segura con otros usuarios y otros sistemas.

GnuPG
Herramienta de cifrado libre y multiplataforma.
Implementa el estndar OpenGPG de IETF.
Permite comunicaciones seguras con usuarios
de otros sistemas operativos.

Versin para Windows: Gpg4win


http://www.gpg4win.org/

Gpg4win

Al arrancarlo por primera vez, genera las claves para el


usuario (tarda un rato).

Las claves estn protegidas con una contrasea. Si


olvidamos la contrasea, no podremos usar ms las
claves.

Las claves estn ligadas a:

Un identificador hexadecimal nico, e.g.: B796189F


Un nombre/apellido.
Uno o varios correos electrnicos.

Gpg4win

El esquema de confianza de GPG no se basa en PKI: gestin


de la confianza.

Es un esquema no jerrquico.

Cada usuario guarda las claves pblicas de los usuarios que


conoce en su anillo de claves.

El usuario asigna un nivel de confianza a las claves.

Los usuarios firman las claves del resto de usuarios en los


que confan.

La clave es vlida/invlida dependiendo del nmero de


firmas que tenga y el nivel de confianza de los firmantes.

Gpg4win

Nivel de confianza:

Desconocido (unknown): no se conoce de nada al sujeto.

Total (full): se confa en la capacidad del usuario. Una clave


es vlida si tiene un firmante* con confianza total.

Absoluta (ultimally): la clave es vlida, y cualquier clave


firmada con ella es vlida.

Nunca (none): no se confa en el sujeto.


Parcial (marginal): no se confa en la capacidad del sujeto
para firmar claves de otras personas. Una clave es vlida si
tiene un total de 3 o ms firmantes* con confianza parcial.

* Si la clave de los firmantes es vlida.

Gpg4win
Slo debemos firmar las claves si estamos
seguros de que pertenecen al sujeto:

Se firman en persona (fiestas de firmas).


Se comprueba por un canal distinto (e.g.
por telfono).

Las claves tienen una huella (fingerprint)


para poder verificarlas.

Nos permite cifrar


y firmar archivos

Gpg4win
Incluye nuevas
claves en el
anillo

Botn derecho

fingerprint

Gpg4win

Gpg4win

Para cifrar un archivo, se cifra con la clave pblica del destinatario.


Para firmar un archivo, se usa nuestra clave privada (podemos tener
varias). Opciones:

Firmar y comprimir: se crea un archivo con los datos y la firma,


comprimido.

Detached signature: se crea un archivo que slo contiene la firma.


Armadura (armor): se genera una firma en texto plano (base64) que
podemos cortar/pegar en correos, etc.

Podemos hacer ambas cosas (cifrar y firmar) con un mensaje.

Descifrar: descifra un archivo con la clave privada.

Verificar: comprueba que la firma fue creada con la clave privada del
emisor.

Gpg4win

Gpg4win

Las claves (y sus firmas) se pueden subir a un repositorio


PGP:
http://rediris.es/keyserver

Necesitamos crear un certificado de revocacin para


invalidad la clave (e.g. nos la roban, se nos olvida la
contrasea, etc.):
comando: gpg -o certrevocacion.asc --gen-revoke -armor KEYID

Para revocar la clave, importamos el certificado creado en el


paso anterior y volvemos a subir la clave al servidor.

Una clave revocada no se puede volver a usar.

Gpg4win

Podemos cifrar con clave simtrica:


comando: gpg -o arch.gpg --symmetric --cipher-algo AES256 arch

Para descifrar el fichero, lo podemos hacer desde la


propia aplicacin o con:
comando: gpg -d arch.gpg

Tambin podemos generar hashes:


comando: gpg --print-md SHA1 arch
comando: gpg --print-md MD5 arch

You might also like