¿Qué tan seguro es un archivo zip protegido con contraseña de Windows?

40

Necesito enviar información confidencial a un cliente. Pensé que enviaría por correo electrónico un archivo zip protegido por contraseña que creé con Windows XP y luego los llamaría con la contraseña. Suponiendo que escojo una buena contraseña, ¿qué tan seguro es este enfoque? Específicamente, ¿qué tan difícil es descifrar un archivo zip protegido por contraseña?

    
pregunta Dave Aaron Smith 18.07.2011 - 22:21
fuente

5 respuestas

46

Al crear un archivo Zip protegido con contraseña (con la utilidad "carpeta comprimida" integrada en el sistema operativo), Windows XP utiliza el algoritmo de cifrado "estándar" para los archivos Zip. Este es un cifrado de flujo casero, y es débil . Con 13 bytes de texto sin formato conocido, la complejidad del ataque es de aproximadamente 2 operaciones 38 , que se pueden realizar en pocas horas en una PC. Los 13 bytes son relativamente fáciles de obtener (por ejemplo, si uno de los archivos del archivo es una imagen, es probable que no esté comprimido y comience con un encabezado conocido). El resultado incluso ha sido mejorado , especialmente porque los archivos en un archivo están cifrados por separado pero sin la diversificación de clave adecuada. Hace algunos años (bastantes ahora, tempus fugit ), he visto un software de descifrado de contraseñas por Ivan Golubev que dio buen uso a esta ciencia y podría descifrar el cifrado Zip en una hora.

El ataque al cifrado Zip es en realidad:

  • una buena introducción al criptoanálisis;
  • un buen ejercicio en programación;
  • un recordatorio de que no debe hacer rodar su propio cripto . Phil Katz era muy bueno en su dominio, pero los mejores criptógrafos del mundo le dirán que se necesita mucho más que un criptógrafo extremadamente bueno para hacer un algoritmo seguro; se necesitan muchos criptógrafos que proponen febrilmente diseña y trata de romper los diseños de los demás, durante algunos años, hasta que surja un diseño aparentemente robusto (donde "robusto" significa "ninguno podría encontrar el más mínimo argumento para apoyar la idea de que, posiblemente, pueden hacer mella en él". en alguna fecha no especificada ").

Ahora, si usa una herramienta que admita el cifrado más nuevo basado en AES, las cosas se verán mejor, siempre y cuando el formato y la implementación no sean erróneos, y la contraseña tenga suficiente entropía. Sin embargo, tales archivos Zip no serán abiertos por el explorador de WinXP de valores.

Si se requiere una herramienta externa, también puede confiar en una herramienta que ha sido analizada a fondo por seguridad, tanto en la especificación de formato como en la implementación; en otras palabras, como @ D.W. sugiere: GnuPG .

En cuanto a archivos de autodescodificación , todos están equivocados, ya que confían en que el usuario haga exactamente lo que nunca debería hacer, es decir, lanzando un archivo ejecutable que recibió por correo electrónico. Si abre un archivo de autodescodificación que le envía, entonces, con esta acción, demostrará que es vulnerable a la gran cantidad de virus / gusanos / asaltantes que deambulan por el salvaje Internet, y probablemente ya esté infectado con varios programas maliciosos, incluidos los keyloggers.

Sin embargo , hay una manera, en su situación específica , de hacer que un archivo de autodescifrado sea razonable. Todavía necesita que su cliente instale una nueva pieza de software, pero al menos es directamente de Microsoft: el Comprobador de integridad de la suma de comprobación de archivos - un nombre pomposo para una herramienta que calcula hashes de archivos. Envíe el archivo de descifrado a su cliente y haga que lo guarde como un archivo ( sin ejecutarlo, por supuesto). Luego, pídale que ejecute FCIV en él, para obtener el hash SHA-1 del archivo. Haz lo mismo de tu lado. Finalmente, compare los dos hashes por teléfono (no es difícil dictar 40 caracteres hexadecimales). Si los dos hashes coinciden, su cliente sabrá que el archivo no se modificó durante la transferencia y él podrá ejecutarlo con confianza.

(Es decir, si su cliente confía en usted y confía en que su máquina no está llena de virus, lo que podría haber infectado el archivo en su salida).

    
respondido por el Thomas Pornin 02.10.2012 - 03:20
fuente
6

Para datos confidenciales, me resistiría un poco a usar archivos ZIP o 7ZIP protegidos con contraseña. Las versiones actuales de encriptación que utilizan no han sido bien estudiadas o examinadas por investigadores independientes. Las versiones anteriores del software tenían debilidades de seguridad, lo cual es motivo de preocupación. Las versiones más nuevas podrían estar bien, pero como no se han revisado de forma independiente, me resisto a confiar en ellas. Idealmente, algo como GPG o PGP es mejor.

Tenga en cuenta que el cifrado con una contraseña tiende a ser débil. La mayoría de las personas eligen contraseñas que no tienen suficiente entropía para protegerse contra la búsqueda fuera de línea (por ejemplo, ataque de diccionario, búsqueda exhaustiva). Además, las contraseñas largas y seguras son incómodas de usar, lo que proporciona un mayor desincentivo contra ellas.

Le recomiendo que evite enviar archivos autoextraíbles .exe de personas. Eso es un riesgo de seguridad. Cuando envía archivos .exe autoextraíbles a las personas, los está capacitando para recibir un archivo adjunto .exe por correo electrónico y ejecutarlo. Esa es una práctica muy peligrosa, desde una perspectiva de seguridad. Creo que el hecho de que ZIP y 7ZIP fomenten esta práctica es un signo de desprecio por la seguridad.

Si debe usar un cifrado basado en contraseña, le recomiendo: use GPG o PGP (por ejemplo, gpg -c ). La seguridad del cifrado de GPG ha sido bien estudiada y es sólida. Use una contraseña larga y segura: por ejemplo, use una utilidad para generar una contraseña criptográficamente aleatoria. Quieres una contraseña que tenga entre 14 y 16 caracteres aleatorios, sin ningún tipo de patrón.

Probablemente, esta sea la opción más fácil de usar para su cliente, que también brinda una protección sólida.

Si desea seguridad adicional, almacene los datos cifrados en un CD o DVD, y luego envíe el CD o DVD por Fedex (en lugar de por correo electrónico). De esa manera, obtiene dos capas de seguridad: alguien puede robar los datos solo si puede obtener acceso al CD o DVD, y si tiene la contraseña para descifrarlos.

Si sus clientes tienen problemas para usar PGP o GPG, puede usar una versión reciente del cifrado de contraseñas ZIP o 7ZIP. En ese caso, evitaría un archivo .exe autoextraíble y probablemente estaría más inclinado a enviar los datos cifrados a través del correo (en un CD o DVD) que a través de Internet.

Alternativamente: si su cliente tiene conocimientos técnicos y usted tiene comunicación frecuente con ellos, otra opción es hacer que usen GPG o PGP para generar un par de llaves públicas al azar, enviarle su clave pública y entonces usted puede cifrar los datos bajo su clave pública. Esto proporcionará una mayor seguridad, si saben cómo usar GPG o PGP. Sin embargo, es menos intuitivo y, por lo tanto, probablemente no sea factible para enviar datos a un cliente promedio.

    
respondido por el D.W. 19.07.2011 - 22:47
fuente
4

No es tan difícil descifrar un archivo ZIP protegido por contraseña. Hay muchas aplicaciones disponibles para descifrar la contraseña o simplemente eliminarla.

Lo más probable es que nadie intercepte el correo electrónico entre usted y ellos. Los servidores de correo electrónico públicos tienen una gran cantidad de datos que fluyen entre ellos. Poner una contraseña en el correo electrónico es probablemente lo suficientemente bueno. Si necesita algo más seguro, mire el correo electrónico por el que se envía el archivo adjunto o publique el archivo en una ubicación segura, como un buzón (sí estoy al tanto del problema que tuvieron hace un par de semanas) y envíelos. el enlace.

    
respondido por el mrdenny 18.07.2011 - 22:28
fuente
4

He usado archivos zip protegidos por contraseña como un mecanismo de cifrado ad hoc (aunque prefiero usar GPG cuando sea posible). Gran parte de la recuperación de contraseñas está hecha para archivos zip, pero mientras esté usando una versión actual, el único mecanismo práctico de recuperación es la fuerza bruta. Creo que tanto 7-zip como Winzip son compatibles con AES-256. Si su cliente ya tiene Winzip, lo usaría (solo asegúrese de usar AES y no el cifrado "heredado").

El aspecto más importante de usar esto es su contraseña (recomendaría una frase de contraseña, con al menos 16 caracteres, agregue algunos caracteres especiales). La frase de contraseña tiene la ventaja de que la fuerza bruta es difícil, y puede intercambiarla por teléfono con relativa facilidad.

Este no es un mecanismo perfecto de ninguna manera, pero podría ser lo suficientemente bueno para sus propósitos (dependiendo de la sensibilidad de los datos).

    
respondido por el Andrew 20.07.2011 - 04:27
fuente
1

Con el GTX 295s dual, se puede recuperar una contraseña de 4 caracteres en menos de una hora.

enlace

    
respondido por el Jodie C 18.07.2011 - 22:33
fuente

Lea otras preguntas en las etiquetas