【问题标题】:[Steganography ]Hiding Data in PDF files[隐写术]在 PDF 文件中隐藏数据
【发布时间】:2015-01-20 10:54:49
【问题描述】:

我正在尝试隐藏 PDF 文件代码中的文件。我已经搜索了一些信息来帮助我。我尝试使用 pdftk ( pdftk pdf.pdf output uncompress.pdf uncompress ) 解压缩 pdf。然后我尝试了不同的东西,例如:

  • 插入注释:我将“%TEXT_TO_HIDE”放在解压缩的 pdf 文件代码中。
  • 添加新对象:我将“0 0 obj
  • 修改现有对象

然后我再次使用 pdftk 压缩它

在每种情况下,我都会获得一个新的 pdf,它看起来与原来的不同。它没有损坏,但图像颜色不同,并且缺少一些原始文本。

那么,你知道一些规则可以在没有任何人通知的情况下更改 pdf 代码吗?

(PS : 对不起,如果我的英语不好^^)

【问题讨论】:

  • 您应该提供其他信息,例如您将文本隐藏在哪里,缺少哪些原始文本,代码中是否与您隐藏消息的位置相关,压缩后的图像有多大不同,等等。我已经设法通过在流开始之前隐藏我的文本来使第一页空白。如果你解压一个 pdf 然后再压缩它而不做任何修改,你的图像有不同的颜色吗?我没有注意到我尝试过的 pdf (link) 有问题。

标签: pdf pdftk steganography data-hiding


【解决方案1】:

您不能在文本编辑器中修改 PDF 文件并期望该文件总体上仍然合规。 PDF 是一种二进制格式,您需要阅读 PDF 规范以了解如何修改它。

也就是说,您可以在 PDF 文档中“隐藏”信息的地方很多,真正的问题是您要隐藏多少数据以及隐藏的目的。目的通常与这需要的安全程度有关。

举个例子:

1) PDF 允许在实际的 PDF 文件中嵌入完整的文件。这并不安全,因为任何拥有不错软件的人都可以提取这些文件(但文件本身当然仍然可以得到保护)。

2) PDF 允许在文件的任何位置(或几乎任何位置)添加任意对象。这是隐藏信息的好方法,但使用正确工具的人可以浏览对象树(即使文件已压缩)并查看您做了什么。

3) PDF 允许添加例如白色背景上的白色文本或其他对象后面的文本。同样,对于拥有正确软件的人来说,有一些方法可以解决这个问题。

4) Adob​​e 的 PDF 规范允许在 %%EOF 标记之后至少有 1K 的绒毛(尽管 ISO 32000 不允许)。请记住,任何使用体面的文本或二进制编辑器打开文件的人都可以看到这一点。 (感谢 Jongware)。

简而言之,您需要更好地定义您究竟想要完成什么以及在您的用例中有多“安全”。

您还应该考虑该方法必须有多“稳健”。是否有人能够使用 Acrobat 保存您的 PDF 文件,例如隐藏代码完好无损?上述某些方法可能不够稳健,无法绝对确定。

【讨论】:

  • 4) 可以在对象之间写入数据。 5) Adob​​e 的 PDF 规范允许在%%EOF 标记之后至少 1K 的绒毛(尽管ISO 32000 does not)。
  • 啊,我们可以讨论一下您的第 4 点(尽管我喜欢它 :-))。根据 PDF 规范:“PDF 文件的正文应由表示文档内容的一系列间接对象组成。”。虽然它可能适用于许多读者,但我认为这使您的方法非法。你甚至不能有未引用的对象:“表应包含每个间接对象的单行条目”关于交叉引用表的部分说:-)
猜你喜欢
  • 2013-04-13
  • 2018-08-01
  • 1970-01-01
  • 2018-07-02
  • 2014-02-18
  • 2014-10-31
  • 2013-12-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多