我是 Unix 系统的初学者,我对 DMA 攻击有一个简单的想法。
在尝试安装 Qubes OS 时,我想知道直接从硬盘安装它是否安全,假设 PCI 设备的固件已被感染和/或容易受到 DMA 攻击。
如果没有连接任何设备,是否有可能触发 DMA 攻击。
我的意思是,例如:如果通过 PCI USB 主机控制器进行 DMA 攻击,需要插入 USB 才能用于访问内存吗?
答案1
我不是安全专业人士,但我认为如果所有 PCI 设备的固件/硬件没有受到损害,至少攻击者需要将具有被操纵的固件/硬件的设备连接到主机控制器才能执行 DMA 攻击,PCI 设备只进行 DMA 访问,但需要连接一个设备才能执行攻击(如果其硬件未被操纵)。
在 qubes.org 的这段引用中,他们谈论了这个问题。
Why is VT-d/AMD-Vi/AMD IOMMU important?
On a system without VT-d/AMD-Vi/AMD IOMMU, there will be no real security benefit to having a separate NetVM, as an attacker could always use a simple DMA attack to go from the NetVM to Dom0. Nonetheless, all of Qubes’ other security mechanisms, such as qube separation, work without VT-d/AMD-Vi/AMD IOMMU. Therefore, a system running Qubes without VT-d/AMD-Vi/AMD IOMMU would still be significantly more secure than one running Windows, Mac, or Linux.
Qubes 将 PCI 设备隔离在 dom0 vm 中,因此如果 PCI 设备的固件/硬件未被操纵,则除非您将设备连接到它(操纵的无线适配器/以太网卡、USB 设备……),否则 DMA 攻击不会发生。但在我看来,如果 PCI 设备的硬件/固件被操纵,对 dom0 的攻击(如果 RAM/其他 PCI 未被修改以集成无线功能,则大多是自动化的)仍然可能,因此整个机器将受到损害。