杀软行为分析与对抗与沙箱的初步尝试
字数 1241 2025-08-29 22:41:32

杀软行为分析与对抗与沙箱绕过技术详解

一、免杀技术概述

免杀技术主要分为两大类:

  1. 静态免杀:绕过杀毒软件对文件静态特征的检测
  2. 动态免杀:绕过杀毒软件在运行时的行为检测

现代杀毒软件通常采用扣分制机制,当检测分数低于某个阈值时,文件会被判定为恶意软件。

二、静态分析对抗技术

1. 特征码绕过

  • 原理:杀毒软件通过识别特定的二进制模式来检测恶意软件
  • 对抗方法:修改二进制特征,使用编码/加密技术

2. 熵值检测

  • 高熵值程序更容易被标记为可疑
  • 但许多合法软件(如版权保护软件)也使用混淆技术
  • 示例:使用SGN编码的payload可以降低检测率

3. 文件信誉利用

  • 部分知名软件在杀软中有白名单
  • 示例:通过DLL劫持将恶意代码注入网易云音乐可绕过360检测

4. 加壳脱壳技术

  • VMP等加壳工具效果有限
  • 虽然能通过静态检测,但在沙箱中常被标记为可疑
  • 加壳的两个主要作用:
    • 隐藏红队工具特征
    • 对抗人工分析

5. 导出表处理

  • 导出表公开了程序使用的函数和变量
  • 常见恶意函数导出会导致检测分数升高
  • 应对:精简或混淆导出表

6. Shellcode加密

  • 未加密的shellcode通常存储在.data或.rodata段
  • 容易被作为特征检测
  • 解决方案:
    • 加密存储shellcode
    • 运行时解密执行

三、动态分析对抗技术

1. 沙箱检测

  • 杀毒软件通过模拟环境监控程序行为
  • 常见沙箱类型:
    • 本地沙箱
    • 云沙箱(如微步云沙箱、VirusTotal)

2. 云查杀

  • 与沙箱配合使用
  • 通过多引擎扫描提高检测率

3. 启发式扫描

  • 分为两种类型:
    • 静态启发式:通过反编译识别代码特征
    • 行为启发式:监控运行时行为特征

4. API Hook

  • 杀毒软件通过hook关键API监控程序行为

四、沙箱绕过技术

1. 沙箱的局限性

  • 模拟环境资源有限
  • 无法完全模拟真实用户环境
  • 检测特征点:
    • 特定目录/文件是否存在
    • 特定进程是否运行
    • 系统资源(CPU核心数、内存大小)
    • 运行时长限制

2. 具体绕过方法

(1) 环境探测技术

  • 路径存在探测:检查特定用户目录是否存在
  • 进程存活探测
    • 检查QQ、微信等常见应用是否运行
    • 真实用户环境通常会有这些进程
  • 核心数量探测:沙箱通常核心数较少
  • 内存探测:沙箱通常内存配置较低

(2) 时间相关绕过

  • Sleep函数绕过
    • 直接使用sleep函数会被沙箱加速跳过
    • 替代方案:实现精确的时间延迟方法

(3) 注入技术

  • 避免直接注入explorer.exe等敏感进程
  • 需要设计更隐蔽的注入方式

3. 实际测试结果

  • 火绒:检测为"沙盒行为木马-注入器变体A"
  • 360急速版:通过检测
  • 360标准版:通过检测
  • 卡巴斯基
    • 静态分析通过
    • 动态分析失败(可能检测网络流量,建议尝试HTTPS)
  • Windows Defender:通过检测

五、参考文献

  1. 卡巴斯基启发式分析说明

六、注意事项

  1. 测试时建议断网进行
  2. 不同杀毒软件版本检测结果可能不同
  3. 技术更新迭代快,需持续关注最新对抗方法
杀软行为分析与对抗与沙箱绕过技术详解 一、免杀技术概述 免杀技术主要分为两大类: 静态免杀 :绕过杀毒软件对文件静态特征的检测 动态免杀 :绕过杀毒软件在运行时的行为检测 现代杀毒软件通常采用扣分制机制,当检测分数低于某个阈值时,文件会被判定为恶意软件。 二、静态分析对抗技术 1. 特征码绕过 原理:杀毒软件通过识别特定的二进制模式来检测恶意软件 对抗方法:修改二进制特征,使用编码/加密技术 2. 熵值检测 高熵值程序更容易被标记为可疑 但许多合法软件(如版权保护软件)也使用混淆技术 示例:使用SGN编码的payload可以降低检测率 3. 文件信誉利用 部分知名软件在杀软中有白名单 示例:通过DLL劫持将恶意代码注入网易云音乐可绕过360检测 4. 加壳脱壳技术 VMP等加壳工具效果有限 虽然能通过静态检测,但在沙箱中常被标记为可疑 加壳的两个主要作用: 隐藏红队工具特征 对抗人工分析 5. 导出表处理 导出表公开了程序使用的函数和变量 常见恶意函数导出会导致检测分数升高 应对:精简或混淆导出表 6. Shellcode加密 未加密的shellcode通常存储在.data或.rodata段 容易被作为特征检测 解决方案: 加密存储shellcode 运行时解密执行 三、动态分析对抗技术 1. 沙箱检测 杀毒软件通过模拟环境监控程序行为 常见沙箱类型: 本地沙箱 云沙箱(如微步云沙箱、VirusTotal) 2. 云查杀 与沙箱配合使用 通过多引擎扫描提高检测率 3. 启发式扫描 分为两种类型: 静态启发式:通过反编译识别代码特征 行为启发式:监控运行时行为特征 4. API Hook 杀毒软件通过hook关键API监控程序行为 四、沙箱绕过技术 1. 沙箱的局限性 模拟环境资源有限 无法完全模拟真实用户环境 检测特征点: 特定目录/文件是否存在 特定进程是否运行 系统资源(CPU核心数、内存大小) 运行时长限制 2. 具体绕过方法 (1) 环境探测技术 路径存在探测 :检查特定用户目录是否存在 进程存活探测 : 检查QQ、微信等常见应用是否运行 真实用户环境通常会有这些进程 核心数量探测 :沙箱通常核心数较少 内存探测 :沙箱通常内存配置较低 (2) 时间相关绕过 Sleep函数绕过 : 直接使用sleep函数会被沙箱加速跳过 替代方案:实现精确的时间延迟方法 (3) 注入技术 避免直接注入explorer.exe等敏感进程 需要设计更隐蔽的注入方式 3. 实际测试结果 火绒 :检测为"沙盒行为木马-注入器变体A" 360急速版 :通过检测 360标准版 :通过检测 卡巴斯基 : 静态分析通过 动态分析失败(可能检测网络流量,建议尝试HTTPS) Windows Defender :通过检测 五、参考文献 卡巴斯基启发式分析说明 六、注意事项 测试时建议断网进行 不同杀毒软件版本检测结果可能不同 技术更新迭代快,需持续关注最新对抗方法