programas - como quitar el cifrado de una memoria micro sd
¿Proteger las claves de cifrado en la memoria RAM? (3)
Como señala Sergey, no se puede evitar que alguien ataque la memoria RAM si el hardware está en su poder. La única solución posible para defender el hardware es con un módulo de seguridad de hardware inviolable. Hay un par de variedades en el mercado: los chips TPM y las tarjetas inteligentes vienen a la mente. Las tarjetas inteligentes pueden funcionar mejor para usted porque el usuario debe eliminarlas del dispositivo cuando se alejan, y simplemente puede borrar las claves cuando se retire la tarjeta.
Haría un poco más de análisis de riesgo que te ayudaría a descubrir qué tan probable es un ataque de RAM congelado. ¿Qué computadoras corren más riesgo de ser robadas? ¿Computadoras portátiles, servidores, tabletas o teléfonos inteligentes? ¿Qué valor pueden obtener tus atacantes de una computadora robada? ¿Está buscando evitar que descifren una imagen de disco encriptada? ¿De recuperar un documento que está actualmente cargado en la RAM? ¿De recuperar una clave que llevaría a descifrar un disco completo? ¿De la recuperación de credenciales que proporcionarían acceso interno a su red?
Si los riesgos son realmente tan altos pero tiene una necesidad comercial para el acceso remoto, considere guardar los secretos solo en los servidores corporativos seguros, y permitir solo el acceso del navegador a ellos. Use autenticación de dos factores, como un token de acceso de hardware. Quizás requiera que las máquinas remotas se inicien solo desde medios de solo lectura y listas de marcadores de solo lectura para ayudar a garantizar contra virus y otros ataques basados en el navegador.
Si puede asignar un valor monetario al riesgo, debería poder justificar la infraestructura adicional necesaria para defender los datos.
¿Hay alguna forma de proteger las claves de cifrado que se almacenan en la memoria RAM de un ataque de congelador? (Colocando la computadora en un congelador antes de reiniciar el código malicioso para acceder al contenido de la RAM)
Esto parece ser un problema legítimo con la seguridad en mi aplicación.
EDITAR: también vale la pena mencionar que probablemente esté haciendo una prueba de concepto OS para hacer esto en el metal desnudo, así que tenga en cuenta que cuantas menos dependencias haya, mejor. Sin embargo, TRESOR suena realmente interesante, y podría portar el código fuente de eso a mi sistema operativo de prueba de concepto si parece manejable, pero estoy abierto a otras soluciones (incluso aquellas con dependencias pesadas).
No hay una forma programática. No puede evitar que un atacante congele su computadora y elimine los chips de RAM para su análisis.
Si alguien obtiene acceso a su hardware, todo lo que tiene está en manos del atacante.
Siempre tenga en cuenta: http://cdn.howtogeek.com/wp-content/uploads/2013/03/xkcd-security.png
Podría usar algo como el parche de kernel de TRESOR Linux para mantener la clave dentro del anillo 0 (el nivel de privilegio más alto) de los registros de depuración de la CPU solamente, que cuando se combina con una CPU Intel que admite la instrucción AES-NI, no necesita dar como resultado una penalización de rendimiento (a pesar de la necesidad de un nuevo cálculo clave) en comparación con una implementación de cifrado genérico.