前两篇分别讨论了什么是安全对抗,以及安全产品检测链路如何工作。这一篇进一步拆解一个问题:对抗现象如何分类?不同类型的对抗变化分别影响检测链路的哪些环节,防御侧又该如何从分类出发,找到对应的补强方向。 分类不是目的,让每一类对抗现象都能指向具体的分析维度才是目的。
一、为什么需要给对抗现象分类
在安全工作中,对抗现象经常被笼统描述为”免杀””绕过”或”规避”。这些词可以作为日常描述,但很难直接指导分析。
一个样本没有触发告警,原因可能很简单:特征过窄、行为链断开、环境差异导致某条路径没有走入。不同类型的原因对应完全不同的检测缺口,需要的补强手段也不一样。
如果把所有对抗现象混为一谈,很容易陷入”每次都补一条规则,但下次依然漏”的局面。分类的意义在于:把对抗现象拆到可分析的粒度,让每一类都能指向具体的分析维度和补强方向。
二、对抗现象的五个维度
从检测链路的角度,对抗现象通常集中在五个维度上:
|
|
|
|
|
|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
下文逐类展开。
三、第一类:静态特征变化
怎么理解
静态特征变化是指文件在未被执行时,其可被静态规则观察的属性发生了变化。这类变化不涉及动态行为,只影响静态扫描阶段和云信誉阶段的判断。
常见变化方向
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
攻击侧关注
静态检测的核心假设是”已知特征可以稳定匹配”。围绕这个假设,攻击侧的关注点比较集中:哪些特征被规则依赖,如何让这些特征不再直接暴露,或者以规则难以直接匹配的形态出现。
防御侧关注
静态特征变化的本质是规则依赖了过于脆弱的单点特征。补强方向不是拒绝静态方法,而是:
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
四、第二类:动态执行与环境变化
怎么理解
动态执行与环境变化是指,样本在沙箱或分析环境中没有表现出完整恶意行为,在真实环境中却可以正常执行。这类变化的本质是”执行环境差异”,对抗的对象不是具体规则,而是沙箱或分析环境的边界条件。
常见变化方向
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
攻击侧关注
沙箱环境存在天然的时间、资源、系统配置等方面的限制。攻击侧利用的是这些限制:让某条行为路径在沙箱中没有被走入,或者走入但未完整展开。
防御侧关注
动态执行阶段的检测缺口,更多来自环境不完整,而非沙箱无效。补强方向主要是:
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
五、第三类:行为链变化
怎么理解
行为链变化是指,恶意行为没有消失,而是被分散到多个进程、多个时间窗口,或者借助合法进程和系统服务来执行。最终效果是:每个单点事件都不够可疑,但组合在一起能形成明显的恶意意图——只是这个组合没有被做到。
常见变化方向
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
攻击侧关注
行为链变化的核心策略是”让每条单点事件看起来都不够可疑”。攻击侧在设计时更多考虑的不是”如何隐藏某个行为”,而是”如何避免多个行为同时、同进程、同时间窗口出现”。
防御侧关注
行为关联是运行时监控中最大的挑战之一。补强方向集中在:
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
六、第四类:内存形态变化
怎么理解
内存形态变化是指,恶意代码在运行时改变了其在内存中的加载方式、执行上下文或者痕迹存在的方式。这类变化直接影响内存扫描、内存遥测和无文件攻击检测。
常见变化方向
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
攻击侧关注
内存检测的假设是”恶意代码在内存中的形态与正常代码有差异”。对抗的重点是让这些差异更小或者更短暂地出现。
防御侧关注
内存检测的补强方向主要是时机和遥测:
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
七、第五类:网络通信变化
怎么理解
网络通信变化是指,恶意流量在协议、频率、域名、证书或通信模式上发生了变化,使网络侧只能看到弱特征,无法单独判断为恶意通信。
常见变化方向
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
攻击侧关注
网络检测的假设是”恶意流量有可识别的模式”。攻击侧关注的是如何让通信看起来更像正常流量,或者分散在不同服务、不同时间窗口中。
防御侧关注
网络检测在单独维度上能做到的有限,关键是需要与进程侧和行为侧关联:
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
八、分类之后:如何从分类指向补强
分类不是为了分类本身,而是帮助在分析对抗现象时更快地定位维度和方向。
可以对照一个简表:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
这个简表不是严格一对一的,一个真实的对抗现象通常同时涉及多个维度。但分类可以帮助减少思考负担:不需要每次从零开始猜测问题出在哪,而是有结构地排查每个可能的维度。
九、对抗现象分类与检测链路的关系
结合上一篇的检测链路,可以把五个维度映射到不同阶段:
<code>文件来源与落地 → 无直接对抗(关注来源上下文) 静态扫描 → 静态特征变化 云信誉 / 情报 → 静态特征变化、网络通信变化 沙箱分析 → 动态执行与环境变化 启动前拦截 → 动态执行与环境变化 运行时监控 → 行为链变化 行为关联 → 行为链变化 内存检测 → 内存形态变化 网络检测 → 网络通信变化 告警聚合 → 行为链变化、网络通信变化 响应处置 → 无直接对抗(关注处置策略)</code>
从这个映射可以看到:
-
• 一些维度同时影响多个检测阶段。例如静态特征变化不只影响静态扫描,还会影响云信誉判断; -
• 检测链路的中间阶段受力最集中:运行时、行为关联、内存检测受三类以上变化的影响; -
• 检测链路的头和尾更依赖上下文和策略,不是单靠维度分类可以覆盖。
十、小结
对抗现象可以从五个维度拆解:静态特征、动态执行与环境、行为链、内存形态、网络通信。每个维度都有典型的对抗方向、对应的检测失效模式,以及可供选择的补强路径。
分类的价值在于:面对对抗现象时,不再笼统地归因为”免杀”,而是能按维度拆开,找到具体缺口和优先动作。
到这里,系列的前三篇建立了一套完整的基础认知体系:
<code>什么是安全对抗 → 概念与框架 检测链路如何工作 → 机制与结构 对抗现象如何分类 → 维度与方向</code>
后续文章将沿检测链路,逐阶段深入展开各类对抗现象的分析方法和防御补强。
转自:https://mp.weixin.qq.com/s/KCVOcS029qJq5Sxd9ivOsA?cur_album_id=4593893496704729094&scene=189&color_scheme=light#wechat_redirect