病毒木马查杀实战第018篇:病毒特征码查杀之基本原理

本文介绍了病毒特征码查杀的基本原理,包括特征码选取的要求和方法。特征码应能唯一标识病毒,避免误报,通常不从数据区提取,且长度限制在64字节内。提取方法涉及计算校验和、特征字符串、反汇编代码等。此外,还讨论了传统特征码检测的不足和云查杀技术的优势与挑战。
摘要由CSDN通过智能技术生成

前言

       在本系列的导论中,我曾经在“病毒查杀方法”中简单讲解过特征码查杀这种方式。而我也在对于实际病毒的专杀工具编写中,使用过CRC32算法来对目标程序进行指纹匹配,从而进行病毒判定。一般来说,类似于MD5以及CRC32这样的算法,在病毒大规模爆发时是可以提高查杀效率的,但是传统的更为常用的方法是采用以静态分析文件的结构为主并结合动态分析的方法,通过反汇编来寻找病毒的内容代码段、入口点代码段等等信息。尽管病毒特征码的定义非常简单,但是特征码的具体提取方法,却鲜有资料可供参考。那么我在这里就简单讨论一下关于病毒特征码的知识。

 

特征码选取的基本要求

       说到特征码,也许我们接触最多的是在使用查壳工具PEiD时,对目标程序进行判定时所采用的特征匹配代码。PEiD的特征码保存在程序目录的userdb.txt中,举个例子来说,我们拿之前研究过的cf.exe“敲竹杠”病毒样本来看。首先将病毒样本拖入PEiD:


图1

       可见,程序是由“MicrosoftVisual C# / Basic .NET”编译的,那么为什么PEiD能够识别出这款软件是怎么编译的呢?我们可以先查看一下程序入口的首字节:


图2

       可见程序的入口地址代码为“FF 25 0020 40 00”然后是一大串的“00”。然后我们打开userdb.txt,查找一下“Microsoft Visual C# / Basic .NET”字符串来看一下,可以找到以下结果:

[MicrosoftVisual C# / Basic .NET]

signature= FF 25 00 20 ?? ?? 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

ep_only= true

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值