数据库防泄露协议识别方法及装置的制造方法_3

文档序号:9911553阅读:来源:国知局
是否具有执行该操作指 令的操作权限。当具有操作权限时,执行步骤S34。其中,在判断用户信息对应的权限时,可 以将用户信息与已建用户属性密码模式库进行模式匹配,并利用层状授权认证模型对用户 的权限进行提取和判别。
[0096]在实际应用当中,可以利用CPI技术获取SQL访问中包含的SQL语句,并解析SQL业 务访问网络流中的所承载的内容。通过将这些内容与敏感字库中的敏感字段进行匹配,从 而验证SQL访问中是否涉及敏感字段,并相应的形成敏感字段列表。
[0097]根据敏感字段列表,并结合通过识别得到的用户信息,结合用户的字段级数据访 问权限的元数据进行匹配和判别,从而确定当前用户是否具备访问敏感字段的权限。
[0098]对于合法且具有敏感数据字段访问权限的用户的SQL访问,首先可以对敏感字段 进行解析,然后对字段项的值进行对称加密处理,同时采用CPI重封包技术对敏感字段数据 项加密的SQL访问进行重新封装,最后完成用户数据库访问操作。
[0099]作为一种可选的实施方式,在步骤34根据操作类型对IP报文进行封装,生成新IP 报文的中,可以包括:
[0100]步骤S341,利用对称加密算法对包含敏感字段的操作内容和操作语句进行加密处 理,得到加密后的操作指令。
[0101] 步骤S343,根据操作类型对加密后的操作指令和报文属性进行封装,得到加密后 的新IP报文。
[0102] 具体的,在步骤S341至步骤S343中,可以采用对称加密算法对IP报文中的敏感字 段,以相同或相应的加密规则进行加密处理,并对加密后的内容再进行封装处理,得到加密 后的新IP报文。
[0103] 在实际应用当中,可以采用层状授权认证模型对于用户对于数据库的操作权限进 行逐级认证。其中,可以将从IP报文中提取的报文属性中的用户特征唯一码确定用户信息, 通过用户信息确定预先设置的与用户信息对应的加密模式。将确定得到的用户信息与层状 授权认证模型中的各个认证层级及进行模式匹配。当匹配到合法权限用户时,按照加密模 式对SQL访问中的SQL语句进行加密处理,对于返回的数据结果进行解密处理。
[0104] 其中,用户特征唯一码是访问用户的准入合法身份的唯一标识,采用属性密码算 法技术生成用户及应用特征唯一码,然后使用记帐性IP(Acc 〇unt IP-AIP)自我认证技术, 将用户特征唯一码信息植入和扩展到传统IP数据包头,形成层状记帐性信息,保障用户访 问的唯一识别性。如图4所示,AIP数据结构在标准IPV4包头的左后Padd i ng保留位,增加属 性密码算法生成的用户特征唯一码。
[0105] 通过上述步骤,上述加解密全部在网关进行处理,而对于原始数据库只进行关键 字段数据的加密,与传统数据库加密技术对比,提高了数据库加密的执行效率。从而解决了 对于数据库透明访问的问题,
[0106] 作为一种可选的实施方式,如图5所示,层状授权认证模型是一种可以从用户特征 唯一码及应用特征、应用访问SQL操作、敏感数据字段和字段数据加密算法等三个维度,对 敏感数据访问、数据操作和加解密处理进行定义的动态层状模型。层状授权认证模型可以 实现了用户及应用的唯一性、合法性数据访问及获取,有效防止了外部黑客攻击和内部非 法人员窃取造成的数据泄露。
[0107] 如图6所示,多维层状模型用户及应用唯一特征码结构。其中,32位特征唯一码唯 一标识由属性加密算法生成的用于关联用户和应用特征的32位长整型特征唯一码。144位 私钥Hash表主要用于与防泄露网关或系统的公钥进行再次认证以确认用户访问的合法性, 另外还用于对IP报文中携带的经过加密的用于访问数据库的用户和密码信息进行解密还 原。
[0108] 作为一种可选的实施方式,在步骤S28将验证规则集合中的各条协议验证规则与 IP报文进行匹配,验证IP报文的协议类型之后,上述方法还可以包括:
[0109] 步骤S36,根据协议类型,创建与IP报文对应的报文识别信息,其中,报文识别信息 用于对IP报文的身份信息进行标识,报文识别信息至少包括:源IP地址、目标IP地址、源端 口、目标端口、协议ID和属性密码字符串。
[0110] 具体的,在实际应用当中,可以通过捕获包含有SQL访问的数据流前端的IP报文, 从应用层载荷中提取所有可能为协议指纹的字段,采用多模式匹配算法将协议指纹与协议 指纹库中的各指纹分别进行匹配,识别出可能的协议集合,并确定与协议指纹对应的协议 类型。当然,识别出可能的协议指纹可能是一个,可能是多个。
[0111] 对于上述协议集合中的每一个协议指纹,调用与其协议类型相应验证规则集合中 的各条协议验证规则对其进行验证,如果验证通过,则识别出该IP报文所属正确协议类型, 否则继续执行下一个候选协议相关验证规则,直到识别出正确协议类型为止。
[0112] 当识别出IP报文所属的正确的协议类型,即通过步骤S36创建一个包含有源IP地 址,目IP地址,源端口,目端口,协议ID和属性密码字串信息,〈源IP地址,目IP地址,源端口, 目端口,协议ID,属性密码字串〉格式存储的六元数组,从而使得属于该SQL访问的数据流中 后续的报文无需执行上述数据库防泄露协议识别方法,以减轻系统计算开销。
[0113] 作为一种可选的实施例,在实际应用当中,利用本申请涉及的数据库防泄露协议 识别方法一般只需要捕获到SQL访问的初期交互过程中第1 一 2回合中携带有数据载荷的报 文。因此,对于基于TCP协议的应用层协议,只需要捕获TCP三次握手结束后第1-2个携带有 应用层数据的报文即可。通过上述数据库防泄露协议识别方法,可以在网络通信协议初期 交互的第1-2个协议消息数据中识别出所属协议类别,因此具有很好的数据库防泄露协议 识别速度。
[0114] 作为一种可选的实施方式,对于上述方法进行你给举例说明,其中,数据库防泄露 协议识别方法主要包括如下步骤:
[0115]步骤1,提取协议指纹和协议验证规则。
[0116] 其中,SQL访问类协议采用固定报头格式协议。
[0117] 具体的,固定报头格式协议一般都为二进制格式协议。在该类协议中,所有协议消 息都具有一个固定长度的报头,在固定长度的报头之后是可变长度数据。固定报头格式协 议例子很多,包括DB2、TDS、TNS协议等。在固定报头中,一般包含Type、Vers ion、Length、 Flags和ID等字段。根据在网络协议交互过程中取值变化情况的不同,可以将这些字段分为 两类:a)静态类型字段,即字段取值为常数或者只能取少数几个值,例如Type Version, Flags等字段;b)动态类型字段,即字段取值情况预先不可预测,比如Length、ID等字段。因 此,只能从第一种类型字段中提取协议指纹。如果提取的协议指纹标识某一类型协议的精 确度越高,则数据库防泄露协议识别过程中第一次通过协议指纹匹配算法找到正确协议类 型的可能性就越高,因而可能只需少量协议验证规则条目就可识别出IP报文所属协议类 另IJ,并可明显减少数据库防泄露协议识别算法的计算开销。为达到这个目的,通常将尽可能 多的连续静态字段组合起来作为该类协议样本的指纹。
[0118] 如图7所示,协议指纹的提取进行举例说明:
[0119] 图8为TDS(Tabular Data System)协议的固定包头格式的示意图。对于TDS协议, 其固定报头中有两个连续静态字段(Type和Status),因此如果将Type+Status组合作为TDS 协议的指纹,可以提高协议指纹标识该类型协议的准确度。
[0120] 图9为MSRPC(Microsoft Remote Procedure Call)协议的固定包头格式的不意 图。对于MSRPC协议,其固定报头中存在5个连续静态字段(Ma jor_Ver、Minor_Ver、PktType、 PktFlags和DataRepresentation),因此如果将上述5字段组合作为MSRPC协议指纹,可以提 高协议指纹标识该类型协议准确度。
[0121] 通过上述步骤提取的协议指纹一般都有2-4个字节长度,并且各协议指纹之间出 现碰撞的可能性很小,因此可明显加快数据库防泄露协议识别的速度。
[0122] 步骤2,协议指纹的快速匹配;
[0123] 具体的,如图10和图11所示,在前期根据协议样本的提取阶段定义好各种类型协 议的协议指纹和相关协议验证规则后,需要设计一种高效的协议指纹匹配算法,从而使其 在数据库防泄露协议识别阶段对IP报文应用数据中的协议指纹进行快速提取和匹配,以确 定该IP报文所属的可能的协议类型。
[0124] 其中,可以采用多模式匹配算法来执行这种协议指纹快速匹配的过程:将IP报文 应用层载荷数据作为多模式匹配算法的文本,所有定义的协议指纹集合作为模式集合,使 用多模式匹配算法找到所有可能的协议类型集合,然后对该集合中每一协议类型执行相应 协议验证规则,排除错误的协议类型,直到找到合适的协议类型为止。基于传统多模型匹配 算法实现协议指纹快速匹配算法具有算法实现快、通用性好等优点,但它没有充分利用协 议指纹通常位于IP报文应用载荷头部这个特点,因此,本数据库防泄露协议识别方法设计 了一个高效的协议指纹快速匹配算法。
[0125] 可以从大量协议样本中观察到:95 %协议类型的协议指纹偏移为0,而对于偏移不 为〇的协议指纹(占5%),偏移位置都出现在IP报文应用层载荷靠前位置并且取值都有规 律。图12所示,比如在偏移2,4,8,12,16等。此外,所有协议指纹长度都较短,一般不超过8个 字节。因此,本数据库防泄露协议识别方法可以首先按指纹偏移值对协议指纹进行分类,然 后对每一类协议指纹采用Distributed Hashtable定位算法进行协议指纹匹配。
[0126] 其中,以协议指纹Distributed Hashtable定位算法,以偏移为0的所有协议指纹 为例进行说明,对于其它偏移不为〇的协议指纹类别,同样可以采用该Distributed Hashtable定位算法。
[0127] 具体的,如图13和图14所示,在Distributed Hashtable算法的准备阶段,可以将 偏移为〇的所有协议指纹按照指定Hash算法插入哈希表,将Hash值相同(即协议指纹冲突) 的协议指纹串连起来,形成如图13所示的协议指纹Hash表。
[0?28] 在Distributed Hashtable检索阶段,可以图14所示的定位和协议验证算法的工 作流程图进行执行。对于捕获的IP报文应用层数据m,从偏移位置0开始,依次对m前i
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1