【技术实现步骤摘要】
本专利技术涉及计算机领域,还涉及信息安全技术,尤其涉及一种漏洞检测方法及装置。
技术介绍
随着Web应用如社交网站、电子商城、门户网站、论坛的普及和迅速发展,Web应用的安全问题也备受关注。由于承载web应用的硬件设备、软件系统、通信协议等的具体实现或系统安全策略上存在缺陷,web应用在开发过程中也会不可避免地存在漏洞。目前常见的检测Web漏洞的方法主要是动态黑盒测试和静态白盒扫描;动态黑盒测试是通过构造大量畸形的测试用例,访问Web页面,然后判断返回Web页面的内容;根据返回的Web页面中存在的数据,检测该Web页面是否存在漏洞。静态白盒扫描是通过深入程序内部代码结构,利用PHP(Professional Hypertext Preprocessor,服务器端编程语言)代码审计工具并结合设定的检测规则进行检查。动态黑盒测试过于依赖测试用例,因此很容易造成漏报;而现有的静态白盒通过审计工具进行扫描来检测漏洞的方式,对漏洞的误报率也很高。
技术实现思路
鉴于此,有必要提供一种漏洞检测方法及装置,以降低对源代码进行漏洞检测的误报率。本专利技术实施例公开了一种漏洞检测方法,包括以下步骤:接收需进行漏洞检测的源代码;对接收的所述源代码进行词法语法分析并配置漏洞检测的检测点,得到对应的语法树信息;解析所述语法树信息中配置的各检测点,获取与各检测点相关联的变量,并通过解析获 ...
【技术保护点】
一种漏洞检测方法,其特征在于,包括以下步骤:接收需进行漏洞检测的源代码;对接收的所述源代码进行词法语法分析并配置漏洞检测的检测点,得到对应的语法树信息;解析所述语法树信息中配置的各检测点,获取与各检测点相关联的变量,并通过解析获取的所述变量得到所述变量的初始值;分析获取的所述变量的初始值为外部可控输入时,检测出所述源代码存在漏洞。
【技术特征摘要】
1.一种漏洞检测方法,其特征在于,包括以下步骤:
接收需进行漏洞检测的源代码;
对接收的所述源代码进行词法语法分析并配置漏洞检测的检测点,得到
对应的语法树信息;
解析所述语法树信息中配置的各检测点,获取与各检测点相关联的变量,
并通过解析获取的所述变量得到所述变量的初始值;
分析获取的所述变量的初始值为外部可控输入时,检测出所述源代码存
在漏洞。
2.如权利要求1所述的方法,其特征在于,所述分析获取的所述变量的
初始值为外部可控输入时,检测出所述源代码存在漏洞,包括:
分析获取的所述变量的初始值能够被使用者控制输入时,检测出所述变
量对应的检测点存在漏洞。
3.如权利要求1或2所述的方法,其特征在于,所述获取与各检测点相关
联的变量,并通过解析获取的所述变量得到所述变量的初始值,包括:
获取与某一检测点相关联的变量后,在获取所述变量的初始值的过程中,
若存在与预设安全规则匹配的操作,则识别所述变量对应的检测点不存在漏
洞,停止继续获取所述变量的初始值。
4.如权利要求1或2所述的方法,其特征在于,所述分析获取的所述变量
的初始值为外部可控输入时,检测出所述源代码存在漏洞,之后还包括:
识别检测出的存在漏洞的源代码为误报时,将误报为存在漏洞的所述源
代码进行标记,得到被标记的误报漏洞数据。
5.如权利要求4所述所述的方法,其特征在于,所述接收需进行漏洞检
测的源代码,包括:
接收已剔除被标记的误报漏洞数据后的需进行漏洞检测的源代码。
6.如权利要求1或2所述的方法,其特征在于,所述接收需进行漏洞检测
的源代码包括:
接收根据预设过滤规则过滤后的需进行漏洞检测的源代码。
7.如权利要求6所述的方法,其特征在于,所述接收根据预设过滤规则
过滤后的需进行漏洞检测的源代码,包括:
接收到需进行漏洞检测的源代码后,按照预设过滤规则对接收到的源代
码进行过滤,将符合所述预设过滤规则的源代码去除,仅保留不符合所述预
设过滤规则的源代码,以对保留的源代码进行后续的漏洞检测。
8.如权利要求1或2所述的方法,其特征在于,所述接收需进行漏洞检测
...
【专利技术属性】
技术研发人员:王培伟,王金锭,谭晓光,陈薇婷,王岳,
申请(专利权)人:深圳市腾讯计算机系统有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。