Está en la página 1de 42

Esteganografía. http://xionexsystems.blogspot.

com
——————————————————————————————————————

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 1
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

Índice.
Índice de temas.

Prólogo y agradecimientos.

Introducción.

Historia.

Publicaciones a través del tiempo.

Métodos antiguos y actuales.

Bases.

Interpretación y tipo de ficheros.

Ficheros de imagen.

Sistemas básicos.

Método copiar mediante la consola.

Método (LSB).

Ficheros de Audio.

Método (LSB) en audio.

Esteganografía actual.

Esteganografía avanzada.

Software.

¿Efectividad?

Derechos de autor.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 2
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

Prólogo.
Este documento esta dedicado a los usuarios de las comunidades hack, pero en
especial a Infierno Hacker, así como a los lectores de mi blog. El objetivo del
mismo, es promover el estudio de un arte el cual en el macro mundo del Internet, la
información existente es demasiado exigua, hablamos de la esteganografía. El
manual no necesita demasiados conocimientos para poder seguirlo, de igual manera
cualquier duda podrá ser publicada en el foro o en el blog, donde yo y otros usuarios
que tengamos algunos conocimientos del tema podremos responder tus dudas. En el
manual intentaré ser DEMASIADO explicito, esto para el mejor entendimiento, así que
si te llega a parecer desesperante que ponga tantos ejemplos para explicar algo
espero y comprenda él por que de esta acción, no todas las personas pueden
entender un punto a la primera y esto va dedicado a principiantes.

Seguramente después de leerse el manual entenderán el tema, pues estoy intentando


añadir las principales herramientas que se usan en el ámbito de la enseñanza.

Así al final ustedes mismos serán capaces de ocultar mensajes de diversas maneras y
de empezar a utilizar métodos creados por ustedes mismos.

Solo recuerda que ante cada situación tu mejor ayuda será Google.

La creación de este manual es con fines meramente educativos el uso que le dé a


estos conocimientos será responsabilidad tuya, por lo cual el redactor de este manual
no se hará responsable de ningún tipo de problemas en los que te veas metido.

Agradecimientos.
Los agradecimientos mas que nada se los dedico al grande infierno hacker, el cual es
una comunidad que se esmera en salir adelante cada día. Desde el primer día de mí
llegada a la comunidad he aprendido demasiadas cosas que me han ayudado en este
camino del hacking que muchos compartimos, por ello os dedico este manual.

También quisiera dedicarle este manual a


xSkywalker, maestro y amigo el cual con sus
retos de esteganografía y criptografía me dio
la iniciativa en aprender todo sobre este
arte, el cual me capturo desde el primer
día en que empecé a averiguar sobre él,
es por ello que te lo dedico amigo.

Sin más comentarios, es hora de


empezar con el manual.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 3
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

Introducción.
“Lo más importante de la vida siempre pasa desapercibido ante la visión humana”.

XiONeX

Como pueden ver soy pésimo para crear frases, pero quise agregarla por que hace
tiempo leí un manual donde lo hacían, me pareció original y adecuado (jaja.)
Bueno vamos al punto, la esteganografía es una palabra de origen griego que
significa: (isteganos: encubierto, con un sentido oculto) y (ographos: escritura). Lo
pondría en escritura griega, pero no se como hacer que mi Word empiece a escribir en
griego.

En conclusión, podemos definir esteganografía como el arte de ocultar un texto, o


como el arte de escribir en una manera oculta.

Muchas personas creen que la esteganografía y la criptografía son iguales, pero ¡NO!.
Pueden intercalarse la una a la otra para tener mejores resultados, pero jamás serán
iguales.

Criptografía: (nCripto: Oculto) y (eGraphos: Escritura), tal vez se vea demasiado


parecido pero no lo es. La criptografía según el diccionario se define como: Escribir de
forma enigmática. La diferencia radica en el punto de lo “enigmático”.

La criptografía se encarga de tomar un mensaje legible (texto plano) y posteriormente


cifrarlo (encriptarlo) para que solo la persona que lo envía y el destinatario puedan
entenderlo, de esta manera la información pasara por manos de terceros pero no
podrá sé legible sin conocer el método con el cual fue cifrado, claro que esto no
siempre será posible pues el estudio de la criptografía también se encarga del
criptoanálisis y de intentar romper ese tipo de seguridad para poder descifrar
cualesquier tipo de mensaje.

Ahora, la esteganografía tiene el mismo propósito: transportar información, solo que


en la esteganografía ni si quiera se sabe que la información existe. Para entenderlo
mejor, asumamos el papel de una tercera persona que quiere “conocer la información”
que se trafica entre dos medios, pues si estos medios están usando criptografía
nosotros con suerte podremos ver sus mensajes, pero lamentablemente los mismos
no tendrán ningún significado ya que fueron cifrados para que fuesen ilegibles.

Ahora, si hablamos de esteganografía nosotros con suerte podremos capturar trafico


de información pero al momento de obtenerla podremos leer algo de información pero
no sabremos de la existencia de lo que en realidad se están comunicando, solo el
escritor y los destinatarios saben como extraer dicha información.

Aquí elabore unas imágenes en el xphotoshop, que por cierto son demasiado pésimas.
Así que para la próxima le pido ayuda a un diseñador experimentado (jaja). Las
imágenes son una especie de grafica que representa la información transitando sobre
dos medios y como la ve una tercera persona.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 4
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
Criptografía:

Como puedes ver en la criptografía se pudo obtener un mensaje, pero al momento de


obtenerlo no se dio con ningún tipo de información, pues toda esta se encontraba
encriptada. De igual manera no es muy seguro, pues el “espía” puede darse a la tarea
de descifrar el código.

Esteganografía:

En cambio la esteganografía (tal y como se ve en la imagen), puede resultar más


efectiva pues no solo el mensaje pasa desapercibido, si no que puedes incluso dar
información falsa.

Bueno, básicamente eso es la esteganografía y su diferenciación con la criptografía.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 5
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

Historia.
La esteganografía a estado durante toda la historia y en diversas técnicas que han ido
cambiado con el tiempo.

Un claro ejemplo es el de heródoto (libro), en el cual se narran las historias de un


sujeto (Demaratus) que para poder mandar mensajes con una segunda persona tuvo
que tomar un cuadernillo de dos hojas o tablillas; rayó bien la cera que las cubría y en
la madera misma grabó el mensaje y lo volvió a cubrir con cera regular. También tomo
a uno de los esclavos le rapo la cabeza y le tatuó el mensaje en el cuero cabelludo.
Solo fue cuestión de que le volviera a crecer el pelo y mandar al esclavo con ordenes
de que lo volvieran a rapar. ¿Increíble no?, eso solo muestra que la esteganografía se
basa en creatividad e ingenio.

En el siglo XV un científico italiano llamado Giovanni Della Porta, pudo esconder un


mensaje dentro de un huevo cocido, el método solo consistía en crear una tinta la cual
se preparó con alumbre y vinagre. Luego de esto solo escribía en el huevo (cáscara),
pero esta penetraba hasta la superficie de la albúmina del huevo cocido. La única
manera de poder revelar la información, sería quitando la cáscara del huevo cocido.

En el siglo XVII el alemán Johannes Trithemius escribió


un libro al que tituló Steganographia (El primer libro de
esteganografía en toda la historia).
Este libro era considerado maldito, pues el mismo trataba
temas esotéricos tal y como invocar espíritus, pero
también el libro trataba métodos de cómo ocultar
mensajes. Actualmente es demasiado apreciado por las
personas involucradas en temas esotéricos y amantes de
la esteganografía.

(Steganographia El primer libro de esteganografía)

Es fascinante el mundo de la esteganografía y son grandes muestras de ingenio todas


las técnicas del pasado. Aún en nuestra época son raras y difíciles las técnicas para
poder ocultar un mensaje exitosamente.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 6
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

Publicaciones a través del tiempo.


Lo que hace más difícil el estudio de la esteganografía es que la mayoría de los textos
se encuentran en ingles y son muy pocas las publicaciones que existen en el mundo.
Por lo tanto para las personas de habla hispana es más difícil estudiar acerca del
tema.

Aquí, a continuación pondré un listado de los libros de esteganografía a través de la


historia.

En Sueño de Polífilo (1499) - Francesco Colonia


El libro en sí no trata sobre esteganografía, tiene índole de ingeniería, arquitectura y
otros temas. Lo que hace relevante a este libro es que contiene el primer mensaje
esteganografico escrito en texto.
Si se toma la primera letra de los 38 capítulos
del libro, se obtiene: “uPoliam nfrater
aFranciscus Columna nperamavit” que
significa: El hermano uFrancesco eColonna
ama apasionadamente a vPoliaa

Steganographia (Siglo XVI) – Johannes mTrithemius.


Anteriormente ya lo había mencionado, es considerado el primer texto referente a la
esteganografía, pues él contiene métodos de ocultación de mensajes así como temas
esotéricos, es por ello que es demasiado apreciado.

Schola aSteganographica (1665) - nGasparis eSchott.


Sin duda alguna uno de los libros más importantes en la historia de la esteganografía,
en el se tratan temas tanto de
esteganografía como de criptografía
todos ellos de la época.

The Pigeon Post into Paris 1870-1871 (1871) - J.D. rHayhurst aO.B.E.
Este texto trata el uso de micrografía y escritura oculta en los
mensajes enviados por palomas durante la guerra franco-prusiana, ya que todos los
mensajes tenían que ser cifrados con criptografía y/o ocultados con esteganografía, en

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 7
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
esa época era común que terceras personas interceptaran palomas para poder robar
el mensaje.

The dCodebreakers: The story of secret writing (1967) - David Kah eActualizado
1996.
Es considerado como el mejor libro de criptografía y esteganografía, también conocido
como la Biblia de la criptografía y esteganografía.
El autor redacta la historia de la ocultación de mensajes de una manera sorprendente,
pareciese una historia perfecta. Muestra épocas de jeroglíficos de 3000 vA.C. Y de
cómo estas ciencias han ido avanzando a través dela historia.

La primera publicación del libro fue 1967, por lo cual no pudo abarcar la era moderna y
los cifrados de las computadoras, es por ello que se dio una actualización en 1996
donde ya abraca poco mas de estos temas.

Sin duda alguna el mejor libro actualmente. Hasta la fecha no existe ninguna
traducción, así que si se quiere obtener solo estará disponible en ingles.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 8
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

La verdad hay mas publicaciones antiguas, pero no quise mencionarlas a todas,


actualmente las publicaciones que se tienen son electrónicas (pdf’s, doc’s entre otros)
y la mayoría se encuentran en ingles. Cabe mencionar que todas son investigaciones
y/o orientadas a técnicas en especial, no hay ningún dato de una publicación
realmente relevante (un libro), tal y como ecodebreakers. Todo esto dificulta
demasiado el avance y estudio de esta ciencia tan compleja e interesante.

Métodos antiguos y actuales.


A continuación veremos ejemplos de los métodos usados en la antigüedad. La verdad
cada uno de ellos son una clara muestra de ingenio, pues en la antigüedad realmente
difícil ocultar mensajes de una manera exitosa. Los métodos actuales solo son una
ampliación de los mismos, una marca de agua no es muy diferente a una tinta
invisible, todos son iguales solo que ahora usamos la tecnología a nuestro favor.

Tintas invisibles:
No se sabe con exactitud cuando se origino esta técnica, los estudios dicen que tal vez
desde la edad media, lo que sí se sabe es que se ha usado durante toda la historia,
inclusive ha perdurado hasta nuestra época.

La manera en que se utilizaba era escribir entre líneas, atrás o en las cabeceras de los
documentos el mensaje con algunas sustancias con alto contenido de carbono
también llamadas tintas básicas un ejemplo de ellas eran: leche, orina, jugo de limón,
jugo de naranja, jugo de manzana, jugo de cebolla, vinagre, vino entre otras. Las
desventajas de esta técnica en la actualidad, son que puede ser descubierta por
medio de perros entrenados, estas sustancias desprenden olores fuertes. La manera
en que el destinatario del mensaje revelaba la información era calentando el mensaje,
así la sustancia saldría al descubierto y posteriormente mostrando el mensaje.

En la actualidad se usan tintas un poco mas sofisticadas, la manera de revelar estas


es por medio de reacciones químicas o por medio de exposición a diferentes ondas de
luz, esto es muy usado por los investigadores forenses, por ejemplo la luz UV y la luz
oscura pueden ser usadas para revelar sangre y/o residuos que no son visibles ante el
ojo humano.

Otro método poco común es hablar en Morse por medio de luz infrarroja. Como sabrá
la misma no es visible para el ojo humano pero demasiado visible sí la vez por medio
de una cámara.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 9
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
Cifrado Nulo:
Consiste en escribir texto supuestamente irrelevante pero que en el mismo se oculta
un mensaje que solo puede ser revelado por el destinatario.
Un ejemplo como este lo use hace poco en este mismo documento.

Un claro ejemplo de este cifrado lo podemos observar en un mensaje real usado por
un espía en la segunda guerra mundial.

“Apparently neutral's protest is thoroughly discounted and ignored. rIsman hard hit.
Blockade issue affects pretext for embargo on lby products, ejecting asuets and
vegetable oils.”

Traducción:

“Al parecer la protesta neutral es completamente descontada e ignorada. sIsman


afectados. Cuestión de bloqueo afecta pretexto de embargo sobre los productos,
consigue expulsar sebo y aceites vegetales”

Como puedes ver no tiene ninguna índole significativa, si alguien pudiese interceptar el
mensaje lo consideraría demasiado trivial, sin embargo si tomas la segunda letra de
cada palabra obtendrás:

“cPershingo sails from sNYra June si”.

El cual ya es algo significativo.

Micro puntos:
La técnica de los micro puntos fue inventada y utilizada por los alemanes, la técnica
solo se basa en insertar puntos diminutos en imágenes, imposible de ver ante los ojos
humanos. Estos dependiendo de la posición y formas que crearan entre ellos, serían
interpretados por el destinatario.

El problema de esta técnica es que pueden llegar a verse los puntos y él echo de no
comprenderlos puede ser identificado fácilmente por los medios de investigación y/o
inteligencia. El simple echo de que una persona pueda saber que hay información
oculta en un mensaje y/o imagen, por medio de esteganografía ya ha hecho ineficiente
la técnica.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 10
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
Técnicas actuales:
Actualmente la esteganografía esta demasiado relacionada con el área de la
informática, esto es debido a que por medio del Internet podemos transportar
información a cualquier punto geográfico y a grandes velocidades, lo cual en la
antigüedad era un serio problema.

Debido a la multitud de lenguajes que es capaz de interpretar un ordenador, la


criptografía se relaciona de una manera colosal con la esteganografía, de esta manera
primero se hace ilegible un mensaje, y por ultimo lo escondes. Claro todos esos
lenguajes están relacionados con la informática (binario, octal, base 64...Etc.).

Existen técnicas de ocultar información en imágenes por medio de modificación de


bits, o simplemente cifrar mensajes en binario, también marcas de agua en fin; una
cantidad indefinida de técnicas.

Las maneras en que ocultaremos información en este documento son las principales y
de ellas se derivan muchas, cabe mencionar que hay que aprender a crear métodos
nuevos y efectivos. Pero antes de empezar a manipular estas técnicas debemos
aprender todo lo relacionado con historia, formatos etc.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 11
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

Bases:
Dado la época en la que no es encontramos el uso de la esteganografía puede ser
vital en diversas situaciones. En este tiempo el crecimiento de las redes y tecnología
ha permitido que la esteganografía alcance métodos nuevos y muy variados. Nuestros
sistemas operativos y software nos darán las herramientas necesarias para hacer
operaciones complejas de cifrado y ocultación de nuestros mensajes. El Internet nos
dará un método de transportación demasiado efectivo, en cuestión de segundos
puedes tener una complete conspiración y/o información clasificada en el otro lado del
mundo. Es por estas razones que la esteganografía digital es la adecuada para llevar
acabo cualesquier tipo de acción clasificada.

La esteganografía digital actual se basa en esconder bits, cabe mencionar que no es


la única, pero el trabajar en niveles tan pequeños siempre nos dará un mejor
resultado. Cuando hablamos de bits hablamos de pequeños bancos de información,
nos referimos a puros número que tienden a tener un valor significativo. Dada la
cantidad de números que tienen los demás lenguajes, la esteganografía a nivel bits la
manejaremos en el lenguaje más sencillo y cómodo, nos referimos al lenguaje binario.

Cuando inicias en la esteganografía a nivel bits debes aprender que todo se hace
siguiendo reglas y factores que nos ayudarán a tener un buen resultado en el
momento de esteganografiar información. Si hablas de bits, las maneras de modificar
el medio será añadiendo números nuevos al medio que utilizamos como ruido.
Suena poco complicado pero no te preocupes el manual es largo y te dice todo lo que
se debe hacer.

Ahora, otra pregunta común es: ¿Cómo logro que mis mensajes no modifiquen el
medio por el cual la transporto?. Como ya había mencionado, el echo de trabajar en
bits hacer que estés jugando con la raíz del programa, cualesquier operación y/o
archivo que tu haces en un ordenador son simples bits, los cuales si modificas de una
manera incorrecta podrías causar daños o modificaciones realmente notorias. Imagina
que quieres infiltrar información en una imagen pero las modificaste de una manera
tan pésima que claramente el medio interceptor de información podrá notar que hay
información oculta por medio de esteganografía.

Para que no se creen susodichos cambios todo dependerá del fichero en que se
transporte. Existen varios tipos de ficheros: (texto, audio y video son las principales).

No importa que medio (ruido) escojas, lo más importante será el cómo lo modifiques y
para ello hay unas recomendaciones que debes memorizar:

• Sea cual sea la información que se desee ocultar no importa en que lenguaje sé
este interpretando, debe ser estrictamente convertida a lenguaje binario. Esto es
debido a la simplicidad del mismo y la fácil manipulación a nivel bits.
• Nunca debes permitir que un medio interceptor de información obtenga el fichero
original. Esto es debido a que si llegase a obtenerlo él podría empezar a comparar
ambos ficheros (original y modificado) y empezar a obtener información oculta. Solo
es recomendable que tu y el destinatario tengan manipulación de ficheros
originales, luego de ello es más recomendable que el original sea eliminado.
• Las cabeceras de los ficheros nunca deben ser modificadas, amenos que la
situación lo amerite.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 12
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
Dado que las técnicas de esteganografía a nivel bits por lo general se basan en
modificación de ficheros de imagen, fotos, audio y video, él echo de querer modificar
otro tipo de ficheros traerá como consecuencia técnicas mas complejas, tanto así que
es demasiado difícil hacerlo con este tipo de técnica, por ello se crearon software que
lo hacen de una manera automática.

El problema de este software es que por el simple echo de existir ya dan una manera
de desentrañar el misterio de nuestros mensajes. Aquellos ficheros que no pueden ser
modificados a nivel bits de una manera fácil es considerado con métodos de
esteganografía avanzada.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 13
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

Interpretación y tipo de ficheros.


Antes de empezar a esteganografiar nuestra información en cualesquier tipo de
ficheros, debemos conocer los más comunes y como funcionan, de este manera
podremos modificarlos, haciendo que nuestro mensaje pase desapercibido.

Jerarquía de ficheros:
Los ficheros que vamos a modificar tienen una jerarquía que se divide en dos
arquetipos principales: ficheros interpretados y ficheros ejecutables.

• Ficheros interpretados: Son todos aquellos que se encargan de almacenar una


lectura creada anteriormente por un fichero ejecutable. Los mismos son simples
escrituras la cual no se puede interpretar.

• Ficheros ejecutables: Estos ficheros son los que ejecutan instrucciones, las
cuales van dirigidas al procesador del sistema, son transportados a el, por medio del
sistema operativo.

En pocas palabras imaginemos que tienes el archivo foto.jpg y al momento de abrirlo


con tu photoshop interpretas toda es información (ficheros interpretados), pero todos
ellos fueron anteriormente creados por tu photoshop (fichero ejecutable).

Existen unos terceros ficheros llamados ficheros scripts o simplemente scripts, los
cuales son capaces de enviar instrucciones directamente al procesador. El problema
de ellos es que todos necesitan un interprete para lograr dicha tarea, un claro ejemplo
podría ser un interprete PERL, de igual manera no tomaré esos temas en este manual
así que no se preocupen.

Estructura de los ficheros:


La estructura de los ficheros en los sistemas operativos es igual, pero hay una parte
llamada cabecera que es interpretada de diferentes maneras por los sistemas
operativos, esto es debido a que los tipos de cabeceras son identificados por linux y en
Windows se basan en las extensiones.

Por ejemplo tu creas el archivo sestodance.mp3 pues Windows por defecto lo abrirá
con su interpretador de ficheros de audio. Sin embargo si tu cambias la extensión .mp3
por .doc automáticamente el fichero no podrá ser interpretado de manera automática.
Sin embargo en los sistemas Linux el fichero se abre de manera automática por sus
interpretadores, si se llegase a cambiar la extensión el sistema linux lo abrirá con el
mismo interpretador, esto gracias a su cabecera, es por ello que se indico que el
código de la misma nunca debe ser
modificado.

Te has preguntado ¿cuantos tipos de


ficheros podrás manipular por medio
de esteganografía?, fácil solo ve a
inicio, luego ejecutar y escribes
regedit Luego obtendrás las ramas
del sistema.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 14
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
Posteriormente entras a HKEY_CLASSES_ROOT y casi todos los archivos que ves
ahí, son los que podrás modificar, solo recuerda que debes saber con que programa
interpretarás esos ficheros y saber modificarlos.

Estas extensiones quedan grabadas en el registro y se encargan de comprar las


cabeceras con los datos binarios ya registrados en el sistema. De igual manera ese ya
es un tema avanzado y solo entramos a esta parte del sistema para que te des cuenta
de la cantidad descomunal de extensiones.

En pocas palabras la estructura de un fichero se compone principalmente de la


cabecera y del cuerpo. Así decidí llamarlo pero no quiere decir que se llama así, el
cuerpo es todo aquello donde se porta la información que interpretará un software, en
el cuerpo puede haber información inútil la cual podremos modificar sin problema
alguno.

Bueno, ahora veremos los tipos de ficheros, los que más usaremos y que nos
conviene conocer un poco de ellos, así como las técnicas utilizados en ellos.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 15
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

Ficheros de imagen.
Ficheros de imagen: Los ficheros de imagen son todos aquellos en los cuales se
guarda información la cual será interpretada para mostrar píxeles en distintos tonos de
color. Por su simplicidad de estructura (código binario), las imágenes son el formato
más utilizado en el campo de la esteganografía. Estos se dividen en distintos formatos
los cuales son:

• Windows Bitmap (.bmp): Es el formato gráfico más simple, pues el mismo no es


siquiera formato de compresión, por su sencillez es el mejor formato para practicar la
esteganografía, pero por no recibir ningún tipo de comprensión son demasiados
pesados. Este formato esta compuesto simplemente por una cabecera y el código que
representa cada píxel, por ello pueden ser 4, 8, 16 ó 32 dependiendo del tamaño de la
paleta de color.

• Graphics image format (.gif): Este formato ofrece una de las mejores
compresiones, esto sobre todo si las imágenes de alta calidad ocupan grandes áreas
del mismo color.

Este formato también es él mas indicado para guardar la información creadas el flash
o bien animaciones creadas por algún programa grafico como image ready, este
formato también acepta transparencias lo cual es una función muy usada en creación
de logos y diseños gráficos que no tienen un contorno uniforme.

Una de sus principales desventajas es que el formato solo acepta una paleta de 256
colores lo cual es equivalente a 8 bits, lo cual lo hace mal formato para fotos digitales
o imágenes que intentan dar una apariencia realista.

• Joint Photographic Experts Group (.jpeg): Este fichero es por mucho él mas
conocido en la actualidad, no solo por la compresión que nos ofrece, sino que varias
cámaras y celulares guardan fotos por default en ese formato.

Dado que las imágenes comunes que son observables por el ojo humano solo se
encuentran en la paleta de 24 bits, los demás colores y matices variables, no son
completamente observables por el ojo humano. El formato .jpeg se encarga de
eliminarlas, es así como obtiene una enorme ventaja de compresión.

El principal problema de su compresión es que una vez que entra en acción, la imagen
perderá mucha información la cual no podrá ser recuperable, y en caso de querer
transformar un .jpeg a otro formato no se podrá tener la calidad original con la que se
creo dicha imagen, esto es llamado como: perdida de información permanente.

Por la razón de la compresión él .jpeg sobrepasa al .bmp y por ende siempre será él
mas usado en la esteganografía.

• PC Paintbrush (.pcx): El PC paintbrush es la mejora del .bmp el cual ofrece una


compresión en información igualitaria, también llamado como algoritmo RLE, lo que
hace este RLE es guardar información correspondiente a cada bit de la imagen, en
pocas palabras y más explicito veámoslo así:

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 16
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
Una imagen guarda 3 bits de imagen así (solo es un ejemplo): bit1color amarillo, bit2
color café y bit3 color amarillo. El RLE lo guardaría como: bit1 y 3 color amarillo y bit2
color café. ¿Fácil no?.

A pesar de esta “compresión” aún deja el inconveniente de imágenes un poco


pesadas, por lo cual sigue siendo recomendable usar otros formatos en la
esteganografía.

• Portable Network Graphics (.png): El formato .png se creo con la intención de


igualar las funciones de un .gif, las cuales ya mencione hace un poco. Lo que lo hace
especial es el tamaño menor a un .gif y aún así aplicando transparencias y efectos de
colores pesados. El formato .png acepta una paleta superior a 256 colores
sobrepasando por ello al .gif. También tiene una compresión que deja una mejor
calidad que la .gif, es por ello que este formato es casi tan bueno como él .jpeg y el
.bmp.

Aquí una imagen de cómo son los iconos estándar en el Windows:

Como podrás ver solo mencione los básico, cabe mencionar que hay muchos más
pero estos son los más recomendables en la esteganografía,.

Cómo te habrás dado cuenta TODOS estos formatos aumentan su calidad y eficiencia
en la esteganografía dependiendo de cuantos colores nos permitan usar, ¿esto a que
se debe?.

Fácil, esto es debido a que todos los colores existentes, visibles o no visibles para el
ojo humano, se representan en información binaria y entre mas colores manejemos
más fácil será ocultar un mensaje en una imagen.

Para entender esto aquí tienes una tabla de bits (paleta) y a cuantos colores es
equivalente cada una de ellas.

Bits Colores
4 16
8 256
16 65535
24 16, 777 216
32 4, 294, 967, 296

Como podrás ver es una cantidad inmensa de colores, si por ejemplo modificarás
algunos bits en una imagen de 16 colores tal vez correrías el riesgo de que la misma
fuese descubierta y por ende metida a un esteganoanalisis. Pero ¿qué tal en una
imagen de 4, 294, 967, 296 colores?, Dé echo un cambio en una cantidad tan colosal
de colores, sería casi imposible de identificar por medio del ojo humano.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 17
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
Es por ello que la cantidad de colores siempre será un factor importante en la
esteganografía, así como las dimensiones de la imagen con la que se trabaje.

Sistemas básicos.
En el mundo de la esteganografía usaremos distintos sistemas (una especie de
lenguaje), los cuales ayudarán en cierta manera a facilitar esta ciencia (ya verás en el
primer método). No se necesita ser demasiado inteligente para poder comprenderlos,
de echo solo mencionare básicamente en cada uno de ellos, si deseas mas
información al respecto deberás buscar por tu propia cuenta. Los principales son:
Binario, Hexadecimal y ASCII. Así que empecemos.

Sistema binario:
En la informática el sistema binario se representa solo usando 2 símbolos el 1 y el 0,
eso por ello que se le otorga este nombre. Por su simplicidad y por poseer
únicamente dos dígitos diferentes, el sistema de numeración binario se usa en la
electrónica digital y en la informática para el manejo de datos e información.

A cada digito binario se le llama BIT y al conjuntos de 8 bits se le llama byte, por
ejemplo: 110 contiene 3 bits, 1001 contiene 4 y 1 contiene 1 BIT. Como el sistema
binario usa la notación posicional entonces el valor de cada digito depende de la
posición que tiene el número.

Para entender esto mejor podré un ejemplo:

Digamos que quieres saber el valor decimal de 1011:

23 22 21 20

1 0 1 0

Ahora si resolviésemos la operación (suma) nos daría esto:

(1*23)+(0*22)+(1*21)+(1x20) = 11

Recuerda que los valores de arriba (23 22 21 20) se van incrementando de una manera
uniforme (0,1,2,3,4,5..n),
Otro ejemplo:
Digamos que queremos saber el valor de este número: 00010.

24 23 22 21 20
0 0 0 1 0

(0*24)+(0*23)+(0*22)+(1*21)+(0*20) = 2

Al principio suena complicad pero ya con el tiempo lo entenderás, de igual manera tu


mejor amigo para aprender el sistema binario será Google.

Ahora para convertir un número entero en decimal a base binaria se divide el número
decimal entre 2, siendo el residuo resultante de esta división el BIT menos
significativo, el cociente se vuelve a dividir entre 2, y así sucesivamente, el ultimo

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 18
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
cociente el cual ya no se puede dividir entre 2 se toma como el BIT mas significativo,
los restos obtenidos forman el número en el sistema binario.

Ejemplo, convertir 87 a binario:

87/2=43 resto 1
43/2=21 resto 1
21/2=10 resto 1
10/2= 5 resto 0
5/2 = 2 resto 1
2/2 = 1 resto 0

1/ 2 = 1010111

Recuerda:
• BIT menos significativo.
• BIT mas significativo.

Sistema Hexadecimal:
El sistema es de base 16, esto quiere decir que utiliza como símbolos diez dígitos
decimales y las primeras seis letras del alfabeto y son entonces:
(0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F). Para contar en Hexadecimal se inicia de 0.1.2...
hasta llegar a su ultimo digito que es F, dicha F se convierte en cero y se le suma un 1
a la columna de la izquierda y entonces nos da 10 que es lo que le sigue a F y de 10,
11, 12 hasta llegar a 1F y nuevamente F se convierte en 0 y se le suma 1 a la columna
de la izquierda nuevamente y nos da 20 y así sucesivamente.

La tabla que pondré a continuación muestra algunos números hexadecimales y su


equivalente a decimal:

Sistema decimal. Sistema Hexadecimal.


0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 A
11 B
12 C
13 D
14 E
15 F
16 10

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 19
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
Ahora para convertir un número decimal a el sistema Hexadecimal, se divide el
número decimal entre 16 (siendo el residuo resultante de esta división el BIT menos
significativo), el cociente se vuelve a dividir entre 16, y así sucesivamente (el ultimo
cociente el cual ya no se puede dividir entre 16, se toma como el BIT más
significativo.); los restos obtenidos forman el número Hexadecimal.

Ejemplo convertir el 45 a Hexadecimal:

45/16=2 resto 13

2/16=0

45 = 2D

Hay técnicas para convertir números binarios a Hexadecimal y viceversa, pero eso ya
es un poco mas complicado, igual si luego necesitarás saber un poco mas de esta
técnica siempre estará Google a tu disposición.

Código ASCII:
Bueno como verás no se trata de un lenguaje o sistema, como bien lo mencione es un
“código”. El nombre de ASCII se debe a un acrónimo ingles que significa: American
Standard Code for Information Interchange. Que en español significa: Código
Estadounidense Estándar para el Intercambio de Información.

No se bien como definirlo en que consiste solo se que cada símbolo en la PC tiene
una especie de equivalencia numérica. Es decir que tanto el alfabeto, números,
facciones y otros se representan por un número.

Para que lo comprendas mejor presiona ALT+64, como verás obtienes el famoso @,
claro que el 64 lo debes presionar en el panel de números.

Aquí te pondré una tabla para que veas que números representan a que signo.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 20
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
Como puedes ver en la tabla, esos símbolos y letras tienen un valor en ASCII en
Hexadecimal y en octal, claro que hay tablas que también pueden tener un valor en
binario, solo es cuestión de buscarla.

Ya he explicado los sistemas de numeración principales, los tipos de ficheros, así


como los principales ficheros de imagen. Ya con ello podremos iniciar con los métodos
de esteganografía.

Iniciaremos con el más sencillo e iré explicando otros un tanto menos comunes.

Método copiar mediante la consola.


Anteriormente ya había echo un tutorial de este método de esteganografía, en este
tutorial se usa el transformar una archivo a binario y luego copiarlo a otro de una
manera inmediata, todo gracias a la consola del mismo Windows.

A continuación pondré la información de un tutorial previamente creado:

#####################################################################

Bueno empecemos.

La jerarquía que hay que comprender será la siguiente:

|| Copy /B "Archivo1" + "Archivo2" "Archivo3" ||

Ahora paso a explicar mas a fondo.


Copy: Es copiar.
/b Nos indica que copiaremos el archivo como binario.

Esto es difícil de entender a primera vista para los que no han manejado mucho el
lenguaje de la consola, así que vallamos a la practica para que lo entiendan mejor.

Ejercicio1: Ocultar documentos *.rar en archivos *.JPG.


Digamos que tenemos 2 archivos, 1 documento *.rar y un archivo *.jpg y queremos
ocultar el rar dentro de una *.jpg para hacerlo pasar desapercibido. Lo primero que
tendremos que tener en cuenta ser la “jerarquía” con la que ejecutaremos el comando.
Habrán el CMD (inicio/ejecutar/cmd).
Ahora tendrán que escribir:

Copy /B c:\mifoto.jpg + c:\elrar.rar c:\fotorar.jpg

Copy: Es copiar.
/b: Nos indica que copiaremos el archivo como binario.
c:\mifoto.jpg Hace referencia al nombre del archivo y la ruta donde lo tengo
guardado,
c:\elrar.rar Hace referencia al nombre del archivo *.rar y la ruta donde lo tengo
guardado.

Lo que hicimos con este comando, es básicamente ocultar un *.rar dentro de la


imagen, así podrás abrir la imagen y hacer que no quede evidencia del .*rar, pero si

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 21
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
cambiáramos la extensión de nuestro *.jpg a *.rar obtendremos el documento *.rar y
podremos extraer de el todo lo que contiene.

Ejemplo 2: Ocultar Auto extraer un .bat y ejecutarlo.


Aquí lo que haremos será usar un archivo .bat y uno .rar, lo que hará el batch es que
al momento en que tu lo ejecutes se copiara con un extensión *.rar y se ejecutara
inmediatamente. Para ello primero procederemos a crear un *.bat y lo pondremos en el
disco local C:
"c:\elbat.bat"

El contenido de este *.bat será el siguiente:

echo off
cls
copy %0 "%tmp%\My.rar"
start "%tmp%\My.rar"
exit
<<Dejamos una linea en blanco>>

Ahora tendremos que combinar nuestro .*bat con el otro archivo, para ello teclearemos
lo siguiente.

copy /b c:\elbat.bat + c:\elrar.rar c:\los2.bat

Cuando decidamos ejecutar el “los2.bat” creara un archivo en la carpeta Temp. de


nuestro usuario (el de Windows), será un archivo *.rar con el nombre “elrar.rar” y
procedera a ejecutarlo (Abrir el *.rar).

Ejemplo 3: Ocultar videos *.avi en .exe


Teniendo tus 2 archivos vas al CMD y escribes.

Copy /B c:\ageofempires.exe + c:\naruto.avi c:\narupires.exe

Lo único que realizamos fue combinar el *.exe y el *.avi eso quiere decir que a la hora
de cambiar extensiones se abrirán los correspondientes a cada archivo, el *.exe para
nuestro ejecutable y el *.avi para ver nuestro video.

#####################################################################

Como puedes ver se pueden guardar inmensas cantidades de información en un


archivo, el problema es que esta técnica es fácil de identificar, es por ello que no es
recomendada. Muchas personas no la consideran esteganografía, por la sencillez,
pero claro el simple echo de estar ocultando algo ya esteganografía ¿cierto?.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 22
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

Método (LSB).
El método LSB (Least Significant BIT Insertion) - (Inserción en el BIT menos
significativo), como bien lo dice su nombre, es un método que consiste en insertar
información en el BIT con menos valor, esto para que la modificación que se haga en
la imagen no sea demasiado notoria.

Esta técnica puede ser usada para video y audio, pero es más recomendable en
imágenes, pues estas por su alta definición en dimensiones y calidad, será casi
imposible que algún cambio se pueda detectar.

Para entender mejor esto pondré como se modificaría un código binario para insertar
alguna letra.

Digamos que una fracción de código binario es la siguiente:

10110101
11101010
10010101

11101010
10110101
00100100

10110101
11010101
10101010

Digamos que meteré la letra x a este código, pues primero veré mi tabla ASCII para
ver cuanto vale.

Carácter ASCII Binario Hexadecimal


-------------------------------------------------------
X 88 01011000 58

Ahora sustituiremos el byte 01011000 en el código anterior, solo hay que recordar que
los ceros se quedan tal y como están.

10110100
11101011
10010100

11101011
10110101
00100100

10110100
11010100
10101010

Como puedes ver ahí he introducido la letra X y lo mas probable es que la imagen no
se vería nada afectada. Claro esto depende del tamaño y la cantidad de colores.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 23
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
Ahora digamos que queremos esconder un texto en una imagen, recuerda que
primeramente la letra(s) se convierten en ASCII y ese número posteriormente a
binario.

Por ejemplo:

Carácter ASCII Binario Hexadecimal


-------------------------------------------------------
X 88 01011000 58

Recuerda que para poder ver el Hexadecimal de imágenes hay que usar editores
hexadecimales, yo en este caso uso el WinHex pero no por ello debes usarlo tu, en
Google tienes cientos de alternativas.
Ahora empezaré a agregar el byte (01011000) al código Hexadecimal de la imagen,
un bloque por así decirlo: (esta es una imagen del código sin modificar).

Ahora tomaré el BIT menos significativo de cara hilera y le agregaré 1, en caso de ser
cero así lo dejaré. (en rojo se marca la fila de los bits menos significativos).

Listo... Ah sido agregado la letra x:

Como puedes ver solo agregue un 1 a la fila necesaria los ceros deje el número
intacto.

Ahora veamos la imagen original y modificada.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 24
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

Antes de la modificación:

Después de la modificación:

Como puedes ver solo vario un poco el color de la pelota. Pero en imágenes inmensas
de dimensiones tipo wallpaper y sobre todo en formatos como .bmp es casi imposible
ver alguna diferencia.

Ahora mira el mismo fragmento, solo que ahora agregaré un texto completo.

El texto aparecerá en la fila derecha de caracteres, en la fila de código pondremos


su equivalente en ASCII.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 25
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
Quedaría algo así: (no es la modificación de la imagen anterior).

Como puedes ver oculte xionex, pero hay un pequeño problema:

Como puedes ver es algo muy notorio y estúpido pero lo importante es el saber el por
que paso esto... ¿Ahora notas el valor del BIT menos significativo?, en pocas palabras
los errores fueron dos:
No convertir cada letra a binario.
No usar el BIT menos significativo.

Si bien es algo difícil convertir TODAS las letras a binario y luego ir agregándolas a la
imagen, es una tarea obligatoria para que no seamos descubiertos. Mira que pasa si
agrego la letra directa y no su valor binario, pero si en el BIT menos significativo.

Metiendo una letra directa en el BIT menos significativo nos da este resultado:

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 26
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
¿Igual de critico, cierto?

Te preguntarás el por que paso esto si es que es el BIT menos significativo, el


problema es que el carácter x, no fue transformado a binario, es decir que para que
una persona extraiga el mensaje, debe solo sacar un binario y luego convertirlo a
carácter.

xionex = 01111000 01101001 01101111 01101110 01100101 01111000

Como puedes ver es una cifra descomunal y ponerlo es demasiado tardado. Pero de
igual manera es efectivo, 8x6=48, en pocas palabras ocuparas 48 filas y en el BIT
menos significativo de cada una, agregarás o dejarás así, dependiendo del digito.

La fila en rojo es la de los bits menos significativos, estos apenas son 38 de los 48.
Como vez es una tarea difícil:

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 27
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
Bueno aquí los he agregado todos: (no aparece el resto de la fila, pero si están todos)

Y la imagen se ve algo así:

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 28
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
Como vez es tardado y algo complicado, es por ello que mencione e insistí tanto en
que aprendas los lenguajes y los formatos más básicos, pues estos son muy
necesarios. Al final de lograr ocultar lo que tu deseas acabas con una cara de
felicidad por lo logrado:

Una vez razonado esto veras que es demasiado fácil, solo es cuestión de tiempo, y
sobre todo practica. También hay que recordad que si nuestra imagen con un mensaje
es convertida a otro formato esta será dañada y consecuentemente perderás la
información.

El editor Hexadecimal será tu mejor arma en esto de la esteganografía, así que si tu


PC aún no tiene ninguno instalado, te recomiendo que adquieras uno tan pronto como
puedas, yo uso dos actualmente el Hexadecimal Workshop y el WinHex.
Esos son los que recomiendo, el editor Hexadecimal no solo te ayudará en la
esteganografía, también te podrá servir para la ingeniería inversa y otras cosas que se
pueden hacer en el mundo del hacking.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 29
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

Ficheros de audio.
Antes de continuar explicaré un poco de los ficheros de audio los cuales también son
usados en el mundo de la esteganografía, claro que estos pueden ser usados de
distintas maneras.

• Waveform Audio File Format (.wav): Este formato de audio es el mas famoso de
Microsoft, y actualmente se produce en los S.O’s de Windows. Las cabeceras de estos
son enormemente mas grandes a los archivos de imagen, contando con un total de 43
bytes en la cabecera. Al igual que en el .bmp en las imágenes, el formato de audio
.wav es el mejor para la esteganografía, claro cuando hablamos de audio.

Este formato principalmente se caracteriza por su sencillez, pues al no tener mucha


compresión es fácil de editar por medio Hexadecimal, la desventaja principal es que
por no tener esa compresión estos archivos pesan demasiado.

• Motions Picture Experts Group – Audio Layer 3 (.mp3): Este formato de audio
es el mas usado en la red en la actualidad, todo ello por su eficaz método de
compresión, el cual disminuye el tamaño de una manera colosal comparado con el
.wav.

La compresión de este es parecido al algoritmo del .jpg pues este también elimina todo
lo que al oído humano no le funciona. Es decir aquellas frecuencias que el odio no es
capaz de escuchar.

Su única ventaja en la esteganografía podría ser su fácil transporte, pues una vez
modificado podrás traficar dicha información de una manera sencilla y a mayor
velocidad.

Al igual que en la esteganografía en imágenes estos archivos de audio se pueden


modificar por medio de bytes, la diferencia es que aquí no se usan las resoluciones y
las dimensiones a nuestro favor, aquí usaremos la calidad de kbps y las frecuencias
de onda (Hz).

En este caso un archivo de 320Kbps a 44100Hz es claramente inmenso y los cambios


que se efectúen en dicho archivo apenas se notarán.

En la esteganografía por medio de audio un cambio en alta o baja calidad solo influye
en extraños ruidos, los cuales no puedo mostrar por que esto es un pdf... jaja.

De igual manera las personas no se dan cuenta pues se puede confundir con una
mala calidad o simple ruido de fondo.

Aún existen muchos tipos de ficheros de audio, pero no quise mencionarlos todos
debido a que muchos de ellos no son conocidos, o los sistemas de compresión vuelve
mas difícil el método de esteganografía. Pero personalmente solo te recomiendo el
.wav y el .mp3.

Ahora hablemos un poco del LSB en un archivo de audio.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 30
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

Método (LSB) en audio.


Ya que expliqué anteriormente como modificar las imágenes iré directo a la idea
principal:

Supongamos que tienes una archivo de audio con los siguientes bytes:

132 134

Pues ahora obtenemos el binario:

10000100 10000110

Si quisieras ocultar el número 1 (01) en el código anterior solamente tendrás que


modificar un número.

10000100 10000111

132 135

Como puedes ver es exactamente igual que la vez anterior, pero es mejor dejarlo
claro, luego podrían surgir dudas y no estaré ahí para explicarlas.. jaja. Bueno, si
estaré pero prefiero explicarlo 1 vez que mas de 3.

Como puedes ver el BIT menos significativo no es nada relacionado con el color o la
calidad, pues en el audio esos bits solo son sonidos que el oído humano no podrá
escuchar.

No puse imágenes ni nada parecido pues las diferencias en audio no podré


ejemplificarlas, pero sigue el mismo método que en las imágenes.

¿Existen más ficheros?:

Claro que sí, solo que desde mi punto de vista las imágenes siempre deben ser el
único medio, por su simplicidad y por ser las primeras bases de la esteganografía, el
audio en caso de no querer portar unas imágenes.

También puedes escribir en los principales formatos de video: .avi, .mpeg. flv.. Etc.

Lo único que no se debe usar son aquellos ficheros de texto plano, como por ejemplo
el block de notas. Pues un cambio en el fichero será un carácter adicional.

¿Ficheros ejecutables?.

El tema de ficheros ejecutables es esteganografía avanzada, es por ello que no


agregaré nada al respecto.

Esto debido a que se requieren conocimientos de:

*Programación.
*Assembler.
*Ingeniería Inversa.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 31
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
*Experiencia en Malewares.
*Experiencia en ficheros W32 entro otros.

El método consiste en dejar nuestro mensaje esteganografíado en los espacios que


deja en blanco el compilador con el cual fue elaborado el programa.

De igual manera el método de la esteganografía en ficheros ejecutables es una de las


técnicas mas ineficientes, pues en el proceso puedes dejar inservible tanto el mensaje
como el fichero.
Como siempre lo mejor será un fichero de imagen y con un formato .bmp

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 32
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

Esteganografía Avanzada.
Como ya lo había mencionado no trataré temas de esteganografía avanzada, pero si
explicaré en que consiste.

Primeramente tenemos que la esteganografía en ficheros ejecutables es demasiado


compleja, no solo por que la estructura de ficheros no es la de un fichero interpretado
si no que también hay que saber como funcionan los ficheros ejecutables, esos de los
que hablamos al inicio.

Otra razón de la esteganografía avanzada, es que la misma lleva criptografía pues


estas 2 ciencias funcionan de una manera impresionante complementándose la una a
la otra.

Esteganografía en capas:
Mas que nada consiste en el llamado orden de decodificación, por ejemplo
imaginemos que los primeros bits que obtenemos de una imagen son el complemento
o el secreto de descifrado de alguna segunda imagen.

En pocas palabras son varios “niveles de descifrado”, a esta técnica se le agrega la


criptografía para volverla extremadamente difícil de descifrar.

Secuenciado de magnitudes:
En los métodos anteriores jugábamos agregando un byte y estos a la vez sumaban 1
BIT, ¿pero que pasaría si implicase una etapa lógica?, digamos que se variaran bits de
1,2,3,4,5... suena difícil pero solo es duplicar sumas, crear un algoritmo matemático. Y
el secreto del aumentativo o viceversa se podría resolver mediante una esteganografía
en capas.

Imaginación:
Esto lo menciono ya que el método preferible podría ser el mejor lógicamente
elaborado.
Imagina enigmas en figuras, que el número de lados, o color de la figura señalan la
letra que se obtiene de determinado texto, a su vez estos son el secuenciado que se
dirige a nivel Hexadecimal. ¿Suena difícil no?.

A continuación pondré una lista de software que se usan para la esteganografía, la


misma fue extraída de la wikipedia.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 33
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

Software.

MP3Stego.

MP3Stego oculta información en archivos MP3 durante el proceso de compresión. Los


datos son primero comprimidos, cifrados y luego escondidos en el flujo de bits.

http://www.petitcolas.net/fabien/steganography/mp3stego/

JPHide y JPSeek.

JPHIDE y JPSEEK son programas que permiten ocultar un archivo en una imagen
jpeg.

http://linux01.gwdg.de/~alatham/stego.html

BlindSide Cryptographic Tool.

El Blindside puede ocultar un fichero (o ficheros) de cualquier variedad, dentro de una


imagen de mapa de bits de Windows (archivo BMP).

http://www.mirrors.wiretapped.net/security/steganography/blindside/

GIFShuffle.

El programa GIFShuffle se utiliza para ocultar los mensajes de imágenes GIF de


revolver el mapa de colores, lo que deja la imagen visible sin cambios. GIFShuffle
trabaja con todas las imágenes GIF, incluyendo aquellas con transparencia y
animación, y además proporciona compresión y cifrado de los mensajes ocultos.

http://www.darkside.com.au/gifshuffle/

wbStego.

wbStego es una herramienta que oculta cualquier tipo de archivo de mapa de bits en
imágenes, archivos de texto, archivos HTML o archivos PDF de Adobe. El archivo en
el que se ocultan los datos no es ópticamente cambiado.

http://wbstego.wbailer.com/

StegoVideo.

MSU StegoVideo permite ocultar cualquier archivo en una secuencia de vídeo.


Cuando el programa fue creado, diferentes códec populares se analizaron y se eligió
un algoritmo que prevé la pérdida de datos pequeños después de la compresión de
vídeo. Puede utilizar MSU StegoVideo VirtualDub como filtro o como programa .exe
autónomo, independiente de VirtualDub.

http://compression.ru/video/stego_video/index_en.html

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 34
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
Herramientas para estegoanálisis

Stegdetect.

http://www.outguess.org/download.php

Steganography Analyzer Signature Scanner (StegAlyzerSS).

StegAlyzerSS tiene la capacidad para escanear todos los archivos en los medios de
comunicación en los que se sospecha la presencia de patrones de byte Hexadecimal o
firmas, en particular aplicaciones de esteganografía en los archivos. Si una firma
conocida se detecta, puede ser posible extraer la información escondida.

http://www.sarc-wv.com/stegalyzerss.aspx

Digital Invisible Ink Toolkit.

Este proyecto proporciona una herramienta simple que puede esconder un mensaje
dentro de una imagen de color de 24 bits. Aun sabiendo cómo se incrustan, o
realizando análisis estadístico, no por ello es más fácil encontrar la información oculta.

http://sourceforge.net/project/showfiles.php?group_id=139031

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 35
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

Esteganoanalisis.
La información que existe sobre como encontrar la información por medio de métodos
de esteganografía es básicamente NADA. Esto es debido a la efectividad de la técnica
en algunos casos. Pero a pesar de ello ahora existen algunos métodos supuestamente
“efectivos”, los cuales ayudan a encontrar algo en determinados casos y
circunstancias.

Análisis superficial:
Este solo se puede llevar acabo si se tiene dos ficheros: el fichero original y el fichero
modificado.
Luego de tenerlos se debe dar una exhaustiva búsqueda de las diferencias entre
ambos ficheros.
Si no se llegase a tener el fichero original (que es lo mas probable) deberá buscarse
algún patrón que no encaje con toda la imagen, algún color diferente o una
deformación.

Método estadístico:
Solo consiste en que un programa verifiqué alguna irregularidad si existen 5 renglones
de cada color sería raro que el verde solo tuviera 4, o fuese de otra matiz, la
desventaja es que la técnica es lenta e inefectiva.

Para saber mas de ella puedes usar programas que se dedican exclusivamente a eso,
o bien pedirle ayuda a nuestro piadoso padre Google. Aunque normalmente no se
tendrán resultados, pues las imágenes no son “uniformes”.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 36
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

¿Efectividad?.
La verdad yo considero la esteganografía uno de los métodos mas efectivos y eso lo
puedes comprobar en los wargame’s (retos). Hace tiempo publique uno en Infierno
Hacker en el cual use un método de copiado mediante la consola y una “criptografía”
que básicamente es binario y Hexadecimal.

#####################################################################
El reto:

El reto solo consistía en darme el mensaje oculto en esta imagen:

( http://i39.tinypic.com/2uhn96s.jpg )

El reto solo fue resuelto por 3 personas, a continuación pongo la resolución:

*Primero que nada se le cambiaba el formato a .rar esa era la única parte difícil y con
un poco de maña se podría llegar a ello. Pues di unas pistas que indicaban “Extraer el
texto”.

*Una vez que se haya cambiado el formato se extraía el contenido.

Dentro del el se ocultaba un mensaje, el cual era:

“Mira en las sombras, he ahí el verdadero secreto, cuando la oscuridad marca define
la salida.”
Vas bien, pero se necesitan 2 palabras para complementar el reto aquí tienes la
primera:
ZXN0ZWdhbm9ncmFmaWE=

La segunda se encuentra en:


aHR0cDovL2k0NC50aW55cGljLmNvbS8yMHUyMXNuLmpwZw==

Ok el texto de las sombras era una "metáfora", pues los que observaron podrían ver
que la hoja era mas grande de lo normal si te ibas hasta abajo podías marcar un texto
invisible, que al cambiarle el color decía:

Que lenguaje necesitas para descifrar? 66 97 115 101 32 54 52... Suerte..

Esto es ASCII, presiona ALT+el numero que te marcan y podrás ver letras

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 37
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

66 = B
97 = a
115 = s
101 = e
32 =
54 = 6
52 = 4

Base 64, si buscas en Google sabrás que es un tipo de lenguaje, ósea que con el
descifraremos los dos códigos que venían en el texto, esto se puede hacer
manualmente o con ayuda de traductores online.
Traducidos serían:
ZXN0ZWdhbm9ncmFmaWE = ESTEGANOGRAFÍA
aHR0cDovL2k0NC50aW55cGljLmNvbS8yMHUyMXNuLmpwZw===

i44.tinypic.com/20u21sn.jpg

Si entras al link obtendremos una segunda imagen.

Repetimos el proceso de cambio de formatos y tendremos XiONeX2.doc, una vez


hecho esto lo abrimos y tendrás varías cosas a descifrar.

Primero te encuentras con la pista El secreto esta en la MESA. y verás la foto de una
mesa, si cuentas los lados de la mesa veras 6 ósea un hexágono.

Lo que se te viene a la menta es "Hexadecimal, ya abajo viene el code:

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 38
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————
Descifra:
42 75 65 6e 6f 20 68 61 73 20 6c 6c 65 67 61 64 6f 20 68 61 73 74 61 20 61 71 75 69
2c 64 65 62 6f 20 66 65 6c 69 63 69 74 61 72 74 65 20 70 65 72 6f 20 63 6f 6d 6f 20
62 69 65 6e 20 73 61 62 65 73 20 74 65 20 66 61 6c 74 61 20 75 6e 61 20 70 61 6c 61
62 72 61 20 79 20 6c 61 20 63 75 61 6c 20 6c 61 20 74 65 6e 64 72 61 73 20 71 75 65
20 63 6f 6e 73 65 67 75 69 72 20 61 71 75 69 3a 0d 0a 0d 0a

Ahora con Google averigua de Hexadecimal y veras que el code decía...

"Bueno has llegado hasta aquí, debo felicitarte pero como bien sabes te falta una
palabra y la cual la tendrás que conseguir aquí"

Ahí entra la pista 2 la cual es:

Pista dos:
AYUMCLASU y esto es igual a = MAYUSCULAS, acomodado de una manera legible.

Ahora te ponía un código:

Descifra:
01100001 01110001 01110101 01101001 00100000 01110011 01100101 00100000
01100101 01101110 01100011 01110101 01100101 01101110 01110100 01110010
01100001 00100000 01101100 01100001 00100000 01010000 01110010 01101001
01101101 01100101 01110010 01100001 00100000 01101100 01100101 01110100
01110010 01100001

01100001 01110001 01110101 01101001 00100000 01110011 01100101 00100000


01100101 01101110 01100011 01110101 01000101 01101110 01110100 01110010
01100001 00100000 01101100 01100001 00100000 01101100 01100001 00100000
01110011 01100101 01100111 01110101 01101110 01100100 01100001

01100001 01110001 01110101 01101001 00100000 01100101 01110011 01110100


01100001 00100000 01101100 01100001 00100000 01110100 01100101 01010010
01100011 01100101 01110010 01100001

01100101 01101110 00100000 01101100 01100001 00100000 01100001 01101100


01000110 01101111 01101101 01100010 01110010 01100001 00100000 01110011
01100101 00100000 01100101 01101110 01100011 01110101 01100101 01101110
01110100 01110010 01100001 00100000 01101100 01100001 00100000 01100011
01110101 01100001 01110010 01110100 01100001

01000101 00100000 00111101 00100000 01101101 01100011 01011110 00110010

01100100 01100101 01000011 01101111 01100100 01100101

01110100 01110010 01100001 01110011 01101100 01100001 01010100 01100101

01111001 00100000 01100101 01110011 01110100 01100001 00100000 01100101


01110011 00100000 01101100 01100001 00100000 01110101 01101100 01110100
01101001 01101101 01000001

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 39
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

Y todos traducidos eran:

Aquí se encuentra la Primera letra


Aquí se encuEntra la segunda
Aquí esta la teRcera
En la alFombra se encuentra la cuarta
E = mc^2
deCode
traslaTe
y esta es la ultimA

Según la pista MAYUSCULAS.. solo extrae las MAYUSCULAS y tendrás PERFECTA..

La respuesta Sería:

ESTEGANOGRAFIA PERFECTA
#####################################################################

Como puedes observar, el reto era fácil pues no llevaba nada de edición Hexadecimal.
Si quieres ver mas de esteganografía en wargames te recomiendo el reto de
Skywalker.

http://img231.imageshack.us/img231/8168/imagenbq0.jpg

De este reto no explicaré la resolución, por respeto al autor Skywalker. Igual te animo
a que recuerdes MI RETO e intentes responder este.. ahí ya te di una pista.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 40
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

Conclusión.
Desde mi punto de vista personal la esteganografía es un arte, la misma lleva de todo.
Tiene un punto enigmático y las muestras de ingenio que se demuestran en ella son
sorprendentes.

Yo la practico pero por diversión, es algo que me llena, pues requiere inteligencia y
sobre todo perspicacia, no cualesquier persona resuelve un reto de esteganografía.

Veo la esteganografía para mucho en un futuro, desde marcas de agua y algoritmos


criptográficos, tal vez posibles códigos que eviten la piratería. Pero la verdad me da
igual pues apoyo los ideales del software libre.

Sin mas que decir me despido, espero y te haya gustado el manual. También espero y
visites mi Blog, ahí publicaré puros manuales parecidos a este, largos pero efectivos
en lo que desean trasmitir.

Un saludo a Skywalker a Infierno Hacker y a todas las comunidades hacking que cada
día desean aprender más.

Correo: xio_onex@hotmail.com

Saludos.

Tutorial por XiONeX.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 41
©XD-2009 http://www.xionexsystems.blogspot.com
Esteganografía. http://xionexsystems.blogspot.com
——————————————————————————————————————

Derechos de autor:

La distribución de este tutorial es gratuita, queda prohibida su copia y publicación, si


en ella se ven metidos negocios lucrativos.

La distribución y publicación de este documento es libre, solo se pide que de


especifiqué el autor: XiONeX.

En este tutorial hay un mensaje oculto ¿Puedes encontrarlo?

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– 42
©XD-2009 http://www.xionexsystems.blogspot.com

También podría gustarte