El engaño de las extensiones.

En el principio existieron los .com, .exe, .bat, .txt, los nombres de ficheros iban acompañados de un punto y tres letras a continuación que indicaban que tipo de archivo eran. Más adelante, más y más extensiones vieron la luz, .bmp, .doc, .jpg, .zip y muchas más, el sistema operativo asociaba la extensión a el programa que debía abrirse al hacer doble click en el archivo.
La oscuridad se empezó a extender al ser posible extensiones de más de tres letras, era lo mismo .jpg que .jpeg?, a continuación se pudieron usar puntos en los nombres de archivos tal.qual.noseque.txt. Se estaba cultivando el caos.

Algún inteligente decidió en el sistema operativo más usado, por defecto, ocultar las extensiones de archivos. ¿Con que sentido? No liar al gran público con cosas raras¿? Todavía no lo entiendo.
A partir de aquí el caos ha reinado, la confusión y el lio hacen que dado un archivo, nadie pueda asegurar de que se trata.
Gracias a permitir múltiples puntos en los nombres de archivos, los creadores de virus y malwares varios han podido disfrutar de verdad. Veamos el ejemplo:
Un creador de virus genera su fichero virusletal.exe, pero para nadie lo pueda identificar le cambia el nombre y le llama juegofantastico.exe, bueno la desconfianza de recibir un fichero ejecutable podría hacer fracasar la ejecución del mismo.
El que recibe el fichero, si tiene las opciones por defecto, verá el nombre del fichero como juegofantastico y tal vez el icono que vea por pantalla le de una pista de si es ejecutable o no.

Pues para despistar más, el creador de virus, decide llamarlo: juegofantastico.avi.exe, ahora como la extensión no se ve, el que lo recibe verá solo juegofantastivo.avi pensando que es un vídeo y al cliquear para verlo, ya se abrá infectado.
Las extensiones siempre han despistado, sobretodo en los ficheros de vídeo. ¿ Alguien sabe la diferencia entre un .avi, .mpeg, .asf, .mpg ? Hoy en día ninguna.
Dado que la extensión le indica el sistema operativo con que programa hay que ejecutar ese fichero si yo renombro un .mpg a .avi lo podré ver igualmente. Lo que diferencia a un formato de vídeo a otro es el sistema con el que se ha comprimido, es lo que llamamos codecs.
El standard, es seguir esta tabla y al crear un fichero de vídeo, darle la extensión que corresponda. Pero ni caso.

En linux existe el comando: file nombrefichero.ext que nos indica realmente que es lo que contiene ese fichero, puedo tener un video.avi, lo renombro a video.doc, y el comando file video.doc me dirá que es un vídeo. Es es debido a que file, no se fija en la extensión sino en el contenido real del fichero.
Para sistemas Windows, existe el software gspot.
http://www.headbands.com/gspot/
Que identifica en los ficheros de vídeo los codecs que se han utilizado para crear el fichero y así podemos saber lo que necesitamos para verlo.

La extensión no sirve de nada, no indica nada. Así es.

Otro ejemplo, en Microsoft Office 2007, se introdujeron varias nuevas extensiones, los archivos de Word ya no tienen de extensión .doc, ahora son .docx, los .xls ahora son .xlsx, pues bien estos ficheros son en realidad .zip
Este es otro ejemplo de como nos engañan con las extensiones.
Abramos el Microsoft Word 2007 o 2010, nuevo documento, tecleamos algo, lo guardamos, carta.docx, vamos a renombrarlo, carta.zip, ahora lo descomprimimos, en realidad es un archivo comprimido con otros dentro.

En resumen, si no se sigue el standard, las extensiones no sirven de nada, pero ocultarlas no es la solución.

Leave a Reply