我一直在阅读有关谷歌/中国事件的报道,似乎其中一个攻击媒介是将代码(我相信是 javascript)嵌入 PDF 文档。这让我很担心,除非我明确表示,否则我肯定不希望任何 PDF 文档在我的计算机上执行代码。但我运行的是所有 Linux 系统,所以简单就chmod -x doc.pdf
足够了吗?(反正我的任何 PDF 文件都没有执行权限)
有没有可以扫描嵌入代码的 PDF 的工具?我正在寻找 Linux 工具,但如果有人知道任何可用于此目的的 Windows 工具,我相信其他人会发现它们很有用。
另外,我现在使用的阅读器是 evince,有人知道 evince 是否执行嵌入在 PDF 中的代码吗?没有关闭它的选项,而且 evince 通常看起来很简约,所以我怀疑不是。
答案1
文件系统上的执行位不会对这个问题产生影响。执行发生在读取器应用程序中。然后,读取器处理已加载的内容,如果该内容包含 javascript,它将执行。这与在浏览器中打开 HTML 页面的情况相同。HTML 页面不需要执行设置即可运行 javascript。
至于 evince,我不太清楚……但我认为你说得对,它不处理 PDF 中嵌入的 javascript。
答案2
防病毒程序应该可以处理这种情况,当然 Windows 上有很多这样的程序。由于 PDF 文件如今是一种相当常见的攻击媒介,因此 PDF 文件扫描是这些产品的标准功能。它不会给你包含代码/不包含代码的答案,但它会阻止或删除包含已知或潜在漏洞的文件。
答案3
我可以告诉你,Google Chrome 的内置 pdf 查看器目前不运行 javascript。
当我尝试使用此代码来填写表单字段时,这对我来说是一个问题,但您可能对它感兴趣,因为它可以防止可能的恶意攻击。