也就是说,他们是否可以将任何个人身份信息发送到外部主机(例如,PDF 作者的服务器)?如果可以,是否有办法在常用 PDF 查看器(Adobe Reader、Mac OS X Preview)中禁用此功能,而无需使用防火墙规则?
答案1
他们当然不应该能够做到这一点,除非可能报告表单提交的结果,但最近的 Adobe PDF 实现中有一个 Javascript 引擎,它是 Acrobat Reader 和相关软件安全问题的根源。
Adobe 关于 Acrobat 产品的 Javascript API 的文档可能会给你一些关于它应该做什么的想法,而且很容易找到(抱歉没有链接,这里声望不高)。
这里这是 SANS ISC 上关于 Acrobat Reader 与 Javascript 功能相关的漏洞的众多帖子之一。请注意,即使按照建议禁用,Javascript 功能也经常会通过 Adobe 软件更新重新启用。如果您愿意查看,各种安全网站上有更多关于此问题的讨论。
答案2
正如其他人指出的那样,Acrobat Reader 在 PDF 文档中提供了脚本功能。您应该检查默认 PDF 查看器中的配置选项并禁用任何可疑选项。(对我来说,我想不出 Reader 需要 Javascript 或打开其他程序的任何理由,所以我在选项中禁用了它。)
我没有尝试过任何最新版本的 Reader,但我的最新版本 (Reader 6.0) 安装了许多插件,导致程序启动速度变慢。这些插件中有许多是表单和脚本功能的提供方式。
您可以通过将插件移出 Reader 的插件目录来控制哪些插件启动。对我来说,这是
C:\Program Files\Adobe\Acrobat 6.0\Reader\plug_ins
你应该创建一个文件夹,比如说,
C:\Program Files\Adobe\Acrobat 6.0\Reader\plug_ins_old
并将所有不需要的插件移至该目录。我通过将除以下插件之外的所有插件移至 plug_ins_old 来获得良好的快速启动程序:
EWH32.api
Search.api
Search5.api
eBook.api
printme.api
大多数人都会使用较新版本的 Reader,所以我想这个过程可能会有些不同,但这可能是开始寻找的好地方。如果在移动插件后 Reader 停止打开,只需将其移回并重试。
答案3
文档没有,但某些可以打开它们的应用程序(例如 Adobe Reader)确实具有拨打电话回家(软件制造商,而不是文档的作者)的功能。他们可以通过出站防火墙规则“静音”。
Adobe Reader 还受到各种安全漏洞,这些都可能由文件引发,不容掉以轻心。
答案4
取决于您对“个人身份信息”的定义。PDF 中的脚本没有任何特定的方式来自行收集信息,但它们当然可以连接到网络(通过 SOAP 或脚本表单提交)并上传您输入的任何信息(当然还有您的 IP 地址)。
如果您有受 DRM 保护的 PDF,授权过程也必然会为您的安装和文件上传唯一的 ID。
我无法确认这些过程是否会在没有提示的情况下发生,因为我只使用不支持脚本和 DRM 的 PDF 阅读器。当我还在使用 Acrobat 时,我总是按照 ~quack 的建议禁用 JavaScript 并删除插件。