el arte de romper códigos secretos

33
Semana de la Matemática – FCEyN – UBA El arte de romper códigos secretos (edición Da Vinci) Carlos Sarraute 30 abril 2007

Upload: others

Post on 25-Oct-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

Semana de la Matemática – FCEyN – UBA

El arte de rompercódigos secretos

(edición Da Vinci)

Carlos Sarraute

30 abril 2007

Semana de la Matemática – FCEyN – UBA

Presentación

� Trabajo en el laboratorio de investigación de Core Security Technologies (desde 2000)– empresa de seguridad informática

– software para penetration tests

� Algunos proyectos del laboratorio– falla en la autenticación de MySQL

– ataque por timing del protocolo SSH

– simulación y planificación de ataques a redes

– reconocimiento de sistemas operativos» presentado con J.Burroni en PacSec (Tokyo), EUSecWest

(London), SSTIC (Francia), HITB (Kuala Lumpur)

Semana de la Matemática – FCEyN – UBA

Criptografía

� Uno de los fundamentos de la seguridad de la información

� La criptografía es el estudio de las comunicaciones en presencia de adversarios– confidencialidad

– autenticidad

– integridad

– no repudio

� Ejemplo típico = sistemas para establecer comunicaciones secretas sobre un canal inseguro

Semana de la Matemática – FCEyN – UBA

Necesidad de privacidad en la Internet

� Ejemplo más concreto: mensajes privados / compras por Internet

� Información privada– cartas

– número de tarjeta de crédito

� Circula por muchos servidores entre el cliente y el negocio

� Como proteger esa información?

Semana de la Matemática – FCEyN – UBA

Sistema de encripción

� Encriptar la información (el mensaje)

� Transformar el mensaje usando un sistema de encripción y una clave secreta

mensajeplano

mensajeplano

mensajeencriptado

EKDK

Semana de la Matemática – FCEyN – UBA

Intercambio de claves

� N personas requieren

N (N-1) / 2 claves

5

34

2

1

Semana de la Matemática – FCEyN – UBA

Sistemas de clave pública y privada

� Diffie – Hellman (1976): “New directions in Cryptography”

� Cada persona tiene 2 claves– se encripta con la clave pública

– se desencripta con la clave privada

� Como encriptar mails?– usar PGP (pretty good privacy)

– Enigmail = extensión de Thunderbird

Semana de la Matemática – FCEyN – UBA

Y la seguridad?

� pregunta: como saber si un sistema es seguro?

� definición: es seguro si resiste a los ataques

� Criptoanálisis = el arte de romper códigos secretos– bueno, arte y ciencia

– métodos artesanales» hasta el siglo 19

– búsqueda de formalización y generalización

Semana de la Matemática – FCEyN – UBA

Estaría bueno poder demostrar...

� Por que intervienen los matemáticos?

� Muchos sistemas están basados en problemas matemáticos que son difíciles– RSA = sistema de clave pública y privada

– basado en el problema de factorizar números muy grandes

� Se puede demostrar que un sistema es seguro contra cualquier atacante?

Semana de la Matemática – FCEyN – UBA

El secreto perfecto

� Shannon definió el secreto perfecto (1948)– un sistema que resiste a cualquier atacante, incluso con

poder de cómputo y tiempo infinito

– problema: la clave tiene que ser tan

larga como el texto

– existe, es el one time pad» se usaba para las comunicaciones entre

Washington y el Kremlin

Semana de la Matemática – FCEyN – UBA

Ejemplo de criptoanálisis del Código Da Vinci

� Jacques Saunière, conservador del Museo del Louvre, aparece muerto en la gran galería, desnudo al medio de un circulo trazado en el piso

� Robert Langdon, especialista en simbología religiosa

� Sophie Neveu

criptógrafa de la DGPJ

Semana de la Matemática – FCEyN – UBA

Mensaje críptico

� Pintado en el piso con tinta fluorescente

13 – 3 – 2 – 21 – 1 – 1 – 8 – 5

¡Diavole in Dracon!

Límala, asno

Semana de la Matemática – FCEyN – UBA

Anagramas

� 13 – 3 – 2 – 21 – 1 – 1 – 8 – 5

� reordenado da la serie de Fibonacci

1 – 1 – 2 – 3 – 5 – 8 – 13

� Diavole in Dracon!– 15 letras: a a c d d e i i l o o n n r v

– cuantas permutaciones hay?

Semana de la Matemática – FCEyN – UBA

Anagramas

� 13 – 3 – 2 – 21 – 1 – 1 – 8 – 5

� reordenado da la serie de Fibonacci

1 – 1 – 2 – 3 – 5 – 8 – 13

� Diavole in Dracon!– 15 letras: a a c d d e i i l o o n n r v

– cuantas permutaciones hay?

– si fuesen todas diferentes: 15.14.13 ... 2.1 = 15!

– como hay repetidas: 15! / ( 2 . 2 . 2 . 2 . 2 ) = 40.864.824.000

Semana de la Matemática – FCEyN – UBA

Fuerza bruta! usando un diccionario

� Dividir los 15 espacios en subconjuntos mas chicos– por ejemplo 8 + 5 + 2 letras

� Probar con todas las palabras de 8 letras que usen solo las letras permitidas– luego con todas las de 5 letras (usando las letras restantes)

– luego con todas las de 2 letras (las que quedan)

� Diccionario con 20.000 palabras

Semana de la Matemática – FCEyN – UBA

Cantidad de palabras según cantidad de letras

letras palabras1 72 533 1594 6395 16206 23417 31768 34899 3024

10 247511 162212 89413 55114 26415 14016 5617 1818 519 3

0

500

1000

1500

2000

2500

3000

3500

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

Semana de la Matemática – FCEyN – UBA

Resultados para “Diavole in Dracon”

� Incendiado valor

� Encarnado livido

� Con el adivinador

� Vil ira condenado

� El Vinci adornado

� Invadida en color

� ...

� Leonardo da Vinci

� ...

Semana de la Matemática – FCEyN – UBA

Resultados para “Límala asno”

� Ama anillos

� Anima al sol

� Allá sin amo

� Allí os aman

� ...

� La Mona Lisa

� ...

� en total 510 resultados

� Conclusión: ataques de diccionario son muy eficientes– diccionarios de contraseñas comunes

Semana de la Matemática – FCEyN – UBA

Cifrado de Cesar

HQ OD FLXGDG GH ORQGUHV, HQWHUUDGR

SRU HO SDSD, UHSRVD XQ FDEDOOHUR.

GHVSHUWDURQ ORV IUXWRV GH VXV REUDV

ODV LUDV GH ORV KRPEUHV PDV VDJUDGRV.

HO RUEH TXH HQ VX WXPED HVWDU GHELHUD

EXVFDG, RV KDEODUD GH PXFKDV FRVDV,

GH FDUQH URVD B YLHQWUH IHFXQGDGR.

Semana de la Matemática – FCEyN – UBA

Frecuencias de las letras en el texto

0

5

10

15

20

25

30

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Semana de la Matemática – FCEyN – UBA

Frecuencia de las letras en español

0,00

2,00

4,00

6,00

8,00

10,00

12,00

14,00

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Semana de la Matemática – FCEyN – UBA

Comparación

0

5

10

15

20

25

30

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

0,00

2,00

4,00

6,00

8,00

10,00

12,00

14,00

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Semana de la Matemática – FCEyN – UBA

Mensaje desencriptado

HQ OD FLXGDG GH ORQGUHV, HQWHUUDGR

En la ciudad de Londres, enterradoSRU HO SDSD, UHSRVD XQ FDEDOOHUR.

por el Papa, reposa un caballero.GHVSHUWDURQ ORV IUXWRV GH VXV REUDVDespertaron los frutos de sus obrasODV LUDV GH ORV KRPEUHV PDV VDJUDGRV.

las iras de los hombres mas sagrados.HO RUEH TXH HQ VX WXPED HVWDU GHELHUD

El orbe que en su tumba estar debieraEXVFDG, RV KDEODUD GH PXFKDV FRVDV,

buscad, os hablará de muchas cosas,GH FDUQH URVD B YLHQWUH IHFXQGDGR.

de carne rosa y vientre fecundado.

Semana de la Matemática – FCEyN – UBA

Modelo simplificado del español

� Aproximación al español de primer orden

� El español como proceso aleatorio– proceso no determinístico, que respeta una distribución de

probabilidades

– monos tipeando al azar respetando la probabilidad de las letras

Semana de la Matemática – FCEyN – UBA

Cadena de Markov

� Aproximación al español de segundo orden– cadena de Markov

– proceso aleatorio con diferentes estados (las letras)

– probabilidades de transición (de pasar de un estado a otro)

� probabilidades condicionales

Q HU

P

A

O

99,98 %

24,54 %

55,02 %

0,00 %

Semana de la Matemática – FCEyN – UBA

Probabilidades de transición

Y

O

A

84,16 %

5,66 %

6,46 %

H

O

I

E 8,68 %

5,61 %

24,54 %

A

U

55,02 %

5,70 %

Semana de la Matemática – FCEyN – UBA

Timing attack: usando retardos entre teclas

� En el protocolo de SSH, cada vez que una tecla es pulsada, se encripta y se manda encriptada por el canal seguro.

� Los paquetes, aunque encriptados, pueden ser sniffeados. En particular, el tiempo de emisión de estos paquetes es un dato que los atacantes pueden obtener.

� Usando solo los retardos entre la llegada de esos paquetes es posible recuperar lo tipeado (en casos favorables).

� Elegimos el Hidden Markov Model (HMM) para modelar esta situacion inspirandonos en las técnicas de reconocimiento de voz.

Semana de la Matemática – FCEyN – UBA

Proceso oculto genera observaciones

Semana de la Matemática – FCEyN – UBA

Hay que modelar el ruido

Semana de la Matemática – FCEyN – UBA

Probabilidades de transición

Semana de la Matemática – FCEyN – UBA

Modelo del tipeador

Semana de la Matemática – FCEyN – UBA

Algoritmo de Viterbi

� para cada nueva tecla (nuevo tiempo) pruebo todas las posibilidades

� asigno un puntaje que representa la probabilidad de que sea español (aproximación de 2do orden) + probabilidad de generar ese tiempo

� me quedo con los 500 mejores (entre 26*500)

� cuando termine, el mensaje estará entre los 500 mejores – con algo de suerte

– mejora si el diccionario es mas chico

Semana de la Matemática – FCEyN – UBA

Gracias por su atención!

Carlos Sarraute

carlos @ coresecurity.com