首页> 中国专利> 异常预测方法、异常预测系统及异常预测装置

异常预测方法、异常预测系统及异常预测装置

摘要

一种异常预测方法、异常预测系统及异常预测装置。该异常预测方法包括:通过一控制器来分析多个命令记录,藉以获得用以访问一储存设备的至少一预测规则;基于上述预测规则,通过上述控制器对上述命令记录进行异常检测,而获得至少一命令群组;基于每一上述命令群组内的上述命令记录,通过上述控制器建立对应于上述预测规则的至少一政策数据;由上述控制器传送上述政策数据至与上述储存设备相耦接的一数据传输接口;以及通过上述数据传输接口依据政策数据,获得对所接收的数据访问命令的一处理动作。本发明藉由控制层进行分析以基于预测规则来获得政策数据,并在数据传输接口中实现防火墙的功能。

著录项

  • 公开/公告号CN106330852A

    专利类型发明专利

  • 公开/公告日2017-01-11

    原文格式PDF

  • 申请/专利权人 纬创资通股份有限公司;

    申请/专利号CN201510430945.1

  • 发明设计人 陈志明;丁筱雯;

    申请日2015-07-21

  • 分类号

  • 代理机构北京嘉和天工知识产权代理事务所(普通合伙);

  • 代理人严慎

  • 地址 中国台湾新北市汐止区新台五路一段88号21楼

  • 入库时间 2023-06-19 01:22:50

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-06-25

    授权

    授权

  • 2017-02-08

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20150721

    实质审查的生效

  • 2017-01-11

    公开

    公开

说明书

技术领域

本发明涉及一种数据安全机制,且特别涉及一种异常预测方法、异常预测系统及异常预测装置。

背景技术

随着因特网技术的蓬勃发展,因特网已成为社会上另外一种信息传播与交流的媒介工具。因特网除了促进全球的信息交流外,愈来愈多人的生活形态从现实社会中逐渐融入虚拟世界。因此,不少有心人士会通过因特网来进行恶意攻击。为了防止恶意攻击,目前发展出防火墙(Firewall)技术。防火墙是一种协助确保信息安全的机制,其依照特定的规则,允许或是限制传输的数据通过。因此,如何获得一个设计良好的防火墙为本领域的重要课题之一。

从而,需要一种异常预测方法、异常预测系统及异常预测装置来满足上述需求。

发明内容

本发明提供一种异常预测方法、系统及装置,将控制层与数据层分离,简化了处理程序。

本发明的异常预测方法,包括:通过控制器来分析多个命令记录,藉以获得用以访问储存设备的至少一预测规则;基于上述预测规则,通过控制器对命令记录进行异常检测(anomaly detection),而获得至少一命令群组;基于各命令群组内的命令记录,通过控制器建立对应于预测规则的政策数据(policy data);由控制器传送政策数据至与储存设备相耦接的数据传输接口;以及通过数据传输接口依据政策数据,获得对所接收的数据访问命令的处理动作。

本发明还提供一种异常预测方法,该异常预测方法包括:通过一控制器来分析多个命令记录,藉以获得用以访问一储存设备的至少一预测规则;基于上述预测规则,通过上述控制器对上述命令记录进行异常检测,而获得至少一命令群组;基于每一上述命令群组内的上述命令记录,通过上述控制器建立对应于上述预测规则的至少一政策数据;由上述控制器传送上述政策数据至与上述储存设备相耦接的一数据传输接口;以及通过上述数据传输接口依据上述政策数据,获得对所接收的一数据访问命令的一处理动作。

在本发明的一实施例中,上述政策数据包括安全规则以及相对应的处理动作。在通过数据传输接口依据政策数据,获得对所接收的数据访问命令的处理动作的步骤中,取出与数据访问命令相匹配的安全规则所对应的处理动作。

在本发明的一实施例中,在由控制器传送政策数据至与储存设备相耦接的数据传输接口之后,通过数据传输接口转换政策数据为符合数据传输接口的储存表的格式,以写入政策数据至储存表。其中,写入政策数据至储存表的步骤包括:写入安全规则至规则字段;以及写入处理动作至动作字段,其中储存表还包括状态字段,状态字段记录数据传输接口接收到数据访问命令的接收次数。

在本发明的一实施例中,上述通过数据传输接口依据政策数据,获得对所接收的数据访问命令的处理动作的步骤包括:通过数据传输接口判断所接收的数据访问命令是否与规则字段中记载的安全规则相匹配。若所接收的数据访问命令未与任一安全规则相匹配,不执行数据访问命令。若所接收的数据访问命令与安全规则相匹配,通过数据传输接口读取对应的动作字段,以获得处理动作。

在本发明的一实施例中,通过数据传输接口依据政策数据,获得对所接收的数据访问命令的处理动作之后,在处理动作为启动(active)动作的情况下,通过数据传输接口直接对上述储存设备执行上述数据访问命令对应的访问动作;在上述处理动作为过滤(filter)动作的情况下,通过数据传输接口调整数据访问命令的内容后,对储存设备执行调整后的数据访问命令对应的访问动作;在处理动作为隔离(block)动作的情况下,通过数据传输接口隔离数据访问命令,使得数据传输接口阻挡不执行数据访问命令。

在本发明的一实施例中,在处理动作为隔离动作的情况下,包括:通过数据传输接口传送数据访问命令至控制器或另一数据传输接口。

在本发明的一实施例中,在数据传输接口接收到数据访问命令之后,通过数据传输接口累计接收次数至对应的状态字段中,并传送接收次数至控制器,使得控制器更新政策数据。

在本发明的一实施例中,上述储存设备包括多个储存空间,每一储存空间具有对应的至少一个政策数据。

在本发明的一实施例中,上述通过控制器来分析命令记录,藉以获得用以访问储存设备的至少一预测规则的步骤包括:对命令记录执行异常检测而获得多个相似群组;自各相似群组获得预测门坎范围;以及比较这些预测门坎范围,来获得至少一预测规则。

在本发明的一实施例中,上述控制器传送政策数据至数据传输接口的步骤还包括:通过政策数据构建对应数据传输接口的防火层架构,其中防火层架构包括网络层、概要层以 及语意层。上述异常预测方法还包括:通过控制器对命令记录执行句法分析(syntactic analysis),藉以获得各命令记录的剖析树(parse tree),之后对各命令记录的剖析树执行语意分析(semantic analysis)来获得角色标注(role labeling),进而依据上述角色标注来建立政策数据。

本发明的异常预测系统,包括:数据传输接口,耦接至储存设备;以及异常预测装置,耦接至数据传输接口。异常预测装置包括:数据库,储存多个命令记录;以及控制器,耦接至数据库,其中控制器分析上述命令记录,藉以获得用以访问储存设备的至少一预测规则;控制器基于至少一预测规则,对命令记录进行异常检测,而获得命令群组;控制器基于各命令群组内的命令记录,建立对应于预测规则的政策数据。其中,控制器传送政策数据至数据传输接口,使得数据传输接口依据政策数据,获得对所接收的数据访问命令的一处理动作。

本发明还提供一种异常预测系统,该异常预测系统包括:一数据传输接口,该数据传输接口耦接至一储存设备;以及一异常预测装置,该异常预测装置耦接至上述数据传输接口,上述异常预测装置包括:一数据库,该数据库储存多个命令记录;以及一控制器,该控制器耦接至上述数据库,其中上述控制器分析上述命令记录,藉以获得用以访问上述储存设备的至少一预测规则;上述控制器基于上述预测规则,对上述命令记录进行一异常检测,而获得至少一命令群组;上述控制器基于每一上述命令群组内的上述命令记录,建立对应于上述预测规则的至少一政策数据;其中,上述控制器传送上述政策数据至上述数据传输接口,使得上述数据传输接口依据上述政策数据,获得对所接收的一数据访问命令的一处理动作。

本发明的异常预测装置,包括:数据库,储存多个命令记录;控制器,耦接至数据库,执行多个模块来实现异常预测方法。上述模块包括:行为预测模块,分析上述命令记录,藉以获得用以访问储存设备的至少一预测规则;政策产生模块,基于预测规则,对命令记录进行异常检测,而获得至少一命令群组,并且,基于各命令群组内的命令记录,建立对应于预测规则的政策数据;以及传输模块,传送政策数据至数据传输接口,使得数据传输接口依据政策数据,获得对所接收的数据访问命令的处理动作,其中数据传输接口耦接至储存设备。

本发明还提供一种异常预测装置,该异常预测装置包括:一数据库,该数据库储存多个命令记录;一控制器,该控制器耦接至上述数据库,执行多个模块来实现一异常预测方法,其中上述模块包括:一行为预测模块,该行为预测模块分析上述命令记录,藉以获得用以访问一储存设备的至少一预测规则;一政策产生模块,该政策产生模块基于上述预测规则,对上述命令记录进行异常检测,而获得至少一命令群组,并且,基于每一上述命令群组内的上述命令记录,建立对应于上述预测规则的至少一政策数据;以及一传输模块,该传输模块传送上述政策数据至一数据传输接口,使得上述数据传输接口依据上述政策数据,获得对所接收的一数据访问命令的一处理动作,其中上述数据传输接口耦接至上述储 存设备。

基于上述,本发明由控制器分析命令记录并建立政策数据,并传送政策数据至数据传输接口,使得数据传输接口基于政策数据来决定对所接收的数据访问命令的处理动作。据此,获得具有智能分析的机制,藉由控制层进行分析以基于预测规则来获得政策数据,并在数据传输接口中实现防火墙的功能。

为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附的附图作详细说明如下。

附图说明

图1是依照本发明一实施例的异常预测系统的框图。

图2是依照本发明一实施例的异常预测装置的框图。

图3是依照本发明一实施例的软件定义储存(Software-defined storage,SDS)架构的框图。

图4是依照本发明一实施例的异常预测方法的流程图。

图5是依照本发明一实施例的储存表的示意图。

图6是依照本发明一实施例的命令匹配方法的流程图。

主要组件符号说明:

10数据传输接口

20异常预测装置

30信息交换平台

100 异常预测系统

110 储存设备

201 储存单元

202 控制器

211 行为预测模块

213 政策产生模块

214 传输模块

215 数据库

300 储存伺服系统

301 储存表

303 负载平衡器

F1规则字段

F2动作字段

F3状态字段

F11 来源/目的字段

F12运算码字段

F13命令特定参数字段

S405~S425 异常预测方法的各步骤

S605~S630 命令匹配方法的各步骤

具体实施方式

图1是依照本发明一实施例的异常预测系统的框图。请参照图1,异常预测系统100包括数据传输接口10以及异常预测装置20。在此,数据传输接口10的数量可以为一个或多个。异常预测装置20可以通过有线或无线的方式耦接至数据传输接口10。

在本实施例中,各数据传输接口10耦接至储存设备110。数据传输接口10可由硬件来实现,配置在任一种电子装置中。在其他实施例中,数据传输接口10亦可配置于储存设备110中。另外,数据传输接口10亦可以由软件实现。储存设备110可以是由一或多个硬件储存单元所组成,且储存设备110还可以进一步划分为多个储存空间。储存设备10亦可利用有线或无线的方式来耦接至异常预测装置20。而储存设备110例如可以是网络储存服务器,亦可以应用于各种数据库、储存库(repository)、表格、字段等储存格式。

在此,数据传输接口10为异常预测装置20与储存设备10之间提供一个中间层,其可以是储存配接器(storageadapter)或代理服务器(proxy)。数据传输接口10中可记录一或多个政策数据,藉以供储存设备110的储存空间来使用。藉由将政策数据记录在数据传输接口10中来实现防火墙的功能,详细步骤将在后续进行说明。

储存设备110可以是软件定义(software-defined)储存系统或者是软件定义数据库。储存设备110包括一个或多个储存空间,而一个储存空间可对应至一个或多个政策数据,不同的储存空间所对应的政策数据可以相同亦可以不同。另外,储存空间的大小可根据数据传输带宽(bandwidth)来决定。

异常预测装置20例如为服务器、个人计算机、笔记本型计算机、平板计算机、智能型手机等具有运算能力的电子装置。异常预测装置20用以依据多笔命令记录(log)来产生政策(policy)数据。而这些命令记录包括由数据传输接口10或储存设备110所回传的命令记录,也可以包括由外部的信息交换平台30所提供的命令记录。在数据交换平台30中的命令记录可以是由厂商或其他使用者共享。

异常预测装置20包括储存单元201以及控制器202。控制器202例如为中央处理单元(Central Processing Unit,CPU)、可编程的微处理器(Microprocessor)、嵌入式控制芯片、数字信号处理器(Digital Signal Processor,DSP)、特定用途集成电路(Application Specific Integrated Circuits,ASIC)或其他类似装置。储存单元201例如为非易失性存储器(Non-volatilememory)、随机存取存储器(Random Access Memory,RAM)或硬盘等。

图2是依照本发明一实施例的异常预测装置的框图。请参照图2,控制器202耦接至储存单元201。本实施例是以程序代码来实现异常预测方法。即,储存单元201中储存有多个程序代码片段,上述程序代码片段在被安装后,会由控制器202来执行,以实现异常预测方法。在此,储存单元201中包括多个模块,而各模块是由一或多个程序代码片段所组成。这些模块包括行为预测模块211、政策产生模块213、传输模块214。另外,储存单元201还包括数据库215。数据库215中储存了多个命令记录,这些命令记录是由数据传输接口10或储存设备110所回传,也可以是由外部的信息交换平台30所提供。在其他实施例中,上述模块亦可以由硬件处理器或者由一个或多个逻辑门芯片来实现。

行为预测模块211分析数据库215中的命令记录,藉以获得用以访问(access)储存设备110的预测规则。政策产生模块213基于上述预测规则,对上述命令记录进行异常检测,而获得符合预测规则的命令群组,并且基于各命令群组内的命令记录,建立对应于预测规则的政策数据。例如,一个预测规则对应至一个政策数据。传输模块214传送政策数据至数据传输接口10,使得数据传输接口10依据政策数据,获得对所接收的数据访问命令的处理动作。

图3是依照本发明一实施例的软件定义储存架构的框图。软件定义储存架构通过虚拟数据平台将底层硬件虚拟化,并且将储存管理功能抽离,使得不同的储存数组可以完全相同的方式进行管理。请参照图3,在软件定义储存架构将管理层(即,异常预测装置20)与数据层(即,储存伺服系统300)分离。

储存伺服系统300包括负载平衡器303、多个数据传输接口10以及多个储存设备110。每一个数据传输接口10耦接至对应的至少一个储存设备110。在此,每一个数据传输接口10中具有一储存表301,而软件定义储存架构的防火墙是通过设置储存表301来实现。经由控制器202与数据传输接口10沟通,以将政策数据写入至储存表301中。负载平衡器303用以接收数据访问命令,并且根据数据访问命令中的指示以及基于负载平衡特性,将数据访问命令传送至一个或多个指定的数据传输接口10。

下面搭配上述硬件架构来说明异常预测方法的各步骤。图4是依照本发明一实施例的异常预测方法的流程图。请参照图1~图4,在步骤S405中,通过控制器202来分析多个命令记录,藉以获得用以访问储存设备110的预测规则。控制器202藉由数据库215中所收集的命令记录来分析使用者行为,藉以来预测未来可能出现异常的场景。

在此,控制器202可利用异常检测将行为相似的命令记录归为同一群组(相似群组)。在此,异常检测是将基于偏差的离群值检测(deviation based outlier detection)算法套用至关系型规则(association rule)算法及高频项目集(frequent itemset)算法。基于偏差的离群值检测算法例如为序列异常算法,在获得一连串的相似数据后,将扰乱序列的元素视为是例外。先给定n个元素的集合S,建立一个子集合序列Sj={S1,S2,….,Sm},其中2≤m ≤n且接下来,对每个子集合,分别确定上述子集合与前序子集合的差异度,并利用光滑因子(smoothing factor)来判别异常的集合。光滑因子的意义为:从原始数据中去除一个子集合时,差异度降低的多少。

另外,亦可根据各相似群组内所包括的命令记录的数量来判断哪些相似群组可能为正常,哪些相似群组可能为异常。例如,所包括的命令记录的数量为最多的相似群组表示多数者的动作相同。一般而言,异常命令属于少数,因此,所包括的命令记录的数量最少的相似群组有可能属于异常。据此,控制器202可基于上述多个相似群组来获得对应的预测规则。例如,控制器202自多个相似群组获得其各自的预测门坎范围,并比较这些预测门坎范围,来获得预测规则。

在此,预测规则例如为壅塞门坎值、重送门坎值、非法访问门坎值等。壅塞门坎值为在一段时间内可以接受的命令总数。重送门坎值为在一段时间内若数据封包遗失,而重送数据封包的可接受总次数。非法访问门坎值为在一段时间内,特定使用者可执行的非法访问的命令总数。

上述壅塞门坎值、重送门坎值、非法访问门坎值等预测规则的数值范围例如可如下所述而获得。计算出上述各相似群组所代表的预测门坎范围,比较这些预测门坎范围来获得一组具有代表性的数值范围。例如,以与其他组之间的相似度最低的数值范围作为预测规则。假设获得相似群组A、B、C、D,其预设门坎范围为范围a、b、c、d。若范围d与范围a、b、c之间的相似度最低,则判定相似群组D为异常的群组,进而基于范围d来获得预测规则。亦可将相似度较高的群组A、B、C判定为正常的群组,进而基于范围a、b、c来获得预测规则。

接着,在步骤S410中,基于上述预测规则,通过控制器202对上述命令记录进行异常检测,而获得命令群组。例如,以K平均(K-means)算法或最近邻居(K-Nearest Neighbors,KNN)算法等,基于上述预测规则来获得符合预测规则的命令群组。

在步骤S415中,基于各命令群组内的命令记录,通过控制器建立对应于预测规则的政策数据。政策数据例如为访问权限、访问频率、访问量至少其中之一或其组合,然而并不以此为限。下面举范例1及范例2来说明政策数据的建立。

范例1,控制器202通过步骤S405的数据分析可以预测到在哪个时段会有大量且频繁的读写异常发生,因此通过建立政策数据以在上述时段能够分散执行读写命令,进而将网络流量分散出去。而控制器202藉由分析数据库215中的命令记录,来设定预测规则(例如,一或多个适当的门坎值),再由上述预测规则来建立政策数据。

具体而言,控制器202通过步骤S405的数据分析来设定壅塞门坎值以及重送门坎值两者的合理数值范围。接着,控制器202基于壅塞门坎值以及重送门坎值,而对数据库 215中累积至目前的命令记录进行异常检测,藉以来获得所需的命令群组。以K-means算法而言,首先,决定较低的K值(经由经验值设定)做区分。接着,计算壅塞门坎值与重送门坎值的平均值或变异数,以此作为分裂出较合适的集群(命令群组)的标准,藉以利用平均值或变异数将目前单一集群分裂出较合适的集群。重复上述动作直到集群内相似性较高。而未被分至命令群组内的命令记录则判定为异常。

范例2,控制器202通过步骤S405的数据分析可以知道哪些来源地址经常执行非法的读写命令,因此通过建立政策数据,将此来源地址设为黑名单,并且和信息交换平台30进行比对或更新,藉以在发现此来源地址时阻挡其读写命令。

具体而言,控制器202通过步骤S405的数据分析来设定非法访问门坎值。接着,控制器202基于非法访问门坎值,而对数据库215中累积至目前的命令记录进行异常检测,若有无法分类至群集(命令群组)中的数据即为异常。以K-means算法而言,首先,决定较低的K值(经由经验值设定)做区分。接着,经由非法访问门坎值作为分裂出较合适的集群(命令群组)的标准。重复上述动作直到集群内相似性较高(例如相似度高于预设值)为止。而未被分至命令群组内的命令记录则判定为异常。

在建立政策数据之后,在步骤S420中,由控制器202传送政策数据至与储存设备110相耦接的数据传输接口10。在此,数据传输接口10将政策数据转换为符合其储存表301的格式,以写入政策数据至储存表301。

然后,在步骤S425中,通过数据传输接口10依据政策数据,获得对所接收的数据访问命令的处理动作。处理动作例如为启动(active)动作、过滤(filter)动作或隔离(block)动作。启动动作为直接执行数据访问命令。过滤动作为调整数据访问命令。隔离动作为阻挡不执行数据访问命令。数据传输接口10在接收到安全政策之后,会进一步将安全政策转换为符合其储存表301的格式,以写入安全政策至储存表301。

图6是依照本发明一实施例的储存表的示意图。在本实施例中,政策数据包括安全规则以及相对应的处理动作。在数据传输接口10接收到政策数据之后,会将政策数据转换为符合其储存表301的格式,而将安全规则与处理动作写入至对应的字段中。

请参照图5,储存表301包括三个字段,即,规则字段F1、动作字段F2以及状态字段F3。数据传输接口10在获得政策数据之后,将安全规则写入至规则字段F1,并且将处理动作写入至动作字段F2。处理动作例如启动(active)动作、过滤(filter)动作或隔离(block)动作。规则字段F1包括来源/目的字段F11、运算码(opcode)字段F12以及命令特定参数字段F13。来源/目的字段F11记录数据存取访问命令的来源地址及目的地址。运算码字段F12记录数据访问命令的执行动作的运算码。以数据访问命令为SCSI命令而言,记录在运算码字段F12中的运算码例如为读取、写入等执行动作。另外,以数据访问命令为XQuery命令而言,记录在运算码字段F12中的运算码例如为FLWOR表达式、插 入(insert)、删除、取代(replace)、重新命名(rename)或转换(transform)等执行动作。命令特定参数字段F13记录运算码的内容参数,此字段为不定长度,依运算码而定。动作字段F2记录处理动作。状态字段F3记录数据传输接口10接收到数据访问命令的接收次数。上述储存表301的格式仅为方便说明,并不以此为限。

在本实施例中,当所匹配的安全规则对应的处理动作为过滤动作或隔离动作时,判定数据访问命令为异常。而当所匹配的安全规则对应的处理动作为启动动作时,判定数据访问命令无异常。而在处理动作为启动动作的情况下,数据传输接口10直接执行数据访问命令对应的访问动作。在处理动作为过滤动作的情况下,数据传输接口10调整数据访问命令的内容后,再执行数据访问命令对应的访问动作。在处理动作为隔离动作的情况下,数据传输接口10隔离数据访问命令,即,阻挡数据访问命令。

另外,在其他实施例中,政策数据中的安全规则亦可以仅是用来定义数据访问命令是否为合法的安全规则,进而对应的动作字段F2则是记录在判定数据访问命令为不合法(异常)的情况下的防止异常动作(隔离动作或过滤动作)。例如,当数据访问命令与安全规则相匹配时,判定无异常,进而直接执行数据访问命令对应的访问动作。当数据访问命令未与安全规模相匹配时,判定为异常,进而在对应的防止异常动作为过滤动作下,调整数据访问命令,在对应的防止异常动作为隔离动作下,阻挡数据访问命令。

下面举一实施例来说明在数据传输接口10中的命令匹配的流程。图6是依照本发明一实施例的命令匹配方法的流程图。请参照图1~图6,在步骤S605中,数据传输接口10自负载平衡器303接收数据访问命令。在此,数据访问命令例如为小型计算机系统接口(SCSI,Small Computer System Interface)命令等通用接口命令。而数据访问命令亦可以是一种查询语言(query language)命令,例如XML查询语言(XQuery)命令。当数据访问命令进入至数据传输接口10时,数据传输接口10会依据储存表301来对所接收的数据访问命令执行对应的处理动作。

在此,每一个储存设备110可以划分(partition)为多个储存空间。储存空间的大小可根据数据传输带宽(bandwidth)来决定。而数据传输带宽可以由累计数据访问命令的接收次数来计算是否达到最小传输率。

接着,在步骤S610中,数据传输接口10判断数据访问命令是否与储存表301中的安全规则相匹配。若所接收的数据访问命令未与任一安全规则相匹配,在步骤S613中,执行隔离动作,即,不执行数据访问命令。若所接收的数据访问命令与安全规则相匹配,在步骤S611中,数据传输接口10读取相匹配的安全规则所对应的动作字段F2,以获得对应的处理动作。

在处理动作为启动动作的情况下,如步骤S615所示,数据传输接口10直接对储存设备110执行数据访问命令对应的访问动作。在上述处理动作为过滤动作的情况下,如步骤 S620所示,数据传输接口10调整数据访问命令的内容后,对储存设备110执行调整后的数据访问命令对应的访问动作。在处理动作为隔离动作的情况下,如步骤S625所示,数据传输接口10隔离数据访问命令,进而阻挡数据访问命令。另外,在处理动作为隔离动作的情况下,还可进一步通过数据传输接口10传送(forward)数据访问命令至控制器202或另一个数据传输接口。

举例来说,以储存表301的运算码字段F2中定义的政策数据为只能读取不能写入为例,即,opcode=READ,action=PASS;opcode=WRITE,action=BLOCK。在此,其中一个安全规则的运算码字段F12记录“READ”(代表读取动作),且对应的动作字段F2记录“PASS”(代表启动动作)。另一个安全规则的运算码字段F12记录“WRITE”(代表写入动作),且对应的动作字段F2记录“BLOCK”(代表隔离动作)。据此,若所接收到的数据访问命令的执行动作为写入(例如:opcode=WRITE,action=PASS),在经由比对安全规则后而获得对应的处理动作为启动动作“action=BLOCK”,进而执行步骤S625,不执行(阻挡)此数据访问命令,并且传送此数据访问命令至控制器202。另外,控制器202在接收到数据访问命令之后,还可进一步发出警告与生成报告。

而不论数据访问命令是否与安全规则相匹配,皆会执行步骤S630。在步骤S630中,通过数据传输接口10累计接收次数至对应的接收记录中,并传送接收记录至控制器202,使得控制器202更新其数据库215,并依据更新后的数据库215来更新政策数据。例如,可在与数据访问命令进行比对的储存表301中的状态字段F3记录接收次数。

也就是说,当数据访问命令进入到数据传输接口10时,数据传输接口10会比对储存表301内的安全规则,如有符合安全规则,则依据对应的处理动作来决定是否执行数据访问命令对应的访问动作,并累计接收次数。而在没有匹配成功的情况下亦会去累计接收次数。据此,可进一步统计在一时间区段内所接收到的数据访问命令的数量,而可以此接收次数来进一步更新政策数据。

例如,以原本政策数据中所设定的壅塞门坎值最大为5次/10秒而言,假设在10秒内自来源地址aa接收到10次的数据访问命令,则前5次所接收的数据访问命令皆会被执行,而在第6次之后接收到的数据访问命令将不会被执行。而在将这次的接收记录回传至控制器202后,控制器202会去更新政策数据,例如,直接封锁来源地址aa,拒绝来源地址aa所传送的数据访问命令。然,上述仅为举例说明,并不以此为限。

而在储存设备110为软件定义数据库,且数据访问命令为XQuery命令的情况下,基于政策数据构建对应数据传输接口10(代理服务器)的防火层架构,其包括网络层(Network layer)、概要层(Schematic layer)以及语意层(Semantic layer)。网络层主要提供状态防火墙(stateful firewall)以及阻绝服务防护(denial-of-service(DoS)prevention)。状态防火墙用以来监控客户端的因特网协议地址(Internet Protocol address)是否为允许的地址。例如,可依据政策数据进一步在储存表301中设置白名单(被允许的命令)、黑名单(欲 隔离的命令)或例外名单(可被使用来覆写白名单或黑名单)等。

在概要层中,利用动态建模(dynamic profiling)识别一般使用者对数据的访问模式。控制器202基于行为异常预测来建立政策数据,其建立了所有使用者活动的基准线,包括数据定义语言(data definition language,DDL)、数据操作语言(data manipulation language,DML)、数据控制语言(data control language,DCL)、只读活动(read-only activity(SELECTs))和存储过程的使用。在概要层中,当使用者执行非预期查询或违反访问政策并警告或隔离这一访问时,数据传输接口10会去识别数据差异。而对数据库执行未经授权请求的使用者也会被隔离,直到其访问权限进行了审查和批准。

在语意层中,通过控制器202对命令记录(例如XQuery命令)执行句法分析(syntactic analysis)),藉以获得命令记录各自的剖析树(parse tree),之后对各命令记录的剖析树执行语意分析(semantic analysis)来获得角色标注(role labeling),进而依据角色标注来决定是否对某些恶意角色进行阻挡、调整等,藉此来产生政策数据。

而在使用上述防火层架构的储存表301,其对应的数据传输接口10在接收到数据访问命令时,会先将原查询语言转换为XQuery命令,在进行步骤S610~步骤S630的处理之后,再转回原查询语言。另外,上述防火层架构的实施,亦适用于SCSI命令。

综上所述,本发明由控制器分析命令记录并建立政策数据,并传送政策数据至数据传输接口,使得数据传输接口基于政策数据来决定对所接收的数据访问命令的处理动作。据此,通过控制器来达成智能分析的机制,并且藉由控制器进行分析以基于预测规则来获得政策数据,以在数据传输接口中实现防火墙的功能。

虽然本发明已以实施例公开如上,然而其并非用以限定本发明,任何所属技术领域中的普通技术人员,在不脱离本发明的精神和范围的情况下,应当可作些许的更动与润饰,故本发明的保护范围应当视所附的权利要求书的范围所界定者为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号