Learn

284 篇文章分类:全部
元数据

隐藏文本和 XML 注释

公开文件时,只确认画面上可见的信息是不够的。

SVG、HTML、XML 系文件中,可能残留不显示的文本或注释。

即使外观看起来是空白,文件内部也可能残留作业备注、删除前的文章、姓名、公司名、内部 URL、项目名。

匿名性中,不仅要确认可见信息,也要确认只要想读就能读到的信息。

本文整理隐藏文本和 XML 注释如何成为风险,以及公开前应该确认什么。

什么是隐藏文本

隐藏文本,是指在画面上不可见,或以难以注意到的形式残留在文件中的文字信息。

包括透明文字、移到画面外的文字、隐藏图层、极小文字、用 CSS 隐藏的元素等。

类型外观内容
透明文字看不见作为字符串残留
画面外文字显示范围外带坐标残留
隐藏元素不显示作为标签残留
过小文字难以阅读放大或搜索可找到
删除前草稿有时看不见作为注释或其他元素残留

隐藏文本即使没有恶意也会残留。

作业中放置的备注、以为删除了的姓名、旧标题、模板中的公司名,都可能残留在公开文件中。

什么是 XML 注释

XML 注释是可以写在文件内的备注。

通常在浏览器显示中看不见。但是,打开文件就能读到。

它以 <!-- comment --> 这样的形式书写,用于 SVG、HTML、XML 等。

注释中残留的东西例子匿名性上的注意点
作业备注之后删除〇〇公司名组织名残留
负责人名checked by Tanaka个人名出现
内部 URLstaging.example开发环境可见
项目名project-alpha相关人员能看懂
计划删除的文原说明文以为删除的信息残留

注释在开发和制作中很方便。

但是,如果残留在公开文件中,不显示的信息会被第三方读到。

为什么与匿名性有关

隐藏文本和注释有时会直接显示本人或所属。

此外,即使单独看很弱,也会和其他信息组合。和文件名、发帖者、公开时间、图片内容、URL、过去发帖重叠时,候选会被缩小。

残留信息连接对象会发生什么
公司名发帖内容、职业所属会被推测
作者名账号、过去文件接近实名
内部 URL组织或项目相关人员被缩小
草稿文原经历以为删除的信息复活
日期发布时间、事件可按时间线核对

不可见信息是发帖者本人容易漏看的信息。

正因如此,要把它放入公开前检查对象。

确认方法

确认的基本方法,是把文件作为文本打开。

SVG、HTML、XML 可以用文本编辑器打开。搜索姓名、公司名、学校名、邮箱地址、URL、注释符号、旧标题、内部词语。

确认方法查看内容注意点
用文本编辑器打开注释、标签、字符串不只凭显示判断
文件内搜索姓名、组织名、URL用多种写法搜索
在浏览器中查看源代码HTML 和 SVG 结构与渲染结果不同
放大查看小文字、画面边缘也确认外观泄露

搜索字符串不能只搜自己的名字。

公司名、部门名、学校名、项目名、旧网名、邮箱、地名、内部用语也要确认。

用工具删除后也要手动确认

使用优化工具或删除工具,有时可以减少不必要的注释和元数据。

如果把文件放入 Web 上的优化服务或删除服务,文件内容和访问信息可能会交给外部。需要匿名性的公开中,先在本地确认。

但是,不能完全依赖工具。

工具的动作会随设置改变。它不会从匿名性角度完全替你判断哪些元素该留、哪些元素该删。

工具能减少的东西人要查看的东西理由
注释图片内文字外观信息会残留
不必要属性固有名词不会判断意义
元数据语境有些信息只有相关人员能懂
空元素文件名外侧信息会另行残留

需要匿名性的公开中,工具处理后还要再次打开文件确认。

删除注释后语境仍会残留

即使删除 XML 注释,语境上的线索也可能残留。

id 名、class 名、文件名、文件夹名、URL、图片内文字、正文经历,都在注释之外。

删除的东西残留的东西确认事项
XML 注释id 和 class是否残留内部词语
作业备注文件名是否残留项目名和日期
草稿文显示文字是否在图片内可见
内部 URL引用目标 URL确认外部链接和环境名

删除注释很重要,但不能到此为止。

匿名性中,要确认哪些信息移动到了哪里并继续残留。

共同作业文件尤其要注意

多人制作的 SVG 和 HTML 中,更容易残留注释和隐藏文本。

因为负责人名、审阅评论、修正请求、内部用语、客户名可能在作业过程中进入文件。

共同作业中残留的信息例子注意点
负责人名reviewed by A个人名残留
修正备注这里面向〇〇公司客户或组织可见
内部缩写first-team-only内部人员能懂
旧方案旧标题、旧标志以为删除的信息残留

公开共同作业文件时,不只看自己写的部分,要确认整个文件。

重要的是不要想“不是我放进去的”,而是看“公开文件中是否残留”。

如果公开对象是 zip 或文件夹,要确认其中包含的所有文件。

即使单个 SVG 很干净,只要同捆的旧 HTML 或 README 中残留注释,也会从那里泄露信息。

总结

隐藏文本和 XML 注释,是画面上不可见但残留在文件内的信息。

SVG、HTML、XML 系文件中,可能残留作业备注、姓名、公司名、内部 URL、草稿、项目名。

公开前,不只看外观,也要作为文本确认内部内容。

即使用工具优化,也不要只凭这一点判断为安全。

匿名性中,同时确认显示出来的信息和文件内残留可读的信息很重要。

相关工具

Metadata inspection

ExifTool

与本文相关的外部资源。只有在符合你的处境和威胁模型时再打开。

列在这里的原因: 它可能有助于理解本文主题,但位于 Anonymity Sense 之外,使用前应先自行确认。

URL : https://exiftool.org/

打开外部网站
Metadata removal

MAT2

与本文相关的外部资源。只有在符合你的处境和威胁模型时再打开。

列在这里的原因: 它可能有助于理解本文主题,但位于 Anonymity Sense 之外,使用前应先自行确认。

URL : https://0xacab.org/jvoisin/mat2

打开外部网站

相关文章