Ocultación de datos


  1. Introducción.
  2. Windows: sistemas de ficheros NTFS.
  3. Unix: sistemas de ficheros ext2, ext3...


1. Introducción

En ocasiones pueden ocultarse datos en los sistemas de ficheros. Análisis en los flujos de datos alternativos realizados por Kurt Seifried han demostrado la posibilidad de ocultar datos en sistemas de ficheros NTFS.

En sistemas Unix tambien es posible ocultar datos utilizando herramientas como bmap. En los siguientes apartados se muestran unos ejemplos.

Estas técnicas permiten esconder archivos de herramientas de comprovación de integridad de ficheros como TripWire.


2. Windows: sistemas de ficheros NTFS.

En los sistemas de ficheros NTFS existe una técnica basada en flujos de datos alternativos que permite ocultar información.
Veamos un ejemplo:

Primero creamos un fichero de prueba:

c:\ echo "Fichero de prueba" > fichero.txt

En el podemos ocultar información:

c:\ echo "Info oculta" > oculto.txt
c:\ type oculto.txt > fichero.txt:oculto.txt
c:\ del oculto.txt


Sin modificar el tamaño ni el contenido de fichero.txt hemos ocultado información:

c:\ type fichero.txt
Fichero de prueba

c:\ type fichero.txt:oculto.txt
Info oculta



3. Unix: sistemas de ficheros ext2, ext3...

Los sistemas de ficheros están organizados mediante bloques de X bytes. Cuando un fichero es menor que el tamaño del bloque, el espacio restante es conocido como espacio de poca actividad o espacio vago. Con las herramientas adecuada es posible almacenar y recuperar datos del espacio vago.

En sistemas Unix existe una herramienta llamada bmap que nos permite utilizar el espacio vago. Veamos un ejemplo:

El primer paso consiste en elegir un fichero en el que esconder información. Por ejemplo '/etc/passwd'. A continuación necesitamos saber si dispone de espacio vago.

$ bmap --mode checkslack /etc/passwd
/etc/passwd has slack


Si dispone de espacio vago podemos ocultar datos en el:

$ echo "Info oculta" | bmap --mode putslack /etc/passwd
stuffing block 5110768
file size was: 13
slack size: 499
block size: 512

Y posteriormente recuperarla:

bmap --mode slack /etc/passwd
getting from block 5110768
file size was: 13
slack size: 499
block size: 512
Info oculta

Finalmente los datos son recuperados.




daniellerch.com