Cómo Ver, Editar y Eliminar los Metadatos en Archivos Word
Cómo Ver, Editar y Eliminar los Metadatos en Archivos Word

Cómo Ver, Editar y Eliminar los Metadatos en Archivos de MS Word

Los metadatos en los archivos de Word son un concepto que probablemente resulte más familiar a la mayoría de los profesionales de seguridad, que a los usuarios habituales de las suites de Office. Básicamente, los metadatos son datos sobre datos. Por ejemplo, si estás mirando un documento y quieres saber quién lo ha escrito, los metadatos incluirían cosas como el nombre del autor, la fecha, etc.

Nota Importante

Los metadatos, también conocidos como etiquetas, son datos que se añaden a un archivo para anotarlo, describirlo o nombrarlo. Son invisibles a simple vista, y aunque la gente generalmente no se da cuenta de que está utilizando metadatos en su vida digital cotidiana, lo hacen.

Metadatos en los Archivos de Word

El archivo de MS Word y, en general, todos los documentos de MS Office contienen muchos metadatos.

Metadatos de información en archivo Word
Metadatos de información en archivo Word

Y además: (Propiedades Avanzadas)

Propiedades avanzadas de documento Word
Propiedades avanzadas de documento Word

Si necesitas extraer metadatos de archivos de MS Word sin abrir el archivo en Word, puede utilizar utilidades especiales.

  • Instalar mat y mat2:
sudo apt-get install -y mat
sudo apt-get install -y mat2

En realidad, la popular herramienta mat, que se utiliza para mostrar y limpiar los metadatos, no funciona muy bien con los archivos de MS Word:

mat -d Archivo.docx
Metadatos de archivos Word con mat
Metadatos de archivos Word con mat

Ejemplo de salida:

[+] File Archivo.docx :
Harmful metadata found:
	docProps/app.xml: harmful content
	docProps/core.xml's zipinfo: {'system': 'unknown'}
	word/media/image1.jpg's zipinfo: {'system': 'unknown'}
	customXml/_rels/item1.xml.rels's zipinfo: {'system': 'unknown'}
	word/document.xml's zipinfo: {'system': 'unknown'}
	[Content_Types].xml's zipinfo: {'system': 'unknown'}
	word/media/image2.png's zipinfo: {'system': 'unknown'}
	word/theme/theme1.xml's zipinfo: {'system': 'unknown'}
	_rels/.rels's zipinfo: {'system': 'unknown'}
	customXml/itemProps1.xml's zipinfo: {'system': 'unknown'}
	customXml/item1.xml's zipinfo: {'system': 'unknown'}
	word/_rels/document.xml.rels's zipinfo: {'system': 'unknown'}
	word/webSettings.xml's zipinfo: {'system': 'unknown'}
	word/styles.xml's zipinfo: {'system': 'unknown'}
	docProps/core.xml: harmful content
	word/media/image3.jpg's zipinfo: {'system': 'unknown'}
	word/numbering.xml's zipinfo: {'system': 'unknown'}
	word/fontTable.xml's zipinfo: {'system': 'unknown'}
	docProps/app.xml's zipinfo: {'system': 'unknown'}
	word/settings.xml's zipinfo: {'system': 'unknown'}
	word/media/image4.png's zipinfo: {'system': 'unknown'}

De hecho, poco está claro y la información que se muestra parece más bien basura. Pero hay datos útiles, estas son líneas:

docProps/core.xml: harmful content
docProps/app.xml: harmful content

Dicen que los archivos docProps/core.xml y docProps/app.xml contienen contenido potencialmente dañino (harmful). Pero, no podemos ver los datos en sí con la ayuda de este programa.

Si se intenta analizar un archivo .docm (un documento de MS Word con soporte de macros):

mat -d macros.docm
Mostrar metadatos de macro Word con mat
Mostrar metadatos de macro Word con mat

Ese programa simplemente escribirá que no puede procesar este archivo:

ERROR:root:macros.docm is not a valid file
[-] Unable to process macros.docm

Esto es así a pesar de que el formato .docm tiene una mínima diferencia con el formato .docx – un par de archivos adicionales en su interior (con una descripción de las macros y un segundo archivo con las propias macros).

Hay otra versión de mat2. Vamos a probarla:

mat2 -s Archivo.docx
Metadatos de archivos Word con mat2
Metadatos de archivos Word con mat2

Ejemplo de salida:

[+] Metadata for Archivo.docx:
[++] Metadata for [Content_Types].xml:
      create_system: Weird
[++] Metadata for _rels/.rels:
      create_system: Weird
[++] Metadata for customXml/_rels/item1.xml.rels:
      create_system: Weird
[++] Metadata for customXml/item1.xml:
      create_system: Weird
[++] Metadata for customXml/itemProps1.xml:
      create_system: Weird
[++] Metadata for docProps/app.xml:
      AppVersion: 16.0000
      Application: Microsoft Office Word
      Characters: 8493
      CharactersWithSpaces: 9963
      DocSecurity: 0
      HeadingPairs: <vt:vector size="2" baseType="variant"><vt:variant><vt:lpstr>Title</vt:lpstr></vt:variant><vt:variant><vt:i4>1</vt:i4></vt:variant></vt:vector>
      HyperlinksChanged: false
      Lines: 70
      LinksUpToDate: false
      Pages: 9
      Paragraphs: 19
      ScaleCrop: false
      SharedDoc: false
      Template: Normal
      TitlesOfParts: <vt:vector size="1" baseType="lpstr"><vt:lpstr></vt:lpstr></vt:vector>
      TotalTime: 14
      Words: 1489
      create_system: Weird
[++] Metadata for docProps/core.xml:
      cp:lastModifiedBy: J D
      cp:revision: 3
      create_system: Weird
      dc:creator: Viral Geek
[++] Metadata for word/_rels/document.xml.rels:
      create_system: Weird
[++] Metadata for word/document.xml:
      create_system: Weird
[++] Metadata for word/fontTable.xml:
      create_system: Weird
[++] Metadata for word/media/image1.jpg:
      create_system: Weird
[++] Metadata for word/media/image2.png:
      create_system: Weird
[++] Metadata for word/media/image3.jpg:
      create_system: Weird
[++] Metadata for word/media/image4.png:
      create_system: Weird
[++] Metadata for word/numbering.xml:
      create_system: Weird
[++] Metadata for word/settings.xml:
      create_system: Weird
[++] Metadata for word/styles.xml:
      create_system: Weird
[++] Metadata for word/theme/theme1.xml:
      create_system: Weird
[++] Metadata for word/webSettings.xml:
      create_system: Weird

Aquí todo es mucho mejor, se muestran casi todos los metadatos del archivo.

Vamos a intentar analizar el formato .docm:

mat2 -s macro.docm

De nuevo el fracaso:

[-] macro.docm's format (application/vnd.ms-word.document.macroEnabled.12) is not supported

Cómo Ver los Metadatos de un Archivo .docm

El programa mat2 no sabe que .docm es el mismo archivo que .docx. Pero, nosotros lo sabemos y podemos ir de una forma muy sencilla: basta con cambiar (o añadir) la extensión del archivo a .docx:

cp macro.docm macro2.docm.docx

Ahora los metadatos están perfectamente extraídos:

mat2 -s macro2.docm.docx
Ver los Metadatos de un Archivo .docm
Ver los Metadatos de un Archivo .docm

Cómo Hacer más Legible la Salida de mat2

Puedes notar que la salida del comando mat2 consiste principalmente en las mismas líneas:

create_system: Weird

La salida será mucho más clara si simplemente eliminamos estas líneas:

mat2 -s Archivo.docx | grep -v 'Weird'
Salida legible de mat2
Salida legible de mat2

Datos Que Muestra mat2

El programa mat2 muestra el nombre de los nodos de los archivos XML que tienen nombres descriptivos. Estos son:

  • AppVersion – versión de la aplicación
  • Application – aplicación
  • Characters – total de caracteres
  • CharactersWithSpaces – total de caracteres con espacios
  • DocSecurity – seguridad del documento
  • HyperlinksChanged – enlaces cambiados
  • Lines – total de líneas en el documento
  • LinksUpToDate – enlaces actualizados
  • Pages – total de páginas en el documento
  • Paragraphs – total de párrafos en el documento
  • ScaleCrop – escalado/recorte
  • SharedDoc – documento compartido
  • Template – plantilla utilizada
  • TitlesOfParts – nombres de las partes
  • TotalTime – tiempo total de edición
  • Words – cantidad de palabras en el documento
  • cp:lastModifiedBy – quién modificó el documento por última vez
  • cp:lastPrinted – la fecha de la última impresión del documento
  • cp:revision – el total de revisiones del documento (número de ediciones y guardados)
  • dc:creator – quién creó el documento

Cómo ver Metadatos de Documentos de MS Office sin Programas Adicionales

De hecho, un nuevo formato de documento, por ejemplo, los archivos .docx de Word es un archivo zip, que contiene principalmente archivos xml (también puede haber imágenes, macros, otros archivos binarios).

Para el análisis manual, creé un nuevo archivo WebsiteSecurity.docx y añadí allí una imagen con coordenadas GPS y otros metadatos. Los programas mat y mat2 mostraron la presencia de la imagen, pero los propios metadatos no se derivaron de ella.

Por lo tanto, puedes añadir la extensión .zip al archivo WebsiteSecurity.docx y luego descomprimir su contenido como un archivo.

Descomprimo el archivo:

unzip WebsiteSecurity.docx.zip -d Archivo2

Al desempaquetar, los archivos multimedia se encuentran en la carpeta /word/media/.

El programa mat2 no pudo encontrar ningún metadato en la imagen:

mat2 -s Archivo2/word/media/image1.jpg
  No metadata found in ...

El programa mat tampoco encontró nada:

mat -d Archivo2/word/media/image1.jpg
[+] File /home/esgeeks/Documentos/Archivo2/word/media/image1.jpg :
No harmful metadata found

Al parecer, al insertar imágenes en documentos de Word, el programa las vuelve a guardar y al mismo tiempo se pierden todos los metadatos. Pero, al menos podemos abrir la imagen:

Metadatos de imagen dentro de Word
Metadatos de imagen dentro de Word

Si lo recuerdas, la imagen es la misma utilizada cuando aprendimos a Modificar el GPS y otros Metadatos en las Fotos.

Los metadatos del documento están contenidos en los archivos docProps/core.xml y docProps/app.xml.

Word en formato Zip contiene archivos XMl
Word en formato Zip contiene archivos XML

Los abrí en Sublime Text y, para facilitar la lectura, elegí la opción de formatear el documento, porque en su forma inicial todo el documento está escrito en una sola línea que es difícil de leer.

Contenido del archivo docProps/core.xml:

Contenido de docProps/core.xml:
Contenido de docProps/core.xml:

Contenido del archivo docProps/app.xml:

Contenido de docPropsapp.xml
Contenido de docPropsapp.xml

El archivo core.xml contiene fechas de creación y modificación que incluso el programa mat2 no muestra. Tal vez haya otros campos que no se puedan ver si no es abriendo estos archivos.

Qué Archivo Contiene las Macros en los Archivos de Word

La información de las macros se guarda en el archivo /word/vbaData.xml, y las propias macros se guardan en /word/vbaProject.bin – este archivo es binario.

Qué Archivo Contiene el Texto del Documento en Archivos Word

El texto del documento se guarda en el archivo /word/document.xml. Este documento utiliza un marcado especial basado en etiquetas de apertura y cierre, y sus propiedades.

Cómo Borrar los Metadatos de Archivos de MS Word

Puedes borrar los metadatos de los documentos de MS Office, incluido Word, directamente en el propio programa de edición. El siguiente es un ejemplo de Word.

En el menú, haz clic en Archivo:

Menú Archivo en Microsoft Word
Menú Archivo en Microsoft Word

A continuación, en la pestaña Información, busca el botón Comprobar si hay problemas y selecciona Inspeccionar documento en el menú desplegable:

Inspeccionar documento de Word
Inspeccionar documento de Word

Si el documento no está guardado, antes del análisis se te pedirá que lo guardes.

Haga clic en el botón de verificación y luego clic en Inspeccionar:

Inspeccionar contenido sensible en documento Word
Inspeccionar contenido sensible en documento Word

Presta atención al elemento Propiedades del documento e información personal; si lo deseas, haga clic en el botón Quitar todo:

Quitar Propiedades del documento e información personal
Quitar Propiedades del documento e información personal

Eliminar los Metadatos de Archivos de Office en Linux

El programa mat parece haber eliminado con éxito los metadatos del archivo:

mat file3.docx

Así lo indica la salida:

[*] Cleaning file3.docx
[+] file3.docx cleaned!

El archivo resultante no se puede abrir en ningún programa…

El programa mat2 se encargó con éxito de la tarea y borró todos los metadatos:

mat2 file3.docx

Ten en cuenta que el archivo no se borrará y el archivo se creará sin cambios.

Por lo tanto, si realmente necesitas eliminar los metadatos del archivo .docx sin abrirlo en Word, la secuencia de acciones es la siguiente

  • Añadir una extensión .zip al archivo.
  • Descomprimir el archivo resultante.
  • Abrir los archivos docProps/core.xml y docProps/app.xml y sustituir los datos por los que necesites. Después de editarlos, guardar estos archivos.
  • Seleccionar todos los directorios y archivos desempaquetados y comprímelo todo en un archivo zip.
  • Añadir la extensión .docx al archivo resultante.
  • Es necesario comprobar que el documento no está dañado y ha conservado su funcionalidad. Para evitar que se guarden nuevos metadatos en él, por si acaso, haz una copia del nuevo documento y compruébalo.
  • Por cierto, de esta manera no sólo se puede eliminar, sino también falsificar los metadatos de los documentos de Office:

Anota las fechas de creación, modificación e impresión y el número de revisión:

Editar o falsificar metadatos en archivos Word
Editar o falsificar metadatos en archivos Word

En PHP puedes utilizar la clase ZipArchive usando el método de compresión por defecto para desempaquetar y empaquetar archivos de MS Word .docx.

Conclusión

Los metadatos pueden contener información importante, hasta el nombre del autor del documento, por lo que hay que prestar especial atención.

En cuanto a la visualización y limpieza de los metadatos de los documentos de MS Office con herramientas como mat y mat2, la primera no muestra los metadatos y rompe el archivo cuando se limpia, la segunda los muestra, y limpia con éxito el archivo.

La forma más fácil de limpiar los metadatos en un documento de Word y en otros programas de Office es hacerlo directamente en el editor de MS Office correspondiente. Puedes encontrar más trucos sobre Microsoft Word en Worddesdecero.es.

En el próximo artículo extraeremos, borraremos y falsearemos los metadatos de los formatos de archivo de LibreOffice.

Mi Carro Close (×)

Tu carrito está vacío
Ver tienda