免费智能真题库 > 历年试卷 > 信息安全工程师 > 2017年上半年 信息安全工程师 上午试卷 综合知识
  第64题      
  知识点:   静态分析方法
  关键词:   静态分析        章/节:   恶意代码概述       

 
以下不属于代码静态分析的方法是()。
 
 
  A.  内存扫描
 
  B.  模式匹配
 
  C.  定理证明
 
  D.  模型检测
 
 
 

 
  第24题    2019年上半年  
   36%
恶意代码是指为达到恶意目的而专门设计的程序或代码。以下恶意代码中,属于脚本病毒的是 ( )。
  第24题    2020年下半年  
   33%
恶意代码是指为达到恶意目的而专门设计的程序或代码,恶意代码的一般命名格式为: <恶意代码前缀 >.< 恶意代码名称 >..
 
   知识点讲解    
   · 静态分析方法
 
       静态分析方法
        恶意代码的静态分析主要包括以下方法:
        (1)反恶意代码软件的检测和分析。反恶意代码软件检测恶意代码的方法有特征代码法、校验和法、行为监测法、软件模拟法等。根据恶意代码的信息去搜寻更多的资料,若该恶意代码的分析数据已被反恶意代码软件收录,那就可以直接利用它们的分析结果。
        (2)字符串分析。字符串分析的目的是寻找文件中使用的ASCII或其他方法编码的连续字符串。一些有用的信息可以通过在恶意代码样本中搜寻字符串得到,比如:①恶意代码的名字;②帮助和命令行选项;③用户对话框,可以通过它分析恶意代码的目的;④后门密码;⑤恶意代码相关的网址;⑥恶意代码作者或者攻击者的E-mail地址;⑦恶意代码用到的库,函数调用,以及其他的可执行文件;⑧其他的有用的信息。
        (3)脚本分析。恶意代码如果是用JS、Perl或者shell脚本等脚本语言编写的,那么恶意代码本身就可能带有源代码。通过文本编辑器将脚本打开查看源代码。脚本分析能帮助分析者用较短时间识别出大量流行的脚本类型,下表列出了常用脚本语言。
        
        常用脚本语言
        (4)静态反编译分析。对于携带解释器的恶意代码可以采用反编译工具查看源代码。源代码在编译时,代码会被编译器优化,组成部分被重写,使得程序更适合解释和执行,上述面向计算机优化的特性,使得编译的代码不适合逆向编译。因此,逆向编译是将对机器优化的代码重新转化成源代码,这使得程序结构和流程分离开来,同时变量的名字由机器自动生成,这使得逆向编译的代码有着较差的可读性。下表列出了一些反编译工具,它们能够生成被编译程序的C或者Java语言的源代码。
        
        反编译工具
        (5)静态反汇编分析。有线性遍历和递归遍历两种方法。GNU程序objdump和一些链接优化工具使用线性遍历算法从输入程序的入口点开始反汇编,简单地遍历程序的整个代码区,反汇编它所遇到的每一条指令。虽然方法简单,但存在不能够处理嵌入指令流中的数据的问题,如跳转表。递归遍历算法试图用反汇编出来的控制流指令来指导反汇编过程,以此解决上面线性遍历所存在的问题。直观地说,无论何时反汇编器遇到一个分支或者CALL指令,反汇编都从那条指令的可能的后续指令继续执行。很多的二进制传输和优化系统采用这种方法。其缺点是很难正确判定间接控制转移的可能目标。恶意代码被反汇编后,就可用控制流分析来构造它的流程图,该图又可以被许多的数据流分析工具所使用。由于控制流程图是大多数静态分析的基础,所以不正确的流程图反过来会使整个静态分析过程得到错误的结果。
   题号导航      2017年上半年 信息安全工程师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第64题    在手机中做本题