Problema de autenticación e integridad de Alice y Bob

0

Supongamos que Alice necesita enviar un archivo a Bob, garantizando su identidad y la integridad del archivo (no se requiere confidencialidad); las dos partes comparten un w secreto y utilizan una función de hash H que genera números de 40 bits. Cada vez que usan el siguiente protocolo (previamente acordado).

A → B: w {nA}, donde nA es un nonce (Alicia envía un desafío)

B → A: w {nA + 1} (Bob prueba que sabe el secreto y responde al desafío)

A → B: (F, H (F), w {H (F)}) (Bob, dado F, calcula H (F) yw {H (F)}, y luego compara sus resultados con los datos en realidad recibido)

¿Puede un atacante actuar en lugar de Alice y enviar un archivo a Bob engañándolo para que crea que el archivo proviene de Alice?

    
pregunta rollotommasi 09.02.2016 - 18:01
fuente

3 respuestas

1

Sí, Mallory, un Man-In-The-Middle podría interceptar las comunicaciones de la siguiente manera, y fingir ser Bob para Alice y Alice para Bob:

A → M → B: w{nA}

B → M → A: w{nA+1}

A → M → B: (F, H(F), w{H(F)})

El paso tres requiere una colisión de hash para poder sustituir un archivo: Mallory podría haber creado un archivo maligno, E, y puede calcular H(E) .

Mallory observa el tráfico y espera a que ocurra una transferencia de archivos donde H(F) = H(E) .

Una vez que esto sucede, Mallory manipula el tráfico, en lugar de

(F, H(F), w{H(F)})

enviado a Bob,

(E, H(F), w{H(F)})

se envía en su lugar. Tenga en cuenta que como H(F) = H(E) , w{H(F)} también será igual a w{H(E)} .

El protocolo puede ser arreglado por el nonce y el secreto como parte de la etapa de transferencia de archivos:

A → B: (nA, F, H(nA | w | F))

Los pasos uno y dos ya no son necesarios. Como Mallory no puede copiar su propio archivo con w , no tienen forma de detectar una colisión.

Por supuesto, Mallory podría reemplazar cada transferencia de archivos F con E con la esperanza de que ocurra una colisión de hash, sin embargo, Bob se daría cuenta de que algo andaba mal.

Para corregir eso en el protocolo, se podría usar HMAC (SHA-256) en lugar de un hash de 40 bits débil.

    
respondido por el SilverlightFox 11.02.2016 - 13:37
fuente
0

Mi idea fue que si la salida de una función hash es inferior a 160 bits, podemos realizar un ataque de cumpleaños exitoso, así que esto es lo que pensé. Entonces, el ataque se produce en el paso 3. Cualquier otra cosa fluye en mi mente incluso porque, para todo, el atacante debe saber w y no puede recuperar w desde ningún pase.

    
respondido por el rollotommasi 09.02.2016 - 18:01
fuente
0

Tienes razón al pensar que se puede realizar un ataque de cumpleaños . Un atacante, Oscar, podría interceptar la comunicación entre Alice y Bob y modificar el mensaje que Bob recibe.

    
respondido por el CSstudent 09.02.2016 - 20:02
fuente

Lea otras preguntas en las etiquetas