Как посмотреть метаданные файлов MS Word. Как удалить и редактировать метаданные Word

Как посмотреть метаданные файлов MS Word. Как удалить и редактировать метаданные Word

Life-Hack [Жизнь-Взлом]/Хакинг


#Обучение

В файле MS Word и вообще во всех офисных документах MS Office содержится множество метаданных. 

И ещё: 

Если нужно извлечь метаданные из файлов MS Word без открытия файла в редакторе Word, то можно воспользоваться специальными утилитами. 

При этом популярный инструмент mat, который используется для показа и очистки метаданных, работает с файлами MS Word не очень хорошо: 

at -d file2.docx

Пример вывода: 

[+] File file2.docx :
Harmful metadata found:
    customXml/item1.xml's zipinfo: {'system': 'unknown'}
    docProps/core.xml's zipinfo: {'system': 'unknown'}
    docProps/app.xml's zipinfo: {'system': 'unknown'}
    word/document.xml's zipinfo: {'system': 'unknown'}
    [Content_Types].xml's zipinfo: {'system': 'unknown'}
    word/theme/theme1.xml's zipinfo: {'system': 'unknown'}
    customXml/itemProps1.xml's zipinfo: {'system': 'unknown'}
    _rels/.rels's zipinfo: {'system': 'unknown'}
    customXml/_rels/item1.xml.rels's zipinfo: {'system': 'unknown'}
    word/footnotes.xml's zipinfo: {'system': 'unknown'}
    word/header1.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/numbering.xml's zipinfo: {'system': 'unknown'}
    word/fontTable.xml's zipinfo: {'system': 'unknown'}
    word/endnotes.xml's zipinfo: {'system': 'unknown'}
    word/settings.xml's zipinfo: {'system': 'unknown'}
    docProps/app.xml: harmful content

На самом деле, мало что понятно и показанная информация кажется скорее мусором. Но полезные данные имеются, это строки: 

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

В них говориться, что файлы docProps/core.xml и docProps/app.xml содержат потенциально пагубное содержимое. Но самих данных с помощью этой программы мы увидеть не можем. 

Если попытаться проанализировать файл .docm (документ MS Word с поддержкой макросов): 

mat -d file2.docm

То программа просто напишет, что не может обработать этот файл: 

[-] Unable to process file2.docm

Это при том, что формат .docm имеет минимальное отличие от формата .docx — пара дополнительных файлов внутри (с описанием макросов и второй файл с самими макросами). 

Имеется ещё одна версия mat2. Попробуем её: 

mat2 -s file2.docx

Пример вывода: 

[+] Metadata for file2.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: 275
      CharactersWithSpaces: 300
      DocSecurity: 0
      HeadingPairs: <vt:vector size="2" baseType="variant"><vt:variant><vt:lpstr>Название</vt:lpstr></vt:variant><vt:variant><vt:i4>1</vt:i4></vt:variant></vt:vector>
      HyperlinksChanged: false
      Lines: 76
      LinksUpToDate: false
      Pages: 6
      Paragraphs: 31
      ScaleCrop: false
      SharedDoc: false
      Template: Normal
      TitlesOfParts: <vt:vector size="1" baseType="lpstr"><vt:lpstr></vt:lpstr></vt:vector>
      TotalTime: 16
      Words: 50
      create_system: Weird
[++] Metadata for docProps/core.xml:
      cp:lastModifiedBy: MiAl
      cp:lastPrinted: 2019-07-18T02:58:00Z
      cp:revision: 9
      create_system: Weird
      dc:creator: Alex
[++] Metadata for word/_rels/document.xml.rels:
      create_system: Weird
[++] Metadata for word/document.xml:
      create_system: Weird
[++] Metadata for word/endnotes.xml:
      create_system: Weird
[++] Metadata for word/fontTable.xml:
      create_system: Weird
[++] Metadata for word/footnotes.xml:
      create_system: Weird
[++] Metadata for word/header1.xml:
      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

Здесь всё намного лучше, выведены почти все метаданные файла. 

Попробуем проанализировать формат .docm

mat2 -s file2.docm

Опять неудача: 

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

Как посмотреть метаданные файла .docm 

Программа mat2 не в курсе, что .docm это такой же файл, как и .docx. Зато мы это знаем и можем пойти совсем простым путём — просто изменим (или добавим) расширение файла на .docx: 

cp file2.docm file2.docm.docx

Теперь метаданные отлично извлекутся:

mat2 -s file2.docm.docx

Как сделать выводимую в mat2 информацию более читаемой 

Можно заметить, что вывод команды mat2 преимущественно состоит из строк, не несущих особой смысловой нагрузки: 

create_system: Weird

Выводимая информация станет намного более ясной для восприятия, если мы просто уберём показ этих строк: 

mat2 -s file2.docx | grep -v 'Weird'

Что показывает mat2 

Программа mat2 выводит название узлов XML файлов, которые имеют говорящие имена. А именно: 

  •  AppVersion — версия приложения 
  •  Application — приложение 
  •  Characters — всего символов 
  •  CharactersWithSpaces — всего символов с пробелами 
  •  DocSecurity — безопасность документа 
  •  HyperlinksChanged — ссылки изменены 
  •  Lines — всего строк в документе 
  •  LinksUpToDate — ссылки обновлены 
  •  Pages — всего страниц в документе 
  •  Paragraphs — всего параграфов в документе 
  •  ScaleCrop — масштабирование/обрезка 
  •  SharedDoc — совместный документ 
  •  Template — используемый шаблон 
  •  TitlesOfParts — имена частей 
  •  TotalTime — общее время правки 
  •  Words — всего слов в документе 
  •  cp:lastModifiedBy — кем последний раз изменён документ 
  •  cp:lastPrinted — дата последней печати документа 
  •  cp:revision — всего редакций документа (количество правок и сохранений) 
  •  dc:creator — кем документ создан 

Как посмотреть метаданные документов MS Office без дополнительных программ 

На самом деле, новый формат документов, например, файлов Word .docx представляет собой zip архив, в котором собраны преимущественно xml файлы (также там могут быть изображения, макросы, другие бинарные файлы). 

Для ручного анализа я создал новый файл file3.docx и добавил туда картинку с GPS координатами и другими метаданными. Программы mat и mat2 показали присутствие изображения, но сами метаданные из него не вывели. 

Итак, к файлу file3.docx можно добавить расширение .zip и после этого распаковать его содержимое как архив. 

Распаковываю файл: 

unzip file3.docx.zip -d file3

Медиафайлы при распаковке находятся в папке /word/media/

Программа mat2 не смогла найти в изображении метаданных: 

mat2 -s file3/word/media/image1.jpeg
  No metadata found

Программа mat также ничего не нашла: 

mat -d file3/word/media/image1.jpeg
[+] File file3/word/media/image1.jpeg :
No harmful metadata found

Видимо, при вставке изображений в документы Word, они пересохраняются программой и при этом все метаданные теряются. Но их хотя бы можно просто открыть и посмотреть: 

Метаданные документа содержаться в файлах docProps/core.xml и docProps/app.xml. Я открыл их в IDE NetBeans и для удобства чтения выбрал опцию форматирования документа, поскольку в начальном виде весь документ записан в одну строку, трудную для восприятия. 

Файл docProps/core.xml

Файл docProps/app.xml

В файле core.xml имеются даты создания и изменения, которые не выводит даже программа mat2. Возможно, есть ещё какие-то поля, которые невозможно увидеть кроме как открыв эти файлы. 

В каком файле Word содержаться макросы 

Информация о макросах записана в файл /word/vbaData.xml, а сами макросы сохранены в /word/vbaProject.bin — этот файл является бинарным. 

В каком файле Word записан текст документа 

Текст документа сохраняется в файл /word/document.xml. В этом документе используется особая разметка на основе открывающихся и закрывающихся тегов и их свойствах. 

Как очистить метаданные файла MS Word 

Очистить метаданные документов MS Office, в том числе Word, можно прямо в самой программе для редактирования. Далее показано на примере Word. 

В меню нажмите Файл

Далее во вкладке Сведения найдите кнопку Поиск проблем и в выпадающем меню выберите Инспектор документов

Если документ не сохранён, то перед анализом будет предложено сохранить его. 

Нажмите кнопку Проверить

Обратите внимание на пункт Свойства документа и персональные данные — при желании, нажмите кнопку Удалить всё

Удаление метаданных офисных файлов в Linux 

Программа mat вроде бы как успешно удаляет метаданные из файла: 

mat file3.docx

Об этом говорит вывод: 

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

Но полученный файл невозможно открыть ни в одной программе… 

Программа mat2 успешно справилась с задачей и удалила все метаданные: 

mat2 file3.docx

Обратите внимание, что она не очищает файл, а создаёт новый без метаданных, в данном случае имя файла без метаданных будет file3.cleaned.docx, что касается файла file3.docx, то он останется без изменений. 

Итак, если вам действительно нужно удалить метаданные файла .docx не открывая его в редакторе Word, то алгоритм действий следующий: 

  1. Добавьте к файлу расширение .zip
  2. Распакуйте полученный архив. 
  3. Откройте файлы docProps/core.xml и docProps/app.xml и замените данные на нужные вам. После редактирования сохраните эти файлы 
  4. Выберите все распакованные каталоги и файлы и запакуйте всё это в zip архив. 
  5. К полученному архиву добавьте расширение .docx 
  6. Нужно проверить, что документ не повреждён и сохранил свою работоспособность. Чтобы в него не сохранились новые метаданные, на всякий случай сделайте копию нового документа и проверьте его. 

Кстати, таким образом можно не только удалять, но и спуфить (подменять) метаданные офисных документов: 

Обратите внимание на даты создания, изменения, печати и номер редакции: 

Много лет назад аналогичный «разбор» и «сборку» файлов я делал даже на PHP (я редактировал содержимое файлов Word для целей обхода Антиплагиата) — рабочие файлы Word получались при упаковке их с помощью класса ZipArchive при использовании метода сжатия по умолчанию. 

Заключение 

Метаданные могут содержать важную информацию, вплоть до ФИО автора документа, поэтому им нужно уделять особое внимание. 

В плане показа и очистки метаданных из документов MS Office такими инструментами как mat и mat2, то первая их не показывает и портит файл при очистке, вторая их показывает, и успешно очищает файл. 

Самый простой способ очистить метаданные в документе Word и в других офисных программах — сделать это прямо в соответствущем редакторе MS Office. 

Источник


Report Page