ZaLinux.ru

Как удалить метаданные файла на Linux

Обычно с каждым файлом связана определённая информация, она называется «метаданные», она описывает информацию о файле, представленных в форме набора пар величина-значение. Обычно метаданные включает имя создателя, инструмент, использованный для генерации этого файла, дату создания/изменения файла, расположение создания, историю редактирования и т. д. EXIF (изображения), RDF (веб-ресурсы), DOI (цифровые документы) — некоторые из популярных стандартов метаданных.

При том, что метаданные имеют свои достоинства в области управления данными, они могут реально негативно повлиять на вашу приватность. Данные EXIF в фотоизображениях могут раскрыть персональную идентификационную информацию, такую как модель вашей камеры, GPS координаты фотосъёмки, вашу любимую программу для фоторедактирования и т. д. Метаданные в документах и таблицах содержат информацию об авторе/принадлежности и другую историю редактирования. Не будьте параноиками, но инструменты по сборе метаданных, такой как metagoofil, часто используются во на стадии сбора информации как часть тестирования на проникновение.

Ну и помните эту шутку? «Даже если вы не параноик, это не значит, что за вами не следят».

Для тех из вас, кто хочет избавиться от любых персональных метаданных из любых данных, которые будут разделены с другими, есть способы удалить метаданные из информации о файлах. Вы можете использовать существующий редактор документов или изображений, которые обычно имеют встроенные возможности редактировать метаданные. В этом уроке позвольте мне представить отличный отдельный инструмент по очистке метаданных, которые разработан для единственной цели: анонимизировать все метаданные для вашей приватности.

MAT (Metadata Anonymisation Toolkit — инструментарий анонимизации метаданных) — это отдельный чистильщик метаданных, написанный на Python. Он был разработан под крылом проекта Tor, и поставляется в стандартном наборе на Tails, продвинутую в вопросах приватности live OS.

По сравнению с другими инструментами, таким как exiftool, которые могут записывать только в ограниченное количество типов файлов, MAT может ликвидировать метаданные из файлов любого типа: изображения (png, jpg), документы (odt, docx, pptx, xlsx, pdf), архивы (tar, tar.bz2), аудио (mp3, ogg, flac) и т.д.

Установка MAT на Linux

На основанных на Debian системах (Ubuntu или Linux Mint), MAT идёт в стандартных пакетах, следовательно установка простая:

$ sudo apt-get install mat

На Fedora MAT не поставляется как собранный пакет, следовательно вам нужно собрать его из источников. Здесь то, как я скомпилировал MAT на Fedora (с некоторым ограниченным успехом, смотрите конец урока):

$ sudo yum install python-devel intltool python-pdfrw perl-Image-ExifTool python-mutagen
$ sudo pip install hachoir-core hachoir-parser
$ wget https://mat.boum.org/files/mat-0.5.tar.xz
$ tar xf mat-0.5.tar.xz
$ cd mat-0.5
$ python setup.py install

Анонимизируем метаданные с MAT-GUI

После установки, MAT может быть доступен через графический интерфейс, а также в командной строке. Для запуска графической версии MAT просто печатаем:

$ mat-gui

Давайте очистим какие-нибудь документы. Сначала посмотрим на присутствующие в них метаданные.

Это текстовый документ.

01

Видно, что для его создания использовалась LibreOffice, которая установлена на Windows и имеет версию 4.3.5. Есть данные создания и модификации, посчитано количество изображений, таблиц, страниц, есть информация о длительности редактирования, дате последнего доступа и прочая — не мало!

А вот теперь посмотрим метаданные в файле изображения:

02

03

Там их так много, что они не уместились даже в один скриншот. Самое интересное, на мой взгляд, это GPS данные — можно точно определить, где была сделана фотография и приехать к фотографу (ко мне) в гости. Ещё есть информация о камере — это Samsung Galaxy II, информация об его прошивке, есть огромный комментарий, расшифровка которого тоже что-то даст, дата снимка, огромное количество информации о настройках камеры в момент съёмки.

Чтобы добавить файл в MAT для очистки, воспользуйтесь иконкой "Add" или просто перетащите их в окно программы. Как только файлы загружены, нажмите иконку "Check" для сканирования на наличие любой скрытой информации метаданных.

04

При обнаружении любых метаданных MAT'ом, "State" будет изменено на "Грязный".

05

Вы можете дважды кликнуть, чтобы увидеть найденные метаданные.

06

07

08

Для очистки метаданных из файла, кликните на иконку "Clean". MAT автоматически опустошит все частные поля метаданных из файла.

09

В очищенном состоянии, без каких-либо идентифицируемых следов:

10

11

Анонимизируем метаданные из командной строки

Как упомянуто ранее, другой способ вызвать MAT — это из командной строки, и для этого используйте команду mat

Для проверки любых чувствительных метаданных, во-первых, перейдите в директорию, где находятся ваши файлы, а затем запустите (обратите внимание на точку на конце — она важна). Вместо точки можно использовать *, т. е. звёздочку, но тогда очистка происходит только в текущем каталоге, без рекурсивного обхода подкаталогов):

$ mat -c .

Этим мы просканируем все файлы в текущем каталоге и в поддиректориях, и создадим отчёт по их состоянию (чистое или нечистое).

12

Вы можете проверить актуальные метаданные используя опцию '-d':

$ mat -d <input_file>

13

Если вы не применяли каких-либо опций с командой mat, действие по умолчанию — это удаление метаданных из файлов. Если вы хотите сохранить бэкап оригинальных файлов во время очистки, используйте опцию '-b'. Следующая команда очистить все файлы и сохранит оригинальные файлы с расширением '*.bak".

$ mat -b .

(опять обратите внимание на точку).

14

Чтобы увидеть все поддерживаемые форматы файлов, запустите:

$ mat -l

15

Решение проблем

В данное время я имею следующую проблему со скомпилированной версией MAT на Fedora. Когда я пробую очистить файлы архивов/документов (например, *.gz, *.odt, *.docx) на Fedora, MAT терпит неудачу со следующей ошибкой. Если вы знаете, как исправить эту проблему, дайте мне знать в комментарии.

File "/usr/lib64/python2.7/zipfile.py", line 305, in __init__
raise ValueError('ZIP does not support timestamps before 1980')
ValueError: ZIP does not support timestamps before 1980

Заключение

MAT — это простой, но крайне полезный инструмент для предотвращения любых небрежных утечек в приватности из метаданных. Помните, вы ответственны за анонимизацию содержимого файла, если в этом есть необходимость. Всё, что MAT делает, это ликвидируют метаданные, связанные с вашими файлами, но ничего не делает с самими файлами. Короче говоря, MAT можно быть спасателем, так как может управляться с удалением большинства метаданных, но вам не следует полагаться только на неё, чтобы гарантировать вашу конфиденциальность.

Рекомендуемые статьи:

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *