上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
1.2 Web应用漏洞扫描技术发展历程
1.2.1 漏洞检测技术
漏洞检测技术分为很多种,只有将几种检测技术结合起来,才可以在效率和质量中得到平衡。
1)人工分析技术
人工分析技术是针对被分析的目标,手工构造特殊的输入变量,查看输出结果从而获得漏洞的分析技术。它多适用于程序中含有人机交互界面,其中Web应用漏洞检测多使用这种方法。
2)Fuzzing技术
Fuzzing技术是自动注入缺陷的测试技术,它利用黑盒测试的思想,使用大量半有效的数据作为应用程序的输入,以程序是否出现异常为标志,来发现应用程序中可能存在的安全漏洞。一般以边界值、文件头尾构造基本的输入条件。
3)静态分析技术
这主要是对系统的源代码进行分析,属于白盒测试技术。它包括上下文搜索、静态字符串搜索等。在理论上可以探测出系统的漏洞,但是随着不断扩大的词典将造成误报率高,检测的结果具有较大的局限性。
4)动态分析技术
动态分析技术通过使用调试器工具来进行动态分析,需要在调试器中运行程序,查看程序的运行状态并通过构造特殊数据分析数据流发现漏洞。