特征码基础知识

1、了解PE,理解和描述特征码的定义

PE:

PE是windows上的可执行文件的格式。文件部分加载内存。

特征码:

程序在运行的时候,在内存中,为了完成特殊动作,要使用的特殊指令。所以难免会有一段内存地址是相同的(即相关指令相同)。我们通过截取这段地址,就可以判断是不是该类程序。为了防止误杀,则可以提取多段特征码。判断是否同时满足。

对抗手段则是修改对应的特征码,使之能避过查杀。

反制措施,就是提取核心位置特征码,若修改该处,则功能无法实现,如果不修改,则能定位查杀。

2、特征码的种类,尽可能详细说明

1、静态文件。

         如:对下载文件的检测,文件处于静态未执行状态,对文件进行分析提取,。。IDA,OD里面的字符串查找。因为文件多是unicode编码,可以使用loveString对内容进行转换。

2、动态内存。

对文件执行时的动作行为,进行分析提取。

3、托盘图标(文字描述)。

4、窗口标题。

5、控件名称,控件类名(vs2008 ->tools->spy++->alt + F3)。

6、任务栏名称。

         检测桌面下方任务栏。

7、后台进程名称。

8*、虚拟机判断(什么方法、函数、怎么过,防止被过)。

         检测是否处于虚拟机中。嫌疑增加。后续会再次补充。

9、桌面图标检测。

         检测用户系统桌面,是否有相关软件(以及快捷方式)

10、服务判断(描述、名称,遍历)。

11、注册表检测。

12、用户行为操作(怎么判断脚本,真实按键,鼠标点击)。

13、诱导操作。

         触发一定的操作,如点击,如关闭等,提取对应程序的反馈。

14、检查最近文件打开情况。

         如存在最近有打开相关软件。如(按键精灵等脚本软件)脚本嫌疑增加。

15、开始菜单栏检测。

16、进程模块内存校验。(此点不作为文件特征码,只是检测外挂的一个手段)

         可以检测自身文件情况是否被修改。

17、文件打开方式、文件权限情况(怎么监控,驱动层还是?)。

18、检测开关机时间。

         通常脚本使用者,电脑处于无休状态。用以增加嫌疑。

19、端口监听、消息队列监听,特征提取。

20、硬件特征码,机器特征码(什么不容易被改变,要能过,硬件修改大师)。

驱动文件,驱动路径,驱动特征

3、通用特征、精确的特征码概念的理解。

种类:通用特征码、精确特征码。

通用特征码:

理解为某一类程序的行为,对程序进行分类。根据其分类依据,代码逻辑,必然有相似的代码段。根据该代码段进行,特征码提取。如PE注入型病毒,就有PE文件注入等一系列指令。通过多个关键部位的截取。

优点:对于未知病毒,新型同类病毒有一定的预防作用。

缺点:对于特征码提取的过于细致,则起不到很好的预防作用,提取的不够细致,则存在误杀的可能。(类似行为分类)

精确特征码:

针对特定的程序,提取的特定特征码。精确的判断是否为该程序,认为是在通用特征码上进一步的拓展。但不应过度,否则,源文件可能只需要稍作修改,甚至修改文件名等,即可避过查杀。

优点:精确查杀,存入病毒库中,误差率小。

缺点:面对变种病毒和新型病毒的预防能力不足。

4、如何使用工具提取静态特征码(基础)。

         如检测:连连看。我们可以采取,

这里提取特征码。通过loveString

则55533A67DE8FDE8F0B77 是连连看的一个特征码。

或者可以根据具体的弹框文字内容,如作者:FISH

5C4F05803A004600490053004800 则也是一个特征码。

原文地址:https://www.cnblogs.com/clover-xuqi/p/8005791.html