Archive for Diciembre, 2009

ADS Segundo tuto de ADS (Ocultando cualquier tipo de Ficheros)

10 Comments

Ok ya vimos como podemos usar el Alternate Data Stream para ocultar texto en cualquier cosa. Ahora veremos algo mas interesante, no solo ocultar texto sino otras cosas como una imagen. Asi que sigamos con la entrega numero dos de el tutorial de esteganografia ADS.

Para ocultar CUALQUIER otra cosa en un portador, es el mismo comando que vimos en la parte numero 1 de ADS, LO UNICO que cambia son los tipos de archivos. (pero eso ya queda a nuestro gusto).

En este ejemplo ocultare una imagen.JPG dentro de OTRA imagenPORTADOR.PNG, y seria con el siguiente comando:

Type imagenaOCULTAR.JPG>imagenPORTADOR.PNG:passADS

En este caso estamos copiando/AGREGANDO (type) la imagen a ocultar dentro de (>) la imagen portador y le aplicamos el ADS que queramos (:passADS)

Ahora para ver eso NO basta con hacer un:

More <imagenPORTADOR.PNG:passADS

Por que eso lo unico que nos mostrara sera en consola los bytes imprimidos en ASCII…eso solo nos serviria en todo caso para ver la cabecera del archivo que esta oculto.  Como en este caso, no nos muestra la imagen (NO PUEDE MOSTRARLA), solo nos muestra los caracteres imprimibles de los bytes en ASCII. Sin embargo en este caso no vemos ni la cabecera, pero vemos que dice JFIF y eso es caracteristico de los JPG

Para hacerlo mas funcional no solo basta imprimirlos, hay que darles salida y uno podria pensar entonces en hacer esto:

More <imagenPORTADOR.PNG:passADS > salida.jpg

Y eso nos daria un archivo de cabecera de un JPG pero al abrirlo con nuestro mejor visor (infraview) dice que esta dañado….

F.U.C.K!!!

Y ahora???

Pues el comando MORE daña los bytes(Gracias a la explicacion de HaDeS, se esto del comando more.), ese comando no nos asegura integridad, asi que habra que pensar en otro modo de obtener el archivo….

¿Que les parece programando un sencillo codigo en PHP?

GENIAL!!!

<?php
$file=file_get_contents('imagenPORTADOR.PNG:passADS');
echo $file;
?>

Asi queda nuestro SUPER codigo, y lo aplicamos desde consola.

php.exe -f codigo.php > salidaADS2.jpg

Y ahora si ya salio nuestro archivo. Y si lo abrimos, sale integro. Y no dañado como con el comando “more”

Hecky..Pero no quiero programar, me da “harterilla” hacer eso…no hay otra manera??? NO SEA FLOJO y programelo. xD…

Claro hay otras opciones:

.-Puede programarlo en cualquier otro lenguaje

.-Firefox nos permite hacer eso: Solo debemos abrir la imagen con Firefox y agregarle el ADS y Voila!!

AGREGANDO EL ADS en Firefox

.-Oh que tal con Mspaint??

**Las ultimas dos tecnicas las aprendi gracias a algunos users de “wow.sinfocol.org”

Bueno eso es todo por ahora. Ya saben para obtener los ADS en una particion NTFS. LADS.exe es una gran opción ya que nos los lista.

NOTA: Por si alguien no se habia dado cuenta, los ADS no se pueden transmitir, osea. Si yo oculto por medio de ADS, y se lo envio ah alguien por algun medio, usando  protocolos (SMTP,POP3,HTTP,FTP,etc.) los ADS se pierden. ¿Por qué? Por que como habia dicho los ADS se dan en PARTICIONES NTFS ;)

¿Hay manera de salvaguardar los ADS?

Claro ;) yo conozco dos maneras. 1) Poniendo el archivo en un backup (.bk) y la otra es con Winrar, el nos da las opciones ;)….De Estas  dos maneras es posible, debido a que estas herramientas permiten grabar las propiedades NTFS, y se guarda el ADS ;)

Si no me creen, pruebenlo. Aqui les dejo la imagen que fue usada en este tuto. Intenten extrar la imagen oculta y veran que no podran jeje xD:

Y ahora intentenlo desde este archivo y si podran por que guarde las propiedades con Winrar ;)

DESCARGAR ARCHIVO

Ahora si es todo….espero les agradara esta segunda entrega ;)

Saludos ;)

Att. hecky para estegano.neobits.org

Correcciones Correción de errores en el Manual “Esteganografia desde Cero.pdf”

2 Comments

Errores en el escrito “Esteganografia desde Cero” de XioneX

Antes que nada, voy a aclarar que este es un escrito meramente INFORMATIVO…no tengo nada contra el autor (XioneX),ni si quiera lo conozco, simplemente me eh topado con su escrito en varios foros. Y veo q esta siendo rapidamente distribuido, y yo al ojearlo, vi que hay ciertas cosas, erroneas o incompletas.

Ahora en este escrito describire y citare hoja por hoja, lo que yo “CREA” que es erroneo o incompleto…Pero todo queda en una simple opinion del autor de esta pagina (hecky).

El objetivo de la corrección es que como Xionex dice en la pagina 3 “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.”Por ello, de la poca información que existe sobre este arte/ciencia, yo en lo personal trato de brindar informacion, de calidad, ejemplificada y concisa. Y ya que asi mismo dice Xionex en la misma pagina “esto va dedicado a principiantes. “, asi como va para principiantes, hay que darles buenas bases, para que despues no se confundan, y creen su propio criterio.

Cualquier Reclamo,sugerencia,Opinion,duda, incomodidad o CORRECCIÓN…favor de hacermelo saber via comentario o al mail.

PAGINA 11:

Cita:

“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.).”

Ok en esta parte refutare lo siguiente:.- Binario y octal No son lenguajes. Son BASES numericas…Y en cuanto a Base64 tampoco, solo es un algoritmo.

Cita:

“Existen técnicas de ocultar información en imágenes por medio de modificación de
bits, o simplemente cifrar mensajes en binario”

-La parte de CIFRAR MENSAJES EN BINARIO, ahi no se esta ocultando NADA, simplemente se esta convirtiendo cada caracter a su valor Decimal ASCII y despues el Decimal, se pasa a Binario. Eso no es nada esteganografico. Eso en “todo caso” seria problema de criptografia ;)

PAGINA 12:

Cita:

“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”

FALSO. Esto solo seria correcto si se trata de la tecnica LSB, para poder incertar bit por bit. Pero LSB no lo es todo en la esteganografia, hay muchas tecnicas que no tienen nada que ver con LSB. Por ejemplo: Si se oculta un texto tomando, sus valores ASCII y utilizandolos en los RGB, ahi la representacion es en DECIMAL(tambien podria ser OCTAL), pero no nos metimos para nada con el Binario ;)

PAGINA 14:

Cita:

“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. “

Pff.Alto aqui…Correcto y erroneo.-LAS CABECERAS NO SON INTERPRETEADAS DE DIFERENTES MANERAS. Las cabeceras son las mismas en cualquier SO. Lo unico que varia es con que SOFTWARE se abre en cada SO, pero el Fichero y su cabecera es la MISMA.

Cita:

“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. “

-Es cierto que si en windows, a un fichero de audio(Mp3) le cambias la extensión a .doc, ya no se abrira correctamente ¿Por que? Por que como XioneX dice, Windows ejecuta cada fichero, basado en su extensión. Asi que si un mp3 le pones .doc en vez de abrirlo con el programa predeterminado de Audio, lo abrira con el software de offimatica de procesador de textos. SIN EMBARGO, el cambiar la extension no significa que se modifico el fichero o su estructura de la cabecera. Solo basta con ver la estructura del fichero para identificar que tipo de fichero es, y cambiar la extensión para abrirlo con el programa Adecuado.

PAGINA 19

Se proporciona una tabla, para la explicación del sistema Hexadecimal. En ella Pone de un lado el sistema Decimal (0-16) y del otro sistema Hexadecimal (0-F-10) como aqui podemos ver:

PERDON, pero hasta donde tengo conocimiento EL sistema HEXADECIMAL solo tiene del CERO a la EFE (0-F) ahi sobra un DIEZ (10).Pongo un ejemplo para sustentar lo que digo.

El binario se llama binario por que solo usa 2 digitos. El 0 y 1…Jamas se usa el “2″ sin embargo si usa solo dos digitos.

El decimal, se llama asi por que usa 10 digitos. “0123456789″…Jamas usa el “10″, si no que el diez, es la composicion de dos de los diez digitos que tiene la base. osea es la combinacion del 1 y el cero.

El HEXADECIMAL, usa solo 16 digitos. “0123456789ABCDEF” si contamos son exactamente 16 digitos. Sin embargo en esa tabla pone 0123456789ABCDEF”10″ ese 10 ya seria el 17°avo digito y ya no seria una base HEXADECIMAL, sino una, “Heptadecimal” :p Ademas ya dijimos que el DIEZ(10) es la combinacion del uno y el cero que ya estan dentro de la misma base.

PAGINA 21:

Cita:

“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. “

.-Veamos…Aqui se refiere a el metodo (que yo llamo) EoF (End of FILE), donde XioneX llama Metodo copiar mediante la consola, dice que SE TRANSFORMA UN ARCHIVO A BINARIO. Y en si no es “Cierto”..-Lo que pasa en esta tecnica es que Se agrega un archivo al final de otro. Y se copia en BINARIO. Esto quiere decir que se copia bit por bit, osea EXACTAMENTE IGUAL. Mas no que se transforme a binario.¿Por que digo que no se transforma a binario?.-En primeras por que TODO ES BINARIO (osea 1 y 0, osea VERDADEROS y FALSOS)

.-Ahora por que yo puedo copiar un archivo de otra manera, sin utilizar o de binario: EJ:
a)Con la misma consola de windows, puedo hacer uso de “type archivo >> archivo” Y es lo mismo
b)En linux, tambien se puede hacer
c)Puedo hacerlo sin la consola. Solamente con mi editor hexadecimal, abro la estructura de un archivo, y copio los valores hexadecimales, de cada byte y despues en otra estructura de otro archivo, agrego los valores hexadecimales del primer archivo, y listo se copio.Como vemos ahi se usan otros metodos que hace lo mismo, pero sin necesariamente la consola de windows, ni con ese comando de”Copy /B file + file resultado” asi que NO SE TRANSFORMA A BINARIO. Solo se agrega un archivo dentro de otro copiandolo exactamente igual al original.

Por ello para mi, un nombre mas correcto a la tecnica es “Metodo EoF” y no “Metodo Copiar mediante la consola”…pero queda en cada quien. ;)

PAGINAS 21 y 22:

Aqui mas que una pifia, lo que pasa es que hay FALTA de información. El autor muy explicita y acertadamente, explica en que consiste la tecnica EoF ocultando un .rar dentro de un .jpg o un .exe dentro de un .avi Y las soluciones que da para el estegoanalisis es cambiar la extension y se abrira. Pero yo digo ¿Que pasa si oculto un .jpg dentro de un .jpg? Ahi no se puede cambiar extensiones…Como descubro lo oculto???La respuesta es facil. Ya que este metodo no se basa en CAMBIAR EXTENSIONES, si no en conocer los archivos y saber EXTRAERLOS. Para ello yo ya eh hecho una SERIE de TUTORIALES que explican esto ;)

METODO LSB

La idea de todo este escrito me vino al leer la parte de LSB, que para mi es la mas CRITICA. Creo que XioneX tiene muy clara la idea, y explica perfectamente la teoria, sin embargo creo que tiene mal algunos conceptos de esta tenica aplicandola en IMAGENES.

PAGINA 24

Cita:


“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).”

En la imagen como se ve, XioneX nos menciona que lo que esta en rojo, mas a la derecha es el BIT MENOS SIGNIFICATIVO. Y ESTO ES FALSO. Cada par de codigo hexadecimal que se ve ahi es un byte, por lo que cada byte tiene 8 bits, asi que en si ahi, hay muchisimos bits, y el bit menos significativo es el bit mas a la izquierda, pero XioneX esta haciendo una gran confusion de bit con byte, ya que REPITO. Cada par de valor hexadecimal ahi mostrado es una Byte.

PAGINA 25

Aqui vemos lo que dice: de que solo vario un poco el color de la pelota, pero no es cierto. Si vemos bien, la imagen modificada, tiene una variacion de color INMENSA, si dividimos horizontalmente la imagen, a la mitad, la mitad de abajo, el color de fondo ya no es negro, es de un color azul obscuro. Mirando fijamente se ve claramente la DIFERENCIA.

PAGINA 26

Xionex hace demostraciones ingresando el texto XIONEX en claro en los bytes, en una imagen lo hace distribuidamente y en la otra lo hace en lo que el piensa que es el bit menos significativo. Como sea estas dos partes no tienen nada de LSB, esto simplemente es MODIFICAR BYTES INCONCIENTEMENTE

PAGINAS 27 y 28

Ingresa el texto XIONEX en la estructura de la imagen pero lo hace de forma binaria, en lo que el dice que es el Bit menos Significativo (Pero como ya dije, eso no es el bit menos significativo). Al final el archivo sigue siendo igual de Critico. Y se nota a simple vista la diferencia.

MI CORRECCION DE ESTE METODO SERIA:


EL metodo LSB en imagenes en primeras no es asi. NUNCA SE HACE EL LSB SOBRE LA ESTRUCTURA DE LA IMAGEN. EL LSB se hace SOBRE LOS “PIXELES”. Es diferente ocultar en los colores, que ocultar en la estructura.

¿Alguien noto que en los ejemplos, siempre se ocultaba por en medio del fichero?

Y nunca se hizo desde arriba, cerca de la cabecera…Lo pueden observar viendo el offset del editor hexadecimal.

¿Por qué no lo hizo hasta arriba?

Facil,por que el metodo LSB repito, se hace sobre los PIXELES, y no sobre la estrcutura, si lo hubiera hecho desde el offset primero, hubiera dañado la cabecera, aun asi en todos los ejemplos DAÑO toda la imagen, por que MODIFICA la estructura. Cosa que no pasa, si se hace el LSB en los pixeles.

¿Entonces por que le salian los ejemplos?

Bueno, eso se puede deber al tipo de Fichero, por ejemplo si es un BMP, como hace la tecnica XioneX, le saldria muy bien, ya que los bytes despues del byte 53 del formato BMP, estan intimamente relacionados con los pixeles. Cosa que no pasa, con un formato de alta compresion, y este fichero si se dañaria. Yo creo que en sus pruebas le pasaba algo asi, por eso recomienda el BMP.

Mucho bla bla bla…¿Entonces como es el metodo LSB?
No les dire jajaja…mmm…estoy preparando un tuto, asi que despues lo dire. Pero en si es esto.De una imagen, hacer un codigo, que recorra todos los pixeles, de cada pixel, obtener su binario. El texto o archivo a esconder, pasarlo a binario, y cada bit del fichero, sustituirlo por cada ultimo bit, o binario del primer archivo. Y listo!!!Asi se asegura que solo se modifico un solo bit de cada pixel, y para el ojo humano es IMPOSIBLE ver el cambio de color. Y asi se guarda. ;) EXTRA:PAGINA 1

Jaja, se que alomejor esto sera chocante, pero aparte de encantarme la esteganografia, tambien me encanta el Griego…Por lo que la portada me gusto mucho, sin embargo hay lo que yo creo 2 Errores.

En letras griegas, si lo traducimos nada mas como Fonemas podemos ver que dice: DIFERENTE,JRIPTOGRA,ESTEGANOGRAFIA,ESTEGANOGRAPEIA

Ahora la palabra JRIPTOGRA, esta mal formada, Aqui se quiere dar a entender CRIPTOGRAFIA. Y XioneX lo hace en parte bien, pero sin saber como suena. La primera letra la pone como una “X” (ji), pero en si eso al traducirlo es “Kh”, por lo que la traducción es: “Khriptogra”, pero aunque ahi veamos “KH” suena como “JOTA”(J) por eso lo traduje como Jriptogra, por que cualquiera que sepa griego y lo lea, eso leeria. Ahora en esa misma palabra le falta una F(Phi),I(iota),A(alfa)…(me supongo que por espacio no se puso…Para mi la palabra criptografia, si se quiere representar nada mas foneticamente seria:


Kappa,rho,iota,pi,tau,omicron,gamma,rho,alfa,phi,iota,alfaPagina 5

En la primera imagen de la diferenciacion de Criptografia contra Esteganografia.La imagen de demostracion de como funciona un sistema criptografico pone como informacion cifrada:

.-ZU SMOLANE AS WEA @ AS. >>> Esta codificada

Al decodificarlo queda:

.-El domingo a las 4 Pm.

Yo no se que algoritmo de encriptación se uso. Pero por lo visto es uno de sustitución simple, pero si lo analizamos a “ojo de buen cubetero” podemos observar algo muy notorio

ZU SMOLANE AS WEA @ AS. >> 18 caracteres (incluyendo el punto)
El domingo a las 4 Pm. >> 17 caracteres (incluyendo el punto)

Por lo que vemos, si es de sustitución simple, hay una incongruencia.Aparte podemos ver que la “a” la codifica como “AS” y que “Pm” tambien se codifica como “AS”, entonces hay algo mal en eseejemplo no??

Bueno eso es todo, o al menos lo mas relevante, hay cosas que igual quedan a discusión, pero ese no es el plan. Repito Esto tiene el objetivo de dar información clara y de calidad. Igualmente FELICITO a XIONEX por este gran trabajo que hizo, yo simplemente refine algunos detalles.

Amigo XioneX creo que usted tambien es mexicano como yo, y eso me alegra, ya que dos mexicanos estamos interesados por este arte. Y como yo, creo que los dos tenemos menos de 18 años y eso es mas interesante :D  Bueno no me queda mas que invitar a todos a leer el manual de XioneX Esteganografia desde cero

Corrección hecha por hecky para estegano.neobits.org todo lo expresado aqui, es mera opinion de “hecky”

Saludos ;)

Curiosidades Ave maria de Trithemius

2 Comments

Ave maria de Trithemius.

Bueno les queria hablar del Ave maria de Trithemius, probablemente muchos ya lo conozcan. Y la verdad yo no les pienso dar la clase historica :P Ya que pueden encontrar de Johannes Trithemius mucho en la wiki.

Sobre esta tecnica igualmente no les hablare mucho, ya que hay paginas como ESTA (donde yo lo aprendi), donde explican PERFECTAMENTE de que trata el Ave maria de Trithemius

Simplemente explicare rapidamente de que trata la técnica, sin la historia. Trithemius, considerado padre de la esteganografia, creo el AVE MARIA de trithemius. Consiste en que a cada letra se le asigna una serie de palabras, para asi formar una “oración” aqui esta la correspondecia de cada una:

A en el cielo                        N en el paraíso
B para todo el siempre        O hoy
C un mundo sin fin             P en su divinidad
D en una infinidad              Q en Dios
E perpetuamente                 R en su felicidad
F por toda la eternidad        S en su reino
G durable                            T en su majestad
H incesantemente               U en su beatitud
I irrevocablemente              V en su beatitud
J irrevocablemente              W en su beatitud
K eternamente                     X en su magnificencia
L en su gloria                      Y al trono
M en su luz                         Z en toda la eternidad

Entonces el texto “incesantemente perpetuamente un mundo sin fin eternamente al trono”  Quiere decir “hecky

Y estegano neobits seria: “perpetuamente en su reino en su majestad perpetuamente durable en el cielo en el paraiso hoy en el paraiso perpetuamente hoy para todo el siempre irrevocablemen
te en su majestad en su reino

Yo creé una herramienta online que Convierte cualquier texto al Ave Maria de Trithemius, automaticamente.

LA HERRAMIENTA ESTA ACA.

Bueno esto mas que nada esta como curiosidad ;)   Saludos ;)

P.D. Aun trabajo en la herramienta para desencriptar, si alguien gusta ayudar con el code, Bienvenido, seria de gran ayuda :D

Att. hecky para estegano.neobits.org

Retos Protegido: Solución[es] al RetoExtra (7)

Escribe la contraseña para ver los comentarios.

Esta entrada está protegida. Para verla, escribe la contraseña: