The present invention relates to an injection vulnerability detection method and device. The injection vulnerability detection method includes: receiving a web page access request initiated by an application program according to a parameter carrying a detection mark, the web page access request instructing the web page requested by the application program, and responding to the web page access request and carrying the web page access request. The parameters of the probe tag perform an injection query on the business database, monitor the query process of the business database, obtain the executed database statements generated during the query process, and parse the executed database statements containing the probe tag to obtain a syntax to indicate whether the Web page has injection vulnerabilities. Test results. The injection vulnerability detection method and the device provided by the invention solve the problem of low efficiency of injection vulnerability detection in the prior art.
【技术实现步骤摘要】
注入漏洞检测方法及装置
本专利技术涉及计算机
,尤其涉及一种注入漏洞检测方法及装置。
技术介绍
随着计算机技术的发展,终端中安装的应用程序能够为用户提供的线下服务越来越丰富,且随着用户需求的多元化,应用程序也会需要将一些服务部署在业务服务器中,使得应用程序通过网页访问请求的发起,而请求对业务服务器中部署的业务数据库进行查询,进而获得业务服务器返回的网页资源,以便于用户享受应用程序借由此网页资源所提供的线上服务。对于业务数据库所进行的查询而言,可以是无参数的非注入式查询,也可以是含参数的注入式查询。如果业务服务器针对含参数的注入式查询未进行参数校验,则攻击者有机会通过参数注入导致业务服务器返回错误的网页资源,进而导致应用程序根据错误的网页资源所提供的线上服务出错。目前,针对参数注入的注入漏洞检测方法主要包括:页面相似度、时间延迟、报错信息和联合查询等方法。然而,上述方法虽然能够准确地检测注入漏洞,但是需要向业务服务器发起上千次甚至更多次的网页访问请求,不仅会耗费大量的时间,并占用大量的传输带宽,而且还会造成业务服务器过高的任务处理压力。由上可知,现有的注入漏洞检测方法仍存在检测效率低下的问题。
技术实现思路
为了解决上述技术问题,本专利技术的一个目的在于提供一种注入漏洞检测方法及装置。其中,本专利技术所采用的技术方案为:一种注入漏洞检测方法,包括:接收应用程序根据携带探测标记的参数发起的网页访问请求,所述网页访问请求指示所述应用程序请求访问的网页;响应所述网页访问请求,根据携带探测标记的参数对业务数据库进行注入式查询;监控所述业务数据库的查询过程,获取查询 ...
【技术保护点】
1.一种注入漏洞检测方法,其特征在于,包括:接收应用程序根据携带探测标记的参数发起的网页访问请求,所述网页访问请求指示所述应用程序请求访问的网页;响应所述网页访问请求,根据携带探测标记的参数对业务数据库进行注入式查询;监控所述业务数据库的查询过程,获取查询过程中生成的已执行数据库语句;对包含所述探测标记的已执行数据库语句进行语法分析,得到用于指示所述网页是否存在注入漏洞的检测结果。
【技术特征摘要】
1.一种注入漏洞检测方法,其特征在于,包括:接收应用程序根据携带探测标记的参数发起的网页访问请求,所述网页访问请求指示所述应用程序请求访问的网页;响应所述网页访问请求,根据携带探测标记的参数对业务数据库进行注入式查询;监控所述业务数据库的查询过程,获取查询过程中生成的已执行数据库语句;对包含所述探测标记的已执行数据库语句进行语法分析,得到用于指示所述网页是否存在注入漏洞的检测结果。2.如权利要求1所述的方法,其特征在于,所述响应所述网页访问请求,根据携带探测标记的参数对业务数据库进行注入式查询,包括:从所述网页访问请求中提取得到携带所述探测标记的参数;将携带所述探测标记的参数注入所述业务数据库,通过注入的参数进行所述业务数据库的查询。3.如权利要求1所述的方法,其特征在于,所述监控所述业务数据库的查询过程,获取查询过程中生成的已执行数据库语句,包括:对所述业务数据库的查询过程进行监控,生成描述所述查询过程的行为日志;从所述行为日志中提取得到所述已执行数据库语句。4.如权利要求1所述的方法,其特征在于,所述对包含所述探测标记的已执行数据库语句进行语法分析,得到用于指示所述网页是否存在注入漏洞的检测结果,包括:根据所述探测标记进行所述已执行数据库语句的过滤,得到包含所述探测标记的已执行数据库语句;由包含所述探测标记的已执行数据库语句中获得目标数据库语句;在所述目标数据库语句中检测所述探测标记是否存在于指定字符串之外,得到所述检测结果,所述检测结果指示了所述网页是否存在注入漏洞。5.如权利要求4所述的方法,其特征在于,所述由包含所述探测标记的已执行数据库语句中获得目标数据库语句,包括:对包含所述探测标记的已执行数据库语句进行起始语句位置查找;在包含所述探测标记的已执行数据库语句中确定所述探测标记的语句位置;将所述起始语句位置与所述探测标记的语句位置之间的字符串作为所述目标数据库语句。6.如权利要求4所述的方法,其特征在于,所述在所述目标数据库语句中检测所述探测标记是否存在于指定字符串之外,得到所述检测结果,包括:对所述目标数据库语句中指定字符串以及所述指定字符串相关联的字符串进行数量统计;根据数量统计结果判断所述目标数据库语句是否满足语法规则;如果为否,则所述检测结果指示所述网页存在注入漏洞。7.一种注入漏洞检测装置,其特征在于,包括:请求接收模块,用于接收应用程序根据携带探测标记的参数发起的网页访问请求,所述网页访问请求指示所述应用程序请求访问的网页...
【专利技术属性】
技术研发人员:牛保龙,杨勇,胡珀,刘志颖,李相垚,易楠,陈剑,洪旭升,苗军,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。