System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种数据库检测方法、装置、电子设备及存储介质制造方法及图纸_技高网

一种数据库检测方法、装置、电子设备及存储介质制造方法及图纸

技术编号:41294833 阅读:4 留言:0更新日期:2024-05-13 14:44
本发明专利技术实施例提供的一种数据库检测方法、装置、电子设备及存储介质,应用于信息技术领域,通过获取针对目标数据库的执行函数和http请求;根据所述执行函数判断所述目标数据库的类型;根据所述http请求获取上下文代码;根据所述上下文代码识别预先注入的sql检查语句;根据所述sql检查语句和预设标准参数判断所述http请求是否为恶意,并当判定为恶意时进行拦截。通过本发明专利技术实施的方法,可以根据所述执行函数判断所述目标数据库的类型,并根据所述http请求获取关联代码,从而根据所述目标数据库的类型和所述关联代码判断所述http请求是否为恶意,并在判定为恶意时进行拦截,从而提高请求拦截的准确性。

【技术实现步骤摘要】

本专利技术涉及信息,特别是涉及一种数据库检测方法、装置、电子设备及存储介质


技术介绍

1、sql注入是一种常见的网络攻击方式,攻击者利用程序中存在的漏洞,通过输入恶意的sql语句,达到窃取、篡改、删除数据库信息的目的。这种攻击方式对网站的安全威胁极大,尤其对于大量存储用户敏感信息的应用系统,如电子商务网站、银行系统等,影响更是严重。传统的防护方式大多基于字符串匹配和模式识别,然而由于攻击手段的多样性和复杂性,这些方法往往无法有效防御所有sql注入攻击。


技术实现思路

1、本专利技术实施例的目的在于提供一种数据库检测方法、装置、电子设备及存储介质,以实现提高数据库请求的检查精度。具体技术方案如下:

2、在本专利技术实施的第一方面,首先提供了一种数据库检测方法,所述方法包括:

3、获取针对目标数据库的执行函数和http请求;

4、根据所述执行函数判断所述目标数据库的类型;

5、根据所述http请求获取上下文代码;

6、根据所述上下文代码识别预先注入的sql检查语句;

7、根据所述sql检查语句和预设标准参数判断所述http请求是否为恶意,并当判定为恶意时进行拦截。

8、在一种可能的实施方式中,所述获取针对目标数据库的执行函数和http请求,包括:

9、通过预先注入的代理服务,获取针对目标数据库的执行函数和http请求。

10、在一种可能的实施方式中,所述根据所述执行函数判断所述目标数据库的类型,包括:

11、根据所述执行函数的参数类前缀,判断所述目标数据库的类型。

12、在一种可能的实施方式中,在所述根据所述sql检查语句和预设标准参数判断所述http请求是否为恶意之后,所述方法还包括:

13、若判断所述http请求为正常请求,则对所述http请求进行保存,并当再次接收到该http请求时则不再进行是否恶意的判断。

14、在一种可能的实施方式中,所述根据所述sql检查语句和预设标准参数判断所述http请求是否为恶意,包括:

15、判断所述sql检查语句与预设外部sql语句是否相同,若相同则判定所述http请求为恶意;

16、或,

17、解析所述sql检查语句的ats语法树;将解析得到的语法树和预设标准语法树进行匹配,若不同则判定所述http请求为恶意;

18、或,

19、识别所述sql检查语句是否包含预设风险函数,若存在预设风险函数则判定所述http请求为恶意。

20、在本专利技术实施的第二方面,还提供了一种数据库检测装置,所述方装置包括:

21、请求获取模块,用于获取针对目标数据库的执行函数和http请求;

22、信息获取模块,用于根据所述执行函数判断所述目标数据库的类型;

23、代码获取模块,用于根据所述http请求获取上下文代码;

24、语句识别模块,用于根据所述上下文代码识别预先注入的sql检查语句;

25、请求拦截模块,用于根据所述sql检查语句和预设标准参数判断所述http请求是否为恶意,并当判定为恶意时进行拦截。

26、在一种可能的实施方式中,所述请求获取模块,具体用于通过预先注入的代理服务,获取针对目标数据库的执行函数和http请求。

27、在一种可能的实施方式中,信息获取模块,具体用于根据所述执行函数的参数类前缀,判断所述目标数据库的类型。

28、在一种可能的实施方式中,所述装置还包括:

29、请求保存模块,用于若判断所述http请求为正常请求,则对所述http请求进行保存,并当再次接收到该http请求时则不再进行是否恶意的判断。

30、在一种可能的实施方式中,所述请求拦截模块,具体用于判断所述sql检查语句与预设外部sql语句是否相同,若相同则判定所述http请求为恶意;或,解析所述sql检查语句的ats语法树;将解析得到的语法树和预设标准语法树进行匹配,若不同则判定所述http请求为恶意;或,识别所述sql检查语句是否包含预设风险函数,若存在预设风险函数则判定所述http请求为恶意。

31、在本专利技术实施的又一方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

32、存储器,用于存放计算机程序;

33、处理器,用于执行存储器上所存放的程序时,实现上述任一所述的数据库检测方法。

34、在本专利技术实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的数据库检测方法。

35、在本专利技术实施的又一方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的数据库检测方法。

36、本专利技术实施例提供的一种数据库检测方法、装置、电子设备及存储介质,通过获取针对目标数据库的执行函数和http请求;根据所述执行函数判断所述目标数据库的类型;根据所述http请求获取上下文代码;根据所述上下文代码识别预先注入的sql检查语句;根据所述sql检查语句和预设标准参数判断所述http请求是否为恶意,并当判定为恶意时进行拦截。通过本专利技术实施的方法,可以通过获取针对目标数据库的执行函数和http请求之后,根据所述执行函数判断所述目标数据库的类型,并根据所述http请求获取关联代码,从而根据所述关联代码判断所述http请求是否为恶意,并在判定为恶意时进行拦截,从而提高请求拦截的准确性。

本文档来自技高网...

【技术保护点】

1.一种数据库检测方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述获取针对目标数据库的执行函数和http请求,包括:

3.根据权利要求1所述的方法,其特征在于,所述根据所述执行函数判断所述目标数据库的类型,包括:

4.根据权利要求1所述的方法,其特征在于,在所述根据所述sql检查语句和预设标准参数判断所述http请求是否为恶意之后,所述方法还包括:

5.根据权利要求1所述的方法,其特征在于,所述根据所述sql检查语句和预设标准参数判断所述http请求是否为恶意,包括:

6.一种数据库检测装置,其特征在于,所述装置包括:

7.根据权利要求6所述的装置,其特征在于,

8.根据权利要求6所述的装置,其特征在于,

9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-5任一所述的方法步骤。

...

【技术特征摘要】

1.一种数据库检测方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述获取针对目标数据库的执行函数和http请求,包括:

3.根据权利要求1所述的方法,其特征在于,所述根据所述执行函数判断所述目标数据库的类型,包括:

4.根据权利要求1所述的方法,其特征在于,在所述根据所述sql检查语句和预设标准参数判断所述http请求是否为恶意之后,所述方法还包括:

5.根据权利要求1所述的方法,其特征在于,所述根据所述sql检查语句和预设标准参数判断...

【专利技术属性】
技术研发人员:翁迟迟
申请(专利权)人:北京奇艺世纪科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1