是否可以在用户不执行或打开文件的情况下触发恶意代码?

信息安全 开发 病毒 脆弱性
2021-09-04 13:55:33

如果从 Internet 下载文件并保存在磁盘上,但用户没有打开(如果我们关闭自动运行),文件中的恶意代码(例如病毒)是否有可能触发?

我不是在询问下载或浏览网站时可能发生的攻击——想象一下文件已经以某种方式存储在磁盘上而没有发生攻击。那么我面临恶意软件带来的哪些风险?

4个回答

在某些情况下,简单地下载文件而不打开它可能会导致从文件中执行攻击者控制的代码。它通常涉及利用程序中的已知漏洞,该漏洞将以某种方式处理文件。以下是一些示例,但肯定存在其他情况:

  • 该文件针对您的防病毒软件中的漏洞,该漏洞在文件被扫描时触发
  • 该文件针对文件系统中的漏洞,例如 NTFS,其中文件名或其他属性可能触发错误
  • 该文件针对一个可以在生成文件预览(例如 PDF 或图像缩略图)时触发的错误
  • 库文件(例如 dll)在保存到执行易受二进制植入攻击的应用程序的同一目录时可能会被执行
  • 该文件是一个特殊文件,可以更改程序的配置,例如在 Linux 上使用 wget 下载 .wgetrc 文件
  • …和更多

当查看资源管理器中的文件夹时,Windows 将尝试从文件中提取信息以显示图标和预览。一个例子是Windows 元文件漏洞,只能通过在资源管理器中预览文件来利用该漏洞。

另一个攻击媒介是内置的 Windows Search。为了提取全文搜索所需的信息,Windows 将在后台扫描文件并使用文件解析器提取内容。因此,文件解析器中的错误可能导致代码执行。

此外,如果攻击者知道路径(即在默认下载文件夹内),则可以通过使用file:///...您访问的网页内的链接将文件嵌入为图像、flash 文件、PDF 等来强制打开。

自动运行主要适用于连接到机器的外部驱动器,较少适用于下载的文件。

如果你不执行下载的文件,理论上你应该是安全的。但是,实际上,您的计算机可能会为了您的方便而自行打开它,而无需征得您的同意,无论是生成某种文档的缩略图或预览,为文件搜索应用程序编制索引等。

例如,您会在这里找到一个影响旧版 Windows Media Player 软件的漏洞利用示例:无需打开文件,只需浏览到包含该文件的目录即可执行恶意软件...

这取决于您下载的病毒类型。

  • 宏病毒:当您使用旨在攻击的程序打开受感染的文档时。如果受感染的程序通过执行它们被激活,那么感染您机器的其他程序的程序病毒也会发生同样的事情。
  • 引导扇区病毒:它们通过简单的存在(无需单击打开它们)或仅通过重新启动计算机来感染您的硬盘驱动器