Siguiente: Almacenamiento seguro
Subir: El sistema de ficheros
Anterior: Listas de control de
Índice General
Recuperación de datos
La informática forense es un campo que día a día toma importancia;
de la misma forma que la medicina forense es capaz de extraer información
valiosa de un cadáver, incluso mucho después de haber muerto, la
informática forense pretende extraer información de un `cadáver'
computerizado (por ejemplo, un sistema en el que un intruso ha borrado sus
huellas), también incluso mucho después de haber `muerto' (esto es, haber
sido borrado). Aunque las técnicas de recuperación de datos en Unix se
aplican habitualmente para potenciar la seguridad de un equipo (por ejemplo,
como hemos dicho, para analizar el alcance real de un acceso no autorizado),
éstas mismas técnicas utilizadas por un atacante pueden llegar a comprometer
gravemente la seguridad del sistema: un intruso que haya conseguido cierto
nivel de privilegio puede recuperar, por ejemplo, el texto plano de un documento
que un usuario haya cifrado con PGP y posteriormente borrado -
almacenando únicamente el documento cifrado -. Aunque esto no es tan trivial
como en otros sistemas menos seguros (en los que incluso se facilitan
herramientas tipo undelete), parece claro que este tipo de actividades
constituyen una amenaza a la seguridad (principalmente a la privacidad) de
cualquier sistema Unix.
En 1996, Peter Gutmann publicó [Gut96], un excelente artículo
donde se demostró que la recuperación de datos de memoria (esto incluye por
supuesto la memoria secundaria) es posible con un equipamiento relativamente
barato, de entre 1000 y 2500 dólares, incluso tras sobreescribir varias veces
los datos a borrar. Hasta ese momento casi todo el trabajo realizado en el
campo de la destrucción `segura' de datos se habia limitado a estándares
de organismos de defensa estadounidenses ([Cen91],
[Age85]...). Como el propio Gutmann explica, estos trabajos - aparte
de quedar anticuados - no mostraban toda la realidad sobre la destrucción
y recuperación de datos, sino que ofrecían una información posiblemente
inexacta; de esta forma las agencias estadounidenses confundían a la
opinión pública (y a los servicios de países hostiles) asegurando
así el acceso de la propia agencia a la información, y al mismo
tiempo protegían sus propios datos mediante guías y estándares
clasificados para uso interno.
El artículo de Gutmann se puede considerar la base de la informática
forense actual, un campo que como hemos dicho, día a día cobra
importancia; centrándonos en la rama de este campo relativa a Unix (se le
suele denominar Unix Forensics) podemos encontrar herramientas para
realizar borrado seguro de datos, como srm (Secure rm), del grupo
de hackers THC (The Hacker´s Choice); este software
implementa un algoritmo de borrado seguro basándose en [Gut96]. Dicho
algoritmo efectua principalmente un procedimiento de sobreescritura casi 40
veces, haciendo un flush de la caché de disco después de cada una de
ellas; además trunca el fichero a borrar y lo renombra aleatoriamente antes
de efectuar el unlink(), de forma que para un potencial atacante sea
más difícil obtener cualquier información del archivo una vez borrado.
srm se distribuye dentro de un paquete software denominado secure-delete, donde también podemos encontrar otras herramientas
relacionadas con la eliminación segura de datos: smem (borrado seguro
de datos en memoria principal), sfill (borrado seguro de datos en el
espacion disponible de un disco) y por último sswap (borrado seguro
de datos en el área de swap de Linux); todos los algoritmos utilizados
en estos programas están basados en el artículo de Gutmann del que
antes hemos hablado.
Otra herramienta importante a la hora de hablar de Unix Forensics,
pero esta vez desde el lado opuesto a secure-delete - esto es, desde
el punto de vista de la recuperación de datos -
es sin duda The Coroner´s Toolkit, obra de dos reconocidos
expertos en seguridad: Wietse Venema y Dan Farmer. En verano de 1999,
concretamente el 6 de agosto, en el IBM T.J. Watson Research Center de
Nueva York estos dos expertos dieron una clase sobre Unix Forensics, en
la que mostraban cómo extraer información de este sistema operativo, no
sólo del sistema de ficheros, sino también de la red, el sistema de
logs o los procesos que se ejecutan en una máquina. Lamentablemente,
The Coroner´s Toolkit aún no se encuentra disponible, pero es
posible ojear lo que va a ser esta herramienta en las transparencias de esta
conferencia, disponibles en http://www.porcupine.org/forensics/, donde
se muestra todo lo que un exhaustivo análisis sobre Unix puede - y también
lo que no puede - conseguir.
El análisis forense, especialmente la recuperación de datos, es
especialmente importante a la hora de analizar los alcances de una intrusión
a un equipo. En estas situaciones, es muy posible que el atacante modifique
ficheros de log (cuando no los borra completamente), troyanize
programas o ejecute procesos determinados: es aquí donde la persona
encargada de retornar al sistema a la normalidad debe desconfiar de cuanto
la máquina le diga, y recurrir al análisis forense para determinar el
impacto real del ataque y devolver el sistema a un correcto funcionamiento.
Siguiente: Almacenamiento seguro
Subir: El sistema de ficheros
Anterior: Listas de control de
Índice General
2003-08-08