简介:本文通过还原一例银狐木马加载WHQL签名驱动并利用其IOCTL漏洞终止终端防护进程的攻击链,分析BYOVD技术的执行条件、驱动缺陷成因与检测思路,帮助安全团队识别类似风险并完善主机侧防护策略。
在持续跟踪终端对抗类样本的过程中,我们发现银狐木马家族仍在不断调整其驱动利用策略。相比早期仅依赖常规启动项、脚本混淆和用户态注入的方式,近期样本更倾向于引入具备合法签名的驱动程序,利用这类驱动在内核态暴露的脆弱接口完成高权限操作。
本次分析的样本最显著的特征是引入了一个此前未被公开讨论的进程监控类驱动。该驱动带有有效的WHQL签名,签名链可追溯至硬件兼容性测试体系。由于签名时间较新,传统基于“过期签名”“吊销证书”“未知发布者”的检测规则难以直接拦截,因此具备较强的免杀效果。
攻击者并未尝试挖掘驱动中的远程代码执行漏洞,而是直接利用其未做调用者校验的IOCTL接口,实现内核态的任意进程终止。这一行为与BYOVD技术的核心思路一致:攻击者不自己编写漏洞驱动,而是借用已有合法驱动中的薄弱设计,实现安全软件难以阻断的高权限操作。
BYOVD,即“自带脆弱驱动”,是指攻击者将一个具有合法签名但存在安全缺陷的驱动程序投递到目标主机,随后通过用户态程序与该驱动通信,借助内核态能力绕过常规安全限制。
在终端防护体系日益完善的背景下,安全软件通常具备对用户态进程查杀、内存扫描、行为监控、自保护等能力。攻击者若仅依靠普通用户态远控或加载器,很容易被行为检测或进程终止策略压制。而BYOVD能够将关键操作提升至内核态,使安全软件难以通过常规API拦截。
BYOVD攻击通常具备以下特点:
因此,在终端侧检测和响应工作中,不能仅根据驱动是否恶意来判定风险,还需要关注“看似正常但仍被异常加载”的驱动行为。
样本入口为一个安装包程序,采用常见的安装打包框架生成。安装包内包含多个应用文件与内嵌脚本。其中部分文件本身并不完整,例如一个文件仅具备压缩包特征头,但缺少完整数据块;另一个文件虽然包含PE头,但也不能独立执行。
这类设计通常用于规避静态扫描:完整载荷分散在不同文件或安装段中,只有安装流程正确执行后才会拼接、释放为可运行组件。
安装包中的内嵌脚本属于编译后的安装指令。通过解析该脚本可以确认,安装过程不仅会释放普通应用文件,还会将驱动文件、加载器组件和后续远控模块投递到指定目录。
攻击者通常会利用安装框架的合法执行逻辑掩盖恶意行为。例如:
这种实现方式使得样本在初期表现更接近于正常软件安装,而非典型木马释放器。
安装完成后,样本会尝试加载进程监控驱动。该驱动通过服务管理器进行注册和启动,属于常见的驱动加载方式。在驱动加载前,系统会校验签名有效性。由于该驱动签名链路有效且未被吊销,加载过程可以顺利完成。
随后,用户态组件会向该驱动发送经过构造的IOCTL请求。驱动在处理该请求时并未校验调用者身份,也未检查请求来源是否为受信任进程,而是直接执行进程终止操作。
该缺陷使普通权限进程能够结束内核中的任意进程,包括安全软件的核心进程。攻击者可以按照预设列表批量终止防护组件,从而为后续远控模块运行创造条件。
在完成对安全软件的干扰后,样本释放并运行最终远控载荷。该载荷属于常见的桌面远控类程序,可提供文件管理、命令执行、屏幕查看等能力。远控模块运行后,攻击者即可对主机进行持续控制。
从驱动名称与行为推断,其设计目标可能是为某些进程监控或终端管理场景提供进程终止能力。对于此类驱动,合理的实现通常包括:
但在实际实现中,上述约束条件缺失。由于IOCTL处理函数直接暴露给用户态,并且缺少基本的目标校验,攻击者可以将其作为稳定的进程终止工具使用。
该驱动漏洞属于典型的“缺少调用者校验导致的高权限功能滥用”问题。对于安全团队而言,此类漏洞的危险性不仅在于单个驱动,而在于攻击者可以将其纳入长期工具库,并在不同活动中反复使用。
值得注意的是,驱动本身可能没有恶意代码,因此常见恶意代码检测引擎无法准确判定,只能通过行为检测、加载关系分析和驱动信誉体系识别风险。
结合多批次样本分析可以发现,攻击者已经形成了一套基于多驱动组合的终端对抗方案:
各驱动之间相互配合,使安全软件即使能够检测到单一异常,也难以在短时间内恢复完整防护能力。此类多驱动组合攻击对检测和响应提出了更高要求。
针对此类BYOVD攻击,建议从以下几个维度加强防御。
持续采集驱动加载事件,记录驱动签名者、签名时间、文件路径、加载进程链等信息。对于新出现但具有合法签名、且由非常规安装程序加载的驱动,应重点关注。
在EDR或主机审计系统中关联驱动加载后的IOCTL请求序列。若某一驱动在短时间内收到大量用于结束进程的高权限请求,应触发告警。
结合内部驱动库与第三方驱动风险情报,对驱动进行信誉评价。即便驱动处于白名单状态,也需关注其历史使用环境是否与当前主机角色匹配。
在终端防护策略中限制低权限用户注册新内核服务,尤其是在办公终端和普通服务器上。对已注册服务进行基线比较,发现新增驱动服务时自动复核。
安全防护能力不应完全依赖单个进程。建议采用多进程守护、关键组件分离、异常退出快速拉起等机制,降低进程被结束后造成长时间防护真空的风险。
本次样本反映出BYOVD攻击已经从偶发利用走向常态化、工具化。攻击者不但持续收集和分析公开驱动,还可能主动挖掘全新脆弱驱动,并将其纳入终端对抗工具链。对于防守方而言,仅依赖签名、哈希或静态特征已不足够,需要建立覆盖驱动加载、服务注册、IOCTL调用和进程生命周期的综合检测能力。
CVE-2025-70795对应驱动在分析时仍处于预留状态。后续待相关信息完成披露流程后,可将其作为风险驱动情报纳入检测规则。同时,建议安全团队将此次攻击链作为参考案例,用于验证现有终端防护方案在面对合法签名驱动滥用时的表现。