一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据库漏洞的扫描处理方法和装置与流程

2022-02-22 05:21:44 来源:中国专利 TAG:


1.本技术涉及到数据库安全领域,具体而言,涉及一种数据库漏洞的扫描处理方法和装置。


背景技术:

2.数据库漏洞扫描系统,是对数据库系统进行自动化安全评估的数据库安全产品,能够充分扫描出数据库系统的安全漏洞和威胁并提供智能的修复建议,对数据库进行全自动化的扫描,从而帮助用户保持数据库的安全健康状态,实现“防患于未然”。
3.在进行数据库扫描的时候,有多种方式,这些方式无法扫描到代码注入的风险,这种风险对数据库的威胁比较大,但是在现有技术并没有很好的扫描出代码注入风险的方式,从而给数据库的安全带来隐患。


技术实现要素:

4.本技术实施例提供了一种数据库漏洞的扫描处理方法和装置,以至少解决现有技术并没有很好的扫描出代码注入风险的方式所导致的问题。
5.根据本技术的一个方面,提供了一种数据库漏洞的扫描处理方法,包括:获取发送至数据库的数据包;根据所述数据包的协议对所述数据包进行解析,以获取所述数据包中的数据内容;使用可执行代码替换所述数据内容;将携带有所述可执行代码的数据包发送给所述数据库,并判断所述数据库是否执行了所述可执行代码;在所述数据库执行了所述可执行代码的情况下,确定所述数据库存在漏洞。
6.进一步地,所述可执行代码用于访问预定域名,判断所述数据库是否执行了所述可执行代码包括:判断所述数据库是否访问了所述预定域名,其中,访问了所述预定域名则所述数据库执行了所述可执行代码。
7.进一步地,判断所述数据库是否访问所述预定域名包括:截取从所述数据库发送出去的数据包,判断所述数据包的目标地址是否为所述预定域名或者所述预定域名对应的ip地址。
8.进一步地,判断所述数据库是否访问所述预定域名包括:在所述预定域名对应的网站中设置第一插件,其中,所述第一插件用于获取访问所述预定域名的数据包的源ip地址,判断所述源ip地址中是否包括所述数据库的ip地址。
9.进一步地,所述可执行代码用脚本语言写成。
10.根据本技术的另一个方面,还提供了一种数据库漏洞的扫描处理装置,包括:获取模块,用于获取发送至数据库的数据包;解析模块,用于根据所述数据包的协议对所述数据包进行解析,以获取所述数据包中的数据内容;替换模块,用于使用可执行代码替换所述数据内容;判断模块,用于将携带有所述可执行代码的数据包发送给所述数据库,并判断所述数据库是否执行了所述可执行代码;确定模块,用于在所述数据库执行了所述可执行代码的情况下,确定所述数据库存在漏洞。
11.进一步地,所述可执行代码用于访问预定域名,所述判断模块用于:判断所述数据库是否访问了所述预定域名,其中,访问了所述预定域名则所述数据库执行了所述可执行代码。
12.进一步地,所述判断模块用于:截取从所述数据库发送出去的数据包,判断所述数据包的目标地址是否为所述预定域名或者所述预定域名对应的ip地址。
13.进一步地,所述判断模块用于:在所述预定域名对应的网站中设置第一插件,其中,所述第一插件用于获取访问所述预定域名的数据包的源ip地址,判断所述源ip地址中是否包括所述数据库的ip地址。
14.进一步地,所述可执行代码用脚本语言写成。
15.在本技术实施例中,采用了获取发送至数据库的数据包;根据所述数据包的协议对所述数据包进行解析,以获取所述数据包中的数据内容;使用可执行代码替换所述数据内容;将携带有所述可执行代码的数据包发送给所述数据库,并判断所述数据库是否执行了所述可执行代码;在所述数据库执行了所述可执行代码的情况下,确定所述数据库存在漏洞。通过本技术解决了现有技术并没有很好的扫描出代码注入风险的方式所导致的问题,从而能够发现代码注入的风险,在一定程度上提高了数据库的安全。
附图说明
16.构成本技术的一部分的附图用来提供对本技术的进一步理解,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:图1是根据本技术实施例的数据库漏洞的扫描处理方法的流程图。
具体实施方式
17.需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本技术。
18.需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
19.在本实施例中提供了一种数据库漏洞的扫描处理方法,图1是根据本技术实施例的数据库漏洞的扫描处理方法的流程图,如图1所示,该流程包括如下步骤:步骤s102,获取发送至数据库的数据包;步骤s104,根据所述数据包的协议对所述数据包进行解析,以获取所述数据包中的数据内容;步骤s106,使用可执行代码(例如,所述可执行代码可以用脚本语言写成)替换所述数据内容;在一个可选的实施方式中,在本步骤中,可以使用多种脚本语言写成多份可执行代码,其中,为每份可执行代码进行编号,在所述数据库执行所述可执行代码的时候,携带有所述编号,判断所述数据库在执行了所述编号的可执行代码之后,记录所述编号,通过所述编号确定对于该编号对应的脚本语言编写的可执行代码在所述协议存在漏洞。
20.作为另一个可选的实施方式,在确定所述数据库对预定脚本语言编写的可执行脚
本在所述协议存在漏洞之后,使用所述预定脚本语言编写多个可执行脚本,其中,每个可执行脚本分别用于执行不同的功能,每个可执行脚本携带有唯一的标识信息,判断被所述数据库所执行的可执行脚本,并记录对应的标识信息,根据记录的标识信息对应的可执行脚本确定对哪些可执行脚本存在漏洞。
21.将上述确定的内容发送给预先配置的数据库管理员。
22.在检测到漏洞之后,还可以进行数据库漏洞的修补,例如,数据库,包括列出多种修复方式的修复表; 以及列出多个漏洞的漏洞表,每个漏洞都有一个标识符,并且每个漏洞都与多个修复方式中的至少一个相关联; 其中第一修复方式包括应用软件补丁,第二修复方式包括改变系统策略设置,第三修复方式包括改变配置注册表设置; 包括第一漏洞标识符的查询信号;响应于查询信号自动生成,包括与具有第一漏洞标识符的漏洞相关联的至少一种修复方式。
23.又例如,由计算设备通过应用程序的第一动态安全评估和静态安全评估识别一个或多个应用程序漏洞;由计算设备修复静态安全评估中报告的第一组漏洞实例中的至少一个基于安全编码实践;由计算设备运行多个其他动态安全评估,以识别第一动态安全评估中报告的第二组漏洞实例中的一个或多个,这些漏洞实例已通过修复在静态安全评估中报告的第一组漏洞实例中的至少一个;由计算设备识别在多个其他动态安全评估中报告的第三组漏洞实例中的一个或多个,对应于至少一个通过关联一个或多个结果在静态安全评估中报告的第一组漏洞实例 多个其他动态安全评估和静态安全评估;当在多个其他动态安全评估中报告第三组漏洞实例中的一个或多个时,计算设备确定修复一个或多个应用程序漏洞的最短路径 对应于静态安全评估中报告的第一组漏洞实例中的至少一个; 并且由计算设备基于相关性和修复一个或多个应用程序漏洞的最短路径来修复一个或多个应用程序漏洞。
24.步骤s108,将携带有所述可执行代码的数据包发送给所述数据库,并判断所述数据库是否执行了所述可执行代码;所述可执行代码用于访问预定域名,可以判断所述数据库是否访问了所述预定域名,其中,访问了所述预定域名则所述数据库执行了所述可执行代码。例如,判断所述数据库是否访问所述预定域名包括:截取从所述数据库发送出去的数据包,判断所述数据包的目标地址是否为所述预定域名或者所述预定域名对应的ip地址。又例如,判断所述数据库是否访问所述预定域名包括:在所述预定域名对应的网站中设置第一插件,其中,所述第一插件用于获取访问所述预定域名的数据包的源ip地址,判断所述源ip地址中是否包括所述数据库的ip地址。
25.步骤s110,在所述数据库执行了所述可执行代码的情况下,确定所述数据库存在漏洞。
26.通过本技术解决了现有技术并没有很好的扫描出代码注入风险的方式所导致的问题,从而能够发现代码注入的风险,在一定程度上提高了数据库的安全。
27.在上述步骤中,域名指向的网站可以是预先建立的网站中,该网站的网页配置有脚本语言写的第二插件,所述第二插件用于获取所有访问该网页的ip地址,在所述ip地址包括预定数据库的ip地址的情况下,确定该数据库存在漏洞。所述可行性代码还可以携带有抓取到的数据包的协议,根据该协议构建用于范围预定域名的链接,该链接中携带有所
述预定域名的ip地址以及所述协议,所述链接指向的网页在记录所述数据库的ip地址的情况下,还记录所述协议。
28.所述网站中的网页还在确定所述数据库存在漏洞的情况下,向所述数据库的管理员发送信息,其中,所述信息携带有所述数据库的ip地址以及所述协议,所述信息用于指示所述ip地址的数据库在被所述协议访问的情况下,存在漏洞。
29.在本实施例中,提供一种电子装置,包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行以上实施例中的方法。
30.上述程序可以运行在处理器中,或者也可以存储在存储器中(或称为计算机可读介质),计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (pram)、静态随机存取存储器 (sram)、动态随机存取存储器 (dram)、其他类型的随机存取存储器 (ram)、只读存储器 (rom)、电可擦除可编程只读存储器 (eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器 (cd-rom)、数字多功能光盘 (dvd) 或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体 (transitory media),如调制的数据信号和载波。
31.这些计算机程序也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤,对应与不同的步骤可以通过不同的模块来实现。
32.该本实施例中就提供了这样的一种装置或系统。该装置被称为数据库漏洞的扫描处理装置,包括:获取模块,用于获取发送至数据库的数据包;解析模块,用于根据所述数据包的协议对所述数据包进行解析,以获取所述数据包中的数据内容;替换模块,用于使用可执行代码替换所述数据内容;判断模块,用于将携带有所述可执行代码的数据包发送给所述数据库,并判断所述数据库是否执行了所述可执行代码;确定模块,用于在所述数据库执行了所述可执行代码的情况下,确定所述数据库存在漏洞。
33.该系统或者装置用于实现上述的实施例中的方法的功能,该系统或者装置中的每个模块与方法中的每个步骤相对应,已经在方法中进行过说明的,在此不再赘述。
34.例如,所述可执行代码用于访问预定域名,所述判断模块用于:判断所述数据库是否访问了所述预定域名,其中,访问了所述预定域名则所述数据库执行了所述可执行代码。
35.又例如,所述判断模块用于:截取从所述数据库发送出去的数据包,判断所述数据包的目标地址是否为所述预定域名或者所述预定域名对应的ip地址。或者,所述判断模块用于:在所述预定域名对应的网站中设置第一插件,其中,所述第一插件用于获取访问所述预定域名的数据包的源ip地址,判断所述源ip地址中是否包括所述数据库的ip地址。
36.在本实施例中提供了自动探测数据库漏洞的插件,该插件也可以理解为是一个协议探测软件,该插件在挖掘外部漏洞中进行抓包,进行抓包之后替换包的内容。该插件可以用于数据库自定义的协议,通过抓包,替换包中的内容。例如,与数据库进行握手之后,将数据包中的内容进行替换,注入恶意代码,为了检测漏洞,可以有一个前导包,看服务器会不
会进行回放。即在替换的内容中给一个域名,看数据库会不会访问,如果数据库执行了这个动作,则数据库会执行该域名这个存在的代码,或者替换内容中带有的代码。然后在抓包之后将恶意代码进行打包看服务器会不会执行。用域名进行探测,确定服务器在哪些交互中能够执行一些脚本或者语句,然后根据这些内容来构建相关的进行攻击的数据包。
37.在本实施例中,还可以构建一个域名,访问该域名的话均会被记录,在构建一个数据包之后,该数据包中会让服务器访问该域名,然后确定该域名是否会被访问,如果被访问了,则说明该服务器有漏洞。
38.以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献