免杀系列会在公众号中进行从简单入门到精通,让你看完整个系列也能成为免杀工作者中的一员。但是免杀和其他的行业区别在于需要你对操作系统、杀软规则、杀软特性、免杀手法等都要有一定的了解,只有打好基础才可以轻松自如的使用第一性原理快速解决掉你在与杀软对抗中的难题。所以整个免杀系列会一直更新,需要学习免杀的同学可以持续关注。
什么是免杀?
免杀(Bypass AV, Anti-Virus Evasion)是指恶意软件通过各种手段规避杀毒软件和安全检测系统的识别和拦截,从而在目标系统中成功执行。这种技术不仅用于恶意软件的传播,也被信息安全研究人员用来测试和提升安全防护系统的能力。根据有无源码,免杀可以分为以下两种情况:
• 二进制免杀(无源码):通过直接修改二进制数据实现免杀。
• 有源码免杀:通过修改源代码实现免杀。
一般直接对二进制可执行文件进行无源码免杀技术难度较高,免杀效果也不好。于是可以通过将编译好的二进制可执行文件转化为一段shellcode,然后编写加载器执行这段shellcode,从而实现无源码免杀向有源码免杀的转化。根据免杀阶段还可以分为以下两种免杀:
• 动态免杀
静态免杀
静态免杀主要是为了抵抗杀毒软件的静态扫描,杀毒软件的静态扫描一般会通过提取文件中的一段特征串来与自身的病毒库中的特征码进行对比来判断该文件是否为恶意文件,因此我们一般围绕修改或是掩盖文件的特征码来实现静态免杀。
特征码是一段能识别程序是否为病毒的特征串,不同杀毒软件识别病毒的特征码不同。
现在特征码免杀是在逐渐衰退,因为现在 的杀软主要倾向了HIPS(主动防御)以及启发式扫描, 特征码修改和定位是越来越难了。(个人认为特征码定位会很蛋疼。。。)那么无特征码免杀更是难上加难,其实就是盲免。目前只有少数牛人在玩了源码免杀,一个当今非常好的免杀方法。啥?360你盯上我的API了?我动态调用啥?小红伞你盯上我代码了?,我源码无破损修改。啥?NOD32干扰太强你定位不出?直接用C32先找出大致范围,如输入表,代码段等等,我再在源码改 (意思就是源码免杀基本能解决所以免杀难题 )。
杀软特性
1. 360
360作为中国杀软上的后期之秀,占中国杀软很大部分的市场,当时09,10年的360是非常弱的,定位根本无干扰,但现在的360查杀能力不在话中,但误报率过高,现在5引擎,小红伞,BD,QVM其中BD,木伞都是可以定位的,但QVM是一个伪启发,但是QVM07可以用定位,一般QVM都是杀输入表,杀壳,入口点,资源这些。
HEUR/Malware.QVM06.Gen 一般情况下加数字签名可过
HEUR/Malware.QVM07.Gen 一般情况下换资源
HEUR/Malware.QVM13.Gen 加壳了
HEUR/Malware.QVM19.Gen 杀壳 (lzz221089提供 )
HEUR/Malware.QVM20.Gen 改变了入口点
HEUR/Malware.QVM27.Gen 输入表
HEUR/Malware.QVM18.Gen 加花
HEUR/Malware.QVM05.Gen 加资源,改入口点
QVM07加资源一般加到2M会报QVM06
再加数字签名,然后再慢慢减资源,这个方法对大部分木马有效果。
QVM06 加数字签名
QVM12杀壳
QVM13杀壳
QVM27杀输入表
QVM19 加aspack
QVM20就加大体积/加aspack压缩
2. 金山毒霸
3. 江民
4. 瑞星
5. 安天防线
6. 卡巴斯基
7. NOD32 ESET
8. 诺顿
9. 小红伞,木伞
10. BD
11. 火绒
火绒对程序的静态检测比较严格,主要表现在对程序中嵌入的shellcode以及程序的导入表有严格的检查。而且火绒存在本地沙箱,在程序的静态特征较为明显的情况下需要借助反沙箱的技术对火绒静态查杀进行绕过,在某些情况下如果对程序的静态特征做了很好的消除,甚至可以不利用反沙箱技术即可绕过火绒本地沙箱。
12. Windows Defender
静态查杀能力较强,动态查杀较强,监控 HTTP 流量。
按照静态查杀能力强弱排列如下:
目前见过静态查杀能力最强的属360QVM,连国外的杀软都有所不及,可以说360QVM是非常流氓的了。
按照动态查杀能力强弱排列如下:
火绒、360、ESET < 卡巴斯基 < Windows Defender
火绒、360、ESET 这几个没有动态查杀。
行为查杀有强有弱,而且不好比较,看自己体验吧。
杀软的查杀方法
1。最基础的查杀
2. 静态启发式
3. 动态启发式
4. HIPS
5. 云安全
免杀方面的术语
1. API
2. 花指令
3. 输入表
4. 区段
5. 加壳
6. 反启发
7. 隐藏输入表
混淆(Obfuscation)
这是一种将代码转换为难以理解的形式的技术,使得分析者难以从字节码中理解程序的逻辑。混淆可以应用于源代码、编译后的代码或二进制文件。
代码注入(Code Injection)
将恶意代码注入到合法程序中,使得恶意代码在合法程序的执行过程中被执行,从而避开杀毒软件的检测。
9. 内存执行(In-Memory Execution)
恶意代码不在磁盘上留下痕迹,而是直接在内存中执行,这样可以减少被杀毒软件扫描到的机会。
10. 文件加密(File Encryption)
将恶意文件加密存储,只有在执行时才解密,这样可以避免杀毒软件通过文件内容进行检测。
11. 多态(Polymorphism)
生成多个变种的恶意代码,每种变种都有不同的特征,使得杀毒软件难以通过单一的特征码来识别。
12. 行为混淆(Behavioral Obfuscation)
通过改变程序的行为模式,使得恶意行为看起来像是正常行为,从而避开基于行为分析的检测。
13. 利用漏洞(Exploiting Vulnerabilities)
利用操作系统或应用程序的漏洞来执行恶意代码,有时这些漏洞可能还未被广泛认知,因此杀毒软件可能无法检测到。
使用合法的数字证书签名恶意软件,以欺骗用户和杀毒软件,使其看起来像是可信的软件。
15. 沙箱逃逸(Sandbox Evasion)
沙箱是一种检测恶意软件的环境,它模拟了一个安全的执行环境。沙箱逃逸技术是指恶意软件能够检测到自己是否在沙箱中运行,并在检测到沙箱时改变行为,以避免被检测。
16. 利用系统服务(Using System Services)
通过操作系统服务来执行恶意行为,因为系统服务通常具有较高的权限,可以绕过一些安全措施。
17. 利用云服务(Using Cloud Services)
将恶意代码或数据存储在云服务上,通过云服务来分发或执行恶意行为,这样可以分散风险并增加检测难度。
杀软报毒命名规则
杀毒软件的报毒基本遵循一套原则,就是“CARO”原则,由反病毒专家联盟 CARO提出,遵循以下格式:
<威胁类型>.<平台>.<恶意软件系列>.<变体>.<其他信息*>
卡巴斯基在此基础上添加了前缀:
[前缀:]<威胁类型/行为>.<平台>.<恶意软件家族><.变体><其他信息>
前缀
该前缀标识检测到该对象的子系统。
前缀“HEUR:”用于表示启发式分析器检测到的对象;
前缀“PDM:”用于表示主动防御模块检测到的对象。
前缀不是全名的必需部分,并且可能不存在。
前缀这一部分,是卡巴斯基实验室反病毒数据库早期提出,该司在2007年推出的一个启发式模块,当该模块检测到对象时,对象的名称以“HEUR:”前缀开头。
主动防御模块是监视系统中应用程序执行的操作顺序的模块,如果检测到可疑活动,则阻止该应用程序进行进一步的活动。如果 是PDM 检测到某个威胁程序,则该威胁程序的名称以“PDM:”前缀开头。
这两个模块都分析对象的活动(或活动序列)。如果该活动是典型的恶意程序,则启发式分析器或 PDM 将检测到该对象。
行为
威胁类型/行为代表主要威胁类别,描述威胁的主要行为是什么。
1. 对于恶意软件:Trojan(木马)、Worm(蠕虫)、Virus(病毒)、Ransomware(勒索软件)、Coinminer(挖矿) 和Backdoor(后门)是我们最常见的威胁类型。
2. 对于灰色软件:Adware广告软件、Spyware间谍软件和 PUA 是最常见的威胁类型。
在这里讲一下常见的威胁类型和他们的一些对应操作,以后大家碰到报毒也可以对着看看究竟是哪部分出了问题:
4. 平台
平台是指恶意软件开发时,设定的能够执行的环境,涵盖软件和硬件。这包括操作系统:Windows(Win32、Win64)、Mac OS、Linux 和 Android,以及编程语言和文件格式(Microsoft Word/Excel/PowerPoint)。
家族
用于表示一组具有相同来源(作者、源代码)、操作原理或有效负载的检测到的对象。每个家族都是根据其表现的行为来命名的。常见的就是:Generic、Infector、AntiAV、KillFiles等。
变体
为了识别一个家族中不同恶意软件的变体,字母按顺序使用并称为变体,从“.a”开始:“.a”-“.z”、“.aa”-“.zz”等。
变体不是全名的强制部分,并且可能不存在。
7. 其他信息
被认为有助于进一步了解某些复杂威胁的信息可以利用命名方案的这个可选部分。例如,dldr 表示下载器。因此,检测名称 Ransom.Win32.Locky.A.dldr 提供的信息表明该威胁程序是 Locky Ransomware 的下载程序。
样例
举一些恶意软件的分类和他们的作用:
HEUR:Worm.[Platform].Generic
此分类涵盖的对象在远程计算机上运行搜索,并尝试将自身复制到读/写可访问目录、使用操作系统功能搜索可访问网络目录和/或对计算机进行随机搜索。
[Platform] 字段可以是“Script”或“Win32”。
HEUR:Virus.[Platform].Generic
此分类涵盖的对象会在受害计算机的本地资源上创建自身的副本。
[Platform] 字段可以是“Script”或“Win32”。
HEUR:Email-Worm.[Platform].Generic
此分类涵盖的对象尝试以电子邮件附件的形式发送自身的副本,或者作为位于网络资源上的自身文件的链接。
[Platform] 字段可以是“Script”或“Win32”。
HEUR:Virus.[Platform].Infector
此分类涵盖的对象在计算机中搜索文件并将一系列信息写入这些文件。例如,这样的对象可以将其主体写入可执行文件或写入包含指向具有 .html、.php、.asp 和其他扩展名的文件的链接的 HTML 代码。
[Platform] 字段可以是“Script”或“Win32”。
PDM:Worm.Win32.Generic
此分类涵盖的对象搜索远程计算机网络并尝试将自身复制到读/写可访问目录、使用操作系统功能搜索可访问网络目录和/或对计算机进行随机搜索。
PDM:P2P-Worm.Win32.Generic
此分类涵盖的对象将自身复制到通常与 P2P 客户端关联的文件夹、修改与 P2P 客户端关联的注册表项等。
HEUR:Trojan.[Platform].Generic
此分类涵盖的对象会删除、阻止、修改或复制信息,并破坏计算机或计算机网络的性能。[Platform] 字段可以是“Script”或“Win32”。
HEUR:Trojan.Win32.Invader
此分类涵盖的对象将其代码注入其他进程的地址空间。
病毒编写者经常使用这种策略来执行各种操作,就好像这些操作是由受信任的应用程序执行的一样。
HEUR:Trojan.[Platform].AntiAV
此分类涵盖的对象会阻止防病毒程序和防火墙工作。
[Platform] 字段可以是“Script”或“Win32”。
HEUR:Trojan.[Platform].KillFiles
此分类涵盖的对象删除用户文件和/或操作系统文件。
[Platform] 字段可以是“Script”或“Win32”。
HEUR:Trojan.[Platform].StartPage
此分类涵盖的对象会修改 StartPage、SearchPage 和其他 Internet 浏览器设置。
[Platform] 字段可以是“Script”或“Win32”。
HEUR:Trojan.Script.Iframer
此分类涵盖的对象通过使用隐藏标签在用户不知情的情况下访问互联网资源。
HEUR:Trojan.[Platform].Cryptic
此分类涵盖的对象是高度加密或混淆的。
[Platform] 字段可以是“Script”或“Win32”。
HEUR:Backdoor.[Platform].Generic
此分类涵盖的对象使恶意用户能够远程控制受害计算机。
[Platform] 字段可以是“Script”或“Win32”。
HEUR:Trojan-Downloader.[Platform].Generic
此分类涵盖的对象旨在下载恶意程序的新版本并将其安装到受害计算机。
[Platform] 字段可以是“Script”或“Win32”。
HEUR:Trojan-PSW.[Platform].Generic
此分类涵盖的对象旨在从受害者计算机窃取用户帐户信息(登录名和密码)。
[Platform] 字段可以是“Script”或“Win32”。
HEUR:Trojan-Dropper.[Platform].Generic
此分类涵盖的对象会从原始恶意程序主体中偷偷地将其他恶意程序安装到受害者计算机上。
[Platform] 字段可以是“Script”或“Win32”。
HEUR:Exploit.[Platform].Generic
此分类涵盖的对象利用本地或远程计算机上的一个或多个软件漏洞。
[Platform] 字段可以是“Script”或“Win32”。
PDM:Trojan.Win32.Generic
此分类涵盖的对象删除、阻止、修改或复制信息,或破坏计算机和计算机网络的性能。
PDM:Rootkit.Win32.Generic
此分类涵盖的对象隐藏系统上的某些对象或活动。此分类还会检测到旨在秘密安装向受害计算机展示 Rootkit 行为的驱动程序的程序。
HEUR:Adware.[Platform].Generic
此分类涵盖的对象重定向搜索请求。
[Platform] 字段可以是“Script”或“Win32”。
PDM:Monitor.Win32.Keylogger
此分类涵盖的对象记录计算机键盘上按下的按键。
如果用户或网络管理员将此类程序安装到计算机上,则它不会构成威胁。但是会泄露一些信息。
总结
当你看完这里的时候,你一定已经对杀软有了足够多的了解,并且免杀的工作就是无聊加乏味。所以当你能耐着寂寞读完这6400字后说明你可以沉下心来做这个事情,那么你已经比好多脚本小子强了几条街了。
推荐本站淘宝优惠价购买喜欢的宝贝:
本文链接:https://hqyman.cn/post/9690.html 非本站原创文章欢迎转载,原创文章需保留本站地址!
休息一下~~