山石安全能力中心|从绕过到防御:EDR规避技术拆解
原创
山石网科
山石网科
山石网科新视界
2026年6月26日 14:00
北京
在小说阅读器读本章
去阅读
*分析当前主流EDR规避技术
一、引言 在勒索软件肆虐、APT 攻击频发的今天,端点检测与响应(EDR)系统已成为现代企业安全防御体系的关键组件。现代 EDR 通过实时端点行为监控、内存深度分析和自动化响应能力,提供了更为主动的终端安全防护机制。然而,安全攻防的本质始终是一场动态博弈。在实践中,公开的攻击工具往往难以逃过 EDR 的检测,其行为模式、内存特征、API 调用序列往往在恶意操作执行前就被精准捕获。这种困境推动了攻击技术的持续进化,催生了一系列针对 EDR 机制的规避技术。 本文围绕当前主流的 EDR 规避技术展开分析,包括静态特征规避、动态行为隐匿、信任链滥用与供应链污染。
二、技术拆解 2.1 绕过静态防线:特征规避
现代 EDR 的第一道防线基于特征码和静态启发式扫描,包括: * (1)基于哈希的信誉库:通过比对文件哈希值,与云端威胁情报快速匹配,一旦命中已知恶意软件特征,文件将被立即隔离。 * (2)基于二进制特征的模式匹配:通过定义特定字节序列、常量字符串或指令模式,来精准识别恶意代码在二进制层面的独特指纹。 * (3)基于文件结构的深度解析:通过解析文件内部结构,例如 PE 文件节区、Office 文档中的宏代码、脚本文件的语法结构等特征来检测威胁,并结合静态启发式规则识别异常模式,防范未知恶意代码。 对攻击者而言,其首要目标是让恶意代码在加载阶段成功绕过静态检测。理论上,完全加密的代码确实能做到这一点。但为何市面上许多公开的 XOR 加密工具依然会被轻易查杀?根本原因在于,这些粗糙的加密工具只解决了“静态”的问题,却忽略了“动态”的风险。它们在运行时,往往存在两大致命弱点:一是将解密后的 Shellcode 完整暴露在内存中;二是密钥复用和静态密钥硬编码。这使得 EDR 只需通过 Hook 相应内存 API,或直接扫描特定的汇编特征,便能轻松将其捕获。 针对上述困境,攻击者采用了两种对抗策略。一是即时解密(Just-In-Time Decrypter)技术,其核心思想是摒弃传统的“全量加载、一次性解密”模式,转而采用“按需加载、即时解密”机制,仅在指令执行前解密对应内存页。以 Fatmike-GH 的 JitDecrypter 项目为例,它利用 CPU 的异常处理机制,当CPU 尝试执行一个与当前内存页保护属性冲突的操作时,会触发异常。此时,自定义的 Loader 会捕获这个异常,并解密触发异常的那一页内存,然后让 CPU 重新执行;二是避免单一算法特征,对恶意载荷叠加多层加密,或针对不同目标预配置不同算法。如,在 Cobalt Strike 中,攻击者可以通过 BOF(Beacon Object File)替代固定加密的 Execute-Assembly,实现 “加密算法动态化与加载逻辑自定义”。 2.2 绕过动态防线:行为隐匿
现代 EDR 的第二道防线基于对终端动态行为的实时监控与智能分析,通过捕获系统调用、进程活动、网络连接等实时数据,并结合行为规则与上下文关联分析,识别并阻断潜在威胁。其核心实现机制包括: * (1)基于事件的动态行为监控:现代 EDR 通过多种手段,如 Windows 事件追踪,实时捕获终端行为日志,视野覆盖进程、文件、注册表、网络等多个维度。 * (2)基于API Hook的行为捕获:现代 EDR 通过 API Hook 技术深入拦截程序对系统 API 函数的调用,并解析相应参数,从而精准识别潜在恶意意图。 * (3)基于上下文的行为关联:现代 EDR 突破单点事件的孤立视角,利用全局视野将分散的碎片化信息进行逻辑重组,其核心在于构建跨进程、跨文件、跨时间的动态行为图谱。包括: a)基于派生关系的进程链溯源:不局限于单一进程监控,而是追溯完整的父子进程树,并记录进程间的派生关系; b)跨实体的多维事件聚合:将单一进程生命周期内的文件、网络、注册表等操作聚合,把看似无关的孤立事件串联成完整的攻击线索; c)基于时间窗口的攻击链重构:分析事件先后顺序与因果关系,识别符合特定战术、技术与过程的攻击序列(TTPs),将零散低危告警聚合为高危攻击场景。 对攻击者而言,要想成功执行攻击载荷,就必须针对 EDR 的动态行为检测机制设计绕过手段。包括: * 绕过行为监控 (1)无文件攻击: 避免将恶意代码写入磁盘,直接利用 PowerShell 脚本、WMI 命令或反射式 DLL 注入等技术,将代码直接驻留在内存中执行。 (2)日志清除与干扰:攻击者通过清除事件日志、禁用日志上传服务、或篡改日志记录配置,阻碍 EDR 对关键行为的采集、存储与上报。 * 绕过API Hook (1)直接系统调用:攻击者不再调用 ntdll.dll 中的 API 函数,而是编写汇编代码 Stub,并手动设置寄存器参数和系统服务号 SSN,直接执行系统调用指令进入内核,彻底绕过了用户态的 Hook。 (2)间接系统调用:攻击者不在自身代码中执行系统调用指令,而是动态定位 ntdll.dll 中原始系统指令地址,通过跳转指令执行。这样既绕过了用户态 Hook,又使得系统调用指令实际执行于 ntdll.dll 的合法代码段内,而非攻击者自行分配的内存区域,提高了隐蔽性。 (3)API Unhooking:攻击者通过内存映射加载一份干净的 ntdll.dll 副本,然后用其代码段覆盖当前进程内存中已被 Hook 的版本。此后,进程再调用相关 API 时,执行的便是原始、不受监控的代码。 * 破坏行为关联 (1)父进程欺骗:攻击者利用 Windows 扩展启动属性(PROC\_THREAD\_ATTRIBUTE\_PARENT\_PROCESS),将恶意进程的父进程指定为系统合法进程,干扰EDR对进程派生链的溯源分析。 (2)进程镂空(Process Hollowing):攻击者通过创建合法进程的挂起实例,替换其内存空间为恶意代码后恢复执行,使进程外观保持合法。 (3)行为碎片化与延迟执行:攻击者将完整攻击逻辑拆分成多个看似独立的步骤,并通过计划任务、定时器回调或服务注册等机制,实现攻击动作的异步触发或延迟执行,从而打破 EDR 基于时间窗口的攻击链重构。 2.3 绕过信任防线:信任链滥用与供应链污染
无论是静态特征的规避,还是动态行为的隐匿,其本质仍是“躲”。然而,高级攻击者并不止步于此。现代 EDR 为了维持系统稳定,必须向大量可信对象发放通行证,这构成了 EDR 的信任链(如签名、白名单、可信路径)。同时,企业终端的软件更新与分发依赖供应链(如内部更新服务器、第三方软件源)。如今,攻击者把目光转向信任链滥用与供应链污染,从而让 EDR 主动为其开绿灯。 * 信任链滥用 (1)可信代理滥用:为避免干扰正常业务,现代 EDR 通常不会拦截某些特定系统进程(如regsvr32.exe、rundll32.exe)。这些进程由微软签名,承担关键系统功能,拦截它们可能导致业务中断。攻击者正是利用这些二进制文件(LOLBins, Living Off the Land Binaries)来加载和执行恶意代码。典型手法包括:通过mshta.exe执行远程JavaScript脚本,利用 regsvr32.exe 远程下载 SCT 脚本并触发 COM 对象加载,或借助 rundll32.exe 运行恶意 DLL。这些操作完全符合系统的正常调用范式,EDR 难以在不产生大量误报的前提下进行拦截,攻击者也因此获得了合法通行证。 (2)签名证书与驱动利用:数字签名是 EDR 信任链的基石,有效的签名意味着文件来自可信发布者且未被篡改。因此,EDR 通常对携带合法签名的代码,尤其是内核驱动程序,给予较高信任。攻击者对这一机制的滥用方式如下: a)窃取签名证书:攻击者从被入侵的软件厂商窃取签名证书,或在地下市场购买被盗证书,为恶意程序披上合法外衣。EDR 验证签名通过后,通常会直接放行。 b)自带漏洞驱动(BYOVD,Bring Your Own Vulnerable Driver):攻击者加载一个带有有效签名的已知漏洞驱动程序(如主板驱动、反作弊驱动),该驱动本身由正规厂商签名,EDR 基于信任链将其放行。随后,攻击者利用该驱动在内核态执行任意代码,例如终止 EDR 进程、摘除钩子或在回调链中隐藏恶意线程,实现内核级特权逃逸。 * 供应链污染 供应链污染是指攻击者通过污染软件抵达终端前的任意上游环节(如开发环境、分发渠道或第三方依赖),将恶意代码植入其中,从而使其经由正常业务通道进入终端。例如:入侵源代码仓库或 CI/CD 管道植入后门(如 SolarWinds 事件);控制企业内部更新服务器(如 SCCM、SaltStack)或第三方自动更新通道推送恶意更新包;向 PyPI、npm 等公共仓库投放带后门的组件,待开发者拉取后进入内网。由于这些负载搭载于正常业务流,天然具备路径与签名信任,EDR 会将其视为合法更新或业务软件直接放行,实现“无需绕过检测”的极致规避。
三、防线构筑 面对这些不断进化的威胁,山石网科智铠统一终端安全管理系统集成了多维度检测与响应能力,构建了更深、更广、更新的防御体系,全面反制上述各类攻击手法,包括: (1)对于静态特征的规避
山石智铠并不依赖单一的传统特征码检测,而是构建了多层静态检测体系。一方面,通过启发式高级病毒检测引擎结合 AI 智能模型,深度分析恶意载荷的静态结构特征,识别多层加密混淆的恶意样本。另一方面,山石智铠拥有实时内存行为监控能力,能够在恶意代码执行瞬间捕获异常内存行为与模式特征,迅速定位可疑内存区域,精准阻断攻击行为。此外,山石智铠集成了山石网科自研情报库,同时与业内顶级安全厂商定期完成情报交换验证,保证情报资讯的实时更新,辅助分析研判。
图注:山石智铠对病毒文件的检测能力示意图 (2)对于动态行为的隐匿
山石智铠建立了从行为实时感知到攻击链路还原的一体化动态防御机制。通过自研驱动引擎实时监控进程运行、文件操作、注册表修改及网络连接等关键活动,持续构建终端正常行为基线,并结合大模型 AI 研判,迅速精准识别偏离正常基线的异常事件。当攻击者试图通过父进程欺骗或进程镂空等手段隐匿自身行为时,山石智铠的多维攻击链关联引擎能够基于攻击树建模和派生关系,精准关联可疑进程链条,即便其中某环节被截断或绕过,EDR 仍可通过整体事件关联完成攻击定位。此外,山石智铠基于 ATT&CK 框架搭建攻击链模型,并通过赛可达实验室权威认证,展现出全面、扎实的动态防御实战能力。
图注:山石智铠对进程镂空攻击的检测能力示意图 (3)对于信任链滥用
对此类规避手法,山石智铠深入监控 regsvr32.exe、rundll32.exe、mshta.exe 等可被滥用进程的“参数调用异常”与“父子进程关系异常”,即便攻击者通过携带签名证书的载荷或自带漏洞驱动试图进入内核层摘除 EDR 钩子,山石智铠也能够通过底层的驱动加载行为管控和系统完整性保护锁定内核安全状态,阻遏 BYOVD 等高级特权逃逸。
图注:山石智铠对父进程欺骗攻击的检测能力示意图 (4)对于供应链污染
* 针对此类攻击,山石智铠构建了一套“事前可见—事中隔离—事后溯源”的闭环体系。在事前可见层面,山石智铠支持全面提取终端软件信息,通过基线检查模块进行合规性核查,快速识别可疑软件或不合规版本,从源头缩小暴露面。在事中隔离层面,通过山石智铠的主机隔离技术,批量隔离受感染终端,切断恶意软件横向扩散路径,防止污染范围扩大。在事后溯源层面,山石智铠依托事件全局溯源与文件全网追踪,精准定位受影响终端并完成批量处置,实现闭环管理。
图注:山石智铠全网终端威胁追踪功能示意图
四、结语 安全攻防的本质是一场永无止境的动态博弈,没有万能的检测手段,也没有不可逾越的防线。攻击者在不断寻找 EDR 的“逻辑暗面”,而防御者必须在每一次对抗中补全盲区。面对这一局面,企业需要的并非某一项单点防护技术,而是一套持续进化、覆盖全攻击链的分层防御体系。 山石网科智铠统一终端安全管理系统致力于将前沿的攻防对抗研究转化为实战化的终端安全能力,帮助客户在动态威胁环境中缩短响应时间、收窄攻击窗口,从被动应对走向主动掌控,真正的构建起坚韧、闭环、可进化的端点安全防线。
* 山石网科协助国药太极涪陵“灯塔工厂”安全体系建设 * 中标|中国铁路信息科技集团有限公司 * 山石网科成功协办“苏州高新区企业网络与数据安全主题交流活动”
山石网科是中国网络安全行业的技术创新领导厂商,由一批知名网络安全技术骨干于2007年创立,并以首批网络安全企业的身份,于2019年9月登陆科创板(股票简称:山石网科,股票代码:688030)。 现阶段,山石网科掌握30项自主研发核心技术,申请540多项国内外专利。山石网科于2019年起,积极布局信创领域,致力于推动国内信息技术创新,并于2021年正式启动安全芯片战略。2023年进行自研ASIC安全芯片的技术研发,旨在通过自主创新,为用户提供更高效、更安全的网络安全保障。目前,山石网科已形成了具备“全息、量化、智能、协同”四大技术特点的涉及基础设施安全、云安全、数据安全、应用安全、安全运营、工业互联网安全、信息技术应用创新、AI安全、安全服务、安全教育等10大类产品及服务,50余个行业和场景的完整解决方案。 
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论