Sincronización segura de contenedores TrueCrypt

7

Es necesario sincronizar archivos arbitrarios dentro de dos contenedores TrueCrypt; un contenedor es una copia de seguridad, el otro es el que yo uso activamente, ambos son locales durante la transacción.

La preocupación actual en cuanto a la seguridad es que habría "fugas de datos" como resultado de la herramienta de sincronización que se está utilizando; por ejemplo, la herramienta de sincronización que produce índices que cuando se almacenan sin cifrar en el disco.

¿Alguna sugerencia o información sobre los posibles vectores de ataque que podría resultar de usar una herramienta de sincronización como se describe?

ACTUALIZACIÓN: He eliminado la referencia a "en Windows", ya que mientras que las respuestas y las preguntas que abordaron se refieren a Windows, estas respuestas (dejando de lado las herramientas de sincronización utilizadas) se aplican a Windows , Linux, OSX, etc. - y no quisiera que la persona que lee el título de la pregunta crea que la pregunta solo se aplica a Windows, ya que no lo hace, y dada la importancia de ejecutar de forma segura las copias de seguridad de los datos cifrados, pensé que Lo mejor es hacer la pregunta lo más accesible posible.

    
pregunta blunders 26.04.2012 - 13:29
fuente

3 respuestas

7
  

La preocupación actual en cuanto a la seguridad es que habría "fugas de datos" como resultado de la herramienta de sincronización que se está utilizando; por ejemplo, la herramienta de sincronización que produce índices que cuando se almacenan sin cifrar en el disco.

Es correcto creer que existe un riesgo de fuga de datos como resultado de los índices. La cantidad de riesgo que depende de qué se indexa exactamente.

Hace un tiempo, lideré un proyecto para construir algo un poco como Dropbox. Para comparar directorios a través de ejecuciones, utilizamos el nombre de la ruta, un hash sha256 del contenido, si aún no se ha calculado, información de marcas de tiempo, etc.

Claramente, si una herramienta de sincronización almacenara esta información sobre los archivos almacenados en un contenedor cifrado, el atacante también tendría acceso a ellos. El riesgo exacto de eso realmente depende de su escenario dado.

Sospecho, sin embargo, hay mayores riesgos en el juego de lo que piensas. Supongamos, por ejemplo, que al abrir un archivo, su software inocente crea una copia para no corromper a la persona. Sin embargo, ha montado el sistema de archivos de solo lectura, por lo que Crea fácilmente una copia del archivo en tu carpeta temporal. Genial, excepto que simplemente copió sus datos de una partición cifrada a una no cifrada, con lo que se filtró.

Lo mismo podría ser cierto para las herramientas de sincronización. Esta sería una forma bastante mala de crear uno, pero es concebible que la herramienta pueda copiar archivos en una ubicación temporal en progreso. De nuevo, tienes un problema de fuga.

Para ser un poco más realista, supongamos que la herramienta de sincronización copia los archivos en la memoria al mmap ing y copia entre ellos. ¿Qué sucede si experimenta una falla en el sistema durante esta actualización y resulta que su aplicación se ha volcado? Heck, ¿qué sucede si la memoria de los controladores de truecrypt también se descarga en el núcleo? Es posible que contenga datos de archivos sin cifrar.

El hecho del asunto es que es poco probable que pueda deducir el contenido de archivos completos de cualquiera de estos escenarios, pero al estar húmedo en su casa, algo se filtrará, en alguna parte. La única manera de estar completamente seguro de que tiene todo envuelto es hacer lo obvio: encriptar el lote completo . Swap, disco, todo.

Entonces, para responder a la pregunta que hiciste: un atacante puede limpiar lo que almacena la herramienta de sincronización. Echar un vistazo. Tome Process Monitor , vea dónde está almacenando los datos y luego mire qué contiene. Eso te dirá exactamente qué datos se están filtrando.

Para responder a la pregunta que no hizo: no hay forma de estar absolutamente seguro de que no va a filtrar algo utilizando un contenedor TrueCrypt en un sistema no cifrado.

    
respondido por el user2213 05.05.2012 - 14:52
fuente
6

La pregunta ahora es "¿Cómo puedo hacer la sincronización a nivel de archivo entre dos contenedores TrueCrypt abiertos en un solo host sin ninguna fuga local de datos de la herramienta de sincronización?".

La respuesta es que probablemente no pueda: ciertamente ninguna de las herramientas de sincronización de archivos bien establecidas (unison, rsync, SyncToy, etc.) promete no tener tales fugas. Su enfoque es puramente eficiente y confiable.

Esto es presumiblemente porque hacerlo implicaría mucho trabajo muy duro para respaldar un caso de uso oscuro. En primer lugar, si alguien puede acercarse lo suficiente a su máquina para aprovechar este tipo de fugas, entonces tiene peores problemas. Y, en segundo lugar, si realmente necesita controlar esta vulnerabilidad, hay algunos pasos que puede realizar a pesar de la herramienta de sincronización utilizada:

  • use el cifrado completo del disco para que las fugas también estén encriptadas.
  • sincronice los volúmenes cerrados, eliminando todas las fugas de la herramienta de sincronización a costa del rendimiento.

Nota: Especifico la fuga de herramienta de sincronización aquí, ya que existen otros tipos de fugas: análisis diferencial de los contenedores o fugas de las herramientas que utiliza para manipular el contenido del contenedor una vez abierto. Pero nuevamente, si el atacante ha comprometido la máquina lo suficiente como para realizar estos ataques, entonces tiene problemas peores. ¿Por qué hacer un análisis diferencial difícil de los cambios en el contenedor cuando simplemente puede reemplazar el binario TrueCrypt con algo que le envíe por correo electrónico el contenido del contenedor?

(Un último punto: hay muchas buenas herramientas de código abierto para la sincronización de archivos, por lo que una tercera alternativa es incluirlas en su propia versión súper segura).

    
respondido por el Graham Hill 26.04.2012 - 15:10
fuente
0

OMI, la forma más fácil y rápida de sincronizar es montar dos contenedores y usar tu herramienta favorita para sincronizarlos (es como robocopy). Cuando tengas una copia de seguridad usa un contenedor DIFERENTE. Si un contenedor es una copia de otro que alguien que tiene acceso a ambos, puede ver los sectores que cambian y usar esa información.

Si creas dos contenedores, eso no será un problema porque todo sería diferente sin importar si los mismos archivos en los mismos lugares están allí.

No sé qué 'herramienta de sincronización' puede usar, pero si no está almacenando información temporal (digamos su área temporal local) mientras está sincronizando, debería estar bien. Algunas personas piensan que debe deshabilitar la memoria virtual cuando utiliza el cifrado, pero no es necesario el IMO y solo la paranoia.

-editar- Si alguien puede acceder a su copia de seguridad repetidamente (en lugar de solo la actual y la copia de seguridad que se supone arriba), puede considerar crear un nuevo contenedor cada vez y copiar todos los datos como lo recomienda truecrypt enlace

-edit2- Ahora parece que está preguntando sobre fugas cuando usa herramientas. No mencionaste ninguna herramienta, así que no puedo comentar mucho. Siempre y cuando la herramienta no cree archivos temporales al copiar o tenga una base de datos / información fuera del contenedor (en algún momento se encuentra en el directorio de datos de la aplicación del usuario) lo que debería estar bien. Como mencioné anteriormente, me gusta robocopy, que es simplemente un comando avanzado como el programa de copia de archivos. Consulte enlace Yo personalmente no copio los datos de attibute ni quiero que se eliminen los archivos en el volumen remoto. Creo que normalmente uso robocopy srcDriveOrFolder dst /S /W:1 /R:1

    
respondido por el user5575 04.05.2012 - 20:56
fuente

Lea otras preguntas en las etiquetas