一种高效精准的数据库服务发现方法技术

技术编号:24103665 阅读:27 留言:0更新日期:2020-05-09 14:32
本发明专利技术涉及一种高效精准的数据库服务发现方法,其技术特点是:指定数据库服务IP范围;指定不同数据库类型服务的端口范围与数据库类型间的映射关系;探测网络内存活主机;检测存活主机的端口状态,并与存活端口建立连接;通过分析报文特征及异常报文特征,确定数据库服务类型。本发明专利技术设计合理,其通过存活主机筛选、活动端口检测、数据库服务类型确定等方式,可以高效、精准地发现网络内存活的数据库服务,可广泛用于数据库管理、数据库运维、数据库梳理、数据库检测、数据库漏洞扫描等领域。

An efficient and accurate database service discovery method

【技术实现步骤摘要】
一种高效精准的数据库服务发现方法
本专利技术属于数据库运维管理
,尤其是一种高效精准的数据库服务发现方法。
技术介绍
在庞大的信息化网络中,存在着大量的各种各样信息化系统。这些繁杂的信息化系统在日常管理中的升级、更替、淘汰过程中,经常会出现数据库服务管理的混乱的现象。传统的数据库服务管理是通过人工对表格进行维护实现,现有的数据库服务管理是通过信息化系统进行维护。上述这些运维方式在出现人为遗漏或进行周期性的盘点时,往往耗时耗力,而且容易出现差错。由于目前通过已知服务端口发现技术仅能够发现到主机中指定的端口是否开启,因此,通过默认端口可以对数据库类型进行发现,但是,该方法通常情况下会出现极高的误报率,实际的应用价值有限。
技术实现思路
本专利技术的目的在于克服现有技术的不足,提出一种高效精准的数据库服务发现方法,解决现有数据库发现方法存在的误报率高及效率低下的问题。本专利技术解决其技术问题是采取以下技术方案实现的:一种高效精准的数据库服务发现方法,包括以下步骤:步骤1、指定数据库服务IP范围;步骤2、指定不同数据库类型服务的端口范围与数据库类型间的映射关系;步骤3、探测网络内存活主机;步骤4、检测存活主机的端口状态,并与存活端口建立连接;步骤5、通过分析报文特征及异常报文特征,确定数据库服务类型。所述步骤3的实现方法为:向网络中发送arping、icmp或tcping请求,根据反馈判断网络范围内哪些主机存活。所述步骤4的实现方法为:所述步骤4的实现方法为:在步骤2指定的不同数据库类型服务的端口范围内,分别尝试进行TCP/IP连接。所述步骤5的具体实现方法为:⑴尝试读取数据库的响应报文;⑵如果成功读取响应报文,则分析响应报文中内容特征,进行数据库服务类型确定,如果确定成功,则转至步骤⑻,否则转至步骤⑶;⑶向数据库服务发送探测报文,如果读取到异常报文,则转至步骤⑷,否则转至步骤⑸;⑷分析异常报文特征,进行数据库服务类型确定,如果确定成功,则转至步骤⑻,否则转至步骤⑸;⑸对于其他未知的网络目标,通过步骤2提供映射关系找出每个未知网络目标可能的数据库服务类型;⑹使用对应的客户端尝试连接,如果读取到异常报文,则转至步骤⑷,否则转至步骤⑺;⑺确定网络目标不是数据库服务,过程结束;⑻数据库服务类型确定成功,过程结束。所述步骤⑹使用可能数据库类型的客户端依次连接目标地址及端口进行客户端尝试连接,并在连接时使用如下默认参数:服务名、实例名、数据库名、用户名或密码参数。本专利技术的优点和积极效果是:1、本专利技术通过指定数据库服务IP范围、不同数据库类型服务的PORT范围降低不必要的开销;通过主机存活探测、端口状态检测缩小有效的目标数量;通过分析部分数据库服务的主动响应报文特征快速确定部分数据库服务类型;通过发送探测报文到未知目标收集数据库响应报文并分析其特征,能够进一步明确一部分数据库服务类型信息,由于使用同一Socket连接性能更优;对于其他的未知目标通过分析数据库客户端创建连接时的响应报文,能做到精准无遗漏地确定所有的数据库服务类型。2、本专利技术设计合理,其通过存活主机筛选、活动端口检测、数据库服务类型确定等方式,可以高效、精准地发现网络内存活的数据库服务,可广泛用于数据库管理、数据库运维、数据库梳理、数据库检测、数据库漏洞扫描等领域。附图说明图1是本专利技术的整体流程图;图2是本专利技术确定网络目标数据库服务类型的流程图。具体实施方式以下结合附图对本专利技术做进一步详述。一种高效精准的数据库服务发现方法,如图1所示,包括以下步骤:步骤1、指定数据库服务IP范围。步骤2、指定不同数据库类型服务的PORT范围与数据库类型间的映射关系。步骤3、探测网络内存活主机。本步骤的具体方法为:向网络中发送arping、icmp、tcping等请求,根据反馈判断网络范围内哪些主机存活。步骤4、检测存活主机的端口状态,并与端口建立连接。本步骤的具体方法为:在步骤2的指定的端口范围内,分别尝试进行TCP/IP连接。如果成功建立Socket连接,则认为该端口处于活动状态。随后按照步骤5-12确定数据库服务类型,如图2所示。步骤5、尝试读取数据库的响应报文。步骤6、如果成功读取响应报文,则分析响应报文中内容特征,确定数据库服务类型(如Mysql系列的数据库会主动向客户端发送版本信息等内容),如果确定成功,则转至步骤12,否则转至步骤7。步骤7、使用上述连接向数据库服务发送探测报文,如果读取到异常报文,则转至步骤8,否则转至步骤9。步骤8、分析异常报文特征,进行数据库服务类型确定,如果确定成功,则转至步骤12,否则转至步骤9。由于部分数据库接收到异常报文时会进行响应,发送异常信息报文,通过分析异常报文中的特征,可进一步明确一份数据库服务类型。步骤9、对于其他未知的网络目标,通过步骤2提供的端口与据数据库服务类型映射关系找出每个未知网络目标可能的数据库服务类型。步骤10、使用对应的客户端尝试连接,如果读取到异常报文,则转至步骤8,否则转至步骤11。在本步骤中,使用可能数据库服务类型的客户端依次连接目标地址及端口,必要的信息可使用默认参数,如服务名、实例名、数据库名、用户名、密码等等。步骤11、网络目标不是数据库服务。通过以上判断,表明预期连接失败,此时读取返回的异常信息,根据反馈的异常内容特征确定客户端类型与数据库服务类型是否匹配,确定目标是否是数据库服务以及其数据库类型;发现过程结束。步骤12、数据库服务类型确定成功,发现过程结束。需要强调的是,本专利技术所述的实施例是说明性的,而不是限定性的,因此本专利技术并不限于具体实施方式中所述的实施例,凡是由本领域技术人员根据本专利技术的技术方案得出的其他实施方式,同样属于本专利技术保护的范围。本文档来自技高网...

【技术保护点】
1.一种高效精准的数据库服务发现方法,其特征在于包括以下步骤:/n步骤1、指定数据库服务IP范围;/n步骤2、指定不同数据库类型服务的端口范围与数据库类型间的映射关系;/n步骤3、探测网络内存活主机;/n步骤4、检测存活主机的端口状态,并与存活端口建立连接;/n步骤5、通过分析报文特征及异常报文特征,确定数据库服务类型。/n

【技术特征摘要】
1.一种高效精准的数据库服务发现方法,其特征在于包括以下步骤:
步骤1、指定数据库服务IP范围;
步骤2、指定不同数据库类型服务的端口范围与数据库类型间的映射关系;
步骤3、探测网络内存活主机;
步骤4、检测存活主机的端口状态,并与存活端口建立连接;
步骤5、通过分析报文特征及异常报文特征,确定数据库服务类型。


2.根据权利要求1所述的一种高效精准的数据库服务发现方法,其特征在于:所述步骤3的实现方法为:向网络中发送arping、icmp或tcping请求,根据反馈判断网络范围内哪些主机存活。


3.根据权利要求1所述的一种高效精准的数据库服务发现方法,其特征在于:所述步骤4的实现方法为:所述步骤4的实现方法为:在步骤2指定的不同数据库类型服务的端口范围内,分别尝试进行TCP/IP连接。


4.根据权利要求1至3任一项所述的一种高效精准的数据库服务发现方法,其特征在于:所述步骤5...

【专利技术属性】
技术研发人员:杨海峰陈立
申请(专利权)人:北京安华金和科技有限公司
类型:发明
国别省市:北京;11

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

1