漏洞挖掘(vulnerability mining),理学-计算机科学技术-信息安全-网络安全-网络防御-风险评估,综合运用各种方法、技术、手段发现计算机软件、硬件、协议等存在的漏洞,与漏洞分析、漏洞利用共同组成漏洞攻击的全过程,是漏洞攻击的基础。漏洞挖掘的对象可以分为基于源码的漏洞挖掘和基于二进制文件的漏洞挖掘两种。前者一般针对开源软件和系统进行漏洞挖掘,如Linux开源系统及其平台下的开源软件,或是对源代码产品进行安全审计;后者一般针对闭源软件和系统进行漏洞挖掘,包括未公开的网络协议。漏洞挖掘的方法可以分为静态分析、动态测试和动静态结合三种。静态分析是指在不运行程序的前提下,通过静态分析程序的控制流图、数据流图等内容或虚拟运行程序以发现潜在的漏洞;动态分析是指实际运行程序,通过动态跟踪程序的指令序列、污点数据传播过程等方法发现潜在的漏洞。