如果防病毒软件(例如:ESET)检测到存档(例如:.RAR)内有病毒,它会自动删除受感染的文件吗?还是我需要删除整个存档?(假设存档没有密码保护)
答案1
我认为首先值得用几句话来评论一下大多数安全产品如何处理档案:
大多数端点实时/访问时扫描程序(默认情况下)不会完全扫描档案,因为实时解包的开销很大,而且“容器”实际上并不构成任何“直接”威胁,因此,为了更快地检测到某些东西而牺牲性能是不值得的。
尽管如此,大多数产品都提供了实时扫描档案的选项,但通常不建议这样做。
大多数解决方案都包含多层保护计算机并防止此类文件首先进入计算机。例如,大多数解决方案都有一个钩子来扫描文件,当文件被浏览器下载并在写入磁盘之前,可能在位于浏览器进程前面的某个 Web 代理进程中。由于这种扫描对时间不那么敏感,因此可以花费更多时间,并且大多数解决方案都会有“zip-bomb”检测来防止资源耗尽(如果这是“攻击”的话)。
例如,没有人真正关心文件下载中额外的 3 秒,但如果某个进程被阻止 3 秒从磁盘读取文件,那么这不会被忽视,并且您可能会感觉到挂起,因为文件请求在等待病毒扫描时被内核暂时阻止。下载电子邮件附件也可能如此,速度再次不那么令人担忧。
这也适用于任何安全产品,例如端点上游的设备(网络/电子邮件/等)。如果可以,他们有时间扫描档案以采取行动。
假设存档文件已进入磁盘,而前线出现故障或检测签名/方法是新的;作为解包过程的一部分,实时/按访问扫描程序将在解包时扫描每个文件。然后实时扫描程序会将其拾取。
存档文件类型通常(默认情况下)在端点上作为计划扫描或按需扫描的一部分进行扫描,这通常是在您收到消息时,即在计划扫描完成后。如果扫描器无法解压,则扫描器可能会说它受密码保护,实时组件会在用户提供密码时在此处拾取它。如果他们可以按需扫描内容,产品通常会报告容器内受感染对象的完整路径。
大多数产品都提供选项,让您配置检测到的每个组件的检测情况,即实时、按需/计划扫描。如果已为相关威胁编写了清理程序,大多数产品会首先尝试清理威胁,如果无法采取任何措施,则先阻止/隔离。
与以前一样,使用存档选项中的实时扫描;您通常可以配置为在检测时自动删除文件,但由于存在误报的风险,大多数供应商默认不会删除。
因此,最终用户的选项包括以下一个或多个:
- 如果不需要,请删除整个存档文件。例如,下载目录中您不需要的文件。
- 如果您认为这是误报(可能基于年龄、检测名称、检测到的文件、磁盘上的位置、直觉和所需的经验),通常可以将样本发送给供应商。注意:根据供应商的签名/检测方法,您可能需要发送整个存档,而不仅仅是其中的文件。
- 也许可以将档案和其中检测到的对象都上传到virustotal.com作为第二意见。
- 如果您需要存档中的其他文件,则您可能需要授权/排除文件和/或目标位置,以便在小心地删除检测到的元素之前对其进行解压。然后,您可以将其重新压缩,但根据存档的用途,如果您删除的检测到的组件是必需的,则可能只是使其变得无用。
鉴于上述情况,我认为可以公平地说,大多数产品不会根据对档案中组件的检测默认重新打包档案。但是,如果有一种恶意软件通过将自身放入 docx 容器中来传播,那么供应商在获得样本后可以轻松编写清理例程,从档案中移除威胁。所以我认为这里的答案不是默认,而是给出一个样本并有足够的理由这样做。