¿La corrupción de varios bytes de un zip cifrado lo hace irrecuperable?

2

¿Puede el adversario extraer datos de un archivo dañado deliberadamente?

Si archivo una carpeta con 7zip, y uso una contraseña (incluido el cifrado del encabezado), ¿confiscará algunos bytes en un desplazamiento particular del archivo cifrado, lo que hará que la recuperación del software forense sea imposible sin saber de antemano qué bytes se modificaron deliberadamente?

Si se han alterado N bytes en el desplazamiento O, un adversario debe intentar forzar brutalmente el archivo reconstruyendo correctamente tanto el offset correcto como los bytes originales sin alterar antes de intentar forzar la contraseña del archivo, o hay un atajo para extraer los datos del archivo cifrado. ¿El caso de que algunos de los datos hayan sido (deliberadamente) dañados?

Suponiendo que, por ejemplo, se hayan cambiado 5 bytes en el desplazamiento N y que el adversario solo tenga un conocimiento incompleto del estado del archivo original, ¿es posible "adivinar" todos los datos de los bytes originales que constituyen el archivo antes de continuar con la fuerza bruta de la contraseña?

¿Puede alguien? Suponiendo que pueda recordar y luego revertir el desplazamiento O y los bytes N, utilice este método además de una buena contraseña para engañar al software forense y mantener una negación plausible en el escenario en el que se le obliga a revelar el contraseña?

ACTUALIZACIÓN

Lo siento, lo que pretendo usar es el cifrado integrado AES-256 de 7zip junto con el cifrado de encabezado.

Mi pregunta tenía que ver con (deliberadamente) alterar el desplazamiento de un archivo cifrado de 7zip y, si fuera por la fuerza bruta, la contraseña sería viable sin reconstruir los N bytes alterados en el desplazamiento O.

    
pregunta John G 05.08.2017 - 13:54
fuente

1 respuesta

3

Hay muchas suposiciones en tu pregunta, así que no creo que sea posible una respuesta general, pero intentaré explorarla un poco.

Supongo que ha cifrado el archivo usando el modo estándar "protegido por contraseña" que está integrado en las herramientas zip. No soy un experto en el formato de archivo zip, pero parece que no hay un estándar para qué cifrado utilizar; RC4 (cifrado de flujo) y DES , 3DES y AES (cifrados de bloque) son todas opciones comunes. Para responder a esta pregunta, necesitaremos explorar cómo funcionan los cifrados de encriptación.

Cifras de flujo

RC4 es un cifrado de flujo, que de acuerdo con wikipedia , funciona así:

  

Un cifrado de flujo hace uso de una clave mucho más pequeña y conveniente, como 128 bits. Sobre la base de esta clave, genera una secuencia de claves pseudoaleatoria que se puede combinar con los dígitos de texto sin formato de manera similar al teclado de una sola vez.

Nunca he estudiado RC4 , pero tengo entendido que el cifrado se realiza de un byte a la vez mediante XOR'ing un byte de la secuencia de claves con un byte del texto sin formato.

Esto significa que, suponiendo que conozcas la clave, los 5 bytes que has manipulado se descifrarán y serán irrecuperables, pero todos los bytes antes y todos los bytes después de que se descifre bien.

Bloquear cifrados

Los cifrados de bloque funcionan de manera totalmente diferente a los cifrados de flujo. Es un poco más difícil de explicar, pero podemos ver el modo más común: cifrar el encadenamiento de bloques con esta imagen desde wikepedia :

Loimportanteatenerencuentaesqueeltextocifradoparaunbloquedadodependedeltextocifradodeesebloqueydelbloqueanterior.Porlotanto,estosecomportaengranmedidadelamismamaneraqueloscifradosdeflujoenquelosbytesquemodificó(yunbloquedespuésdeél)sedescifrarányseránirrecuperables,perotodoslosbytesantesdeélytodoslosbytesdespuésdequesedescifrebien.(gracias@dave_thompson_085)

Brutaforzandolacontraseña

Entérminosgenerales,amenosqueinviertalamutilación,losbytesquemutilóseránirrecuperables,perolosbytesantesydespuéssedescifraránbien(silosbytesdespuésdedescomprimirbiensonunahistoriadiferente,gracias@dave_thompson_085,peroyaquelacompresiónesnoestádiseñadoparalaseguridad,estoysegurodequeunbuenanalistaforensepodríaobtenerinformacióndeella).

Enelcontextodeunatacantequefuerzalaclavedecifrado(esdecir,lacontraseña),cifrarelencabezadozipenrealidadfacilitasutrabajo:todoloquedebenhaceresintentardescifrarconcontraseñasaleatoriashastaquelosprimerosbytessedescifrenaunelencabezadozipválido(oelencabezadodearchivodelprimerarchivoenelarchivosedescifraaunencabezadodearchivoválido).

¿Quéproblemaestástratandoderesolver?

El problema XY

Retrocediendo un paso, parece que desea mejorar el cifrado basado en contraseña de ZIP y posiblemente agregar una negación plausible inventando una técnica de ofuscación, o si desea poder revertirla, inventando una técnica de cifrado.

Como @TTT coloque en un comentario , no estoy seguro de que pueda hackear de forma convincente la negación plausible del sistema de cifrado de ZIP.

En cuanto a mejorarlo, ¿por qué no usar AES y tirar (o no tirar) la llave? O, ¿por qué no omitir el uso del terrible cifrado basado en contraseña de ZIP y simplemente ejecutar el archivo .zip a través de GPG o openssl o alguna otra herramienta mejor y más moderna que admita el cifrado de clave pública? (pista: el cifrado zip nativo fue un truco mal hecho cuando se escribió, y ahora es un truco desactualizado. Si desea una seguridad adecuada, ejecute el archivo zip a través de una herramienta adecuada en lugar de intentar rescatar el truco) .

    
respondido por el Mike Ounsworth 05.08.2017 - 18:23
fuente

Lea otras preguntas en las etiquetas