在今天于拉斯维加斯举行的DEF CON 27安全大会上,固件和硬件安全公司Eclypsium的安全研究人员介绍了他们在20家不同硬件供应商的40多个内核驱动程序中发现的几个常见设计漏洞。
常见设计漏洞是指,低级权限应用程序可以使用合法的驱动程序功能在Windows操作系统最敏感的区域(比如Windows内核)执行恶意操作。
“所有这些漏洞让驱动程序得以充当代理,进而对硬件资源执行需要高级权限的访问,比如对处理器及芯片组I/O空间、特殊模块寄存器(MSR)、控制寄存器(CR)、调试寄存器(DR)、物理内存以及内核虚拟内存进行读写访问。”
攻击者可以从内核进而进入到固件和硬件接口,因而绕过平常威胁防御产品的检测功能(它们工作于操作系统层面),攻击目标主机。
将驱动程序安装到Windows上需要管理员权限,需要由微软认证的可信赖第三方授予权限。代码还由有效的证书管理机构(CA)签名,以证实真实性。若没有签名,Windows向用户发布警告信息。
然而,Eclypsium的研究提到了合法驱动程序拥有Windows接受的有效签名。这些驱动程序并非设计成恶意程序,但含有可以被恶意程序和不法分子滥用的漏洞。
研究人员称,他们发现一些易受攻击的驱动程序包括显卡、网卡、硬盘及其他设备的驱动程序。
Eclypsium的首席研究员Mickey Shkatov在本周早些时候的一封电子邮件中告诉IT外媒ZDNet:“有许多硬件资源通常只能由享有权限的软件(比如Windows内核)访问,这些硬件资源需要加以保护,防范来自用户空间应用程序的恶意读/写。”
他补充道:“如果签名驱动程序提供的功能可以被用户空间应用程序滥用,以针对这些敏感资源执行任意的读/写,又没有来自微软的任何限制或检查,设计漏洞就会出现。”
Shkatov将他发现的问题归咎于糟糕的编程做法,这些编程做法并没有考虑安全性。
他称:“这是一种常见软件设计反模式;也就是说,不是让驱动程序仅仅执行特定的任务,而是以一种灵活的方式来编写,就为了代表用户空间执行任意操作。”
“以这种方式设计驱动程序和应用程序的结构更容易开发软件,但也将系统置于被利用的险境。”
Shkatov表示,他公司已通知交付的驱动程序让用户空间应用程序可以运行内核代码的每家硬件供应商。下面列出了已发布更新的供应商。
●AMI
●华擎(ASRock)
●华硕
●ATI Technologies(AMD)
●映泰(Biostar)
●EVGA
●神基(Getac)
●技嘉
●华为
●台湾系微(Insyde)
●英特尔
●微星国际(MSI)
●英伟达
●Phoenix Technologies
●瑞昱半导体(Realtek Semiconductor)
●超微
●东芝
Shkatov称 :
“英特尔和华为等一些供应商已经发布了更新。
Phoenix Technologies和系微等一些IBV(独立BIOS供应商)正在向其客户OEM厂商发布更新。
”
不过Eclypsium的这位研究人员表示,他没有透露所有受影响的供应商的名称,因为一些供应商“因情况特殊而需要额外的时间”,将来会发布补丁和安全公告。
这位研究人员表示,他计划在大会上介绍后在GitHub上发布受影响的驱动程序的完整列表,以便用户和管理员可以阻止受影响的驱动程序。
此外Shaktov表示,微软将使用其HVCI(虚拟机管理程序执行的代码完整性)功能,将上报给微软的驱动程序列入黑名单。
然而,Shaktov表示HVCI功能仅在第7代英特尔CPU及以后版本上得到支持。
旧系统需要手动干预,连无法启用HVCI的较新英特尔CPU也需要手动干预。
微软在一份声明中说:
“为了利用易受攻击的驱动程序,攻击者就需要已经攻陷计算机。
为了帮助缓解这类问题,微软建议客户使用Windows Defender Application Control来阻止已知易受攻击的软件和驱动程序。
客户可以在Windows Security中为功能强大的设备启用内存完整性,进一步保护自己。
微软与行业合作伙伴积极合作,非公开披露漏洞,并共同帮助保护客户。
”