McAfee杀毒软件中的提权漏洞
近期,McAfee修复了一个影响所有Windows版本杀毒软件的漏洞,它能帮助攻击者非法提升权限,以SYSTEM
身份执行任意代码。
McAfee Total Protection(MTP)、McAfee Anti-Virus Plus(AVP)、McAfee Internet Security(MIS)的16.0.R22版本都受到该漏洞影响。
权限提升
据发现该漏洞的SafeBreach实验室安全研究员Peleg Hadar的介绍,这一提权漏洞被标记为CVE-2019-3648
,攻击者只有拥有Administrator
权限才能利用。
虽然此漏洞的利用条件较为苛刻,但类似漏洞的CVSS 3的评分往往较高。
该漏洞的利用方式主要还是和DLL劫持有关,攻击者在控制受害者机器后可借此在后渗透流程中保证持久性。
根据Hadar的说法,该漏洞可用于绕过McAfee的自我防御机制。将任意未签名的DLL加载以NT AUTHORITY\SYSTEM
权限运行的多个服务中,以躲避安全防御,保证持久性。
McAfee在推出的最新版本软件中已修复了这个漏洞。
从当前工作目录加载任意DLL
SafeBreach实验室的研究人员表示,CVE-2019-3648是由于杀毒软件试图从当前工作目录(CWD)而不是实际位置加载DLL所导致的,并且在加载DLL的过程中并不会检查签名。
Hadar发现,当McAfee软件(以NT AUTHORITY\SYSTEM
权限)运行时,会试图从当前工作目录(C:\Windows\System32\Wbem
)导入wbemcomn.dll
,但其实真正的wbemcomn.dll
位于System32
文件夹。加载过程中会先寻找C:\Windows\System32\Wbem
文件夹是否有DLL文件,再寻找System32
文件夹是否有DLL文件。一旦攻击者把恶意DLL文件放入C:\Windows\System32\Wbem
,就会被McAfee软件加载。
如果攻击者在系统上已拥有Administrator
权限,就可以很容易地将任意DLL加载到进程中,绕过McAfee的自我防御机制。
在某个演示中,Hadar将一个无签名的DLL文件放入 C:\Windows\System32\Wbem
文件夹,并以NT AUTHORITY\SYSTEM
权限执行McAfee,最终DLL文件被成功加载而没有引发报警。
Hadar说:“该漏洞能使攻击者往McAfee的多个签名进程中加载payload。”
这种特性可以被攻击者用于多种目的,特别是绕过安全检测以及应用程序白名单。此外在每次运行McAfee软件时都会激活payload,从而保证持久性。
有关更多漏洞被发现的细节,以及完整的披露时间表,可以在SafeBreach的实验室报告中了解。
安全厂商的本地提权漏洞
这不是Hadar发现的第一个安全产品的提权漏洞,之前他还发现了趋势科技密码管理器,Check Point的安全软件,Bitdefender免费版杀毒软件,Avira的2019版杀毒软件,Avast和AVG杀毒软件的提权漏洞。
它们几乎每一个都可被利用来提升权限,保证持久性,同时拥有一定躲避安全检查的能力。