本发明一般涉及动态白名单,尤其涉及动态确定从用户到计算机数据库的端到端链路的信任级别。
背景技术:
1、数据防火墙通常实时捕获或嗅探对数据库的数据访问(例如,请求和响应),并根据策略规则来分析数据。数据防火墙可以包括数据活动监视器(dam)和/或文件活动监视器(fam)。由数据防火墙嗅探的请求和响应可以包括请求(例如,结构化查询语言(sql)语句)或响应,以及相关联的报头信息。报头可以包括元数据,例如机器信息、网络信息、用户信息、客户端信息等。
2、dam的规范解决方案是在数据源服务器(例如,数据库服务器)上安装代理。代理可以捕获、镜像或嗅探请求和响应,并且将请求和响应发送到安全服务器。安全服务器可以解析数据,实施策略执行,然后根据需要审计、分析、警告或阻止请求和响应。dam的主要挑战之一是必须捕获和分析大量数据。例如,在典型的企业环境中,dam可以每秒捕获或嗅探大约100百万个事务(例如,请求和响应)(tps)。实时或接近实时地嗅探和分析如此大量的数据需要可能非常昂贵的适当的计算机基础设施。
3、因此,需要一种用于减少分析数据量的方法。
技术实现思路
1、根据本发明的实施例,一种用于动态确定计算机数据库的端到端链路的信任级别的系统和方法可以包括:在准备阶段中:捕获第一端到端链路的第一消息集合;压缩第一消息集合中的每个消息的框架(skeleton)框架以生成第一消息集合中的每个消息的构造(construct),其中,框架包括不具有值字段的消息;以及创建第一消息集合的构造的特征直方图;在操作阶段期间:捕获第一端到端链路的第二消息集合;压缩第二消息集合中的每个消息的框架以生成第二消息集合中的每个消息的构造;创建第二消息集合的构造的工作直方图;以及通过将工作直方图与特征直方图进行比较来确定第一端到端链路的信任级别。
2、根据本发明的实施例,可以根据端到端链路的参数来定义端到端链路,其中,参数选自:主机名称,服务名称,数据库名称,客户端主机名称、操作系统用户,以及数据库用户。
3、根据本发明的实施例,确定端到端链路的信任级别可以包括:如果第二消息集合的构造中的至少一个构造没有被包括在第一消息集合的构造的特征直方图中,则确定端到端链路的信任级别为不可信。
4、根据本发明的实施例,压缩框架可包括对框架进行散列以产生散列。
5、本发明的实施例可以包括:在准备阶段中将被划分为命令组的第一消息集合的命令添加到特征直方图;在操作阶段期间,将被划分为命令组的第二消息集合的命令添加到工作直方图。
6、本发明的实施例可以包括:在准备阶段中,获得多个消息集合,其中每个集合与端到端链路集合中的端到端链路有关;生成多个消息集合中的每个消息的构造;针对端到端链路集合中的每个端到端链路创建特征直方图,其中,每个特征直方图是从端到端链路集合中的端到端链路的消息集合的构造创建的;以及执行特征直方图的聚类以确定端到端链路的聚类;在操作期间,将工作直方图与第一端到端链路的聚类的每个特征直方图进行比较,以确定第一端到端链路的信任级别。
7、根据本发明的实施例,可以针对每个新会话和周期性地重复捕获第二消息集合。
8、根据本发明的实施例,信任级别可以选自可信和不可信,并且本发明的实施例可以包括:如果信任级别是可信,则对端到端链路的未来消息不执行综合安全性分析;以及如果信任级别是不可信,则将策略规则应用于端到端链路的未来消息。
9、本发明的实施例可包括:如果信任级别是可信,则将第二消息集合中的每个消息的构造添加到特征直方图。
10、根据本发明的实施例,可以通过将工作直方图的方差与特征直方图的方差进行比较,将工作直方图与特征直方图进行比较。
1.一种用于动态确定计算机数据库的端到端链路的信任级别的方法,所述方法包括:
2.根据权利要求1所述的方法,其中,根据端到端链路的参数定义所述端到端链路,其中,所述参数选自包括以下项的列表:主机名称,服务名称,数据库名称,客户端主机名称,操作系统用户,以及数据库用户。
3.根据权利要求1所述的方法,其中,确定所述端到端链路的所述信任级别包括:如果所述第二消息集合的所述构造中的至少一个构造未被包括在所述第一消息集合的所述构造的所述特征直方图中,则将所述端到端链路的所述信任级别确定为不可信。
4.根据权利要求1所述的方法,其中,压缩框架包括:对所述框架进行散列。
5.根据权利要求1所述的方法,包括:
6.根据权利要求1所述的方法,包括:
7.根据权利要求1所述的方法,其中,针对每个新会话和周期性地重复捕获第二消息集合。
8.根据权利要求1所述的方法,其中,所述信任级别选自可信和不可信,所述方法包括:
9.根据权利要求1所述的方法,包括:
10.根据权利要求1所述的方法,其中,通过比较所述工作直方图的方差与所述特征直方图的方差来比较所述工作直方图与所述特征直方图。
11.一种用于动态确定端到端链路的信任级别的系统,所述系统包括:
12.根据权利要求11所述的系统,其中,所述处理器被配置为根据端到端链路的参数定义所述端到端链路,其中,所述参数选自包括以下项的列表:主机名称,服务名称,数据库名称,客户端主机名称,操作系统用户,以及数据库用户。
13.根据权利要求11所述的系统,其中,所述处理器被配置为通过以下操作来确定所述端到端链路的所述信任级别:如果所述第二消息集合的所述构造中的至少一个构造未被包括在所述第一消息集合的所述构造的所述特征直方图中,则将所述端到端链路的所述信任级别确定为不可信。
14.根据权利要求11所述的系统,其中,所述处理器被配置为通过对框架进行散列来压缩所述框架。
15.根据权利要求11所述的系统,其中,所述处理器被配置为:
16.根据权利要求11所述的系统,其中,所述处理器被配置为:
17.根据权利要求11所述的系统,其中,所述处理器被配置为针对每个新会话和周期性地重复捕获第二消息集合。
18.根据权利要求11所述的系统,其中,所述信任级别选自可信和不可信,其中,所述处理器被配置为:
19.根据权利要求11所述的系统,其中,所述处理器被配置为:
20.根据权利要求11所述的系统,其中,所述处理器被配置为通过比较所述工作直方图的方差与所述特征直方图的方差来比较所述工作直方图与所述特征直方图。