发布系统容易受到病毒和蠕虫的攻击,因此几乎必须安装防病毒软件。硬件防病毒软件怎么可能不存在?
这个想法听起来不错,如果防病毒软件驻留在类似于托管 BIOS 的可重新编程芯片上,那么它将不受攻击但仍可升级。而且它会拥有更高的权限,这将解决无法修复正在使用的系统文件的问题。
有什么我没有想到的东西使这无法实现吗?
发布系统容易受到病毒和蠕虫的攻击,因此几乎必须安装防病毒软件。硬件防病毒软件怎么可能不存在?
这个想法听起来不错,如果防病毒软件驻留在类似于托管 BIOS 的可重新编程芯片上,那么它将不受攻击但仍可升级。而且它会拥有更高的权限,这将解决无法修复正在使用的系统文件的问题。
有什么我没有想到的东西使这无法实现吗?
如果芯片可以从操作系统中写入,恶意软件也可以写入它,所以它在那里无济于事。
此外,反恶意软件必须处理仅存在几个小时的威胁。必须重新启动计算机以升级在其自己的硬件上运行的反恶意软件会很糟糕,因此我们需要能够从操作系统内对其进行升级。如果我们可以从操作系统写入芯片,那么恶意软件也可以。
为了制作安全的硬件反恶意软件,您首先必须更改程序的主要任务。反恶意软件基本上都有一个恶意软件列表。如果某个程序在该列表中,则会被阻止并删除。如果没有,我们让它运行。每次编写新的恶意软件时,我们都必须将其添加到列表中。因此,该软件只能是被动的,需要一直更新(巨大的)列表。另一方面,如果您有一个允许运行的程序列表并阻止您不需要一直更新该列表的所有其他程序;仅当您想运行新程序时。任何未知或众所周知的恶意软件都将被此隐式拒绝阻止。对于许多敏感环境,您不会每天都安装新代码。ATM 需要运行一个软件。没有其他的。该列表基本上不会
问题是没有普遍可行的 OK 程序列表。您要么必须拥有一个相对较小的程序列表,以便能够在您的计算机上运行,而这些程序必须专门为您制作,要么您必须拥有一个任何人都可以使用的庞大程序列表曾经想跑。
要生成该列表,最简单的方法是添加所有可能的程序,并删除所有不良程序,这相当于今天的反恶意软件所做的,而不是隐式拒绝。您根本无法获得将编写的所有非恶意程序的列表,而不包括那些不会编写的程序。
它可以工作,如果你做对了。但这通常是不可行的。此外,对于试图销售订阅服务的反恶意软件公司来说,更改为隐式拒绝确实是一件可怕的事情。
至于额外的特权级别;有时你必须提升权限,如果可以的话,恶意软件也会。并且无法编辑系统文件,您只是添加了另一层。顶层仍然会有这个问题。
基于 BIOS 的恶意软件/病毒没有任何困难,它们已经存在,“仅内存”恶意软件也是如此。如果我猜测它为什么不比普通病毒/恶意软件更普遍,我会说这是因为 BIOS 软件与普通操作系统有很大不同。创建恶意软件需要付出一定的代价,作者很可能将目标锁定在他们可以从中获得最大收益的软件上。
让我们暂时假装自己是软件开发人员。我们将软件设计为与所有设备兼容。以下是我们希望看到运行我们软件的用户数量的通用值:
Windows Users - 10
OSX Users - 4
Linux Users - 4
Others - 1
BIOS 在哪里适合这里的方程式?让我们拿几个BIOS制造商的样本
Phoenix
Asus
ACER
AOPEN
Dell
Fujitsu
Gateway
IBM
Intel
而且这个名单越来越长。作为一名软件开发人员,当我最初不知道我的客户端将运行什么 BIOS 软件时,我为什么要专注于创建有针对性的东西。它不具有成本效益。现在,让我们将上述实例替换为“恶意软件开发者”。他们将有什么动机必须专注于 30 多个 BIOS 制造商,而不是说:2 个被大量使用的操作系统。
从未像病毒一样难以创建基于“芯片”的 BIOS。它不具有成本效益。大多数恶意软件开发人员创建他们的可执行文件以扩展,这是有道理的。通常,当我分析基于 BIOS/引导的东西时,它似乎是一种针对性很强的攻击。开发这些类型的漏洞利用需要时间,大量侦察以确保您将正确的漏洞发送到正确的目标(您不会浪费时间创建基于华硕的恶意软件,只是发现您的目标正在使用基于英特尔的 BIOS 固件。)
恶意作者表示,州一级与网络犯罪集团不同。其中一些人(国家行为者)在某些国家消失了。当您可以专注于操作系统,然后转移到内存时,为什么还要花费如此多的时间、精力和金钱来瞄准 BIOS 软件。
现代操作系统已经具有特权隔离,并且现代防病毒程序已经使用该机制来尝试避免来自较低特权恶意软件的干扰。
原则上没有理由不能引入更高的特权级别(这似乎是您问题的主旨)——许多人使用虚拟机来做到这一点。(但是,这没有理由成为“硬件防病毒”。)
当然,低权限和高权限执行上下文之间的任何接口都可能存在权限提升漏洞,这些漏洞既发生在操作系统本身中,也更罕见地发生在虚拟化边界(例如http://threatpost.com/ virtual-machine-escape-exploit-targets-xen-090612/76979,http: //www.kb.cert.org/vuls/id/MAPG-8TVPQL ),所以这不是灵丹妙药。
但实际上,防病毒的问题比权限隔离问题更深、更根本。防病毒引擎的价值值得怀疑(鉴于其检测的启发式性质),并且它们本身通常是漏洞的来源——构建一大包文件解析器来尝试解析磁盘上的每个文件(通常具有提升的权限!)只是一个灾难的秘诀(例如http://www.blackhat.com/presentations/bh-europe-08/Feng-Xue/Whitepaper/bh-eu-08-xue-WP.pdf , http://mincore.c9x.org /break_av_software.pdf )。
安全启动
是什么让你认为它不存在?由于 UEFI 内存不足且修补漏洞的范围有限,它原则上非常基本,它不是检测恶意代码,而是使用签名验证您的启动映像。但是,安全启动的主要问题是不是每个人都可以使用授权签名(按设计)对启动映像进行签名。
这意味着对于自己编译操作系统的人来说,他们将无法运行自己的操作系统。此外,如果用户能够对自己的操作系统进行签名,那么可以想象,病毒可能会在安装自身时对其自身进行签名。