基于访问控制信息进行的基于行为的通信剖析 背景技术 诸如入侵检测与防御 (IDP) 设备的安全设备已成为服务提供和企业网络两者中 的关键部件。通过网络中部署的安全解决方案的策略常常有所减缓。安全策略通过当通信 匹配的时候限定表示应被允许或应被拒绝的通信的一系列特性, 来指定什么通信是威胁、 恶意的、 和 / 或攻击以及什么通信不是威胁、 恶意的、 和 / 或攻击。
发明内容
根据一个实现方式, 由设备执行的方法可以包括 : 由设备接收与用户对网络进行 访问相关联的用户信息、 角色信息、 或授权信息中的一个或多个 ; 由该设备选择与用户信 息、 角色信息、 或授权信息中的一个或多个相关联的用于监控的通信流 (traffic flow) ; 由 设备监控通信流 ; 由设备基于与用户信息、 角色信息、 或授权信息中的一个或多个相关联的 通信行为模式 (traffic behavior pattern) 来确定关于通信流是否存在通信行为的异常 ; 以及当确定存在异常时, 由设备执行安全响应。 根据另一实现方式, 一种网络设备可以被配置为 : 接收与用户的网络访问相关联 的用户信息、 角色信息、 或授权信息中的一个或多个 ; 选择与用户信息、 角色信息、 或授权信 息中的一个或多个相关联的用于监控的通信流 ; 基于用户的一个或多个之前的网络访问, 来存储与用户信息、 角色信息、 或授权信息中的一个或多个相对应的通信行为模式 ; 对与通 信流相关联的通信流信息和与通信行为模式相关联的信息进行比较 ; 当通信流不同于与通 信行为模式相关联的信息时, 确定存在通信行为的异常 ; 以及当确定存在通信行为的异常 时, 执行安全响应。
根据又一实现方式, 一种计算机可读介质可以具有其上存储的指令, 这些指令由 至少一个处理器执行。该计算机可读介质可以包括 : 用于接收与用户的网络访问相关联的 用户信息、 角色信息、 或授权信息中的一个或多个的一个或多个指令 ; 用于选择用来监控的 通信流的一个或多个指令, 其中, 通信流与网络访问相关联 ; 用于对网络流量进行监控的一 个或多个指令 ; 用于通过将通信流和与用户信息、 角色信息、 或授权信息中的一个或多个相 关联的通信行为模式进行比较来确定是否存在相对于通信流的通信行为异常的一个或多 个指令 ; 以及用于当确定存在异常时执行安全响应的一个或多个指令。
附加地, 或替换地, 通信行为模式可以基于与用户信息、 角色信息、 或授权信息中 的一个或多个相关联的之前监控的一个或多个通信流。
附加地, 或替换地, 计算机可读介质可以进一步包括用于当确定不存在异常时基 于与通信流相关联的信息来更新通信行为模式历史的一个或多个指令。
根据又一个实现方式, 网络设备可以包括 : 用于接收与对用户的许可的网络访问 相关联的用户信息、 角色信息、 或授权信息中的一个或多个的装置 ; 用于选择从许可的网 络访问得到的通信流的装置 ; 用于对所选择的通信流进行监控的装置 ; 用于接收与用户信 息、 角色信息、 或授权信息中的一个或多个相关联的通信行为模式的装置 ; 用于将与所选择 的通信流相关联的信息和通信行为模式进行比较的装置 ; 用于基于比较来确定是否存在通
信行为异常的装置 ; 以及用于当确定存在通信行为的异常时提供安全响应的装置。
根据又一个实现方式, 一种设备可以被配置为接收通信流信息 ; 构造与和许可的 网络访问相关的用户信息、 角色信息、 或授权信息中的一个或多个相关联的通信 (traffic) 剖析 ; 基于通信剖析来对与用户信息、 角色信息、 或授权信息中的一个或多个相关联的通信 行为模式进行更新, 其中, 通信行为模式包括表示非偏差的通信行为的值或值的范围 ; 以及 将更新后的通信行为模式提供给另一个设备。 附图说明 结合于此并构成说明书一部分的附图示出了本文描述的一个或多个实施例, 并连 同说明书一起对这些实施例加以阐述。在附图中 :
图 1A 是示出本文描述的示例性实施例的概述的示图 ;
图 1B 是示出可以实现本文描述的方法、 设备、 及系统的示例性环境的示图 ;
图 2 是示出图 1A 和 1B 中描述的安全设备的示例性部件的示图 ;
图 3 是示出图 1A 和 1B 中描述的安全设备的示例性功能部件的示图 ;
图 4A 是示出图 1A 和 1B 中描述的数据库的示例性功能部件的示图 ;
图 4B 是示例性通信剖析表的示图 ;
图 5A 是示出用于基于用户信息、 角色信息、 和 / 或授权信息来检测通信行为的异 常的示例性过程的流程图 ;
图 5B 是示出用于创建和 / 或更新通信行为模式的示例性过程的流程图 ; 以及
图 6 和 7 是示出可以应用本文描述的实施例的示例性场景的示图。
具体实施方式
以下详细描述参照了附图。 不同附图中的相同参考标号可以标识相同或类似的元 件。同样, 以下描述不对本发明构成限制。相反, 本发明的范围由所附权利要求及其等价物 来限定。
本文使用的术语 “用户信息” 旨在广义地解释为包括 ( 例如 ) 用户的名称、 包括用 户名称的一部分的字符串、 用户标识符 ( 例如, 字符串 ) 等。本文使用的术语 “字符串” 旨 在广义地解释为包括 ( 一个或多个 ) 字母、 数字、 符号、 或字母、 数字、 和 / 或符号的某种组 合。
本文使用的术语 “角色信息” 旨在广义地解释为包括 ( 例如 ) 用户的身份、 用户的 角色、 职位、 访问等级等。用户可以具有多于一个的角色。
本文使用的术语 “授权信息” 旨在广义地解释为包括 ( 例如 ) 唯一标识一个用户 的信息和 / 或由用户提供的用来访问网络的信息。尽管用户信息和 / 或角色信息可以对应 于授权信息, 但是授权信息可以包括除了用户信息和 / 或角色信息之外的信息。例如, 授权 信息可以包括口令信息、 登录信息、 授权代码、 认证信息等。
本文描述的实施例提供了可以利用用户信息、 角色信息、 和 / 或授权信息来选择 并监控通信流以及基于与用户信息、 角色信息、 和 / 或授权信息相关联的通信行为模式来 检测偏差或异常的方法、 设备、 及系统。可以理解的是, 典型地, 不在通信流中传达或通过 ( 例如 ) 路由器或交换机提供用户信息、 角色信息、 和 / 或授权信息。 因此, 对通信流进行监控的安全设备不具有此类型的信息。因此, 对通信流进行监控以及对偏差和异常进行检测 的一些技术是基于源地址、 目的地址、 传输层协议、 源端口、 目的端口、 及通信的内容的。在 基于因特网协议的网络中, 该信息对应于源 (IP) 地址 (SIP)、 目的 IP 地址 (DIP)、 传输层协 议 (PROT)、 源端口 (SPORT)、 及目的端口 (DPORT)( 有时被称为 5 元组 (SIP、 DIP、 PRO、 SPORT、 DPORT))。此外, 在其他技术中, 对通信流进行监控并对偏差和异常进行检测的安全设备基 于该 5 元组信息以及其他信息 ( 诸如进入接口 (ingression interface)、 服务类型 (TOS)、 服务质量 (QOS)、 时间戳、 及通信流的字节 / 包数目 )。
在一个实现方式中, 安全设备可以接收与用户请求的网络访问和网络访问许可相 关联的用户信息、 角色信息、 和 / 或授权信息。该安全设备可以对从许可的网络访问得到的 与用户信息、 角色信息和 / 或授权信息相关联的通信流进行检测和监控。下文中, 该安全设 备可以通过将与所监控的通信流相关联的信息与现有的通信行为模式相比较来辨认通信 行为的偏差或异常。 在一个实现方式中, 现有的通信行为模式可以对应于与用户信息、 角色 信息、 和 / 或授权信息相关联的通信行为的历史。在其他实现方式中, 现有的通信行为模式 可以对应于网络管理员创建的信息并且被认为是正常的或非偏差。 当该比较显示存在偏差 或异常时, 然后安全设备可以对辨认出的偏差或异常提供安全响应 ( 例如, 关闭会话、 丢弃 包等 )。安全响应可以是用户配置的。 图 1A 是示出本文描述的示例性实施例的概述的示图。通过实例的方式, 用户 105 可以利用用户设备 110 对网络进行访问。用户 105 可以将用户信息、 角色信息和 / 或授权 信息 115 提供给设备 120。用户 105 被授权并被许可访问网络。设备 120 可以与安全设备 125 共享用户信息、 角色信息、 和 / 或授权信息 130。设备 120 还可以向安全设备 125 提供 ( 例如 ) 源网络地址信息。在其他实现方式中, 除了源网络地址信息之外, 或者替代源网络 地址信息, 设备 120 可以向安全设备 125 提供其他信息 ( 例如, 源端口、 目的网络地址等 )。
用户 105 可以对资源 140 进行访问。安全设备 125 可以利用与用户信息、 角色信 息、 和 / 或授权信息 130 相关联的源网络地址信息来选择通信 135 作为给监控器 145 的通 信流。
数据库 150 可以存储对应于用户信息、 角色信息、 和 / 或授权信息的通信行为模 式。安全设备 125 可以将监控的通信流信息发送 155 至数据库 150。数据库 150 可以利用 接收到的通信流对通信行为模式进行更新 160 并将更新后的通信行为模式发送 165 至安全 设备 125。安全设备 125 可以对与通信 135 相关联的通信行为和更新后的通信行为模式进 行比较 170, 通信行为和更新后的通信行为模式均对应于用户信息、 角色信息、 和 / 或权限 信息 130。基于该比较, 安全设备 125 可以确定是否存在异常。然后, 安全设备 125 可以在 其确定存在与通信行为模式的异常或偏差时采取适当措施 ( 例如, 安全响应 )。另一方面, 如果安全设备确定不存在异常或偏差, 则安全设备 125 可以继续对通信 135 进行监控。
作为实例, 假设具有管理员角色的用户 105 正常使用文件传输协议 (FTP)。然而, 在该会话 ( 即, 通信 135) 中, 处于管理员角色的用户 105 开始上网。在这样的实例中, 安全 设备 125 可以通过将通信行为模式和与通信 135 相关联的通信行为进行比较来辨认其作为 异常。然后, 安全设备 125 可以采取适当的安全措施。
虽然已广义地描述了这些实施例, 但还是存在变化的。 因此, 以下提供这些实施例 的详细描述。
示例性环境
图 1B 是示出了其中可以实现本文描述的方法、 设备、 及系统的示例性环境 100 的 示图。如图 1B 所示, 环境 100 可以包括用户 105 和可通信地连接至网络 115 的用户设备 110。网络 115 可以包括访问设备 120、 安全设备 125、 资源 140-1 和 140-2( 通称为 “资源 140” )、 及数据库 150。图 1B 中描述的用户 105、 用户设备 110、 访问设备 120、 安全设备 125、 资源 140、 及数据库 150 可以分别对应于之前参照图 1A 描述和示出的用户 105、 用户设备 110、 设备 120、 安全设备 125、 资源 140、 及数据库 150。
环境 100 中的设备数目和配置是示例性的且为了简化而提供。 实际上, 相比于图 1 中所示的那些设备, 环境 100 可以包括更多、 更少、 不同的、 和 / 或不同布置的设备。 此外, 被 描述为由一个特定设备执行的一些功能可以由一个不同的设备或多个设备的组合来执行。 例如, 在其他实施例中, 与数据库 150 相关联的功能可以结合到安全设备 125 中。环境 100 可以包括多个设备中的有线连接和 / 或无线连接。
用户设备 110 可以包括具有与其他设备、 系统、 网络等进行通信的能力的设备。例 如, 用户设备 110 可以对应于计算机 ( 例如, 膝上型计算机、 桌上型计算机、 手持计算机 )、 个 人数字助理、 无线电话、 网络浏览设备、 和其他类型的通信设备。 网络 115 可以包括任意类型的一个或多个网络。例如, 网络 115 可以包括私有网 络、 公共网络、 局域网络 (LAN)、 城域网 (MAN)、 广域网 (WAN)、 因特网、 企业内部互联网、 电话 网络 ( 例如, 公共交换电话网络 (PSTN) 或蜂窝网络 )、 卫星网络、 计算机网络、 和 / 或多个网 络的组合。
访问设备 120 可以包括具有与其他设备、 系统、 网络等进行通信的能力的设备。例 如, 访问设备 120 可以包括 : 应用程序授权服务器、 策略服务器、 执行点、 和 / 或某种其他类 型的访问控制设备或可以处理和 / 或转发网络通信的设备 ( 例如, 交换机、 网关、 桥接器 )。 访问设备 120 可以被实现在第 2 层、 第 3 层、 和 / 或更高层处。访问设备 120 可以管理对网 络 115 的访问, 包括内部人员威胁、 宾客用户访问、 遵守规章制度、 离岸 (off-shorting) 和 / 或外包。访问设备 120 可以获得用户信息、 角色信息、 和 / 或授权信息、 以及其他类型的信 息 ( 诸如, 例如用户设备安全状态信息和 / 或定位数据 )。访问设备 120 可以限定网络 115 内分布的动态访问控制策略。在一些实现方式中, 访问设备 120 可以提供预授权评估、 角色 映射、 及资源控制。访问设备 120 可以支持多种标准, 诸如, 电子和电气工程师协会 (IEEE 802.1X)、 远程认证拨号用户服务 (RADIUS)、 互联网协议安全 (IPsec) 等等。
安全设备 125 可以包括具有与其他设备、 系统、 网络等进行通信的能力的设备。例 如, 安全设备 125 可以包括安全设备 ( 例如, IDP 设备 )。安全设备 125 还可以起着处理和 / 或转发网络通信的某些其他类型的设备 ( 例如, 路由器、 交换机等 ) 的作用。安全设备 125 可以在联机模式下和 / 或被动模式下工作。安全设备 125 可以监控和 / 或收集与网络 115 中其他设备 ( 例如, 用户设备 110、 访问设备 120、 资源 140) 有关的网络和应用程序数据。
安全设备 125 可以提供各种安全措施, 诸如, 例如状态特征检测 ( 即, 基于特征的 检测 )、 协议异常检测 ( 例如, 违反公开的请求注解 (RFC) 的协议使用 )、 通信异常检测 ( 例 如, 启发式规则可以检测暗示了侦查或攻击的通信方式 )、 对拒绝服务 (DOS) 攻击的响应、 因特网协议 (IP) 欺骗检测、 和 / 或第 2 层攻击检测。安全设备 125 可以支持对检测到的 攻击或威胁的各种主动响应, 诸如, 例如丢弃包、 关闭连接、 关闭客户机、 关闭服务器、 关闭
客户机和服务器两者等, 以及支持被动响应, 诸如, 例如登录信息和传输控制协议 (TCP) 重 置。
安全设备 125 可以提供其他类型的服务, 诸如, 例如基于角色的管理和 / 或基于域 的管理 ( 例如, 允许装置、 策略、 报告等的逻辑分离 )。安全设备 125 还可以提供登录 ( 例 如, 收集网络通信信息、 通信方式信息等 )、 以及报告 / 通知 ( 例如, 提供实时报告 )。在一 个实施例中, 安全设备 125 可以包括剖析器。该剖析器可以捕捉与通信流相关联的精确和 精细的细节。以下将更详细地描述示例性的剖析器。
资源 140 可以包括提供服务、 数据、 和 / 或某种其他类型资源 (asset) 的设备。例 如, 资源 140 可以对应于网络服务器、 邮件服务器、 数据仓库等。
数据库 150 可以存储和管理通信剖析信息和通信行为模式信息。数据库 150 可以 基于从安全设备 125 接收到的通信流信息分析并创建通信剖析。数据库 150 还可以利用通 信剖析信息对通信行为模式信息进行更新。
尽管安全设备 125 可以被实现为不同类型的设备, 但在以下段落中, 将就 IDP 设备 而言来描述安全设备 125。
示例性设备架构 图 2 是示出安全设备 125 的示例性部件的示图。如所示, 安全设备 115 可以包括 ( 例如 ) 总线 210、 处理器 220、 存储器 230、 存储设备 240、 输入 / 输出 250、 及通信接口 260。
总线 210 可以允许安全设备 125 的多个其他部件之间的通信。例如, 总线 210 可 以包括系统总线、 地址总线、 数据总线、 和 / 或控制总线。总线 210 还可以包括总线驱动器、 总线判优器、 总线接口、 和 / 或时钟。
处理器 220 可以解释和 / 或执行指令和 / 或数据。例如, 处理器 220 可以包括处 理器、 微处理器、 数据处理器、 协处理器、 网络处理器、 专用集成电路 (ASIC)、 控制器、 可编程 逻辑设备、 现场可编程门阵列 (FPGA)、 或者可以解释和 / 或执行指令的某种其他处理逻辑。
存储器 230 可以存储数据和 / 或指令。例如, 存储器 230 可以包括随机存取存储 器 (RAM)、 动态随机存取存储器 (DRAM)、 静态随机存取存储器 (SRAM)、 同步动态随机存取 存储器 (SDRAM)、 只读存储器 (ROM)、 可编程只读存储器 (PROM)、 可擦除可编程只读存储器 (EPROM)、 电可擦除可编程只读存储器 (EEPROM)、 其他类型的动态或静态存储器、 高速缓存 器、 和 / 或闪存。
存储设备 240 可以存储数据、 指令、 和 / 或应用程序。 例如, 存储设备 240 可以包括 连同相应驱动器的硬盘 ( 例如, 磁盘、 光盘、 磁光盘等 )、 压缩盘 (CD)、 数字通用光盘 (DVD)、 软盘、 盒式磁盘、 磁带、 闪存驱动器、 或其他类型的计算机可读介质。 术语 “计算机可读介质” 旨在广义地解释为包括 ( 例如 ) 存储器、 存储设备等。计算机可读介质可以以集中方式或 分布方式实现在多个设备或单一的设备中。
输入 / 输出 250 可以允许向安全设备 115 输入或从安全设备输出。例如, 输入 / 输出 250 可以包括键盘、 键区、 鼠标、 按钮、 开关、 麦克风、 语音识别逻辑、 笔、 显示器、 端口等 用来允许输入。附加地, 或替换地, 输入 / 输出 250 可以包括显示器、 扬声器、 一个或多个发 光二极管 (LED)、 端口等以允许输出。
通信接口 260 可以使得安全设备 125 能够与其他设备、 网络、 其他系统等进行通 信。 例如, 通信接口 260 可以包括无线接口和 / 或有线接口, 诸如, 以太网接口、 光学接口等。
通信接口 260 可以包括收发机。
安全设备 125 可以基于用户信息、 角色信息、 和 / 或授权信息来执行与限定并分析 通信行为模式有关的操作和 / 或处理, 并且可以执行与检测和这些通信行为模式相关联的 偏差和异常有关的操作和 / 或处理。根据一个示例性实现方式, 安全设备 125 可以响应于 处理器 220 执行包括在计算机可读介质中的指令序列来执行这些操作和 / 或处理。例如, 可以将软件指令从另一计算机可读介质 ( 诸如存储设备 240)、 或经由通信接口 260 从另一 设备读取到存储器 230 中。包含在存储器 230 中的软件指令可以使处理器 220 执行稍后将 描述的处理。 替换地, 可以使用硬线电路来替代软件指令或与软件指令结合, 以实现本文描 述的处理。因此, 本文描述的实现方式不局限于硬件电路和软件的任何特定的组合。
尽管图 2 示出了安全设备 125 的示例性部件, 但是在其他实现方式中, 相比于本文 描述的和图 2 示出的那些部件, 安全设备 125 可以包括附加的、 更少的、 不同的、 或不同布置 的部件。附加地, 或替换地, 描述为由安全设备 125 的一个特定部件执行的一个或多个操作 可以 ( 除了该特定部件之外, 或替代特定该特定部件 ) 由一个或多个其他部件来执行。附 加地, 可以理解的是, 环境 100 中的其他设备 ( 例如, 用户设备 110、 访问设备 120、 资源 140、 和 / 或数据库 150) 可以包括图 2 中示出的这些示例性部件。
图 3 是安全设备 125 的示例性功能部件的示图。如图 3 所示, 安全设备 125 可以 包括检测引擎 305、 数据库 310、 及剖析器 315。图 3 所示的功能部件可以由硬件 ( 例如, 处 理器 220) 或硬件和软件的组合来实现。尽管图 3 中示出了部件的特定数目和安排, 但是在 其他实现方式中, 相比于图 3 所示的那些部件, 安全设备 125 可以包括更少的、 附加的、 不同 的、 或不同布置的部件。此外, 可以理解的是, 可以在环境 100 中的其他设备 ( 例如, 用户设 备 110、 访问设备 120、 资源 140、 和 / 或数据库 150) 中实现这些功能部件。
检测引擎 305 可以接收包形式的网络通信。尽管本文的描述中使用了包, 但是本 文描述的实现方式可应用于包、 非包、 单元、 数据报、 位、 字节等任意形式的数据单元。检测 引擎 305 可以执行各种检测方法, 诸如, 例如识别攻击、 威胁、 和 / 或恶意通信所需的方式匹 配、 特征匹配、 状态方式匹配、 和 / 或基于异常的检测 ( 例如, 协议、 通信 )。
数据库 310 可以存储与安全设备 125 的操作有关的各种类型的信息。例如, 数据 库 310 可以存储用于识别异常、 威胁、 攻击、 和 / 或恶意通信的特征和 / 或启发式算法。数 据库 310 可以存储协议解码信息和策略。
剖析器 315( 或检测引擎 305) 可以检测、 监控、 和分析通信方式。 例如, 剖析器 315 可以检测并监控经过网络 115 的通信。剖析器 315( 或检测引擎 305) 还可以对通信行为模 式和通信流信息进行比较以确定是否存在通信行为的异常。如本文所述, 在一个实现方式 中, 剖析器 315 可以检索并接收来自数据库 150 的通信行为模式。当确定存在异常时, 安全 设备 125 可以采取适当的安全措施。
图 4A 是示出图 1A 和 1B 描述的数据库的示例性功能部件的示图。图 4A 所示的功 能部件可以由硬件 ( 例如, 处理器 220) 或硬件和软件的组合来实现。 尽管图 4A 中示出了部 件的特定数目和布置, 但是在其他实现方式中, 相比于图 4A 中示出的那些部件, 数据库 150 可以包括更少的、 附加的、 不同的、 或不同布置的部件。 此外, 可以理解的是, 可以在环境 100 中的其他设备 ( 例如, 用户设备 110、 访问设备 120、 安全设备 125、 和 / 或资源 140) 中实现 这些功能部件。网络通信分析器 405 可以基于监控的与特定的用户信息、 角色信息、 和 / 或授权信 息相关联的通信创建通信剖析。在一个实现方式中, 安全设备 125 可以提供具有监控的通 信流信息的数据库 150( 例如, 网络通信分析器 405)。在其他实现方式中, 网络通信分析器 405 可以从安全设备 125 检索通信流信息。图 4B 是示例性通信剖析表的示图。
如图 4B 所示, 通信剖析表 415 可以包括用户信息字段 420、 角色信息字段 425、 授 权信息字段 430、 及通信行为模式信息字段 435。通信剖析表 415 的信息字段可以根据个体 要素 (individual basis)、 组要素 (group basis)、 域要素 (domain basis) 等来布置。
用户信息字段 420 可以包括用户信息。通过实例的方式, 用户信息字段 420 可以 包括用户的名称 ( 例如, Kevin Smith)、 标识用户的字符串 ( 例如, TWT12598)、 或某种其他 类型的信息 ( 用户名称= Visitor)。
角色信息字段 425 可以包括角色信息。通过实例的方式, 角色信息字段 425 可以 包括用户身份 ( 例如, 职工 )、 职位 ( 例如, 管理员 )、 或访问等级 ( 例如, 宾客 )。
授权信息字段 430 可以包括授权信息。通过实例的方式, 授权信息字段 430 可以 包括口令信息、 登录信息、 授权代码、 认证信息等。
通信行为模式信息字段 435 可以包括典型地在通信流中传达的源地址、 目的地 址、 源端口、 目的端口、 及传输协议信息 ( 例如, 5 元组信息 (SIP、 DIP、 PRO、 SPORT、 DPORT)) 和内容信息, 以及其他信息 ( 诸如, 例如进入接口、 TOS、 QOS、 时间戳、 及通信流的字节 / 包 数目 )。该类型的信息可以用于创建可以与用户信息、 角色信息、 和 / 或授权信息相关联的 通信行为模式。例如, 通信流的字节 / 包数目可以用于确定 (formulate) 每个会话使用的 通信的量或在一段时间上使用的通信的量。在另一实例中, 该类型的服务信息可以用于确 定 (formulate) 由用户信息、 角色信息、 及关联的授权信息正常使用或访问的服务历史。在 又一实例中, 源地址和 / 或目的地址可以用于确定 (formulate) 与用户信息、 角色信息、 和 / 或对应的授权信息正常用来访问网络的用户设备相关的历史, 或与用户信息、 角色信息、 和 / 或对应的授权信息用来正常访问或使用的目的设备相关的历史。因此, 总之, 安全设备 125( 例如, 剖析器 315) 捕捉的通信信息可以用于构造通信行为模式并使该通信行为模式 与用户信息、 角色信息、 和 / 或授权信息相关联。
尽管图 4B 示出了示例性通信剖析表 415, 但是在其他实现方式中, 相比于本文描 述的和图 4A 所示的, 通信剖析器 415 可以包括附加的、 不同的、 或更少的信息字段。
还参照图 4A, 网络通信分析器 405 可以基于与特定用户信息、 角色信息、 和 / 或授 权信息相关联的通信剖析信息来创建通信行为模式。网络通信分析器 405 可以将创建的通 信行为模式存储在数据库 410 中。网络通信分析器 405 可以利用各种技术来创建通信行为 模式, 各种技术诸如 ( 例如 ) 与通信流信息 ( 诸如, 例如内容信息、 源地址、 源端口、 目的地 址、 目的端口、 传输协议 ( 例如, 5 元组信息 )、 进入接口、 TOS、 QOS、 时间戳、 以及与通信流相 关联的字节 / 包数目 ) 有关的统计分析、 平均等。需要建立和 / 或创建通信行为模式的会 话数目可以是用户配置的。通信行为模式表可以对应于通信剖析表 415, 然而, 通信行为模 式表可以包括与通信行为模式信息 435( 代表正常通信方式行为 ) 相关联的值或值的范围。
在替换的实现方式中, 通信行为模式可以由 ( 例如 ) 管理员或某个其他网络人员 来创建。例如, 管理员可以确定被认为是正常通信行为或被认为是代表非偏差通信行为的 值或值的范围, 并创建通信行为模式表。 管理员可以使通信行为模式与一个特定用户、 用户组、 角色 ( 多个角色 )、 和 / 或授权信息相关联。 在任一实现方式中, 通信行为模式可以等于 可用于检测异常的通信行为的正常通信行为。 可以理解的是, 本文使用的术语 “通信行为模 式” 可以对应于由数据库 150( 例如, 网络通信分析器 405) 所创建的通信行为模式、 由(例 如 ) 网络管理员所创建的通信行为模式、 和 / 或两者的组合。
一旦创建了通信行为模式, 网络通信分析器 405 可以利用随后的与特定用户信 息、 角色信息、 和 / 或授权信息相关联的会话 ( 例如, 监控的通信流 ) 来更新通信行为模式。 例如, 网络通信分析器 405 可以基于监控的通信流来创建通信剖析。然后, 网络通信分析器 405 可以基于通信剖析来更新通信行为模式。
示例性过程
如本文描述的, 安全设备 125 可以使用用户信息、 角色信息、 和 / 或授权信息来选 择并监控通信流, 并基于与用户信息、 角色信息、 和 / 或授权信息相关联的通信行为模式来 检测偏差或异常。可以认识到, 尽管本说明书提供了用户信息、 角色信息、 和 / 或授权信息 可以由一个设备 ( 例如, 设备 120 或访问设备 120) 获得并被转发到安全设备 125, 但是在其 他实现方式中, 该功能性可以在单一的设备中实现。即, 安全设备 125 可以获得用户信息、 角色信息、 和 / 或授权信息。 图 5A 是示出了用于选择和监控通信流以及基于与用户信息、 角色信息、 和 / 或授 权信息相关联的通信行为模式来检测偏差或异常的示例性过程 500 的流程图。过程 500 可 以由安全设备 125 中的硬件 ( 例如, 处理器 220 和 / 或某种其他类型的逻辑 )、 或硬件和软 件的组合来执行。在另一实现方式中, 与过程 500 相关联的一个或多个操作可以由另一设 备结合安全设备 125 一起执行。将结合其他附图一起描述过程 500。为了进行讨论, 将假设 数据库 150 中存在通信行为模式。这形成了对比 : 其中, 数据库 150 的初始状态要求通信行 为模式被创建而不是 (versus) 被更新。
过程 500 可以从接收用户信息、 角色信息、 和 / 或授权信息开始 ( 框 505)。例如, 如图 1B 所示, 用户 105 可能打算访问网络 115。可以在访问被许可之前要求用户 105 将信 息提供给访问设备 120。该信息可以包括用户信息、 角色信息、 和 / 或授权信息。访问设备 120 还可以基于与用户设备 110 的通信来获得其他类型的信息, 诸如, 例如源网络地址、 源 端口、 目的网络地址、 目的端口、 协议 ( 例如, 传输等级 ), 以及其他信息, 诸如, 例如进入接 口、 服务类型 (TOS)、 服务质量 (QOS)、 时间戳、 通信流的字节 / 包数目。为了进行讨论, 假设 访问设备 120 许可用户 105 访问网络 115。
返回到图 5A, 用户信息、 角色信息、 和 / 或授权信息可以被转发给安全设备 ( 框 510)。访问设备 120 可以将接收到的用户信息、 角色信息、 和 / 或授权信息转发给安全设备 125。安全设备 125 可以将用户信息、 角色信息、 和 / 或授权信息存储在数据库 310 的通信 行为表 400 中。访问设备 120 可以将其他信息 ( 例如, 源网络地址、 源端口等 ) 转发给安全 设备 125。安全设备 125 还可以将该信息存储在通信行为表 400 中。
可以监控基于用户信息、 角色信息、 和 / 或授权信息的网络通信 ( 框 515)。 安全设 备 125( 例如, 剖析器 315) 可以基于用户信息、 角色信息、 和 / 或授权信息来检测、 选择、 和/ 或监控来自用户 105 的通信。例如, 如图 1A 所示, 安全设备 125 可以监控与用户 105 和用 户设备 110 相关联的通信 135。在一个实现方式中, 安全设备 125 可以基于由访问设备 120 提供的用户信息、 角色信息、 和 / 或授权信息、 和 / 或源网络地址、 源端口等识别哪个通信属
于用户 105。附加地, 或替换地, 安全设备 125 可以利用包含在通信 135 中的信息来使用户 信息、 角色信息、 和 / 或授权信息与通信 135 相关联。
可以提供监控的网络通信流来对通信行为模式进行更新 ( 框 520)。安全设备 125 可以将监控的通信流提供给数据库 150。 监控的通信流可以包括通信流信息以及用户信息、 角色信息、 和 / 或授权信息。在一个实现方式中, 安全设备 125 可以将监控的通信流传送到 数据库 150。在其他实现方式中, 数据库 150 可以检索监控的通信流。
可以获得更新后的通信行为模式 ( 框 525)。安全设备 125 可以从数据库 150 获得 更新后的通信行为模式。更新后的通信行为模式可以包括代表与用户信息、 角色信息、 和/ 或授权信息相关联的正常通信行为的信息。在一个实现方式中, 安全设备 125 可以从数据 库 150 检索更新后的通信行为模式。在其他实现方式中, 数据库 150 可以将更新后的通信 行为模式传送到安全设备 125。
可以确定通信行为模式和通信行为 ( 即, 对应于当前会话 ) 之间存在的异常。例 如, 剖析器 315 可以对通信行为模式和对应于当前会话的通信行为进行比较以确定是否存 在通信行为异常。
在一些实现方式中, 剖析器 315 可以在进行通信行为模式和对应于当前会话的通 信行为的比较之前, 基于对应于当前会话的通信行为, 来创建通信行为剖析。 在其他实现方 式中, 剖析器 315 可以在不对监控的通信流进行进一步处理的情况下执行比较。 剖析器 315 可以基于该比较检测异常。即, 该比较可以揭示与监控的通信流相关 联的通信行为偏离了该特定用户信息、 角色信息、 和 / 或授权信息的通信行为模式所代表 的 “正常” 行为。通过实例的方式, 异常可以对应于用户 105 从不同的源地址访问网络 115、 用户 105 使用不同的服务、 用户 105 超过了上传和 / 或下载的字节数目等。
如图 5A 所示, 如果确定存在异常 ( 框 530- 是 ), 则安全设备 125 可以执行一个或多 个适当的安全措施 ( 框 535)。该安全措施 ( 多个安全措施 ) 可以是用户配置的。例如, 安 全设备 125 可以查阅数据库 310 以识别适当的安全措施。 如之前提到的, 安全响应可以包括 关闭该会话、 丢弃包、 登录信息、 关闭客户机、 关闭服务器、 关闭客户机和服务器两者等。在 一个实现方式中, 可以基于用户信息、 角色信息、 和 / 或授权信息来映射一个或多个安全措 施。即, 网络 115 的安全策略可以被映射到用户信息、 角色信息、 和 / 或授权信息。附加地, 或替换地, 网络 115 的安全策略可以映射到与监控的通信流相关联的源地址、 源端口等。
另一方面, 如果确定不存在异常 ( 框 530- 否 ), 则安全设备 125 可以继续监控网络 通信流 ( 框 540)。即, 安全设备 125 可以继续监控与当前会话相关联的网络通信流。
尽管图 5A 示出了示例性的过程 500, 但是在其他实现方式中, 可以执行更少的、 附 加的、 或不同的操作。
图 5B 是示出用于创建和 / 或更新通信行为模式的示例性过程 550 的流程图。过 程 550 可以由硬件 ( 例如, 处理器 220 和 / 或某种其他类型逻辑 )、 或数据库 150 中的软件 和硬件的组合来执行。在另一实现方式中, 与过程 550 相关联的一个或多个操作可以由另 一设备 ( 例如, 安全设备 125) 结合数据库 150 一起执行。以下结合其他附图一起来描述过 程 550。
过程 550 可以从获得网络通信流信息开始 ( 框 555)。数据库 150 可以获得监控的 通信流信息。监控的通信流信息可以包括与通信 135 相关联的信息、 以及用户信息、 角色信
息、 和 / 或授权信息。在一个实现方式中, 数据库 150 可以从安全设备 125 检索监控的通信 流信息。在其他实现方式中, 安全设备 125 可以将监控的通信流信息传送到数据库 150。
可以创建通信流剖析 ( 框 560)。数据库 150( 例如, 网络通信分析器 405) 可以基 于监控的通信流信息来创建通信剖析 ( 例如, 通信剖析表 )。例如, 网络通信分析器 405 可 以对监控的通信流信息进行分析以创建通信剖析。
可以确定是否存在通信行为模式 ( 框 565)。例如, 网络通信分析器 405 可以查阅 数据库 410 以确定是否存在与用户、 角色、 和 / 或授权相关的通信行为模式。实际上, 可以 在用户配置的时间段 ( 例如, 一天、 一周、 一月等 ) 内创建通信行为模式。然而, 网络通信分 析器 405 认为足以创建通信行为模式的会话数目或该网络通信分析器认为存在通信行为 模式的会话数目可以是用户配置的参数。 可以理解的是, 如之前描述的, 通信行为模式可以 由 ( 例如 ) 网络管理员来创建。在该实例中, 可以省略框 565。
如果确定不存在通信行为模式 ( 框 565- 否 ), 则网络通信分析器 405 可以基于通 信剖析来创建通信行为模式 ( 框 570)。 通信行为模式可以与用户信息、 角色信息、 和 / 或授 权信息相关联。依赖于会话数目并对应于通信行为, 网络通信分析器 405 可以利用各种技 术来创建通信行为模式, 诸如, 例如统计分析、 平均等。通信行为模式可以包括与代表或表 示正常通信行为的通信流相关的值、 值的范围、 参数等。
如果确定存在通信行为模式 ( 框 565- 是 ), 则网络通信分析器 405 可以基于通信 剖析来更新通信行为模式 ( 框 575)。例如, 网络通信分析器 405 可以利用与通信剖析相关 联的信息来更新与通信流相关的值、 值的范围、 参数等。
可以提供更新后的通信行为模式 ( 框 580)。数据库 150( 例如, 网络通信分析器 405) 可以将更新后的通信行为模式传送给安全设备 125。 在其他实现方式中, 安全设备 125 可从数据库 410 检索更新后的通信行为模式 ( 例如, 更新后的通信行为模式表 )。
尽管图 5B 示出了示例性过程 550, 但是在其他实现方式中, 可以执行更少的、 附加 的、 或不同的操作。
实例
图 6 和 7 是示出了检测、 选择、 和监控通信流并基于与用户信息、 角色信息、 和/或 授权信息相关联的通信行为模式检测偏差或异常的实例的示图。基于检测到的偏差或异 常, 安全设备 125 可以提供安全保护的高精细度 (finer granularity)。
例如, 如图 6 所示, 用户 105-1 可以具有管理员的角色, 用户 105-2 可以具有开发 商的角色, 以及用户 105-3 可以具有职员的角色。假设多个用户 105 在不同时间访问资源 140-1 或 140-2。此外, 假设用户设备 110 每次使用 ( 或被分配有 ) 同样的源地址 ( 例如, 同样的 IP 地址 )。如所示, 每个用户 105 可以将用户信息、 角色信息、 和 / 或授权信息提供 给访问设备 120。访问设备 120 可以将接收到的用户信息、 角色信息、 和 / 或授权信息转发 给安全设备 125。访问设备 120 还可以将同样的源地址转发给安全设备 125。如之前描述 的, 安全设备 125 可以检测、 选择、 和监控通信并确定是否存在异常。不同于可以将通信看 作来自于同一源 ( 即, 源地址 ) 并可以要求更深等级的通信检查 ( 例如, 5 元组等级 ) 的现 有技术, 由于使用了用户信息、 角色信息、 和 / 或授权信息, 安全设备 125 可以提供与通信有 关的安全的高精细度。因此, 安全设备 125 可以响应于检测到的可以存在于这种场景中的 通信行为的异常或偏差来提供适当的安全措施。在另一实例中, 如图 7 所示, 单一的用户 105 可以在不同时间在不同的用户设备 110( 即, 用户设备 110-1、 110-2、 及 110-3) 上利用不同的角色信息 ( 例如, 管理员、 开发商、 及职员 ) 对资源 140-1 或 140-2 进行访问。即, 用户 105 可以具有三个不同的角色。用户设 备 110-1、 110-2、 及 110-3 可以使用 ( 或被分配有 ) 不同的源地址 ( 例如, IP 地址 1、 IP 地 址 2、 及 IP 地址 3)。访问设备 120 可将接收到的用户信息、 角色信息、 和 / 或授权信息转发 给安全设备 125。访问设备 120 还可以转发不同的源地址。如之前描述的, 安全设备 125 可 以检测、 选择、 和监控通信并确定是否存在异常。不同于现有技术 ( 由于多个源地址不同, 可以将单独的通信看作来自于不同的源, 并可以相应地应用不同的安全策略 ), 由于使用了 用户信息、 角色信息、 和 / 或授权信息, 安全设备 125 可以提供与通信有关的安全的高精细 度。因此, 安全设备 125 可以响应于检测到的可以存在于这种场景中的通信行为的异常或 偏差来提供适当的安全措施。
结论
前述的实现方式描述提供了示例性的说明, 但不旨在穷尽或将这些实现方式限制 为所公开的精确形式。鉴于上述教导各种改变和变化是可能的, 或可以通过实践这些教导 而获得各种改变和变化。 例如, 安全设备 125 和数据库 150 可以实现在单一的设备上。 附加 地, 或替换地, 安全设备 125 可以将通信行为模式存储在数据库 310 中。附加地, 或替换地, 一旦创建了通信行为模式, 则可以不基于通信剖析来进行更新。例如, 安全设备 125 可以对 监控的通信流与数据库 310 中存储的通信行为模式进行比较, 而不更新通信行为模式。附 加地, 或替换地, 除了通信剖析信息之外, 或替代通信剖析信息, 对通信行为模式的更新可 以由 ( 例如 ) 网络管理员来执行。附加地、 或替换地, 可以只是在安全设备 125 确定与监控 的通信流相关联的通信行为表示正常或非异常的通信行为之后, 利用监控的通信流来更新 通信行为模式。在该实现方式中, 在作出该确定之前, 数据库 150 可以不利用监控的通信流 来更新通信行为模式。
附加地, 尽管已描述了关于图 5A 和图 5B 中示出的过程的一系列框, 但是在其他实 现方式中框的顺序可以改变。此外, 可以并行地执行非依赖性的多个框。
此外, 已经描述了作为执行一个或多个功能的 “逻辑” 或 “部件” 实现的特定方面。 该逻辑或部件可以包括硬件 ( 诸如, 处理器、 微处理器、 ASIC、 或 FPGA) 或硬件和软件的组合 ( 诸如, 执行存储在计算机可读介质中的指令的处理器 / 微处理器 )。
显而易见的是, 本文描述的多个方面可以按照附图中示出的实现方式中的软件、 固件、 及硬件的许多不同形式来实现。用来实现这些方面的实际的软件代码或专用控制硬 件不对这些实施例构成限制。因此, 没有参照特定的软件代码来描述这些方面的操作和行 为——其被理解为软件和控制硬件可以被设计为实现基于本文描述的这些方面。
本申请通篇使用了术语 “可以” , 该术语旨在被解释为 ( 例如 )“具有可能性” 、 “配 置为” 、 或者 “能够” , 而不是强制的意思 ( 例如, “必须” )。术语 “一个 (a)” 、 “一个 (an)” 、 “该 (the)” 旨在被解释为包括一项或多项。例如, 处理器 302 可以包括一个或多个处理器。 当旨在仅表示一项时, 使用术语 “一个 (one)” 或类似语言。此外, 除非以其他方式明确表 述, 否则短语 “基于 (based on)” 旨在被解释为 “至少部分基于” 。术语 “和 / 或” 旨在被解 释为包括所列出关联的表项中的一项或多项中的任意或全部的组合。
尽管在权利要求中陈述了和 / 或在说明书中公开了多个特征的特定组合, 但是这些组合不旨在对本发明的公开范围构成限制。实际上, 可以按照并非特别在权利要求中陈 述的和 / 或说明书中公开的多种方式来组合这些特征中的多个特征。
除非明确描述, 本申请中使用的元件、 框、 或指令均不应当被解释为对于本文描述 的实现方式来说是关键的或本质的。