赘述杀软查杀的原理

admin 2025年5月29日11:12:52评论27 views字数 3599阅读11分59秒阅读模式

免责声明

合法使用原则:文中提及的技术、工具或案例,仅用于授权范围内的安全测试、防御研究或合规技术分享,未经授权的网络攻击、数据窃取等行为均属违法,需承担法律责任。

风险自担与责任豁免:文章内容基于公开信息整理,不保证技术的准确性、完整性或适用性。读者需自行评估技术应用风险,若因不当使用导致任何法律后果或损失,均由使用者自行承担,与本公众号及作者无关。

法律管辖与提示:本公众号坚决拥护相关法律法规,反对任何危害网络安全的行为,读者需严格遵守法律法规。

一、常见的免杀方式列举

  • 加壳:通过特定的加壳工具对程序进行压缩、加密处理,改变程序的原始形态,增加分析难度,使杀毒软件难以直接识别出程序中的恶意特征码,从而达到躲避查杀的目的,同时也对程序起到一定保护作用,防止被轻易反编译。
  • shellcode混淆/加密:对shellcode进行各种变换操作,如替换指令、插入垃圾指令来混淆,或采用加密算法将其加密,使得杀毒软件无法直接识别其中的恶意模式,只有在运行时通过解密或脱壳操作才能恢复出原始的恶意代码,以此来提升免杀效果,增强代码的隐蔽性。
  • 使用各种语言的加载器:利用 C、C++、Python、Go、Rust、Nim 等不同语言编写加载器,这些加载器负责将恶意的shellcode加载到内存中执行。不同语言的加载器具有各自的特点和行为模式,能够增加杀毒软件检测的复杂度,降低被单一语言检测规则拦截的风险,提高样本的免杀成功率。
  • 分离免杀(远程加载):将shellcode和加载器分开存放于不同的文件中,加载器通过远程加载的方式获取并执行shellcode,由于二者分离,杀毒软件在扫描单个文件时难以发现完整的恶意逻辑和特征,从而有效躲避了基于文件特征的查杀,增加了检测难度。
  • 白加黑:利用处于杀毒软件白名单中的程序来执行恶意样本,白名单程序通常是被信任的、具有合法用途的软件,借助它们的可信度来掩盖恶意行为,使杀毒软件难以将正常的白程序与隐藏其后的恶意样本区分开来,从而让恶意代码得以顺利运行,这是一种巧妙且隐蔽的免杀手段。
  • 自己编写加载器:开发者根据自身需求和创意,使用一些不常见/冷门的加载方式来编写加载器,这些独特的加载方式未被杀毒软件的检测规则所覆盖,能够有效躲避已知的加载器特征检测,为恶意shellcode提供了一个难以被察觉的执行环境,是提升免杀能力的一种个性化、创新性的方法。
  • 自己开发或者二开远控

二、杀软的基本查杀原理

  • 常见的杀毒软件对程序的划分大致分为三种:
    • 无害:该类程序在运行过程中没有任何异常或可疑的行为,完全符合正常软件的运行模式,不存在任何与病毒或木马相关的特征,如未对系统关键位置进行不当操作、未尝试连接可疑网络地址等,因此被判定为白程序,属于安全可信的范畴,杀毒软件不会对其采取任何拦截或警告措施,允许其正常运行,像常见的办公软件、系统自带工具等通常都会被划分为无害程序。
    • 可疑:这类程序表现出一些可能引发安全担忧的行为,例如试图修改注册表中的敏感项、频繁打开cmd或powershell执行命令、对用户关键信息进行不合理的修改操作、试图访问或修改系统中敏感文件等。虽然这些行为具有一定的风险性,但由于缺乏明确的恶意特征,杀毒软件暂时无法将其判定为绝对的病毒或木马。在这种情况下,杀毒软件通常不会直接查杀该程序,而是会向用户发出风险提醒,告知用户该程序可能存在潜在的威胁,以便用户根据实际情况做出进一步的判断和处理,比如停止运行该程序或进行更深入的检查。
赘述杀软查杀的原理
    • 存在木马病毒:当程序的特征与已知木马或病毒的特征库相匹配时,就会被判定为存在木马病毒。这些特征可能包括特定的恶意代码段、特定的网络通信模式、对系统资源的异常占用方式等。这种程序往往具有明确的恶意目的,如窃取用户信息、控制用户设备、破坏系统数据等,会对用户的系统安全和隐私造成严重威胁。一旦被杀毒软件识别,通常会立即被查杀或隔离,以防止其继续对系统造成损害,同时杀毒软件会提醒用户进行相应的处理操作,如清除病毒、修复系统漏洞等。
  • 杀软常用识别恶意样本的方式常见的有两种: 
    • 静态查杀 
    • 动态查杀(启发式查杀)

静态查杀

  • 静态查杀:通常依赖病毒特征库(这是一个收纳了病毒、恶意软件等威胁的特定标识的数据库),这些特定的表示标识表现为文件的特定代码片段、独特的字符串、文件结构等。杀毒软件运作时,会将文件的相应特征与特征库信息比对,判断该文件是否为木马。
  • 静态查杀大多基于样本特征码进行查杀,比如360报毒
赘述杀软查杀的原理

代码中的特征

  • 杀软借助反编译技术/查看exe中的字符串的方式查看代码,能追溯到代码里的函数和汇编代码,比如Windows API函数中的VirtualAlloc、RtlMoveMemory、CreateThread等危险函数。
  • 此外,远控关键词(例如msf、cobaltstrike)、特定关键字(如shellcode)也会被精准定位,这些关键词、关键字、危险函数的出现就会使得文件的可疑度陡然攀升。

shellcode的特征

  • 原生的shellcode有其独有的二进制模式,例如 “xfcx48x83...”,这是由机器指令编码形成的固定序列,如同一张 “身份证”,很容易被杀毒软件的扫描引擎捕捉到,成为判定恶意软件的有力证据。
赘述杀软查杀的原理
赘述杀软查杀的原理

文件名

  • 某些特定文件名也会成为查杀的目标,如银狐木马常命名为 tgp_daemon.exe,极大程度暴露其恶意身份。
赘述杀软查杀的原理

文件的md5

  • 文件的md5是文件的数字指纹,当样本被查杀,其hash值会被收录至特征库,后续扫描时只要出现相同hash值的文件,杀毒软件就会迅速识别并报毒,而如果样本免杀了,那么hash也会被记录,后续将不再查杀(注意,文件发生一点改变都会导致hash发生变化),可通过 CertUtil -hashfile 文件路径 md5 命令获取文件的md5 hash
赘述杀软查杀的原理

加密(可疑)

  • 如果程序使用加密或解密行为,或者对文件有额外的保护措施(比如加壳),这可能引起杀毒软件的怀疑。加壳会改变程序的原始形态,对程序进行压缩或加密,以隐藏其真实特征。
  • 虽然加壳本身并不一定是恶意的,但它常被用于恶意软件以躲避检测,因此杀毒软件会对使用加壳或加密的程序进行更仔细的检查。

数字签名

  • 判断当前程序的数字签名是否正常是静态查杀的一个重要方面。正规的软件通常都具有有效的数字签名,表示该程序来自可信的开发者,并且在签名后未被篡改。
  • 杀毒软件会检查程序的数字签名,如果签名无效、过期或来自未知来源,程序可能会被视为可疑。
赘述杀软查杀的原理

资源文件

  • 资源文件包含软件的一些元信息,如图标、产品名称、产品版本、文件版本、版权、语言等。
  • 正常软件通常会包含完整且合理的资源信息,而恶意软件可能缺少这些信息或包含异常的资源文件。
  • 例如:一个没有图标、版本信息为空或包含奇怪版权信息的程序,可能会引起杀毒软件的警觉。
赘述杀软查杀的原理

动态查杀

  • 动态查杀通常在静态分析之后,多数杀毒软件会利用云沙箱技术进行动态查杀,相当于开启一个隔离的虚拟环境来运行恶意样本。通过分析程序在运行时的指令执行顺序、特定的组合情况以及所调用的函数及其参数等行为特征,动态查杀能够更深入地判断目标程序是否为木马或病毒。与静态查杀相比,它更侧重于程序的执行过程,可以有效检测和分析未知的、可能是恶意的行为。

网络相关

  • 动态查杀会密切监测程序的网络活动,包括外连的IP、域名、SSL证书等信息。
  • 此时会查看程序是否尝试回连到已被标记为恶意控制端的IP或域名
  • 也会分析通信流量的内容特征,例如数据包中是否存在命令控制相关的关键词(如 shell、exec)或者具有加密特征的数据流 
  • 此外,还会关注通讯结构特征,比如某些远控程序会在数据包末尾追加x00x00x00x00这样无意义的空字节。一些CS样本刚上线执行命令就被杀,可能就是因为其流量特征触发了杀毒软件的动态检测规则。

内存相关

  • 在内存层面,动态查杀会检测内存中是否存在已知的恶意特征码,例如与恶意软件相关的特定内存模式或代码片段。
  • 此时会特别关注内存中一些常见的加载、反射等的字符串(因为内存中包括程序运行过程中产生的各种数据),如ReflectiveLoaderbeacon.dll等(这些都可以在CS的profile文件中进行修改或者替换成空)
赘述杀软查杀的原理
  • 内存相关的属性也是监测的重点,正常情况下,内存页面的权限一般不会是可读、可写、可执行(RWX),如果发现某个内存区域具有RWX权限,这可能表明程序在执行恶意操作,如动态生成和执行代码。
  • 此外,当运行类似shell xxx这样的命令时,也会查杀,因为CS在执行命令时前面会带上shell这个字符串,加上这个字符串的作用就是启动一个cmd子进程来运行,有的杀毒软件会直接查杀类似这种行为的不正常的进程链,因为这可能是一种典型的恶意行为特征。

本文来源:大白哥免杀课程,需要咨询课程详情,请扫下方二维码私信大白哥

原文始发于微信公众号(AegisGuard):赘述杀软查杀的原理

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年5月29日11:12:52
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   赘述杀软查杀的原理http://cn-sec.com/archives/4105584.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息