深入解说回避检测的恶意软件的机制

【】多数恶意软件的开发者,为编写复杂的代码花费了很多的时间与精力。他们的成功,作为威胁长期未被检测出,能够规避于沙盒的解析、反病毒对策、以及恶意软件的解析人员。该文章主要介绍了回避检测的恶意软件的机制。

恶意软件若容易被检测到的话,便没有了使数据盗取影响最大化的时间。IT安全市场逐渐成熟,现在的安全对策工具和应用程序的性能都非常高。但是,攻击者了解安全工具的运作并持续监视。另外,企业和组织也不一定做到最佳的安全级别。恶意软件对策工具没有及时更新的情况有很多,也存在因沙盒设置错误造成易被检测的情况。

恶意软件自身的防御功能

恶意软件为了回避检测和解析利用了多种机制。机制的技术大致分为以下三大类别。

  • 防病毒工具:为了回避病毒对策、防火墙、保护环境的其他工具的检测而被使用。
  • 防病毒沙盒:进行自动解析功能的检测,为回避恶意软件的动向报告引擎而被使用。
  • 反病毒分析:检测恶意软件的解析者,为诈骗而被使用。例如,为了回避反向工程,在检测Process Explore、Wireshark等监视工具的同时,利用一些过程监视的手法、Packer等。

这三类都共同的恶意软件技术也有几个。使用RunPE等的技术的话,恶意软件可以回避病毒对策软件、沙盒、以及解析者。

沙盒的回避

沙盒是迅速检测恶意软件的有效工具,但是不适当地构成的话,反而会被恶意软件简单地检测出来。恶意软件通常需要实施以下几点基本的检查。

MAC地址的检测:VMware、VirtualBox等虚拟环境中已知的MAC地址被使用。该地址是经常保存至注册表的以下地方

(HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}\0000\NetworkAddress)。恶意软件可要求registry key 或使用GetAdapterInfo API两者任选其一的方法检测MAC地址。

过程检测:恶意软件可检测与沙盒相关联的动作过程的存在。例如,VmwareService.exe等过程的情况下,使用Create ToolHelp32Snapshot API 抓拍动作过程,使API函数的Process32 First和Process32 Net抓拍的各过程做成一览表,便于检测。

注册表的检测:恶意软件可检测的系统注册表项是在虚拟环境下制作的。以下的注册表虽然内容并不完整,但是是恶意软件可能检测的注册表项一览。

另外,恶意软件存在使用以下几个高技术检测沙盒的情况。

钩子(Hook)函数的检测:钩子函数是改变OS和应用程序内部函数行为的基本技术。沙盒是使用钩子技术进行样品举动的变更。例如、在DeleteFile函数中设置钩子,恶意软件会试图删除被沙盒捕捉的文件。这类函数被放置于内存上(内核空间)的特定地方。

恶意软件也存在通过检查调用函数的地址来检测钩子的情况。例如,被返还的地址不存在内核中,表明现在该函数被挂钩。

恶意软件使用硬件的尺寸检查和特殊命令等其他手法,可检测特定的登记。事实上,这些技巧在机器上的注册是一致化的,在虚拟环境中需要重新配置。

病毒对策的回避

病毒对策工具的基本功能是署名、扫描、探索。

·署名可回避样品哈希值的变更。这是非常简单的,只需要变更执行文件的1个字节便可实现。

·扫描是制作一个大的文件,通过仿真器造成混乱来回避。

·探索分析是较复杂的,但可通过使背后的函数挂钩来回避。

恶意软件为了回避病毒对策工具的其他方法是工具的无效化或者追加例外情况。多态病毒代码的检测是特别困难的。

Anti-debug

解析代码时,恶意软件解析人员往往需要深入调查。Anti-debug是回避调试程序逆向工程的其他技法。使用Windows API的话,比较容易检测调试程序的存在。

IsDebuggerPresent函数:这个函数是检测PEG(Process Environment Block)结构中的特定状态IsDebugged,调试过程没有被执行的情况下,回复0;调试程序未被连接时,回复0之外的。

FindWindow函数:该函数能够从名字和Class来检索窗口(例如:OllyDbg),也能够检测Wireshark和Process Explorer等工具。

CsrGetProcessId函数:这个函数能够检索系统进程中csrss.exe过程的ID。默认过程的访问令牌SeDebugPrivilege权限是无效的。但是,OllyDbg和WinDbg等调式程序被加载的话,SeDebugPrivilege权限会被有效化。csrss.exe被打开即意味着过程的访问令牌权限为SeDebugPrivilege,对象过程被推测为调试程序。

 Anti-disassembly

Anti-disassembly是回避逆向工程解析的不同手法。有多种Anti-disassembly的妨碍方法,具体如下:

  • API难读化时,能隐藏特定函数的调用。例如,不使用API函数名称调用函数,解析人员为了把握被利用的函数有必要进行逆向工程。这个操作很费时间。
  • 插入JAN代码:恶意软件中插入JAN代码来欺骗解析人员,不使用的代码可以使逆向工程更加耗时。由于JAN代码完全不会被执行,Sample完全不会有变化。

关于Unprotect Project

回避恶意软件解析的方法有很多,这些技巧中被公开的有几项。Unprotect project是结合恶意软件的保护与自己防御一览化公开的Wiki。这个项目为促进对恶意软件保护功能的理解,在技术一览表中加载了思维导航。

这个项目的目标是为了在社区中使病毒检测功能停滞、迂回安全保护政策,回避解析的恶意软件所使用的技术被深入理解,这个网站有如下的内容。

  • 沙盒的回避技巧:回避沙盒解析
  • 病毒对策的回避技巧:回避病毒对策的检测
  • 反调试的技巧:欺诈调试程序、回避解析
  • 反反汇编:回避使用反汇编工具的逆向工程,以及理解恶意软件的举动
  • 过程的圈套:系统上隐藏恶意软件,回避检测。难读化与数据编码:隐藏一部分恶意软件中的数据或代码。

·压缩软件:保护恶意软件的代码以及追加其他回避功能。

Wiki将持续更新。

总结

恶意软件的回避检测技术持续进化着,理解这些技术,并在信息安全社区共享经验是战胜恶意软件最有效的方法。

【译稿,合作站点转载请注明原文译者和出处为.com】

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/143709.html<

(0)
管理的头像管理
上一篇2025-03-09 20:04
下一篇 2025-03-09 20:06

相关推荐

  • 云服务器和云虚拟主机怎么选?云服务器和虚拟主机区别

    云服务器适合业务增长快、需弹性扩展的场景,而云虚拟主机适合预算有限、技术门槛低的小型静态网站或测试环境,二者核心区别在于资源独享性与运维复杂度,核心差异解析:从底层架构到使用体验很多人容易混淆这两者,觉得它们都是“买空间建站”,它们的底层逻辑完全不同,云服务器(ECS)就像是你租了一整栋别墅,水电网络独立,你想……

    2026-06-29
    0
  • 赣州智慧旅游招聘是真的吗?赣州旅游人才招聘信息

    中级岗位(3-5年经验)月薪范围通常在6000-10000元,这类岗位需要独立负责项目模块,如独立运营一个抖音账号,或维护一个景区小程序的功能迭代,具备成功案例的候选人议价能力较强,高级岗位(5年以上经验)月薪范围通常在10000-20000元,部分核心管理岗可达更高,这类人才需要具备战略规划能力,如制定整个景……

    2026-06-29
    0
  • 赣州智能物联网车位锁如何管理?智能车位锁管理系统多少钱

    赣州智能物联网车位锁管理的核心在于通过云端平台实现远程控锁、状态实时监控及自动计费,彻底解决传统车位“被占难管”与“找位难”的痛点,在赣州这样的城市,随着机动车保有量的持续增长,老旧小区、商业综合体以及私人固定车位的资源矛盾日益凸显,传统的机械地锁或简易遥控锁,不仅操作繁琐,更无法实现数据化管理,引入智能物联网……

    2026-06-29
    0
  • 赣州智能消防栓好用吗,智能消防栓多少钱一个

    赣州智能消防栓通过物联网技术实现实时监测与远程报警,能显著降低火灾响应时间并提升城市消防安全管理水平,是目前智慧城市建设中不可或缺的基础设施,赣州智能消防栓的核心价值与应用场景传统消防栓往往存在“看不见、摸不着、用不了”的痛点,在赣州这样地形复杂、老城区与新城区并存的区域,传统设施的管理难度极大,智能消防栓的出……

    2026-06-29
    0
  • 云服务器和物理机到底有啥区别?

    云服务器本质上是虚拟化资源池中的弹性实例,而传统物理服务器是独占的硬件实体,前者胜在弹性与运维便捷,后者强在物理隔离与性能稳定,具体选择取决于业务对成本、扩展性及安全合规的权衡,很多人初次接触服务器时,容易把“云服务器”和“传统物理服务器”混为一谈,觉得它们都是用来跑网站或存数据的盒子,这两者的底层逻辑完全不同……

    2026-06-29
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注