Как посмотреть метаданные файлов 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, то алгоритм действий следующий:
- Добавьте к файлу расширение .zip.
- Распакуйте полученный архив.
- Откройте файлы docProps/core.xml и docProps/app.xml и замените данные на нужные вам. После редактирования сохраните эти файлы
- Выберите все распакованные каталоги и файлы и запакуйте всё это в zip архив.
- К полученному архиву добавьте расширение .docx
- Нужно проверить, что документ не повреждён и сохранил свою работоспособность. Чтобы в него не сохранились новые метаданные, на всякий случай сделайте копию нового документа и проверьте его.
Кстати, таким образом можно не только удалять, но и спуфить (подменять) метаданные офисных документов:

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

Много лет назад аналогичный «разбор» и «сборку» файлов я делал даже на PHP (я редактировал содержимое файлов Word для целей обхода Антиплагиата) — рабочие файлы Word получались при упаковке их с помощью класса ZipArchive при использовании метода сжатия по умолчанию.
Заключение
Метаданные могут содержать важную информацию, вплоть до ФИО автора документа, поэтому им нужно уделять особое внимание.
В плане показа и очистки метаданных из документов MS Office такими инструментами как mat и mat2, то первая их не показывает и портит файл при очистке, вторая их показывает, и успешно очищает файл.
Самый простой способ очистить метаданные в документе Word и в других офисных программах — сделать это прямо в соответствущем редакторе MS Office.