欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

Linux下清除文件中的隐私数据以保护个人隐私

程序员文章站 2023-11-10 09:50:58
平时创建的文件、图片都包含着很多信息,很容易被人利用,所以要清除文件中的元数据,以保护个人隐私,下面为大家介绍下清除文件中的隐私数的方法... 14-12-12...

  我们平时创建的文件、图片都包含着很多信息,很容易被人利用,所以要清除文件中的元数据,以保护个人隐私。下面小编就给大家介绍下如何清除文件中的隐私数据,一起来学习下吧。

  典型的数据文件通常关联着“元数据”,其包含这个文件的描述信息,表现为一系列属性-值的集合。元数据一般包括创建者名称、生成文件的工具、文件创建/修改时期、创建位置和编辑历史等等。几种流行的元数据标准有 exif(图片)、rdf(web资源)和doi(数字文档)等。

  虽然元数据在数据管理领域有它的优点,但事实上它会危害你的隐私。相机图片中的exif格式数据会泄露出可识别的个人信息,比如相机型号、拍摄相关的gps坐标和用户偏爱的照片编辑软件等。在文档和电子表格中的元数据包含作者/所属单位信息和相关的编辑历史。不一定这么绝对,但诸如metagoofil一类的元数据收集工具在信息收集的过程中常最作为入侵测试的一部分被利用。

  Linux下清除文件中的隐私数据以保护个人隐私

  对那些想要从共享数据中擦除一切个人元数据的用户来说,有一些方法从数据文件中移除元数据。你可以使用已有的文档或图片编辑软件,通常有自带的元数据编辑功能。在这个教程里,我会介绍一种不错的、单独的元数据清理工具,其目标只有一个:匿名一切私有元数据。

  mat(元数据匿名工具箱)是一款专业的元数据清理器,使用python编写。它属于tor旗下的项目,而且是live 版的隐私增强操作系统 trails 的标配应用。

  与诸如exiftool等只能对有限种类的文件类型进行写入的工具相比,mat支持从各种各样的文件中消除元数据:图片(png、jpg)、文档(odt、docx、pptx、xlsx和pdf)、归档文件(tar、tar.bz2)和音频(mp3、ogg、flac)等。

  在linux上安装mat

  在基于debian的系统(ubuntu或linux mint)上,已经打包好mat,所以安装很直接:

  $ sudo apt-get install mat

  在fedora上,并没有预先生成的mat软件包,所以你需要从源码生成。这是我在fedora上生成mat的步骤(不成功的话,请查看教程底部):

  $ 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匿名元数据

  一旦安装好,通过gui和命令行都可以使用mat。输入这个命令启动mat的gui:

  $ mat-gui

  尝试清理一个包含如下内置元数据的实例文档文件(如private.odt)。

 Linux下清除文件中的隐私数据以保护个人隐私

  点击“添加”按钮来添加需要清理的文件到mat中。一旦载入文件,点击“确认”按钮对所有隐藏的元数据信息进行扫描。

  Linux下清除文件中的隐私数据以保护个人隐私 

  只要元数据被mat检测到,“state”状态就会被标记成“dirty”。双击文件可以查看检测到的元数据。

  Linux下清除文件中的隐私数据以保护个人隐私

  点击“清理”按钮来清除文件中的元数据。mat会自动清空文件中的所有私有元数据字段。

  Linux下清除文件中的隐私数据以保护个人隐私

  清除后的状态中不包含任何私有可辨识的痕迹:

  Linux下清除文件中的隐私数据以保护个人隐私

  从命令行匿名元数据

  $ mat -c 。

  正如前面提到的,另一种调用mat的方式是从命令行,使用mat命令可达到。

  为了检查任何敏感的元数据,先前往文件所在的目录,然后运行:

  $ mat -c 。

  这样会扫描当前目录和其子目录下的所有文件,并报告它们的状态(已清理或未清理)。

  Linux下清除文件中的隐私数据以保护个人隐私

  你可以使用“-d”选项来查看检测到的真实元数据:

  $ mat -d 《input_file》

 Linux下清除文件中的隐私数据以保护个人隐私

  如果不为mat命令提供任何选项,默认操作会移除文件的元数据。如果要在清理的过程中保留原始文件的备份,使用“-b”选项。下面命令会清除所有文件的元数据,并将原始文件存储为“*.bak”文件。

  $ mat -b 。

  Linux下清除文件中的隐私数据以保护个人隐私

  查看所支持的文件类型,请运行:

  $ mat -l

  Linux下清除文件中的隐私数据以保护个人隐私

  故障排除

  当前我在fedora上使用编译版本的mat遇到了下列问题。当我尝试在fedora清除归档/文档文件的元数据时(如.gz、.odt、*.docx),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是一名救生员,因为它可以处理大多数常见的元数据移除,但不应该只指望它来保证你的隐私。

  上面就是清除文件中的隐私数据的介绍了,除了需要定期清除外,还要有良好的保护隐私的系统,只有养成保护隐私的习惯,才不会泄露私人数据。