Probablemente muchos de ustedes ya sepan de esto pero me ha llamado mucho la atención al estar experimentando con los archivos GIF y BMP que al copiar los primeros 3 bytes del fichero al final del ultimo, se puede agregar gran cantidad de informacion despues de esta copia de bytes sin que las imagenes sufran algun tipo de modificacion y sin tener problemas al visualizarlos al menos en varios programas en donde lo probe y me entro la curiosidad de si esto es posible en cualquier otro tipo de archivos?
Probablemente no es el descubrimiento del año, sino simplemente algo curioso que encontre.
No se si alguien ya lo haya intentado o si haya encontrado algo extra sobre esto?
ATENCIÓN: Este sitio ha dejado de actualizarse el 15 de Abril de 2012 y se mantiene como archivo histórico de los contenidos publicados entre 2004 y 2012.
Por favor, visita nuestro nuevo sitio para acceder a información actualizada. Muchas gracias.
this is not a bug, just a feature ;)
papabob31 Diciembre 2004 - 8:28pm
Los gif, al igual que los jpeg y varios otros formatos se basan en meter la informacion en contenedores. Así te encontraras al principio del fichero el contenedor de firma (el que dice que lo que tienes es un gif), el de cabecera (con el espacio de colores, resolucion, etc) y el del data stream (la imagen, vaya). Estos contenedores suelen tener 3 campos: el identificador del contenedor, la longitud total y la informacion propia del contenedor.
Normalmente los estandares de imagenes se establecen en forma abierta, de forma que se le puedan añadir mas opciones a una imagen sencillamente definiendo otro tipo de contenedor (p.ej. contenedores de tipo URL en el formato jpeg2000, para poner la web del programa que lo ha editado :). Para asegurar que los lectores sigan siendo compatibles se establece que si un lector se encuentra con un contenedor que no reconoce, sencillamente lo ignore y siga con el siguiente.
Seguramente lo que te este pasando con los GIF es que al poner otra vez los 3 bytes al final del fichero, el programa sencillamente lo descarta porque no reconoce el resto de los datos que le siguen como un contenedor conocido, y lo ignora hasta el final.
Con los BMP no sabria decirte, tampoco conozco el formato a fondo...
un saludo.
Esconder cosas en ficheros de imagen
igor2120 Diciembre 2004 - 10:34pm
Guillermito es un hacker francés de origen español que vive en USA donde investiga en biología. Se hizo famoso porque denunció la propaganda engañosa de una empresa antivirus que le denunció por ello y será juzgado el próximo 4 de Enero de unos cargos terrorificos por los que puede ir a la cárcel.
Pero todo esto es otra historia que será contada en otro momento. Lo que quería decir es que es un experto en descubrir cosas ocultas de la forma que dices. En este link se explica (en inglés) como desemascaró a un "experto" que estaba diciendo por la tele que cualquier terrorista podía esconder de todo en una web porno. Guillermito comentó en un newsgroup que eso era una tontería y que cualquiera podía descubrir lo que estaba "oculto". El "experto" se enteró y empezó a insultarle en público. El "experto" le desafió diciendo que dejaría una imagen con algo oculto en su web a ver si lo descubría (la expresión que usó fue "a los cretinos como Guillermito les ha llegado la hora de probar lo que dicen").
Guillermito lo descubrió en unos minutos con un programa de dump hexadecimal, vió que era un texto cifrado y lo descifró en menos de una hora. Le dijo al "experto" (a estas alturas más bien un lamer de pacotilla) como lo había cifrado, con que programa lo había metido en la imagen y qué password había utilizado (tanto el texto como el password eran insultos hacia Guillermito). O sea el experto-wanabee-lamer-moron quedó como un cap... que es lo que era. Toda la historia en primera persona en inglés en
http://www.guillermito2.net/stegano/camouflage/index.html
y para un analisis de todos los softwares que lo hacen junto con links a patadas en
http://www.guillermito2.net/stegano/
Es un tema un poco árido porque implica formatos de ficheros pero desde luego es extremadamente interesante y de actualidad.
Re: Dato Curioso sobre los GIFs y BMPs
Darkgrave15 Diciembre 2004 - 12:24am
Holas, leí tu comentario y quería comentar algo respecto a los BMPs.
Si buacas el formato, verás que los bitmaps de 16 millones de colores guardan los colores de cada pixel en un grupo de 32 bits (4 bytes). Blue, Green, Red y uno llamado padding o relleno (en este orden). En teoría esto lo hacen para leer el archivo de forma más eficiente, y cada pixel en un entero de 32 bits. Pues en el cuarto byte de cada uno de los pixels se pued escribir lo que quieras, pues ningún programa lee este byte. Se suponía que se la daría un uso futuro, como añadir un canal alpha a los BMPs, pero dudo que a estas alturas lo extiendan.
En un BMP de 1280 * 1024 tienes 1.3 millones de caracteres para escribir lo que quieras.