为了防止攻击流程被终端防护工具阻断,黑客通常会尝试让杀毒软件和EDR系统无法正常运行,其中一种最常见的手法是利用存在安全漏洞的驱动程序,实施自带驱动程序(BYOVD)攻击。近期一起安全事件引起了安全公司的关注,原因是黑客利用了数字取证工具的组件来突破防线。
威胁情报公司Huntress针对今年2月上旬发生的一起安全事件作出回应,黑客利用泄露的SSL VPN证书访问SonicWall设备,获取受害组织的初始访问权限后,部署了一款名为EDR Killer的工具,以瘫痪杀毒软件和EDR的运行。该工具利用了Guidance Software(现已被OpenText收购)的数字取证软件EnCase的组件实现攻击,意图发起勒索软件攻击,但最终未成功。
这起事件引起Huntress关注的原因在于,黑客滥用的EnCase核心驱动组件EnPortv.sys,尽管该组件拥有合法数字签名,但其签名证书早在2010年就已过期,且已被吊销。然而,Windows操作系统仍会正常加载该证书。Huntress指出,问题出在驱动程序签名强制验证机制(Driver Signature Enforcement,DSE)的缺陷,使攻击者有机可乘。
此次黑客使用的EDR Killer是一个64位二进制文件,被伪装成固件更新工具,能够识别59种安全防护工具的进程,一旦发现目标,便在操作系统内核层直接终止其运行,从而实现禁用杀毒软件和EDR的目的。
黑客所利用的DSE漏洞具体是什么?DSE是自2007年Windows Vista引入的功能,要求所有内核模式驱动程序必须由受信任的证书颁发机构签名,旨在阻止被篡改的驱动程序加载到系统内核。每当驱动程序加载时,Windows会验证其数字签名的有效性。但由于性能等因素,系统并不会实时比对证书吊销列表(Certificate Revocation Lists,CRL),而仅检查签名是否由受信机构签发,这种方式无法识别已被吊销的证书,黑客正是利用这一漏洞,使用早已被吊销的EnCase驱动程序达成攻击目的。
尽管微软后续引入了其他防护机制,但为保持向下兼容,仍保留了部分例外措施,使得此次攻击中使用过期签名的驱动程序仍能被系统加载和滥用。其中一个关键例外是微软在Windows 10 1607版本中引入的新要求:所有驱动程序必须通过Hardware Dev Center签名。然而,2015年7月29日前签名的驱动程序不受此限制。
当EDR Killer加载EnCase驱动程序后会发生什么?该驱动程序会暴露IOCTL接口,允许任何用户模式进程直接通过内核模式终止目标进程的运行,从而绕过所有用户模式防护机制,包括Windows用于保护关键系统进程和EDR代理的Protected Process Light(PPL)。
值得注意的是,此次攻击中黑客仅利用该驱动程序终止EDR进程。但Huntress指出,EnCase驱动程序本身具备超过18种功能函数,这些功能本用于安全专家取证分析,若被恶意利用,后果将更加严重。这些功能包括:内核模式文件删除、DKOM进程隐藏、直接访问内存内容等。