如何安全地查看恶意 PDF?

信息安全 恶意软件 pdf 文件
2021-08-24 13:25:33

我有一个包含可能包含恶意软件的重要信息的 PDF。观看它的最佳方式是什么?

4个回答

基于文档的攻击不是针对文档本身,而是针对查看器中的某些漏洞。如果您在不易受攻击的程序中(或在抑制漏洞的配置中)查看文档,那么您将不会被利用。

真正的问题是知道您的查看器是否易受攻击,这通常意味着具体了解漏洞是什么。但也有替代的 PDF 查看器,例如 foxit 甚至 Google chrome 的内置查看器,它们不一定具有与 Adob​​e 官方查看器相同的漏洞。这并不一定适用于所有漏洞,因此提前了解您要处理的内容很重要。

编辑
如果您发现自己经常处理潜在的恶意材料,那么设置一个强化的虚拟环境将是非常明智的。我建议启动到 Linux 系统并在 Virtualbox 或类似环境中运行您的目标操作系统(通常是 Windows)。保存虚拟操作系统的快照,然后在您完成与恶意内容的交互后恢复到该快照。此外,从只读安装(即 Live-CD)运行主机 Linux 环境也不是一个坏主意。

将其放入不易受到漏洞利用的 PDF 查看器。如果是别人的观众,那就更安全了。试试Google Docs,他们会解析它并将其显示为 HTML,因此恶意负载不会伤害您。(我确信他们的 PDF 解析器非常安全,所以你不应该为可能感染他们而感到难过。)

在没有网络访问的虚拟机中使用pdf.js和沙盒浏览器(例如 Chromium 或 Firefox)。

恶意软件要摆脱这种情况应该是相当棘手的。

在这种情况下,我一直使用 Unix/Linux/OSX shell 命令“strings”。在 *nix 系统上,执行以下操作:

strings ScaryFile.pdf | less

您还可以获得 Windows 的“字符串”,如下面的多项式所述。你可以在这里下载。在 XP 或更高版本上运行。这是在 Windows 上使用它的示例:

strings ScaryFile | findstr /i TextToSearchFor

但是对于我在这里的其余答案,我假设您在 *nix 上,因为这是我对字符串的经验。假设您要查找的只是文本内容(不是位图或矢量图形),您可以向下滚动或搜索并找到所需的文本位。不幸的是,要找到它,您必须翻阅大量元数据,其中大部分是 XML,以及其他一些标记中的格式设置,以及一些二进制文件(作为 ascii,而不是原始字节)。因此,您可能想要使用“less”命令的搜索功能。要在文档中搜索区分大小写的字符串“thingyouwant”,请使用斜杠键 + 你的字符串 + 返回:

/thingyouwant

然后按“n”键查看“thingyouwant”的下一个实例,一遍又一遍,直到找到你想要的。您可以使用“?” 键向上做同样的事情。请参阅 less 手册页(键入“man less”)以获得更多魔力。

您还可以分析文档链接到哪些 URL:

strings ScaryFile.pdf| grep -i "http" | sort | uniq | less

但是,如上所述,您从“字符串”的输出中看到的 99% 将是元数据和格式设置。