La RAM almacena datos de lo que actualmente esta corriendo en el ordenador. Todo programa o proceso en ejecucion esta en la RAM. Otra cosa es que haya accesos a disco para recuperar informacion, pero todo lo que se esta ejecutando esta en la RAM.
(Casi) cualquier informatico, incluso expertos, te dirian que cuando apagas el ordenador, los datos que estaban en la RAM se pierden. Eso es falso. Los datos de la RAM van desapareciendo en un tiempo que oscila entre varios segundos y varios minutos, permitiendo el analisis forense de esos datos aunque se haya apagado el equipo.
Para aumentar este tiempo, podemos usar sprays de aire comprimido que enfrien la RAM a temperaturas cercanas a los -50ºC. Si el asunto es serio, puedes usar nitrogeno liquido hasta alcanzar cerca de los -200ºC para mantener en los chips la informacion durante HORAS.
Esto puede ser usado para capturar passwords almacenados en RAM, lo cual es muy frecuente que ocurra. Y tambien puede ser usado para violar utilidades de cifrado como Truecrypt, pues todas ellas se basan en almacenar las claves de descifrado en RAM. Esto se hizo asi porque lo creian seguro, pues el S.O. no deja a ningun programa acceder a estas claves en memoria, y en principio la unica manera de pasar del S.O. seria apagando el equipo, con lo cual todo el mundo sabe que las claves almacenadas en RAM desaparecerian. Todo el mundo menos los que como no sabian que era imposible, lo hicieron.
Pasemos a la accion.
Apagamos la maquina. Arrancamos con un S.O. desde nuestra llave USB por ejemplo, y copiamos el contenido de la memoria.
Haciendo esto habremos conseguido passwords almacenados en memoria, y claves de cifrado que podriamos usar para descifrar datos cifrados en disco.
Pero antes de pasar a la accion, esperemos un momento, demostremos todo esto.
UNIX. Crea un programa con un bucle infinito tal que asi:
Código: |
#!/bin/bash a = 'risperdal' b = 'vlan7' while [ 1 ]; do c = '$a$b' done |
Pero antes de ejecutarlo, pasa todo el contenido de la memoria al disco.
Código: |
sync |
Ejecutalo ahora. No se mostrara nada, pero al cabo de un rato veras que el ordenador empieza a leer de disco, pues la RAM se ha llenado.
Bien, ahora dale al boton de reset, y, cuando la maquina arranque, busca risperdal en memoria:
Código: |
# strings /dev/mem |less |
Veras trozos de la cadena risperdal. Esa es la prueba de que datos de la RAM permanecieron tras el reset de la maquina.
Y ahora el ataque. Y como yo soy asi, solo dire que podeis encontrar herramientas recientes (16-Jul-2008) en http://citp.princeton.edu/memory/code/
A jugar.
Suerte y Exitos.
Fuente:http://www.wadalbertia.org/phpBB2/viewtopic.php?t=4891 por vlan7
No hay comentarios:
Publicar un comentario