Está en la página 1de 25

Introducción a la Esteganografía http://www.death-master.

tk/

Introducción
a la
Esteganografía

Autor:

Death Master

Dedico este texto a todas las víctimas de los atentados del 11 de Marzo en Madrid, así como a todos los
familiares, amigos, conocidos, y a todas esas personas anónimas que arriesgaron la vida por gente a la que
ni siquiera conocían. Cosas así hacen que aún tenga fe en el género humano. ¡Va por vosotros!

Death Master, 2004 (GFDL) Página 1

Introducción a la Esteganografía http://www.death-master.tk/

Índice de contenidos

Índice de contenidos..........................................................................................................................2

Introducción.............................................................................................................................................3

Historia de la esteganografía.......................................................................................................4

Bases de la esteganografía...........................................................................................................9

Ficheros interpretados...................................................................................................................10

Ficheros ejecutables........................................................................................................................16

Esteganografía avanzada.............................................................................................................18

Esteganografía y criptografía....................................................................................................19

Ataques a la esteganografía.......................................................................................................20

Software esteganográfico............................................................................................................21

Autopsia de un reto...........................................................................................................................22

Distribución de este documento.............................................................................................24

Licencia......................................................................................................................................................25

Death Master, 2004 (GFDL) Página 2

quiero tratar un tema que despierta mucha curiosidad en mí. mediante distintas soluciones técnicas.. y la cantidad real de información que contiene. más tratándose de documentos PDF relativamente pesados. es decir. y que actualmente está muy ligado a la criptografía (otra de mis grandes pasiones): la esteganografía. y antes de ver definiciones rigurosas. escribí FAQ de Software Libre y GNU/Linux después de mucho tiempo observando la desinformación que había en la red con respecto a ese tema.. podemos decir que la esteganografía es una forma cómoda de trabajar con meta-información. y una visita a una página de descarga no asegura que se descargue el fichero. vivimos de hecho rodeados de un continuo “ruido de fondo”. podemos ver que el vivir en un medio ruidoso nos hace en cierto modo impermeables a la información no deseada. ese enorme remanso de información que supone Internet. pero para mí son unas cifras enormes. En este cuarto documento.. más fácil es que la meta-información pase completamente desapercibida al resto del mundo. y no ligeras páginas HTML. Quizá no parezca mucho para gente con grandes sitios web. pero por ejemplo Conferencias de Seguridad zH'04 ha tenido unas cinco mil (5. lleva aplicándose siglos en la vida del ser humano (casi siempre ligado al espionaje o al secreto).” Honoré de Balzac Este es ya el cuarto manual “serio” que publico. Cuanta más información y cuanto más fácilmente sea ésta ignorada.. pero sobre todo por el número de personas que los descargaron. Death Master Death Master. El actual desarrollo de la tecnología computacional y las telecomunicaciones (cuyas culminaciones son el ordenador personal e Internet respectivamente) han rodeado completamente nuestras vidas de torrentes de información. Y comencé a sorprenderme. Si nos paramos a pensar en la información que extraemos al visitar una web. No obstante.) y de forma limitada. Para los que no conozcan absolutamente nada sobre esta técnica. pero eso es algo que en las últimas décadas ha cambiado de forma radical. nosotros nos vamos a centrar en sus aplicaciones actuales en el campo de la informática y las comunicaciones. es el perfecto caldo de cultivo para las técnicas esteganográficas.Introducción a la Esteganografía http://www. Si hablamos rigurosamente de la definición de esteganografía. veremos que. teléfono. Siempre he creído firmemente que el conocimiento ha de ser libre. ¿qué podía aportar yo?). del resto del impermeable mundo.tk/ Introducción “Un efecto esencial de la elegancia es ocultar sus medios.000) descargas en menos de cuatro meses. pues. información dentro de la información. Ese enorme ruido de fondo. No tengo datos exactos. de que mis documentos eran publicados y difundidos en diversos medios de la red. pero nunca me picó la curiosidad de escribir manuales que se publicaran y que la gente leyera (al fin y al cabo. Sorprenderme de ver que realmente tenía muchas cosas que contar. Casi por casualidad. actuando como “cribas humanas” que separan el grano de la paja en la Gran Telaraña Mundial.death-master. Conferencias de Seguridad zH'04 y Criptosistemas Informáticos vinieron después. 2004 (GFDL) Página 3 . En otros tiempos la información que rodeaba a una persona era transportada por unos canales muy definidos (correo. a raíz de las conferencias de seguridad de la party de Zona Hispana y unas charlas de criptografía en el IRC del foro de Hack X Crack respectivamente. aunque es bueno conocer su origen. pues no tengo acceso a todos los servidores que alojan los ficheros.

Introducción a la Esteganografía http://www. Métodos Métodos clásicos La esteganografía da sus primeros pasos en la antigua Grecia. Si de este inocente texto extraemos la segunda letra de cada palabra. Puede que sigan pareciendo similares. Ésta es posiblemente una de las primeras manifestaciones en la historia de mensajes esteganografiados. en contra de lo que algunas personas dicen. si bien pueden complementarse entre ellas (y de hecho lo suelen hacer). obtendremos este otro mensaje: Pershing sails from NY June 1 Aquí vemos lo fácil que es esconder información en textos. ejecting suets and vegetable oils. o al menos similares. podemos dar los siguientes ejemplos: nosotros podríamos robar un mensaje cifrado con relativa facilidad. escribió sus mensajes en tablas que luego fueron cubiertas con cera. escritura) nace el término esteganografía: el arte de escribir de forma oculta. Veamos un ejemplo de un mensaje real enviado por un espía alemán durante la Segunda Guerra Mundial: Apparently neutral's protest is thoroughly discounted and ignored. Se cuenta en “Les Històries d'Heròdot” que Demeratus quería comunicar a la ciudad de Esparta que Xerxes tenía planes para invadir Grecia. nosotros podríamos capturar el tráfico completo de un individuo y tratar de analizarlo completamente (y el “ruido de fondo” hoy en día es mucho). Ésto es debido a que se trata posiblemente de uno de los métodos más sencillos de ocultar información. mientras que la esteganografía la tiene en el desconocimiento de que el mensaje siquiera existe. pero las connotaciones toman mucho valor al analizarlo detenidamente: la criptografía tiene su fuerza en la imposibilidad de comprender el mensaje. mientras que la esteganografía es el arte de escribir de forma oculta. Espero que quede claro desde un principio que. así como comprendemos la necesidad de gran cantidad de información (ruido) para ocultar la auténtica información de forma que no llame la atención. Death Master. La criptografía es el arte de escribir de forma enigmática (según la Real Academia Española). Cifrado nulo (Null Cipher) El método de escritura de meta-información en un texto es usado desde hace siglos. Blockade issue affects pretext for embargo on by products. subyace la información realmente importante. Consiste en escribir un texto aparentemente inofensivo donde. la esteganografía NO es un tipo de criptografía: son técnicas distintas e independientes. son cosas completamente distintas. Isman hard hit. sin tener la certeza de que haya o no un mensaje oculto. oculto) y στεγανοζ (steganos. encubierto) puedan parecer en un principio términos equivalentes. Aplicado al campo informático. y sigue siendo usado hoy en día. pero aún sabiendo que contiene información importante seríamos incapaces de obtener información alguna de él (si la criptografía ha cumplido con su cometido). mediante algún mecanismo conocido por el legítimo receptor de la información (actualmente hablamos de algoritmos y claves). Para evitar ser capturado por espionaje en los controles. Aunque κρυπτός (criptos.tk/ Historia de la esteganografía Del griego στεγανοζ (steganos. encubierto -con el sentido de oculto-) y γραπτοζ (graphos. Otro método usado durante siglos consistía en tatuar al mensajero (generalmente un esclavo) un mensaje en la cabeza afeitada para después dejarle crecer el pelo y enviar así el mensaje oculto.death-master. 2004 (GFDL) Página 4 . Respecto a la esteganografía. de forma que parecían no haber sido usadas.

) o a Albert Einstein por contribuir al desarrollo de la bomba de fisión.Introducción a la Esteganografía http://www. Era habitual el uso de vinagre. a los gobiernos nunca les hizo demasiada gracia la criptografía. Fue usado muy activamente por la resistencia en los campos de prisioneros nazis. pero que forman un patrón de información significativa. 2004 (GFDL) Página 5 . está íntimamente ligada a la criptología en general y a la criptografía en particular. Aún así. esteganografía. Al calentar el papel. no menos que a Samuel Colt por inventar el revólver (eso sin entrar a analizar los usos positivos de PGP frente a los dudosos usos positivos del revólver. pero todas se basan en los mismos principios de ocultación de información..death-master. pues la imposibilidad de comprender su contenido conforma su capa de cifrado. Generalmente se usa de la siguiente forma: en primer lugar se escribe una carta completamente normal. y al software libre en gran medida. hasta de las peores personas. Micropuntos La tecnología de los micropuntos fue inventada por los alemanes durante la Segunda Guerra Mundial y fue usada de forma muy activa durante la época de la guerra fría. y del que durante siglos no pudo disponer.... entre las líneas de esa carta.. que le han proporcionado el medio necesario para ser efectiva. al publicarse que esta clase de técnicas fueron supuestamente utilizadas por la organización terrorista AlQaeda para transmitir información previa a los atentados del 11 de Septiembre en Nueva York. Debido a la naturaleza analógica de esta técnica. Hoy en día se usan multitud de técnicas esteganográficas. lo veremos en detalle más adelante. Así mismo. Todo esto viene por la campaña de acoso y derribo que ciertos sectores norteamericanos emprendieron contra la criptografía y esteganografía en general. Señores: no hay medios culpables. Este punto. técnicas antes reservadas a unos pocos están ahora al alcance de cualquiera. es en la Segunda Guerra Mundial cuando adquiere una importancia capital. Death Master. Gracias a los ordenadores personales. sino personas culpables. la escritura oculta se hace visible. La técnica se basa en esconder puntos minúsculos en fotografías. y después se escribe. descubrir la presencia de un mensaje esteganografiado se considera un fracaso de la esteganografía que lo soporta. tan pequeños que para el ojo humano -e incluso para instrumentos ópticos básicos como lupas. y en general cualquier método que pueda suponer datos fuera de su control. al ser el eje central del documento. No culpen a PGP de un atentado. resultaba fácilmente detectable para los servicios de inteligencia. esteganografía y la sociedad actual: Como ya comenté en el documento de Criptosistemas Informáticos. zumos de frutas u orina. si bien advertir la presencia de mensajes esteganografiados no siempre significa que puedan ser legibles.. especialmente contra PGP y su creador Philip Zimmermann.tk/ Tinta invisible Aunque el método de escritura con tinta invisible es usado desde la edad media. Técnicas actuales Actualmente la esteganografía está irremisiblemente ligada a los ordenadores.resultan invisibles. Ahora me gustaría dejar una opinión personal sobre criptografía. aunque hoy en día existen compuestos químicos específicos que sirven igualmente y no desprenden olores tan fuertes (que serían fácilmente detectados por un perro entrenado). otro texto donde está la información importante.

Por cierto. hasta casi el cero.death-master. pintura. y generalmente se encuentran englobadas como una parte de un texto criptográfico (como comenté al principio). ¿Qué es pues lo que hace tan significativo este libro? Contiene muchísimos datos escondidos en su interior.esotericarchives. nunca dispuso de medios que la permitieran tomarse en cuenta hasta la aparición de la moderna ciencia de la computación. y el considerado como primer texto esteganografiado de forma escrita se obtiene tomando la primera letra de cada uno de sus capítulos. el número desciende muchísimo más.htm#Decorated%20initials. Veamos algunas de las principales publicaciones relacionadas con el tema por orden cronológico: Hypnerotomachia poliphili (1499) .bk. en este libro se trataba un método de envío de mensajes sin caracteres ni mensajero. No obstante. Al contrario que la criptografía. Podemos ver la secuencia completa de la frase en http://www. Death Master. la esteganografía. El libro versa sobre conocimiento general. ingeniería. creación de jardines. Es por eso que las publicaciones referentes al tema son tan escasas. paisajes. tratando temas como arquitectura.tk/ Publicaciones Son realmente pocas las publicaciones que existen sobre esteganografía. El más famoso. criptografía o códigos de forma alguna. en comparación por ejemplo con la criptografía.. Steganographia (1499) . formando: Poliam frater Franciscus Columna peramavit Que significa “El Padre Francesco Colonna ama apasionadamente a Polia”.Introducción a la Esteganografía http://www.Tritheim Johannes Heidenberg Se trata de la publicación más notoria de Tritheim. Francesco Colonna aún vivía cuando el libro fue publicado. Podemos encontrar un profundo análisis de este libro en: http://www.. de todo menos esteganografía. que existe de una manera importante desde antes del desarrollo del computador y fue desarrollada especialmente en la Segunda Guerra Mundial. Si buscamos publicaciones en castellano. Hypnerotomachia poliphili es un libro publicado en 1499 por Aldus Manutius. pese a haber sufrido un desarrollo similar durante ese mismo periodo de tiempo.htm.nl/dks/hp/hyptext1. En Steganographia se incluye un sistema de esteganografía bastante avanzado.com/tritheim/stegano. pero la temática general del libro (magia y métodos de aprendizaje acelerados) hizo que nunca se tomara demasiado en serio el texto.tudelft.Anónimo He elegido esta publicación por lo que representa. 2004 (GFDL) Página 6 . escultura.

html.J. No obstante. el considerado como primer libro de esteganografía y criptografía de la historia. Podemos encontrar la versión completa del documento en: http://www.net/fabien/steganography/steganographica/index. y uno de los más importantes.tk/ Polygraphiæ (1516) -Tritheim Johannes Heidenberg Segunda publicación relacionada con este tema de Tritheim.cix. Death Master. Schola Steganographica (1665) .co. junto a Steganographia -del mismo autor-. Según el texto.D. algunos de ellos tratados anteriormente.html. sentará las bases de lo que será Schola Steganographica.uk/~mhayhurst/jdhayhurst/pigeon/pigeon.petitcolas. Podemos ver fotografías. aunque no es un libro muy importante en el campo de la esteganografía. Hayhurst O.B. 2004 (GFDL) Página 7 .E. pero que en este libro toman un profundo giro en el enfoque de estudio: Schott se aleja de lo esotérico y lo mágico para enfocar la esteganografía y la criptografía desde el punto de vista de la técnica y la ciencia. En Polygraphiæ vuelve a tratar el tema de la escritura y su significado.death-master. The Pigeon Post into Paris 1870-1871 (1871) . Este texto trata el uso de micrografía y escritura oculta en los mensajes enviados por palomas durante la guerra franco-prusiana (1870-1871).Introducción a la Esteganografía http://www. En el Whipple Science Museum de Cambridge se conserva una copia completa e intacta (la de la fotografía) que fue publicada junto a otra obra del mismo autor (Technica curiosa).Gasparis Schott Este libro es uno de los más importantes en la historia de la criptografía y la esteganografía. En él se discuten los conocimientos de la época respecto a la escritura oculta o cifrada. las técnicas de ocultación de información fueron decisivas en el desenlace de la contienda. así como consultar información mucho más detallada acerca de esta publicación en http://www.

como el Telegrama Zimmermann de la I Guerra Mundial o el funcionamiento y ruptura de las máquinas Enigma de la II Guerra Mundial.pdf.Charles-Moïse Briquet Esta publicación es un diccionario histórico de las marcas de agua.net/fabien/kerckhoffs/crypto_militaire_1.Introducción a la Esteganografía http://www.it/briquet/. Aún así. Podemos consultar el documento (en italiano) en la siguiente dirección: http://linux. pues nos muestra las entrañas de la teoría de códigos. no son muchos los cambios entre ediciones.tk/ La cryptographie militaire (1883) . puede encontrar la primera parte del mismo (en el idioma original: francés) en PDF en la siguiente dirección: http://www. Death Master.Actualizado 1996 The Codebreakers es un libro de obligada lectura para los aficionados a la criptografía. y podríamos decir que el libro sigue siendo algo que pertenece a 1967.C.petitcolas.lettere. The Codebreakers: The story of secret writing (1967) .unige. hasta la época de publicación de la primera edición del libro (1967). Pues estos principios fueron enunciados en Enero de 1883 durante la redacción de este libro. Le filigrane (1907) . Cualquier estudioso de la criptografía ha oído al menos hablar de los Principios de Kerckhoffs. formando un texto de referencia histórica incomparable. desde los primeros jeroglíficos del 3000 A.death-master. Si alguien está interesado en la lectura de este documento. Hoy en día las marcas de agua siguen usándose en la expedición de papel moneda.Auguste Kerckhoffs La cryptographie militaire es un estudio del uso de técnicas criptográficas. esteganografía y ocultación de información en general. El libro también muestra episodios históricos importantes relacionados con la ocultación de información. El libro fue revisado en 1996 por el propio autor para contemplar la moderna criptografía de clave pública y la influencia de la informática en la ocultación de información. Se trata de “La Biblia” de los códigos. El hecho de que este libro fuera publicado antes de la existencia de la moderna criptografía computacional no hace sino aumentar el valor intrínseco del texto. usadas a lo largo de la historia para autentificar todo tipo de documentos. esteganográficas y en general de ocultación de información en el ejército francés del siglo XIX.David Kahn . 2004 (GFDL) Página 8 . El autor barre un periodo de tiempo descomunal.[KAHN67] .

Así pues.. por motivos que más adelante comentaremos. hexadecimal. existen ciertas técnicas para casos particulares de ficheros que también son válidas (aunque complicadas de hacer “a mano”.Nunca hay que permitir que un supuesto atacante obtenga el fichero original (anterior a la modificación). código morse. procurando que el fichero resultante después de realizar los cambios parezca el original. La esteganografía actual se basa en esconder datos binarios en la maraña de bits que supone un fichero. Así mismo existen ciertos programas especializados en ocultación de información en sectores de disco no usados. no considero esta técnica segura en absoluto. con lo cual dependemos de algún tipo de software.Introducción a la Esteganografía http://www. Death Master. Prácticamente cualquier tipo de fichero es bueno para ocultar datos en su interior. Sea cual sea el tipo de información que queramos esteganografiar.NO deben ser modificadas. Si bien cualquier base numérica es válida. . pues permitiría.. ¿Cómo logramos que el fichero resultante no parezca haber sido modificado? Depende de qué tipo de fichero estemos modificando. Así mismo.) que queramos introducir. pero hay algunos (imágenes y sonido principalmente) que resultan ideales para este cometido. Un ejemplo de estas técnicas es la adición de mensajes ocultos a los ficheros de sonido mediante superposición de capas de sonidos que no resultan audibles para el oído humano.. y sea cual sea el medio en el que queremos hacerlo.No transmitir la clave o algoritmo esteganográfico por un medio inseguro. yo trataré únicamente la esteganografía al nivel del bit (mediante editores hexadecimales). Los avances en computación nos proporcionan medios para calcular rápidamente los cambios necesarios en la ocultación de un mensaje. también he encontrado documentación de técnicas basadas en ocultación de mensajes en ficheros de imagen creados con potentes programas de tratamiento gráfico (como Gimp o Photoshop) mediante el uso de capas transparentes donde se alojaba la información. . e Internet proporciona los medios necesarios para transportar grandes cantidades de información a cualquier punto del planeta. Esto podría llevar en última instancia a desentrañar el mensaje oculto. mediante comparación. Al igual que en el caso anteriormente citado. cosa que no queremos).death-master.Toda información (texto ASCII. la comodidad trabajando con binario es mucho mayor. 2004 (GFDL) Página 9 . Aunque la esteganografía computacional clásica consiste en la modificación binaria del fichero que sirve de canal. debe ser primero convertida a binario. pero que sí contienen información. . Los bits que componen el mensaje a ocultar se introducen (bien sea añadiéndolos. hay ciertas reglas básicas: . establecer pautas de cambios en la información.Las cabeceras de los ficheros -salvo excepciones.tk/ Bases de la esteganografía El desarrollo de la informática e Internet ha supuesto el marco perfecto para que la esteganografía alcance su mayoría de edad.. o realizando operaciones aritméticas con los originales) en el fichero ya existente.

Es el caso de. Por norma general. el fichero contiene la información propiamente dicha (y en algunos casos otros campos que no vienen al caso). son capaces de ejecutar código en el procesador (aunque siempre mediante un intérprete). un fichero BMP es reconocido como tal aunque su nombre sea “foto. En este proceso.)..es/ es vuestro amigo :-P) o empezar a modificar datos a partir de direcciones avanzadas. http://www. si definimos una cabecera gif de. a través del SO.Introducción a la Esteganografía http://www. vamos a echar un vistazo a algunos detalles previos cuya comprensión es muy conveniente para entender la esteganografía. Debido a que cada tipo de fichero tiene una estructura distinta.) o en perl (ejecutados por el intérprete de perl).. así como el sitio donde lo haremos. pensemos en situaciones cotidianas. por ejemplo. en primer lugar ejecutamos el fichero ejecutable que. porque en cualquier caso no son muy útiles con fines esteganográficos.. depende del tipo de fichero.bmp se tratará de abrir con el visor de imágenes predeterminado aún tratándose de texto. tendremos un fichero que es gif y zip a la vez.. Yo trataré de proporcionar información acerca de los principales estándares de imagen que existen actualmente. La forma en que introduciremos los datos.tk/ Ficheros interpretados Antes de ver los tipos más comunes de ficheros interpretados usados en esteganografía.google. mientras que en los sistemas Windows simplemente se verifica la extensión del fichero. se pueden dar casos anecdóticos. pese a ser ficheros interpretados. Aunque los usuarios de sistemas Windows no lo sepan. Photoshop.. ¿Cómo es posible esto? Pues por las especificaciones de cada uno de los ficheros: un fichero gif define en su cabecera el tamaño del mismo. de forma que cualquier byte posterior al supuesto fin de la información es ignorado. nos es indiferente. como por ejemplo que un fichero pueda ser a la vez de dos tipos sin que éstos interfieran entre sí. Estructura de un fichero Antes de empezar a modificar ficheros es importante entender la estructura básica de un fichero.. manda instrucciones al procesador. Aunque hay quien los considera ejecutables y quien no.. de forma que carta. Para saber dónde colocar nuestros datos conviene conocer la estructura del fichero (ya sabéis.. Death Master.pepe”. con lo cual nos aseguramos un margen prudente que nos evite tocar la cabecera. un fichero es lo que es debido a una información que se encuentra embebida en su interior y que llamamos cabecera. y en el byte 5001 y posteriores ponemos las tablas zip. xBSD. Al abrir una fotografía PNG ó JPG con nuestro software de imagen favorito (Gimp. debido a que en su mayoría se trata de ficheros de texto plano.) estamos leyendo un fichero interpretado (la fotografía) mediante un software que previamente ejecutamos (mediante el fichero ejecutable). Es necesario saber cómo almacena la información el fichero para no modificarlo de forma sensible. Existen unos ficheros denominados “scripts” que en determinados casos. 5000 bytes. NO vamos a tocar nunca la cabecera del fichero. Nosotros siempre nos vamos a fijar en el cuerpo del mismo para introducir nuestros datos.death-master. Para entender esto más fácilmente. y en segundo lugar ese software ya arrancado interpreta la información contenida en una imagen y envía las instrucciones necesarias para poder ver en pantalla esa información ya procesada. sh. mientras que los ficheros interpretados son aquellos usados para leer o escribir información. Los ficheros ejecutables son los que mandan instrucciones al procesador (a través del sistema operativo y su núcleo o kernel). programas escritos en bash scripting (ejecutados por bash. Además de la cabecera. Un ejemplo es un fichero gif-zip. y un fichero zip almacena la información en unas tablas de forma que cualquier byte anterior al inicio de éstas es ignorado. 2004 (GFDL) Página 10 . pero siempre mediante algún software. Digo esto porque en sistemas como Unix y compatibles (Linux. pongamos. ¿Qué es un fichero interpretado? Entre los ficheros que encontramos en nuestro disco duro encontramos principalmente dos grupos: ficheros interpretados y ficheros ejecutables. Así.

y su principal desventaja es la pérdida de calidad e información con grandes ratios de compresión. Su mayor inconveniente es el inmenso tamaño que ocupan. lo cual lo hace desaconsejable para cualquier tipo de fotografía o imagen realista.Introducción a la Esteganografía http://www. En PCX se usa el algoritmo de compresión RLE. . que realiza entrelazado de datos para visualizarlo en primer lugar con baja calidad e ir aumentando la misma en varias pasadas. Como ventajas tiene la sencillez del algoritmo (aunque. este formato de compresión hace mucho más tedioso la realización de esteganografía). pero -muy importante- este algoritmo SÍ tiene pérdida de información en el proceso de compresión. que al fin y al cabo es el mayor uso de imagenes. Consiste simplemente en una cabecera y los valores de cada pixel de la imagen (ocupando cada pixel 4.PC Paintbrush (PCX): Este tipo de fichero es una evolución del mapa de bits tradicional. mientras que su mayor defecto es la escasa paleta de colores.Joint Photographic Experts Group (JPEG): Este fichero es. mucho más complejo que RLE.tk/ Ficheros de imagen Las imágenes es de lejos el tipo de fichero más utilizado para esteganografiar mensajes ocultos. El formato GIF89a además soporta transparencias y entrelazado. el más popular. El criterio para almacenar el número de pixels usando el color es el siguiente: si el byte es menor o igual que 192. Su principal ventaja es la enorme compresión (cosa que nos complica sobremanera la esteganografía) y la capacidad de uso de transparencias y entrelazado. el algoritmo guarda la información del color y el número de pixels que lo usan (para la posterior visualización). Mediante RLE cuando dos o más pixels consecutivos tienen el mismo color. con diferencia. Conviene puntualizar que hay distintos tipos de ficheros de imagen: . La principal ventaja que tiene JPEG es su calidad a la hora de representar fotografías (con su paleta de 16 bits y su alta compresión). Una variante del JPEG original es el JPEG progresivo. El algoritmo de compresión de JPEG se basa en un defecto del ojo humano que impide la completa visualización de la paleta de 24 bits. JPEG es sin duda el más usado en esteganografía. .death-master.). la escasa compresión que obtenemos en fotografías (que tienen mayor variedad de pixels). Su principal punto débil es la limitación a 256 colores (8 bits) de la paleta de color. corresponde a un único pixel. Dependiendo del factor de compresión la pérdida de imagen puede ser visible o no al ojo humano. 8.Windows BitMaP (BMP): Es el formato gráfico más simple. en la práctica jamás se usa. pero si es superior a 192 el número de pixels repetidos nos lo dan los seis bits menos significativos del byte (ponemos a cero los dos bits más significativos) y el color nos lo da el byte siguiente. y aunque teóricamente es capaz de realizar compresión de imagen. 24 ó 32 bits según la calidad del color) empezando de abajo hacia arriba y de izquierda a derecha. Death Master. como ya veremos. y como inconveniente. 16.Graphics Image Format (GIF): Es uno de los mejores formatos de compresión (sobre todo para imágenes con grandes áreas de un mismo color).. Usa el algoritmo de compresión LZW (usado en compresión de ficheros también). además de ser la opción más sencilla para animaciones vectoriales (flash y otros métodos más caros y complejos aparte. Esto nos da una importante reducción de tamaño. 2004 (GFDL) Página 11 . . por lo que elimina la información que el ojo humano no es capaz de procesar. pero eso no significa que sea el más sencillo. Su principal ventaja es la sencillez (es el formato más indicado para realizar esteganografía)..

.death-master. Nuestro principal arma es la calidad de la imagen. 0012A040 0E 2A 2C 33 45 44 50 1F 1E 26 00 00 00 1A 3D 4D .Portable Network Graphics (PNG): El formato PNG nace debido a los problemas de la patente del algoritmo LZW (Lempel-Ziv-Welch). PNG cubre prácticamente todas las características de GIF.296 de colores respectivamente) la cosa es muy diferente. se trata del único formato comprimido que incorpora la información del canal alpha. Debido a lo específico de este tipo de fichero. Veamos cómo esconder 1 byte de información. con un mejor algoritmo de compresión. ¿Ya vemos por dónde vamos.... como 16..... por lo que la diferencia entre colores contiguos es poca.. vectores o tablas..?. que pueden ser usados en la misma imagen. 0012A010 0A 07 0A 0E 05 05 0A 0B 0B 11 12 13 1A 0E 11 17 . concretamente la letra “L”.(c 0012A060 45 5E 3F 38 4A 11 11 17 0E 12 15 0E 11 19 0C 11 E^?8J...!. 16... Supongamos que nosotros queremos esconder una letra.967..=. 24 y 32 bits (65... vamos a aumentar o disminuir en una unidad el valor del color de un registro de color de la imagen.. no? }:-P Efectivamente....... ----- 076 114 04C 01001100 L Ahora deberíamos estudiar el fichero a modificar para analizar qué grupos conforman cada pixel... 0012A070 15 08 0D 12 0A 0B 12 07 0D 12 0B 10 14 11 12 17 .. así que consultamos la tabla ASCII (http://www...=M 0012A050 52 A5 D6 3F 93 CA 1E 60 88 0D 1D 27 0C 1E 28 43 R...... Decimal Octal Hex Binary Value ------. Si bien con 16 bits la diferencia entre colores no es tanta.. todas tienen un denominador común: tienen que representar colores mediante bits.f]q. Como ejemplo tomaremos el último valor del registro como tal. tiene un defecto: no permite el uso de animaciones (al contrario que GIF).asciitable.... y preparado para el uso de muchos estándares y formatos de compresión diversos.&. principalmente en trabajos de imprenta o fotografía profesional.!% 0012A030 1E 30 63 58 7A A3 94 B3 66 5D 71 01 04 08 06 07 . PNG además es uno de los primeros ficheros de imagen en contener información acerca del fichero en forma de metadatos de texto (¿esto no os suena de nada? . nadie podrá distinguir este punto.'.. En profundidades de color más comunes hoy día. logrando una altísima calidad en el uso de capas y transparencias.... y su principal desventaja el tamaño que ocupa..Tagged Image File Format (TIFF): TIFF es un formato usado en imágenes de altísima resolución y calidad.. 2004 (GFDL) Página 12 ... sin pérdida de información y con una paleta de color muy superior a los 256 bits de GIF (16 bits).0cXz..`.. no es prácticamente usado para esteganografía.. Se trata básicamente de un mapa de bits preparado para el estándar CMYK......-P).. A pesar de todas sus ventajas (principalmente el tratarse de un formato libre). Además. y deducir cuál es la cifra menos significativa.. por lo que según la profundidad de color será más o menos sencillo la realización de esteganografía. Primero debemos convertirla en “bits”..7J*.tk/ . Con 24 y 32 bits ya la diferencia es muchísimo mayor.. Esto es un fragmento de fichero de imagen BMP (tened listo el editor hexadecimal): 0012A000 35 3D 33 33 3A 35 3B 43 15 1B 21 00 01 05 02 05 5=33:5.*. ----.. Aunque son muchas las formas de representar una imagen en un ordenador.. *.216 y 4.. -----. modificar un punto en una imagen de tamaño medio (200*200 = 40. bien sea cada punto.com/) y comprobamos que el valor de “L” es.C.535. Death Master..000 puntos) y con una diferencia de color de 1 entre 65.. La ventaja de este formato es la enorme calidad obtenida. 0012A020 22 20 2B 3B 37 4A 2A 2E 3D 19 20 2A 18 17 21 25 " +... Con 4 y 8 bits (16 y 256 colores respectivamente) la variedad no es muy alta.3EDP.294... La organización W3C (autores de PNG) han creado el formato MNG para animaciones.777.. --.. . y con la intención de sustituir a GIF como estándar..535.Introducción a la Esteganografía http://www.

. 0 0012A010 0A 07 0A 0E 05 05 0A 0B 0B 11 12 13 1A 0E 11 18 ... .... . cosa bastante complicada. .... ..3EDP. .. ........ 0 0012A070 15 08 0D 12 0A 0B 12 07 0D 12 0B 10 14 11 12 17 . .. . ......'.`. Pero si nosotros le decimos a alguien que tenga la imagen original que compare a partir de la posición 0012A000... El ojo humano no podría distinguirlo nunca. . .... ..'...`.... ..... ..... podrá deshacer los cambios según el patrón usado para introducirlos.. . .. ........ o los ceros restando uno y los unos sumando uno.... .......... . ++++++++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ .. ¿Qué hemos hecho? Hemos cambiado el color de tres puntos en la imagen de forma que sean los colores inmediatamente contiguos en una paleta de más de 16 millones de colores.......death-master. .. . Ya en Internet. . En ficheros con compresión es más difícil introducir cambios sin que el resultado se altere....... 0 ' L ¡Voilà! Guardamos los cambios.=N 0012A050 52 A5 D6 3F 93 CA 1E 60 88 0D 1D 27 0C 1E 28 43 R.. .... *. . sumaremos 1 a la cantidad existente cuando el bit de la letra “L” sea 1..... aunque lo más recomendable es alterar lo mínimo posible el fichero original..(c ++++++++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ...=M ++++++++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ .?..... un fondo de pantalla de 1024*768 a 24 bits de profundidad)..&... ... .. . es muy fácil distribuir un documento con información esteganografiada...!... . .. y comprobamos personalmente que no se aprecia cambio alguno a simple vista (en mi ejemplo. .. 2004 (GFDL) Página 13 ..3EDP...'.. con algo de práctica y paciencia es perfectamente posible introducir mensajes esteganografiados en imágenes JPEG por ejemplo. .. Death Master...*.3EDP..C.. ... .......?.tk/ Ahora......Introducción a la Esteganografía http://www. ... . 0 0012A040 0E 2A 2C 33 45 44 50 1F 1E 26 00 00 00 1A 3D 4E ... .&... ..... debido a que debemos respetar la estructura del algoritmo de compresión.0cXz...... .1 ======== == == == == == == == == == == == == == == == == 0012A050 52 A5 D6 3F 93 CA 1E 60 88 0D 1D 27 0C 1E 28 44 R. 1 0012A020 22 20 2B 3B 37 4A 2A 2E 3D 19 20 2A 18 17 21 25 " +....&... .....(D 1 0012A060 45 5E 3F 38 4A 11 11 17 0E 12 15 0E 11 19 0C 11 E^?8J...f]q.1 ======== == == == == == == == == == == == == == == == == 0012A040 0E 2A 2C 33 45 44 50 1F 1E 26 00 00 00 1A 3D 4E . . 0012A040 0E 2A 2C 33 45 44 50 1F 1E 26 00 00 00 1A 3D 4D . .1 ======== == == == == == == == == == == == == == == == == 0012A010 0A 07 0A 0E 05 05 0A 0B 0B 11 12 13 1A 0E 11 18 .. mediante correo electrónico o una página web......*.?.7J*..... .!% 0 0012A030 1E 30 63 58 7A A3 94 B3 66 5D 71 01 04 08 06 07 ..*. . . . ... ...=..(D Y así obtenemos el resultado: 0012A000 35 3D 33 33 3A 35 3B 43 15 1B 21 00 01 05 02 05 5=33:5. También es posible representar los ceros restando uno a la cifra original y los unos dejándola inalterada..... .. y dejaremos el fichero como está cuando sea 0: 0012A010 0A 07 0A 0E 05 05 0A 0B 0B 11 12 13 1A 0E 11 17 .=N 1 0012A050 52 A5 D6 3F 93 CA 1E 60 88 0D 1D 27 0C 1E 28 44 R... Aún así.`.....

Su principal inconveniente. tiene mucho que decir. pues en calidades altas la cantidad de bits usados para representar el sonido es muy alta.death-master. es la pérdida de información en el proceso de compresión.6 Mb). cualquier modificación puede pasar inadvertida como ruido de fondo. Su principal ventaja es la sencillez del formato. El principal obstáculo para la implantación de ogg es la “estandarización” de mp3: reproductores portátiles. de forma que para nuestros experimentos esteganográficos podremos jugar con los bits menos significativos de la información. es muy útil para realizar tratamiento digital de sonido. es la gran compresión y la poca pérdida de calidad que tiene. basándose en las limitaciones del oído humano: somos sensibles a las frecuencias medias. y un cambio ínfimo no influye en el resultado.. Este formato utiliza un algoritmo de compresión con pérdida de información. así como ser 100% libre de patentes. logra un ratio de compresión de hasta 12:1.. equipos de audio.Waveform Audio File Format (WAV): Se trata del formato de sonido desarrollado por Microsoft para su sistema operativo Windows. sin duda.Introducción a la Esteganografía http://www. .Audio Layer 3 (MP3): Sin duda el más famoso de todos los formatos de audio. pero logrando mayores ratios de compresión (ocupa menos) y una mayor calidad de sonido. 44 KHz. Así pues. y su principal inconveniente es la pérdida inevitable de información. pero poco perceptivos con las altas o bajas. mientras que en los de calidad baja. La principal ventaja de ogg es la mayor compresión y calidad con respecto a mp3.0). aunque la modificación sea más llamativa. y su mayor inconveniente la cantidad de espacio requerido (una muestra de 10 segundos en calidad de CD -PCM.. lo cual supone una cantidad muy grande de información. 2004 (GFDL) Página 14 . y cada vez con una calidad mayor (mientras redacto esto. Al igual que ocurría con los ficheros de imagen. reproductores DVD domésticos. sin ningún tipo de compresión y con cuantificación uniforme. como en mp3.tk/ Ficheros de sonido Los ficheros de sonido son también utilizados a menudo en técnicas esteganográficas. estéreo- ocupa 1. En el sonido ocurre una cosa muy curiosa: nos da prácticamente igual que la calidad sea alta o baja. 16 bit.OGG Vorbis (OGG): Este formato se desarrolla para constituir una alternativa totalmente libre a mp3. Aunque es un formato aún muy joven (aún no hace dos años de la finalización de la versión 1. Death Master. y además percibimos mal los sonidos bajos que suenan a la vez que sonidos muy fuertes (efecto de ocultamiento). La representación de la información en los ficheros de sonido se realiza generalmente mediante el registro consecutivo de las muestras que componen el sonido. Echemos un vistazo a los tipos de ficheros de sonido más comunes: . Su principal ventaja. el sonido es representado siempre en forma de bits. al tratarse de un sonido de baja calidad (por ejemplo calidad de radio). Al ser un formato realmente sencillo.. . pues tiene un sistema de compresión similar al de mp3.Motion Picture Experts Group . estoy escuchando un mp3 de 128kbit y 44100Hz. eliminando los sonidos que no oímos. Se compone de una cabecera de 43 bytes y un conjunto arbitrario de bytes que contienen las muestras una tras otra.). La forma de introducir los datos es la misma que ya hemos visto en el caso de ficheros de imagen.

(MPEG).Ficheros de texto formateado: Microsoft Word (DOC)...Introducción a la Esteganografía http://www. pero a la vez son complicados de modificar sin estropearlos. OpenOffice. dieron algún susto al gobierno del Reino Unido. y si la modificamos para que sea una “f”. HTML.tk/ Otros ficheros interpretados Como ya dijimos al principio.. cualquier formato es bueno para esconder información. PL.org (SXW). Los ficheros de texto formateado usualmente almacenan metadatos que nos resultan muy útiles para esconder nuestra información (y en el caso de Microsoft Word.. pero nosotros podemos usar -casi- cualquier tipo. . Algunos formatos que también son buenos para la ocultación de información son: . 2004 (GFDL) Página 15 . Este tipo de ficheros son también útiles dada la ingente cantidad de información que almacenan.death-master. La práctica totalidad del software disponible en el mercado que automatiza la esteganografía trabaja con imágenes y sonidos. para evitar dañarlo o modificarlo tanto que llame la atención.. SH. Death Master. en el texto cambiará para ser una “f” igualmente.. dado que prácticamente todos son ficheros de texto plano que son leídos por su correspondiente intérprete. No obstante los metadatos también pueden ser leídos y una modificación puede ser detectada con relativa facilidad. XviD (AVI). El caso de ficheros de texto plano.Ficheros de vídeo: Motion Picture Experts Group -en cualquier versión. PHP) es distinto.. Es importante que antes de modificar un fichero sepamos a grandes rasgos cómo se estructura. debido a los complejos algoritmos de compresión utilizados. Esto hace que una “e” en el texto sea una “e” limpia al abrir el fichero con un editor hexadecimal. }:-D). scripts o programas de lenguajes interpretados (TXT.. pues NO es aconsejable usarlos en esteganografía. DivX (AVI). debido a que son los más sencillos de usar para estos propósitos.

los compiladores de C de Microsoft suelen usar la instrucción debug (INT 3) que en forma hexadecimal es 0xCC (CC). según trabajemos con ficheros ELF o Win32 PE). Por ejemplo. uniendo todo el código mediante diversas instrucciones de salto. . o cualquier otra cosa con la condición de que el programa NO continúe en ese hilo de ejecución de forma lineal. El segundo tipo. El principal efecto es el aumento de tamaño del fichero con respecto a la versión sin infectar (dada la inyección de código).). busca áreas libres en el ejecutable (debido al alineamiento) y distribuye su código en esos “huecos” del fichero. así como también de programación en lenguaje ensamblador (AT&T e Intel. Este tipo de virus hoy día no son muy comunes. Antes de entrar al meollo de la cuestión. Nosotros no queremos infectar nada. los compiladores de C de Borland suelen usar la instrucción NOP que en forma hexadecimal es 0x90 (90). Para entender cómo funciona esta técnica tenemos que echar un vistazo al modo de trabajo de los virus que infectan ejecutables.¿Porqué existen esos huecos? Dependiendo del compilador que usemos. y otros compiladores como GCC (Gnu C Compiler) usan diversas instrucciones. mucho más complejo de programar y mucho más raro de encontrar. En caso de que el programa continúe su hilo de ejecución de forma normal. Si antes de esos huecos se encuentra un salto incondicional... Los efectos de este complejo método de infección son principalmente que el fichero sigue ocupando el mismo espacio en disco y que las compañías antivirus se muerden las uñas a la altura del codo para crear rutinas de desinfección para estos bichos. entonces sí podemos usar esos huecos a nuestro antojo. si queremos realizar de forma seria esta técnica debemos tener ciertos conocimientos sobre virus informáticos e ingeniería inversa (desensamblado. . Según su técnica de infección podíamos distinguir dos tipos de virus: El primer tipo inyecta su código al final del ejecutable e introduce en algún lugar libre del mismo una instrucción de salto incondicional (JMP) hacia el área que contiene el código del virus. 2004 (GFDL) Página 16 . lo que entre otras cosas dificulta la infección del ejecutable.. y este es uno de los principales motivos por el que esta técnica es tan compleja.death-master. Death Master... Eso nos da un posible espacio de huecos libres de entre 0 y 15 bytes para utilizar como queramos. o una instrucción comparativa que ejecute dos o más saltos condicionales dependiendo del resultado de evaluar la expresión.tk/ Ficheros ejecutables ¿Esconder datos en ficheros ejecutables? ¿Es eso posible? SÍ. éste puede usar un alineamiento de entre 4 y 16 bytes.¿Puedo escribir en esos huecos sin más? NO. crackeo. pues han sido desplazados por los omnipresentes gusanos.Introducción a la Esteganografía http://www. aunque se trata de una técnica compleja que no siempre da buenos resultados. conviene hacer una anotación: si bien para comprender esta parte no necesitaremos conocimientos específicos.. NO podremos usarlos. La mayoría de los compiladores de C (principal lenguaje de programación) trabajan con un alineamiento de 16 bytes. pero hace unos cuantos años era el tipo de virus más común. pero sí pensamos que no estaría mal poder ocultar información en esos huecos libres que sabemos que existen. .¿Cómo reconozco esos huecos libres? Cada compilador tiene una forma de rellenar esos huecos.

Ahora el jarro de agua fría: la esteganografía en ejecutables tiene varios problemas serios.. Como conclusión personal. Por último.. no es mejor que sobre ficheros interpretados. y por tanto no válido.tk/ Esto diferencia la técnica esteganográfica en ejecutables de la infección por virus... ingeniería inversa. y deducir que ese área originalmente contenía instrucciones vacías. pues implica tener conocimientos avanzados de ramas de la seguridad informática muy complejas (virus.. no virus concretos. y ya sabemos cómo introducimos información. Aún así. de forma que los huecos que a nosotros nos valen (los menos) al virus no le valen. Cualquier pretensión de pasar información inadvertida se pierde. El ejecutable dispone de 7 bytes libres donde escribir lo que queramos.).. Nuestra información esteganografiada en un ejecutable se parece bastante a un virus. necesita mucho tiempo para llevarse a cabo. nuestro ejecutable modificado será considerado corrupto... el que quiera ya sabe cómo :-P) debemos asegurarnos que el programa anterior a esos bytes libres no continúa en ese hilo de ejecución.. cosa que se sale de la temática de este documento..-) Death Master. enviar instrucciones al procesador... porque en el mejor de los casos el programa hará cosas raras. Además existe otro problema: si el software usado realiza comprobaciones MD5... y conlleva bastantes problemas prácticos en su ejecución. A un virus le interesa ejecutar código. ¿Porqué? Porque cualquiera con conocimientos en ingeniería inversa puede ver que el código del programa llegado a determinado punto no ejecuta instrucciones de un área que contiene instrucciones (muy probablemente instrucciones sin sentido. Pero para no inyectar código en el procesador (bueno. con lo cual no estamos cumpliendo los preceptos de la correcta esteganografía... como dicen que el saber no ocupa lugar.. A pesar de la complejidad de la esteganografía sobre ejecutables. las compañías antivirus en sus productos modernos incluyen sistemas heurísticos de detección de virus. el que quiera saber más de esteganografía en ejecutables primero debe empaparse de ingeniería inversa. Así pues.U \-----------------/ | \-----------------/ | | | | +> PUSH {Inicio de subrutina} | | | | | +> NOP {Huecos} | | | +> RETN {Final de subrutina} | +> {Código del programa} A primera vista podemos decir que este programa seguramente fue compilado con un compilador de Borland..death-master. al tratarse de información).. Si nosotros abrimos un fichero ejecutable y encontramos esto: 00000800 E5 00 F0 73 03 19 81 C3 90 90 90 90 90 90 90 55 . Al fin y al cabo ya sabemos cómo encontrar los bytes libres. mediante los cuales reconocen patrones de conducta. y en el peor (la mayoría) el ejecutable quedará inservible. 2004 (GFDL) Página 17 ... lenguaje ensamblador.s.. ... y viceversa.. a decir verdad es peor.Introducción a la Esteganografía http://www.. diré que la esteganografía en ficheros ejecutables no es práctica. aquí queda. Nosotros queremos que lo que modifiquemos NO sea enviado al procesador como código a ejecutar. por lo que quizá sea detectada como un virus.

la codificación de la segunda palabra o letra de un mensaje depende de la primera (puede depender del último valor de la cifra. que significará el inicio de otra palabra.). pero con distinta forma de aplicación. como por ejemplo: ocultamos una frase de cinco palabras. Así establecemos un orden estricto de decodificación que impide obtener completamente el mensaje sin la primera parte.. Así. Otras técnicas Existen muchas otras técnicas esteganográficas que permiten aumentar la complejidad y seguridad. Death Master. nada nos impide variarlo en más bits. Mientras trabajemos con ficheros que usen mucha información (imágenes de 24 bits o más por ejemplo) no se notará que variemos la escala en 1 ó 10 unidades. Uso de distintas magnitudes Aunque lo habitual es variar en 1 bit el byte del mensaje original. un posible atacante deba conocer el sistema de codificación usado... Adición de ruido Aunque en un mensaje esteganografiado TODO el fichero es considerado ruido. Naturalmente la clave ha de ser conocida por el destinatario.tk/ Esteganografía avanzada La esteganografía es un arte complejo y con muchos matices. Consiste en usar distintas codificaciones para cada porción arbitraria del mensaje a ocultar. en la segunda realizamos lo mismo pero invirtiendo el orden de los bits. una frase de cinco palabras puede tener una clave de codificación para cada una de las palabras: en la primera restamos una unidad en los ceros y sumamos una unidad en los unos. podemos establecer claves complejas. Así. 2 bits en la codificación de la segunda. de la posición.. Así.Introducción a la Esteganografía http://www. hasta que vuelva a aparecer una modificación de 1 bit. es posible el uso de determinadas técnicas avanzadas que permiten aumentar la eficacia de una información oculta mediante esteganografía. podemos añadir ruido en el proceso de esteganografiado. del último valor modificado. tantas como queramos idear nosotros mismos. en la tercera realizamos el XOR de los bits.. Esteganografía en capas Mediante esteganografía en capas establecemos una relación lineal entre los elementos ocultos. Sin llegar aún a la combinación de esteganografía y criptografía. Veamos alguna: Uso de múltiples claves Esta técnica es heredada directamente de la criptografía. y nos proporciona un tipo de clave más compleja. y al ocultar la primera de las palabras sumamos 1 bit en la codificación de la primera letra. 2004 (GFDL) Página 18 . con lo cual únicamente debemos comunicar la clave para obtener esta parte y la pauta a seguir para encadenar los fragmentos.death-master. Así. podemos modificar unos cuantos bits aleatorios del mensaje de forma que aún teniendo el fichero original. 3 bits en la tercera. Lo ideal es que cada uno idee y use su propia técnica.. además de modificar los bits necesarios para inyectar nuestro mensaje.

tk/ Esteganografía y criptografía Como ya comentamos al principio del presente documento. más externa. En ciertos países el gobierno controla a la población hasta el extremo de controlar la información que emiten a la red (por ejemplo en China). la esteganografía hoy día está íntimamente ligada a la criptografía. interna. la criptográfica. Con la armadura ASCII del mensaje solamente necesitamos un poco de paciencia para esteganografiar los datos. Mediante técnicas criptográficas como las usadas por PGP (Pretty Good Privacy) podemos hacer nuestros datos completamente ilegibles. Death Master. pero un fichero cifrado con PGP tiene una estructura muy específica que lo hace reconocible de inmediato. Mediante la combinación de estas dos técnicas estableceremos dos capas en la seguridad de la información: la primera capa. Cada una de las capas tiene un cometido en esta peculiar simbiosis: la capa criptográfica se encarga de la seguridad de los datos (pues aunque la esteganografía sea un medio de proteger datos. y cuyo código fuente puede ser revisado por cualquiera que desconfíe. por lo que cualquier dato cifrado sería interceptado de inmediato. especialmente GnuPG que es software libre. pues el tamaño de salida de datos es mucho menor. Teniendo unos conocimientos básicos de criptografía y esteganografía podemos ocultar nuestros datos con un grado de seguridad sorprendentemente alto (NOTA: Para los interesados en la criptografía. ya tendremos todos los caracteres que componen nuestro mensaje cifrado. tengo publicado un documento sobre el tema en mi web).Introducción a la Esteganografía http://www.death-master. Si ciframos nuestros datos de forma que nos devuelva una armadura ASCII. 2004 (GFDL) Página 19 . pero la seguridad intrínseca de la esteganografía para datos importantes no es mucha. Aunque nada nos impide realizar nuestros cifrados a mano. es la esteganográfica. Yo sin duda recomiendo cualquier implementación de openPGP. Podemos comparar la criptografía a tener alarma en casa: nuestra seguridad aumenta muchísimo. Es muy recomendable que la clave que usemos para la realización de criptografía orientada a esteganografía use el algoritmo DH/DSS (Diffie-Hellman / Digital Standard Signature). Mediante técnicas esteganográficas podemos hacer que cualquier información pase inadvertida (subyaciendo en información inofensiva). para usar algoritmos y claves complejas es casi imprescindible el uso de software especializado. y la segunda. pero todos los que vean las medidas de seguridad sabrán que tenemos cosas importantes que guardar (por norma general se cifran únicamente los contenidos muy importantes). no es comparable al cifrado) mientras que la capa esteganográfica protege la integridad de la capa criptográfica.

Esta técnica es la más rudimentaria a la hora de realizar análisis esteganográfico y no tiene mucha utilidad real. Ataque estadístico Este tipo de ataque se basa en el mismo concepto que el criptoanálisis diferencial del que hablé en Criptosistemas Informáticos.Introducción a la Esteganografía http://www.org/detection. Conclusión Dada la naturaleza de la esteganografía. esta técnica es extremadamente lenta. mediante su módulo Stegbreak. las posibilidades de que nuestros datos sean comprometidos son prácticamente cero. por lo que se automatiza mediante diversos programas. siempre y cuando dispongamos del fichero original. pero difícilmente podremos obtener información útil más allá de la existencia de los mismos. El concepto de este tipo de ataques se basa en la comparación de la frecuencia de distribución de colores de un fichero potencialmente esteganografiado con la frecuencia que podríamos esperar en teoría de un fichero esteganografiado. se publiquen más investigaciones sobre debilidades y formas de aprovecharlas.php). el ataque estadístico lo es mucho más. Si nosotros esteganografiamos nuestros propios mensajes a mano o -si somos programadores. Si esteganografiamos nuestros mensajes a mano.death-master.outguess. En caso de no disponer de él.tk/ Ataques a la esteganografía No son muchas las investigaciones publicadas acerca de métodos de ataque a la esteganografía.desarrollamos una herramienta privada. Este software. la posibilidad de que la información sea recuperada ilícitamente es ínfima. 2004 (GFDL) Página 20 . se pueden buscar irregularidades en el fichero esteganografiado para tratar de encontrar signos de la existencia de datos ocultos. resulta extremadamente resistente a cualquier tipo de ataque. Pero a nuestro favor tenemos que los programas especializados en detección y ruptura de mensajes esteganografiados suelen buscar pautas de mensajes ocultos con algún tipo de software especializado en la creación de los mismos. aunque es de esperar que debido al auge que ha experimentado hoy en día gracias a técnicas como las marcas de agua. Aunque los resultados son bastante buenos (ha demostrado en muchas ocasiones ser efectiva). realiza ataques de diccionario a los principales sistemas públicos de esteganografía. Los programas que aseguran detectar y recuperar datos ocultos mediante esteganografía lo hacen siempre buscando mensajes ocultos con programas de dominio público. Si la creación de mensajes esteganografiados a mano ya es complicada. Uno de los programas más famosos para detectar la presencia de esteganografía en ficheros de imagen JPG es Stegdetect (http://www. Death Master. Para más información sobre análisis estadísticos en esteganografía conviene leer los estudios publicados por Stefan Hetzel. Los dos métodos más usados para detectar y atacar la esteganografía son: Ataque visual Consiste básicamente en buscar de forma manual diferencias entre el fichero original y el esteganografiado.

com/hydan/ • OutGuess: (Freeware // Código fuente disponible .com/en/sss/ • mp3stego: (Freeware // Código fuente disponible . Sistemas Windows) http://www. Sistemas Windows // Sistemas *NIX // etc) http://www. 2004 (GFDL) Página 21 . un par de consejos: En primer lugar. Sistemas Windows // Sistemas *NIX // etc) http://www.darkside. yo solamente considero fiable al 100% el software libre.fi/pub/crypt/steganography/jpeg-jsteg-v4. existe la posibilidad (sí. Sistemas Windows) http://securengine. Sistemas Windows) http://www.petitcolas.gz • Nicetext: (Freeware // Código fuente disponible . sino que la clave es la técnica usada para esteganografiar. Sistemas Windows // Sistemas *NIX // etc) http://www.outguess. Por ello. pongo algunos de los principales programas de esteganografía que existen en la actualidad: • Steganos Security Suite: (De pago // Propietario . Como mucho.death-master.com.funet. Dicho lo cual.crazyboy. al igual que ocurre con la inmensa mayoría de los programas de cifrado.au/gifshuffle/ • Securengine: (De pago // Propietario . aunque en este caso concreto. estamos permitiendo implícitamente que cualquiera con ese software pueda recuperar nuestros datos. en la mayoría de los casos en archivos de imagen o sonido. ciertos programas incorporan la opción de establecer una contraseña y añadir algún cifrado sencillo a los datos. Sistemas *NIX) http://www. nada que un ataque de diccionario no pueda solucionar (de hecho ya hemos hablado de Stegbreak).au/snow/ • Gifshuffle: (Freeware // Código fuente disponible .isecurelabs. Sistemas Windows // Sistemas *NIX // etc) http://www.com.steganos. En segundo lugar.darkside.com/ • JPEG-JSTEG: (Freeware // Código fuente disponible .org/ • Snow: (Freeware // Código fuente disponible . Sistemas Windows // Sistemas *NIX // etc) ftp://ftp. Antes de empezar a esteganografiar como locos..net/fabien/steganography/mp3stego/ • Hydan: (Freeware // Código fuente disponible .diff. soy un paranoico :-P) de la existencia de backdoors que comprometan totalmente la información contenida. puesto que en la esteganografía no existen las claves como en la criptografía.. el que el código sea público facilita aún más a un atacante el obtener nuestra información.tk/ Software esteganográfico Actualmente existen muchos programas especializados en ocultación de mensajes de texto mediante esteganografía.ctgi. Si usamos un software que tiene su propia técnica.net/nicetext/ Death Master. NO considero buena idea el uso de ningún tipo de software para ocultar datos importantes.Introducción a la Esteganografía http://www.

. 16 bit y mono a 128kbps.net/~hpn/foro/index. Así pues. hace casi un año.com/death/orig. Ahora hay que dar el primer paso. y también que nunca hay un bit modificado más allá de la posición 0000x070.clubhackers. Ya tenemos el rango de datos. al pulsar una tecla reproduce el fichero por el canal de audio).01000011 (00005000-00005070) . :-( No voy a volver a escribir las pistas (el que esté interesado puede visitar el enlace) sino que paso directamente a la resolución del reto. NOTA: Al escucharlo os reiréis.01000100 (00003000-00003070) . procedemos a desentrañar esos 10 bytes.wav Fichero esteganografiado: http://www. para lo cual lo mejor es empezar convirtiéndolos en base decimal y hexadecimal.01001100 (00006000-00006070) .01000011 (00004000-00004070) .sfreedom... y no se animaron. Para realizarlo.01011000 (00009000-00009070) . ¡va por ti! :-P Sabemos que buscamos un año.tk/ Autopsia de un reto Ahora vamos a ver un ejemplo que nos va a hacer comprender mucho mejor cómo funciona la esteganografía “artesanal”. así como un añadido con pistas concluyentes para la resolución del reto que publiqué para animar a la gente a intentarlo.01001001 (00010000-00010070) – 01011000 Ahora debemos tratar de comprender qué pueden significar esos bytes.clubhackers. . El hilo original del reto es: http://www.01001101 (00002000-00002070) .000 Hz.com/death/estega. voy a destripar paso a paso el segundo reto de esteganografía que publiqué en HpN.01011000 (00007000-00007070) .01011000 (00008000-00008070) . obteniendo los siguientes valores: (00001000-00001070) .wav Se trata del fichero voice_input que uso en el juego Counter-Strike para reírme un rato (con un script. la calidad del sonido debe ser PCM a 8. Es una broma que tengo con un amigo mío del norte. Miguel. 2004 (GFDL) Página 22 .Observamos que siempre existe un bit modificado en la posición 0000x010 (y en 00010010).Observamos que hay varias diferencias dispersas entre los grupos 00001000 y 00010000. En primer lugar.. Debido a las características del código de streaming de sonido del motor del juego. para lo cual compararemos el fichero original con el esteganografiado y buscaremos diferencias: .death-master. descargamos los dos ficheros de audio: Fichero original: http://www.Introducción a la Esteganografía http://www. Death Master.php?act=ST&f=6&t=746 En este hilo está el texto original del reto.0000x070 estamos representando un byte. por lo que deducimos que en el rango 0000x000 .

............................... 77 / 4D ...........tk/ (00001000-00001070) .. 76 / 4C .................. 01000100 (00003000-00003070) ..... 01011000 (00009000-00009070) I... deben ser proporcionados por el emisor del mensaje.. 67 / 43 ..................) en caso de esteganografía “real”.... 73 / 49 . ............. son números romanos........... que como ya habréis supuesto............. Concretamente 1789...... 01001101 (00002000-00002070) ................ 01000011 (00004000-00004070) C....... 67 / 43 ............... 88 / 58 ........ año de la Revolución Francesa................ Para el que le haya gustado.............. 01011000 (00008000-00008070) ..... 88 / 58 .............................-) Death Master. 01011000 (00009000-00009070) ......................... más sencillo que éste. 01001001 (00010000-00010070) .. 01011000 (00008000-00008070) X............... ¡Reto resuelto! Hay que tener en cuenta que todos los pasos que doy como obvios (intuir dónde hay un byte............ 88 / 58 ........ 01011000 (00007000-00007070) ...................... 2004 (GFDL) Página 23 ........ 88 / 58 ....... 88 / 58 ..... 01001100 (00006000-00006070) X........ 67 / 43 ..death-master....... En este caso se daban pistas por tratarse de un reto.............. 01000100 (00003000-00003070) C...................................... 88 / 58 ...... 68 / 44 . 73 / 49 ..... 01001101 (00002000-00002070) D........ 88 / 58 .......................... 01011000 Ahora consultamos la tabla ASCII para ver qué letras representan esos valores: (00001000-00001070) M....... consultar la tabla ASCII....... 67 / 43 ...... en HpN queda el primer reto de esteganografía................... 88 / 58 ... 01000011 (00005000-00005070) ......... 01000011 (00005000-00005070) L.... 01001001 (00010000-00010070) X.... 01001100 (00006000-00006070) .. 76 / 4C . 01011000 MDCCLXXXIX............ 01000011 (00004000-00004070) .... 01011000 (00007000-00007070) X..Introducción a la Esteganografía http://www....... 77 / 4D .. 68 / 44 ......................

Death Master Autentificación: -----BEGIN PGP MESSAGE----- qANQR1DBwUwDJoT5ygJgu7ABD/9qXlqVAydntKHiOo5FO0WiKcG3iPvTWjHUTpu5 QeA2tXtUjwbE+mBvH6qvycNRP3VhchJpym+DOr7pwlQFTykYdbrCKoWG9Wpc1N4w MqFBjcbmZaVwwMKNcfbhuaTbi3sDwnbHZe+02auv+c2GZ9kByo9MzzteU7tPP7YP BOCojF+SrbwpBuixEFEWs33FgRUTEPcL/MMSXCmhZqucZ4WE5CCNxVBbX99U49kG LiTzVo4ua6AAy6FifSsr+TDvLq6tJIYCHpLcOuoOjlRncv9bEmJDmAfAbkyfNWtg STJGWOesInr3Zh0wwnR/LvwcuUI7piUfuKkf7z+U/TRy2WwY60lAfWsH7mg6IWOS AWMss1SF0yn+KtvP9r6mVJacHmKBRKtBKXIUj62UeyujmAWqAZZYDUSJv4l91EU+ CPONqJD7nnVHIw2jlOsCRxAb0velbmDc8/d0SWdwbkVPTJxjZHpzImMIPKvBck2D DbIb9sNfptzYMT39qmBGfAw/d6cPactyMjI+N47QEekvCWEUnYHLfUszWNxBjVEj aiCYp+Y039B3TfP9H6KlarRbindCj9fulXFAe857R/rImRHNdgKnpwYqMDiVwcPA kqXT5wtFSIUXApkOOtbeQAsV07vBogWAACP3mN9M74ljz5zQYOLzIHwm7ata1Ge/ cMHY5tLChAGwnNeYku0ovZbWn4HHqBMz/114JKN6GOpYPYY1JgJ5WfuXFFINlo6t pAHt9Ae31zaTozy6XBMp9mxGcneTJOwnU6sLRc4Z3kUnBpiNPuO95y6evyHGdFEx TfH6bk7Gh9inN9uqLI6cq8boCew8dk4KmYQqKlNLdfbhaKl3y0qlM9T9S4FXC6OX +W22FPTudD+SVssp3mNZFkwlYs8kbKR16izlqmCmy0XJz6aLKuxycjS56+PoLq7f NBvDybrBlVBnbvQ1zXlhBWvZP3XwUCEV63kfPg+W+5ozDm4taS7qGFqAMn9m7HpJ IdxzgwSxhBS3YboRnbIAe4T7Z7WJ5YBRYrpmXTxT9YNxlxv4IbWnPZNeYk1303xp cM74vZRhD9q8kodRBmrpCSCHZwmJQHzDZ4MAG1GZX02POOi//7SthGXGAT5xF5my GjNnBj+uD6keNdRC8eoxP5n01yEPXImmFZI/rgnZLpKvTATvL9tF3sSMvkXt8V0D 4k7NHfUoPhlYbrKVtZ/h/+lsBkgAeJsWKO4NiFhcTbA0NIpM4C3SqJI3KP7eOKwx XJ2y1sifce9GdSXRx/Xxj5oUil4Rxzy/CX9EOwwLfwZXH3c7Xg+HVV70aubxWjoC 9UTFEAsV/KqbnT13lJOvGEJ3WHnd5I/S61hIzrXGQe6SGELDsqSRVOO8B40wH7YU AD0t/HwnQp7x9Sux9gXb9ENiZ6GJaqK/bXtBHGInU4js3u0RVIy+rbw6EHCNM6EA usQSt6Wx+YgOzcsZVXcXttCJWFxKElnvql+Cvl9DQyhBkt6TVBJtXcGRt2F1B5H2 NU2GzzKDrN5KdslPvoUWJt/kdK5nTxAatB+cjEQZXLwgxDd2wv5SChoV0iBbGnBW pSmaK1h9/j2T8z74RYmC7TU55cfeX0Vuozf3lCO5+PAgIjj8hhEn7Ae9U1+OmOd7 9zmVBLYInweTARwTRgRiMmm2luSnni9/c7VYD073IiTWADsRZ+1HbJPhr/0GNaCr gy9yZq85jxpS+bRIedKEus5+2LEpC+XYIjI71vjMqTpdNBvExgG4w9F4NarHr+pX WXeuW5aw+fO9LMc1CoJQB6gLw/qCtmwigdmR =/28t -----END PGP MESSAGE----- Death Master.tk/ Distribución de este documento Este documento se distribuye en formato PDF realizado bajo OpenOffice. Ficheros a distribuir: Nombre: “Estega.pdf” Descripción: Documento principal.Introducción a la Esteganografía http://www.sig”. pues puede haber sido alterado junto a la cadena de hash.sig (MIME/PGP) de firma. Cualquier modificación no autorizada del documento hará que la firma del mismo no sea válida.sig” Descripción: Firma digital PGP del fichero “Estega. y ésta es imposible de falsificar.pdf” y “Estega.org 1. Nombre: “hash.txt” Descripción: Contiene la cadena hash MD5 de los ficheros “Estega.pdf” realizada por el autor. pero no es garantía de la inalterabilidad del documento. Para comprobar la completa autenticidad e inalterabilidad del fichero.1. Nombre: “Estega.1. usar el sistema PGP para validar el fichero . 2004 (GFDL) Página 24 .pdf.pdf.death-master. Datos adicionales: El hash MD5 puede resultar útil para comprobar la integridad del fichero descargado.

A copy of the license is included in the section entitled "GNU Free Documentation License". and no Back-Cover Texts. 2002 Free Software Foundation.0 This document has been freed by its author under the license GNU Free Documentation License (GFDL). and no Back-Cover Texts. distribute and/or modify this document under the terms of the GNU Free Documentation License. November 2002 Copyright (C) 2000.html GFDL Version 1.death-master.2. correspondiente a Death Master. copia o reproducción queda sujeta a los términos de la citada licencia. distribution or general purpose use of this document should respect the original responsibility of it.2 or any later version published by the Free Software Foundation.tk/ – Versión 1. 2001. November 2002 Copyright (C) 2000.Introducción a la Esteganografía http://www. Copyright (c) 2004 Death Master Permission is granted to copy. Version 1. 2002 Free Software Foundation. copy or reproduction is subject to the terms of the mentioned license that can be consulted in the following website: • GNU Free Documentation License: http://www. y su utilización.org/copyleft/fdl.tk/ Licencia Introducción a la Esteganografía – http://www. no Front-Cover Texts. modificación. Version 1. Any copy. Cualquier copia. Inc.org/copyleft/fdl. modification. 2001.death-master.2.html GFDL Version 1. distribución o utilización en general de este documento debe respetar la autoría original del mismo. with the Invariant Sections being “Distribución de este documento” and “Licencia”. que puede ser consultada en el siguiente sitio web: • GNU Free Documentation License: http://www. distribute and/or modify this document under the terms of the GNU Free Documentation License. no Front-Cover Texts. * End Of File * Death Master. Introduction to Steganography – http://www.tk/ – Version 1.0 Este documento ha sido liberado por su autor bajo la licencia GNU Free Documentation License (GFDL). and its use. Inc.gnu.gnu. corresponding to Death Master. Copyright (c) 2004 Death Master Permission is granted to copy. 2004 (GFDL) Página 25 . with the Invariant Sections being “Distribución de este documento” and “Licencia”.death-master. A copy of the license is included in the section entitled "GNU Free Documentation License".2 or any later version published by the Free Software Foundation.