相关申请的交叉引用
本申请要求2014年10月24日提交且题为“systemsandmethodsfornetworkanalysisandreporting”的美国专利申请序号14/523,624以及2014年10月6日提交且题为“systemsandmethodsfornetworkanalysisandreporting”的美国临时专利申请号62/060,433以及2014年9月5日提交且题为“systemsandmethodsfornetworkflowanalysisandreporting”的美国临时专利申请号62/046,807的优先权;本申请涉及2013年6月14日提交且题为“systemsandmethodsfordynamicnetworksecuritycontrolandconfiguration”的美国非临时专利申请号13/918,633,其内容被整体地通过引用结合到本文中。
背景技术:
本文中所述的示例性实施例涉及用于网络安全控制的系统和方法。
信息安全设计师和安全操作员以及治理,风险和合规(grc)人员全部面临相对于确认安全技术控制(controls)就位并针对企业计算环境内的资产或资产群组运行的各种挑战。此外,用于网络监视和控制的常规系统通常不能使来自系统的各种组件的安全和合规性相关数据上下文化以用于计算、安全控制和/或管理或者具有有限的能力。此类挑战在分布式计算、虚拟化计算系统或“云计算”系统(其中,此类系统的组件和环境可以频繁地且快速地改变)中可能是特别困难的。
另外,用于网络监视和控制的常规系统通常仅使用来自单个源的数据或者仅一种形式的数据(诸如网络流数据),从而排出了重要上下文支持数据的潜在来源并提供联网系统之间的信息流的一维的以网络协议为中心的视野。
本公开的实施例帮助解决此类挑战。
技术实现要素:
除其它的之外,本公开的实施例与常规系统相比可以从多个源收集并分析资产和网络数据,并且使用此类数据来呈现各种系统和软件应用程序之间的网络连接的更完整且准确的表示及规定网络上的安全控制的操作的策略。
根据本公开的一个实施例的计算机实现方法包括由计算机系统从多个不同类型的源收集数据,其中,收集的数据包括网络数据和资产数据;由计算机系统基于所收集的数据中的网络数据来识别网络业务事件和与网络业务事件有关的多个网络资产;由计算机系统基于所收集的数据中的资产数据来识别所述多个网络资产之间的连接;由计算机系统生成流程信息图,其描绘所述多个网络资产和所述多个网络资产之间的连接,其中,该流程信息图描绘在网络资产之间被允许的网络业务和在网络资产之间被阻止的网络业务;以及经由与计算机系统通信的用户接口的显示器来呈现流程信息图。
本公开包括方法和执行这些方法的设备(包括执行这些方法的数据处理系统)以及包含指令的计算机可读介质,所述指令当在数据处理系统上执行时促使系统执行这些方法。
根据附图且根据随后的详细描述,其它特征将是显而易见的。
附图说明
当结合以下说明性附图考虑时,可以通过参考详细描述和权利要求而导出某些实施例的更完整理解。
图1描绘了可以结合本公开的各种实施例使用的示例性计算环境。
图2描绘了根据本公开的各种实施例的示例性安全控制和管理组件。
图3描绘了根据本公开的各种实施例的各种逻辑区的逻辑表示。
图4是根据本公开的各种方面的示例性方法的流程图。
图5-图7图示出根据本公开的各种方面的合规性水平的计算和显示。
图8是根据本公开的各种方面的示例性系统的框图。
图9是根据本公开的各种方面的示例性方法的流程图。
图10是根据本公开的各种方面的示例性流程信息图。
图11是根据本公开的各种方面的示例性数据表。
图12-图24是示出了根据本公开的各种方面的与流程信息图和数据表的交互的示例的屏幕快照。
具体实施方式
提供了系统、方法和计算机程序产品。在本文中的详细描述中,对“各种实施例”、“一个实施例”、“实施例”、“示例性实施例”等的提及指示所述实施例可以包括特定特征、结构或特性,但可能不一定每个实施例都包括该特定特征、结构或特性。此外,此类短语不一定参考同一实施例。此外,当结合实施例来描述特定特征、结构或特性时,可认为结合无论是否明确地描述的其它实施例来实现此类特征、结构或特性在本领域的技术人员的知识内。在阅读本描述之后,如何在替换实施例中实现本公开对于本领域的技术人员而言将是显而易见的。
在各种实施例中,使用本文中所述的各种特定机器来实现本文中所述的方法。本文中所述的方法可以以任何适当的组合使用下面特定的机器以及以后开发的那些来实现,如本领域的技术人员将立即认识到的。此外,如从本公开明确的,本文中所述的方法可以导致某些物品的各种变换。
为了简洁起见,在本文中可能并未详细地描述系统(和系统的单独操作组件中的组件)的常规数据联网、应用程序开发及其它功能方面。此外,包含在其中的各种图中所示的连接线意图表示各种元件之间的示例性功能关系和/或物理耦合,例如事件流(诸如ipfix数据馈送)、数据通道、直接网络检查(诸如在入侵检测系统中)、日志馈送、日志监察和/或编程交互,诸如利用应用编程界面的那些。应注意的是在实际系统中可以存在许多替换或附加功能关系或物理连接。
本公开可以参考在以下列表中定义的以下术语。本列表中的定义仅仅是示例性的。基于术语的不同定义以及不同定义的改变、修改以及变更意图包括在本公开的范围内。
资产—基于在数据中心、虚拟化计算机或虚拟机中处理数据的虚拟化计算系统的分立硬件。资产可以通过如在成员资格策略中表示的自动化方法或者手动地通过用户动作变成trustzone的成员。
资产属性—资产的性质,包括但不限于任何操作系统配置设置、部署在资产上的数据处理应用程序、应用程序配置设置、基于硬件或虚拟化的系统组件,包括网络接口、存储器、磁盘、联网组件互连、唯一标识符、名称或与资产、资产配置或物理或虚拟化数据中心系统内的资产位置相关联的任何分立数据组件或标签。
安全技术控制—执行安全功能或改变元件的安全状况或状态的装置、技术、软件程序或者元件的配置或属性,包括但不限于:防护墙、入侵检测和预防、漏洞扫描、漏洞管理和缓解、反恶意软件工具、基于主机的入侵检测和预防、文件完整性监视、认证—授权—审计、运动中加密、静止时加密、加密密钥和令牌管理、用户权限管理、网络接入控制、口令长度规范、配置设置,其规定各种安全水平的一个或另一上下文中的系统或元件的操作。
策略—策略是用来引导系统或系统组件/元件的操作或行为的规则、规则集和或数据集。具体地,与安全技术控制相关联的数据主体,其规定该控制的行为和功能。
逻辑区—可以具有与一组策略相关联的公共属性或者可以不这样的资产的任意群组。
管理程序—创建和运行虚拟机的一件计算机软件、固件或硬件。
虚拟交换机—在管理程序上提供虚拟机的网络互连的一件软件。
防火墙—基于软件或硬件的安全技术控制,其通过分析业务组件(分组)并基于一组规则来进行使该业务通过还是阻止的判定来控制通过该防火墙的网络业务。
入侵防御系统(ips)—基于软件或硬件的安全技术控制,其出于基于特征或行为建模来检测和中断不期望网络业务的目的检查网络连接。
漏洞扫描器—基于软件或硬件的安全技术控制,其通过经由网络连接到资产或者将资产作为进程运行并基于已知漏洞特征、漏洞指示符、观察的资产行为、在资产上运行的程序和/或资产的操作属性来评定资产的过程来评定网络上的资产的漏洞状态。
合规性框架—出于根据已确立规章、规范或法规进行定义的目的而公布的指南、过程和程序的结构化集合。
catbirdtrustzone—逻辑分区结构,其由包括控制配置策略、成员资格策略以及响应于计算环境的变化而实现动态控制重配置的方法集合的策略集合组成。
grc—治理、风险和合规性,分别地处理企业治理、企业风险管理(erm)和关于适用法律和规章的企业合规性的组装内的三个相关功能的一般化分组。
本公开的实施例可以监视所有资产属性变化(即,在trustzone内或外面的那些资产)、计算环境变化、网络组件变化、安全控制事件、管理组件事件、资产事件和/或网络事件。可以在所有控制配置策略的上下文内监视在本文中可以共同地称为“环境事件”的此类事件,使得可以动态地修改任何控制配置策略以确保控制对各trustzone中的任何资产仍有效。
可以监视trustzone成员和成员资格策略的上下文内的环境事件,使得可以通过将资产从一个trustzone移动至另一个或者通过改变用于资产是其成员的trustzone的策略来向trustzone中的任何资产动态地分配安全控制策略的不同集合或者针对trustzone中的任何资产改变安全控制策略的不同集合。可以通过同时地对多个资产执行相同的移动动作来对多个资产应用此类改变,特别是在trustzone成员资格改变的情况下。
现在参考图1,描绘了可以结合本公开的实施例操作的示例性计算环境100。环境100的组件可以使用硬件和软件组件的任何期望组合来实现,并且可以由例如图8中描绘的主机计算系统810托管。替换地或另外,可以在环境100中包括系统800(或其任何部分)。在图1中所示的示例中,环境100包括四个不同类型的组件:计算元件(ce)、网络元件(ne)、管理元件(me)以及安全元件(se)。本公开的实施例可以与任何数目的此类组件以及其它组件相交互。每个单独组件可以表示计算机或虚拟机,其包括任何期望的物理或虚拟化硬件计算资源,诸如处理器、存储器、交换机、路由器、负荷平衡器、操作系统、软件应用程序和/或配置元件(文件、过程、策略、程序)。图1所描绘的任何元件或其衍生物可以使用物理和虚拟组件的任何期望组合来实现。可以使用任何期望的管理程序软件(诸如vmwareesxi、microsofthyper-v和/或openstack)将虚拟化元件绑定到物理硬件。
计算元件以其作为专用于数据处理和以应用程序形式向各种特权级别的用户群体提供计算机服务的应用平台的功能为特征。计算元件的一个示例可以包括运行应用程序的物理或虚拟化microsoftwindows服务器或linux服务器。
网络元件以其提供计算环境内的各种元件与网络技术和协议的互连性(部分地或完全地)并提供计算环境元件之间的数据传输的功能为特征。网络元件的示例可以包括路由器、交换机、虚拟化交换机、网络、vlan和/或包括虚拟可扩展lan(vxlan)的软件定义联网组件。
管理元件以其托管专用于计算环境的管理和操作、数据的处理以及以管理和操作应用程序的形式向特权管理用户的用户群体提供管理和操作服务的应用程序的功能为特征。管理元件可以管理包括计算元件、网络元件或其它管理元件的其它元件。管理元件的一个示例可以包括microsoftwindows服务器,其运行管理计算环境中的管理程序的vmwarevsphere服务器软件。
安全元件以其在网络、主机、虚拟机、资产、程序或处理层级提供各种技术安全控制的实现的功能为特征。安全元件可以具有分级部署架构,其包括以物理和/或虚拟化形式实现的任何期望数目的网络元件、管理元件、计算元件、程序、过程以及方法。安全元件的示例可以包括防火墙设备及其管理元件或软件、防病毒软件及其管理和更新机制、漏洞扫描器以及被用于访问或用户权限的集中式公钥基础设施。
图2描绘了根据本公开的实施例的安全控制管理系统(scms)200的组件和编程输入和输出。本实施例可以包括用以实现scms200的各种功能的各种硬件和软件组件、软件算法、数据结构以及数据库。替换scms可以具有更多、更少或不同的组件和功能。
在图2中描绘的示例性实施例中,scms200通过经由一个或多个标准化和/或专有界面或应用编程界面(api)实现的编程通讯机制来与计算环境相交互。该界面可以利用安全套接层(ssl)加密以及任何其它期望的加密技术来保证消息、事件、指令和命令的私密性和完整性。本公开的实施例所利用的加密技术可以包括用于发送和接收元件的相互认证。本公开的实施例可以用任何适当方式来实现编程通讯机制,诸如经由api、命令行界面集成、数据库查询、显示数据的编程收集(即,屏幕抓取)、进程间通信方法、文件系统访问等。
通过编程通讯机制,scms200发现关于计算环境的信息。此类信息可以包括与单独元件、元件的组合以及所有元件有关的信息。发现信息可以被scms200用于任何期望目的,诸如用来识别将由系统保护的元件和/或启发式地确定用于配置安全技术控制的元件属性。发现的信息还可以被用于评估与政府或行业规章的合规性、安全状况、安全控制功能、安全控制效力、安全控制覆盖度和/或安全控制操作。
编程通讯机制可以包括(在被一个或多个元件支持的情况下)一个或多个元件与scms200之间的交换、元件相关消息、日志、遥测数据、配置设置、由包括或者不包括scms200的程序或进程生成的数据、元件属性、反映元件的当前状态和配置的数据以及关于安全技术控制、策略或基准(相对于元件本身或者可从计算环境中的所述元件或其它元件获得的)的任何其它数据,其在本文中全部可以共同地称为“事件”。
编程通讯机制还可以包括用于在配置设置、策略、配置文件、包括程序和进程的元件组件的开始和停止方面重配置元件和/或出于改变元件的操作状态的目的直接地向元件发布命令或者发起通过相同机制执行的重配置的命令和/或配置界面,其在本文中全部可以共同地称为“指令”。
在图2中描绘的示例性实施例中,各种组件可以包括用以执行各种功能的硬件和/或软件组件的任何期望组合。例如,事件处理和管理组件可以对此类事件进行归一化或变换以便由其它组件存档和进一步处理。归一化和变换可以包括通过出于将事件与信息资产相关联的目的而添加资产相关标识符、出于存档目的从事件去除数据以实现空间缩减、添加通过从系统输出的从源自于其它元件的事件生成的事件或算法而被系统确定为是相对于起源元件进行的资产属性替换或添加。事件处理可以包括从事件提取关于策略的创建、维护和执行、资产识别、安全技术控制的配置的数据和信息流以及相对于依照和影响与基准或基线的合规性水平的相对于基准或基线而言关于元件和元件状态的数据。
逻辑区创建和配置执行与trustzone创建和配置有关的任务。此组件处理信息资产到逻辑区(trustzones)的映射并提供安全技术控制策略到信息资产的关联。
策略和基准逻辑和启发过程(heuristics)组件执行安全技术控制的策略和配置的分析,与逻辑区的上下文及其在元件事件流的上下文内的信息资产有关且在其内。此组件出于确认仍在原位的控制的目的测量包含在事件中的数据,并将那些控制确认映射到各种合规性框架(诸如pcidss2.0、hipaa、cobit4.1、diacap和/或fisma)以及任意框架,诸如按照操作员的意愿通过以下各项的各种组合的规范设计的那些:策略、技术控制、资产属性、与被事件验证的scms的所需交互和/或各种类型的元件的属性,诸如在图1中描绘的那些。此逻辑评估安全技术控制配置和资产属性的变化,并且出于保持安全技术控制的策略和应用及与基准的合规性的目的基于那些资产属性变化来执行安全技术控制策略重配置。此逻辑评估各种策略设置并响应于资产属性变化和资产trustzone成员资格变化而采取适当行动。
控制管理和指令组件执行指令的构造,并发起指令到计算环境元件的传送以影响来自元件的适当动作,包括:事件的生成、在任意方向上的配置和过程数据的传输、安全技术控制的开始和停止、用已更新策略进行的安全技术控制的重配置、任何类型的元件的重配置、程序或进程的开始和停止、配置或影响配置的属性的改变以及按照通过事件或指令供应的配置数据的限定向任何信息资产施加控制的确认。
事件数据库是被用于来自包括安全控制软件本身的任何和所有元件的事件的存储、检索以及管理的数据库。此数据库被用来出于在其它组件中实现的各种逻辑块和其它过程的目的而存储且随后查询事件以获得资产属性数据、安全控制配置数据、策略数据和事件数据。
资产/属性数据库被用于资产和资产属性数据的存储、检索以及管理。此数据库被用来出于在其它组件中实现的各种逻辑块和启发过程的目的存储且随后查询资产和资产属性数据。
trustzone数据库是被用于逻辑区(trustzones)的存储、检索以及管理的数据库组件。此组件被用来出于在其它组件中实现的各种逻辑块和启发过程的目的而存储且随后查询、更新、修改trustzone、trustzone内的信息资产、与trustzone相关联的安全技术控制策略。
策略数据库是被用于存储、检索、查询以及管理用于安全技术控制、资产、实现本公开的实施例(或其各部分)的软件以及环境的策略的数据库组件。
图3描绘了逻辑区(在本文中也称为trustzone)的逻辑表示。此配置结构用其关联数据结构通过规定安全技术控制的功能和行为的策略的应用来绑定资产和资产群组。trustzones可以具有任意数目的资产和安全技术控制策略。不同的安全技术控制可以具有有允许从/与其它策略的分级或逻辑继承的策略结构,因此,控制-n策略的描绘表示作为用于安全技术控制n的单元而存储的指定安全技术控制在任何时间的特定操作的所有安全技术控制配置策略、文件、数据、配置设置的集合。
鉴于控制策略的数目可以视所支持的安全技术控制的数目而定,可以随着新的控制被开发并变得可用而将新的控制与本公开的实施例集成,并且可以从来自多个安全技术控制的控制功能数据和事件的组合得到。因此,控制策略的数目可以基于用于可用且已配置的技术安全控制和计算环境的安全要求而改变。
trustzone成员资格策略可以基于由scms收集的源自于任何元件的资产属性和事件而规定资产如何被自动地置于一个或多个trustzone中。可以评定每个资产,因为在所有trustzone成员资格策略的上下文内,指示资产属性已改变的事件被安全控制软件接收到,从而通过将资产从一个trustzone移动至另一个或者将资产添加到另一trustzone来影响trustzone成员资格变化。
可以按照任何适当顺序且与任何适当系统、装置/或过程相组合地实施本文中所描绘的方法的元件的任何组合/或子集。可以用任何适当方式来实现本文中描述和描绘的方法,诸如通过在一个或多个计算机系统(包括在图8中描绘的主机系统810)上操作的安全控制软件。安全控制软件可以包括存储在有形计算机可读介质(诸如主机计算机系统810的存储器814)中的计算机可读指令,并且可以被一个或多个处理器(诸如主机计算机系统810的处理器812)执行以执行各种实施例的方法。
图4描绘了根据本公开的各种实施例的示例性过程。在图4中,方法400包括:识别与一个或多个逻辑区相关联的一个或多个资产(405),与一个或多个组件建立连接(410),将一个或多个安全策略与一个或多个逻辑区相关联(415),检测用于一个或多个资产的一个或多个属性的变化(420),检测安全漏洞及其修正(425),改变用于一个或多个资产的区成员资格(430),修改一个或多个防火墙配置设置(435),将一个或多个合规性策略与一个或多个逻辑区相关联(440),分析对防火墙配置设置的修改(445),确定一个或多个合规性水平(450),以及显示一个或多个合规性水平(455)。可以用在计算机系统(诸如图8中描绘的示例性主机计算系统810)上操作的软件来实现方法400的步骤(整体地或部分地以及按照任何期望顺序)。
本公开的实施例可以识别与任何数目的不同逻辑区相关联的任何数目的不同资产(405),诸如图2中描绘的逻辑区1和2中的资产。如上文所讨论的,此类资产可以包括物理和虚拟组件的任何组合。
可以与任何数目的不同软件和硬件组件建立(410)连接。本公开的实施例可以结合帮助将scms与环境内的安全技术控制绑定的各种编程通讯机制操作。可以用任何适当的方式创建逻辑区或trustzone诸如通过与未描绘的逻辑组件的交互、置于与被绑定到scms的安全技术控制有关的一个或多个逻辑区的策略。
可以经由提供关于环境的各种信息的编程通讯机制来接收计算环境事件,包括要由安全技术控制来保护的资产和/或安全技术控制的状态。可以实现安全控制软件与各种组件(诸如管理组件)之间的连接以发送和接收信息、检测各种资产的属性的变化以及控制和配置各种系统,诸如保护一个或多个资产或逻辑区的防火墙。
在一个实施例中,实现本公开的特征的安全控制软件在其本身与虚拟化基础设施的管理元件或资产管理元件(vmwarevsphere服务器)之间以及其本身与用于在相同虚拟化基础设施上实现的虚拟化防火墙(诸如vmwarevcnsapp隔火墙)的管理元件之间经由编程通讯机制(如上所述)来建立连接。可以经由与管理元件和安全控制软件的通信来检测资产的属性的变化。
可以通过周期性地查询管理元件或其它硬件或软件组件来检测资产以及资产的属性的变化。例如,在本文中称为虚拟基础设施监视器(vim)的安全技术控制可以使用到vsphere服务器的连接来识别并枚举所有虚拟化计算元件(即,虚拟机)和所有虚拟交换机。通过与vsphere的api界面,实现本公开的特征的安全控制软件可以周期性地查询并重新枚举已配置虚拟机和虚拟交换机,因此通过将后续查询的结果与先前的查询相比较来确定新资产(诸如虚拟机和虚拟交换机)的创建或对现有资产的属性的改变。可以通过查询资产管理组件以及经由由资产管理组件向安全控制软件发起的通信来监视用于由资产管理组件控制的多个不同资产的属性。
vim还能够查询各种虚拟机配置和设置,诸如用于虚拟机的虚拟机基础设施通用唯一标识符(uuid)、虚拟网络接口卡、虚拟机接口卡网际协议(ip)地址、虚拟交换机内的虚拟机接口卡的当前位置以及更多配置设置,其在本文中可以共同地称为“虚拟机的属性”。通过处理由vim生成的事件,scms将每个虚拟机“接受”为scms内的信息资产,将包括属性的资产数据存储在资产/属性数据库中。
在本示例性实施例中,当计算环境包括突出的虚拟化基础设施时,提供api界面以枚举资产和资产属性的管理元件的可用性使得此过程在编程上被简化。替换实施例可以通过与各种管理元件或其组合、其它技术安全控制(诸如网络扫描器)以及与物理计算元件本身建立编程通讯机制来相对于物理计算元件收集和/或创建相同或类似数据。因此,本公开的实施例可以用物理和虚拟组件的任何组合进行操作。
系统可以将与用于在相同虚拟化基础设施上实现的虚拟化防火墙(即,防火墙管理组件)的管理元件的另一连接实例化。此连接不一定需要包括在其本身中包括技术安全控制,而是包括到防火墙(技术安全控制)的编程界面。可以经由安全控制软件与防火墙管理组件之间的通信来管理防火墙的功能。在示例性实施例中,编程界面或api使得scms能够通过向和从防火墙管理元件发布的指令和收集的事件的组合来完全控制防火墙、防火墙操作和用配置设置和访问控制列表(acl)表示的防火墙策略。此连接和api组成相对于scms的协调安全技术控制。
各种安全策略可以用任何适当方式与不同的资产和/或逻辑区相关联(415)。例如,scms的操作员以及软件控制软件本身可以创建和配置各种逻辑区以及用于此类区的安全策略,表示为规则序列。在一个示例性实施例中,该规则可以具有以下形式:
源_trustzonea目的地_trustzoneb协议端口[允许,拒绝]
在本示例中,每个规则是区访问控制规则,并且所有已配置区访问控制规则的集合在本文中可以称为区访问控制列表或zacl。在上述示例中,源trustzone称为trustzonea且目的地trustzone称为trustzoneb。通过提供此抽象概念,本公开的实施例帮助简化网络安全的从业者知道什么被称为访问控制列表(其通常由源和目的地ip地址组成)的管理。虽然在常规acl内使用类似于ip地址的复杂且不关联的资产属性,但在本公开的实施例所利用的zacl中,所述源和目的地是具有相对于zacl中的资产正在用防火墙安全技术控制保护的信息而言更可识别的人类可读名称的逻辑区。再次地参考图3,每个trustzone可以与用于防火墙安全技术控制的策略相关联(415),因为trustzone位于zacl中(例如经由向sacl添加包含trustzone的区访问控制规则),由此,根据该策略而执行对防火墙的配置的改变。还可以通过例如修改区访问控制规则来针对已经置于zacl终端的任何trustzone编辑或替换安全策略。
安全控制软件可以监视针对一个或多个逻辑区内的所有虚拟机和物理组件的改变(420)。可以分析并处理事件数据,并且经由策略的修改来配置或重配置(435)安全技术控制。可以基于单个资产的单个属性的改变以及基于用于多个资产的多个属性改变的分析来进行用于防火墙的配置设置的修改。例如,再次地参考图3,在其中用于逻辑区1中的资产和逻辑区2中的资产的逻辑区成员资格被交换的情况下,安全控制软件可以分析用于两个资产的区成员资格的改变并根据该分析对用于防火墙的配置设置进行单个改变。除其它的之外,将多个属性变化(诸如上述区成员资格的交换)一起考虑可以帮助本公开的实施例避免对防火墙的重复和欺骗性修改。
继续上述示例,当操作员或软件将资产(asset1)置于trustzonea中时,安全控制软件检测资产(420)的属性的改变,即trustzone成员资格的改变,并且因此修改防火墙配置(435)。在本示例中,作为trustzone改变的结果,安全控制软件包括用于asset1的资产属性ip地址,并且然后通过给防火墙的公式化指令而在防火墙本地表格(acl)中实现防火墙上的acl。如果第二资产(asset2)被置于trustzoneb中,则安全控制软件检测该改变(420),评估用于asset2的资产属性ip地址,并且然后通过给防火墙的公式化指令在防火墙的本地表格(acl)中实现防火墙上的acl(435)。在这里,假设期望的是如果trustzonea与trustzoneb之间的所有传输控制协议(tcp)连接被拒绝,则本地防火墙规则(acl)可以表现为:
asset1_ip_addressasset2_ip_addresstcp任何拒绝
并且zacl可以表现为
trustzoneatrustzonebtcp任何拒绝
针对被添加到trustzonea或trustzoneb的每个资产,系统可以继续通过后续指令来构建本地防火墙acl,随着操作员用资产填充trustzone而自动地配置防火墙。
本公开的实施例可以进行操作以检测资产的属性的任何期望改变,诸如资产的网际协议(ip)地址。例如,如果动态主机配置协议(dhcp)ip地址租约到期且asset1在租约更新时接收到不同的ip地址;或者asset1在被断电一段时间之后通过dhcp接收到不同的ip地址;或者黑客改变ip地址以求绕过网络接入控制;或者管理员意外地分配了错误的ip地址(错误键入)—在所有情况下,asset1的ip地址改变。由于本公开的安全控制软件正在监视所有资产的资产属性(例如,通过vim),所以当检测到资产属性改变时(420),安全控制软件可以制定并发送指令(435)以修改防火墙上的acl以反映该新的ip地址。
现在考虑第三trustzone,即trustzonec,操作员想要允许从其到trustzoneb的所有tcp连接。用于这些策略的zacl将看起来是这样:
trustzoneatrustzonebtcp任何拒绝
trustzonectrustzonebtcp任何允许
在使用这些trustzone的示例中,考虑的是,作为架构改变的结果,现在需要允许asset1(当前在trustzonea中)实现到asset2(当前在trustzoneb)中的任何tcp连接。asset1可以被从trustzonea移动至trustzonec。系统通过其对资产属性的监视来检测该移动(420)并可以向防火墙指定指令(435)以从将asset1的ip地址从拒绝acl去除并将asset1的ip地址添加到允许acl。这可以导致完全改变用于asset1和asset2两者的隔火墙策略,并且可以自动地、以最少的操作员努力且在不需要在防火墙上操纵复杂的数学acl的情况下执行。以这种方式,可以响应于检测到资产从一个逻辑区到另一个的移动而修改防火墙的配置设置以允许或阻止移动的资产与另一资产或组件之间的通信。
除其它的之外,用trustzone进行的逻辑分区帮助在影响防火墙的操作的资产属性由于自然、意外或恶意原因被修改时针对安全技术控制防火墙保持策略和策略的完整性。另外,本公开的实施例在当资产(诸如物理硬件组)在物理上移动位置或者简单地被从一个逻辑区再分配给另一个而未在物理上移动资产时重配置防火墙的设置方面是同样有效的。此外,可以如物理资产的位置可以的那样经由安全控制软件与各种资产管理组件之间的连接来跟踪虚拟化资产在一个管理元件的管理到另一管理元件之间的移动(例如,vmotion事件或者从一个虚拟基础设施到另一个的迁移)。
本公开的实施例可以根据期望(诸如当资产属性vm名称改变时)将资产(即,改变其逻辑区成员资格)从一个trustzone移动至另一个(430)。在其它实施例中,可以针对改变监视用于所述资产、其它资产或任何元件的不同属性或属性组合,并其影响用于资产的相同trustzone改变行为。因此,如上文举例说明的,可以基于由实现本公开的特征的安全控制软件检测到的属性改变的性质来保持或改变(整体地或部分地)防火墙策略。
本公开的实施例在考虑从其它安全技术控制的操作(例如漏洞扫描器或恶意软件检测)导出的资产属性时具有显著地实用性。新的漏洞和病毒不断地被发现,因此本公开的实施例可以通过允许设计师为trustzone配置更有限的网络接入或者根本没有网络接入来帮助促进用于这些事件的防范措施的预先规划和预先配置。
再次地参考图4,在资产上检测到安全漏洞(诸如病毒或其它恶意软件或者硬件或软件中的缺陷)时(425),本公开的安全控制软件可以通过将资产(430)移动至预定义trustzone来自动地限制或终止网络接入直至其它自动化安全技术控制更新漏洞软件或去除病毒为止。此类封锁可以响应于检测到发起资产的自动化移动被清除的资产属性条件(420)或者从安全控制软件接收到安全漏洞已被解决的另一指示而被自动地去除。一旦安全漏洞被解决,则资产可以被自动地移回到原始trustzone,并且原始网络接入策略(如在zacl中表示的)自动恢复。
针对各种合规性框架,本公开的安全控制软件可以执行框架中的合规性控制与各种安全技术控制(技术控制)之间的逻辑映射。管理控制还可以通过(例如)由安全控制软件生成并指示与安全控制软件的特定操作员交互的完成、指示工作流程(必须完成的过程或程序)的完成和/或满足如在框架中定义的管理控制的事件而被映射到框架中的合规性控制。此映射称为合规性映射,并且在本公开的一个实施例中,是在策略和基准逻辑和启发过程组件以及策略数据库(参见图2)内实现的。
再次地参考图1,一个或多个合规性控制策略可以与一个或多个逻辑区和/或资产相关联(440)。当合规性控制所需的技术控制被确认为是针对逻辑区中的资产时,则安全控制软件因此可以使用合规性映射来调整用于该合规性控制的合规性水平。
针对安全技术控制,可以由本公开的安全控制软件用如上文针对防火墙所述的用于安全技术控制的适当策略基于trustzone中的逻辑分区机制和成员资格来执行对任何一个资产的安全技术控制的应用的确认。也可以确认任何附加安全技术控制(例如ips、漏洞扫描器、流程审计),诸如通过与用于各种技术控制的管理元件的各种交互。
针对管理控制,指示由操作员在安全控制软件的用户界面内调用的操作序列已经完成的scms事件确认管理控制已被满足。管理控制的示例是报告的产生和共享。在此类示例中,操作员排定报告并指定用以接收该报告的联系人列表。在该排定完成时,生成事件,该事件指示报告被排定交付,因此满足要求包含在可用的任何报告中的信息的协作或共享的任何管理控制。替换实施例可以实现用于针对任何过程或程序的任何交互序列(例如configurationwizards)的事件,并且确认与计算环境中的安全技术控制、管理控制、管理元件、安全元件、网络元件以及计算元件有关的任何数目的过程和程序,因此提供本质上是程序上的合规性控制的确认。
当期望遵守特定合规性框架时,操作员可以通过逻辑区创建和配置组件(参见图2)来选择用于任何一个或多个trustzone的合规性框架。一旦对trustzone应用合规性框架设置,则在用于选定的合规性框架的合规性映射的上下文内评估所有技术安全控制和执行的管理控制的策略和配置。
安全控制软件可以分析对防火墙配置设置的一个或多个修改(445)。随着每个控制被配置成,安全控制软件使用合规性映射来生成用于安全技术控制和管理控制序列所支持的每个合规性控制的合规性水平(450)。
合规性映射可以将其中来自一个技术控制或策略的信息不足以确保对合规性控制的合规性的已确认技术控制。例如,在上述示例中,访问控制的防火墙实现、即acl仅足以在资产属性ip地址保持与在防火墙acl中配置的那个ip地址相同时确保资产受到防火墙的保护。上述示例证明对于任何资产而言,属性ip地址可以且将会改变。通过监视用于虚拟化信息资产(vm)的资产属性改变(包括资产属性ip地址改变)的vim控制的组合,本公开的合规性映射(其出于此目的将这些控制组合)提供比单独的防火墙acl的常规监视方法更稳健的合规性的断言。可以将vim控制和防火墙的此特定组合广义化至vim与任何网络安全技术控制的任何组合,其取决于要正确地运行的资产属性ip地址。可以进一步将不同的技术和管理安全控制的组合广义化以通过例如使用允许以已确认方式应用和确认多个安全控制策略的逻辑分区来改善合规性控制的断言。
如上所述,本公开的实施例可以响应于ip地址改变而自动地更新用于防火墙的策略,因此保持合规性。此情形举例说明了为什么有时可能期望评估多个技术控制以帮助保持与合规性框架的合规性,并且证明了本公开的实施例的有利能力。虽然用于合规性映射的组合安全技术控制的本示例仅利用两个安全技术控制,但可以被组合以用于合规性映射的安全技术控制和/或事件的数目是无边界的并且在本公开的实施例中可以利用任意数目的组合。例如,在图5中,图500图示出沿着x轴的三个技术控制,沿着y轴是合规性对合规性控制的贡献水平。
可以通过具有zacl列表的用于trustzone中的任何资产的逻辑分区来确认如上所述的防火墙控制的应用。针对要求实现由防火墙实行的网络基础接入控制的任何合规性控制,安全控制软件可以与其它已确认安全技术控制相组合地利用实例化合规性映射来计算用于每个所支持的合规性控制的当前合规性水平。如在映射中表示的组合中的每个安全性技术控制可以贡献定义合规性水平测量的归一化部分。可以以数值方式表示这些水平,诸如0与3之间的水平,并且如图7中所示地实时地或近实时地以图形方式显示水平(455)。可以针对任何数目的逻辑区、资产或其它硬件和软件组件(诸如防火墙)而生成合规性水平(诸如数值分数),并且可以通过替换合规性映射而同时地针对多个合规性框架进行评估。
合规性框架一般地被配置成保护数据,诸如在支付卡行业(pci)数据安全标准的情况下的持卡人数据。一般地,处理服从任何合规性框架的数据的计算环境中的单独元件的数目大于一个且通常是许多。处理服从合规性框架的数据的所有元件或资产的总数称为合规性范围。与任何框架有关的计算环境的合规性水平可以仅如在合规性范围内的最少合规性资产内测量的水平一样高。逻辑分组支持多个信息资产在任何trustzone中的包括。针对具有设定的合规性框架的任何trustzone,安全控制软件测量用于所有支持的合规性控制(针对trustzone内的每个资产)的合规性水平。如针对任何合规性控制所显示的聚合trustzone合规性水平被计算为用于trustzone内的所有资产的最低测量合规性水平。
图6和图7图示出本公开的示例性实施例如何使用径向图格式来显示用于多个合规性控制的合规性水平(455)。在本示例中,图显示了用于pcidss2.9框架的合规性,但是可以在相同或不同图表中以图形方式描绘合规性水平。
用图7中的径向图,基于上文所述的计算方法针对称为“payment”的trustzone中的所有资产显示用于所有合规性控制的聚合合规性水平。针对每个合规性控制,计算的合规性水平被显示为径向图的径向元素,并且用来自合规性框架的区段号识别。
本公开的实施例可以包含多个合规性映射,对于其而言基于针对每个trustzone设定的特定且唯一的合规性框架来计算并显示用于该trustzone的合规性水平。例如,计算环境可以包含经受多个合规性框架的数据。除其它的之外,用trustzone进行的逻辑分区允许基于这些合规性框架将进行资产分组,并且同时地报告用于那些特定且有区别的框架的合规性水平,包括能够通过将资产添加到具有不同合规性框架设置的多个trustzone的过程来测量多个合规性框架的上下文内的用于该资产的合规性水平。
图8示出了可以结合各种实施例使用的系统的框图。虽然图8图示出计算机系统的各种组件,但其并不意图表示将组件互连的任何特定架构或方式。还可以使用具有更少或更多组件的其它系统。
在图8中,系统800包括主机计算机系统810,其包括处理器812、存储器814以及用户接口816。主机计算机系统810可以包括任何数目的不同处理器、存储器组件以及用户接口组件,并且其可以与本公开的实施例相结合地与任何其它期望系统和装置相交互。
主机系统810的功能(包括图4和图9中描绘的方法(整体地或部分地))可以通过处理器812执行存储在系统810的存储器814中的计算机可读指令来实现。存储器814可以存储任何计算机可读指令和数据,包括软件应用程序和嵌入式操作代码。
还可以通过存储机器可读指令的各种硬件组件(诸如专用集成电路(asic)、现场可编程门阵列(fpga)和/或复杂可编程逻辑装置(cpld))来实现主机系统810或结合本公开的实施例操作的其它系统和装置的功能。根据某些实施例的各方面的系统可以结合软件和/或硬件组件的任何期望组合进行操作。处理器812检索并执行存储在存储器814中的指令以控制系统810的操作。结合本公开的实施例可以使用任何类型的处理器,诸如集成电路微处理器、微控制器和/或数字信号处理器(dsp)。结合本公开的实施例操作的存储器814可以包括不同存储器存储装置的任何组合,诸如硬驱、随机存取存储器(ram)、只读存储器(rom)、闪存或者任何其它类型的易失性和/或非易失性存储器。可以用任何期望方式将数据存储在存储器814中。
主机系统810包括用户接口816,其可以包括用以从用户接收命令、数据及其它适当输入的任何数目的输入装置(未示出)以及用以为用户提供数据、通知及其它适当信息的任何数目的输出装置(未示出)。典型i/o装置可以包括鼠标、键盘、调制解调器、网络接口、打印机、扫描仪、摄像机及其它装置。
主机系统810可以用任何期望方式(包括经由网络830)与一个或多个客户端设备820及其它系统和装置通信。客户端装置820可以包括结合本公开的系统和方法操作的任何计算装置。客户端装置820可以是或者包括膝上型计算机、台式计算机、移动订户通信装置、移动电话、个人数字助理(pda)、平板计算机、电子书或书籍阅读器、数字式相机、摄像机、视频游戏控制台和/或任何其它适当计算装置。
网络8300可以包括任何电子通信系统或方法。可以使用任何适当通信方法来执行结合本公开的实施例进行操作的组件之间的通信,诸如电话网络、外部网、内部网、因特网、交互点装置(销售点装置、个人数字助理(例如,
用于网络流传分析和报告的系统和方法
用于网络监视、网络控制以及网络安全的许多常规系统通常使用来自路由器、交换机或者被配置成使用称为“ip流信息导出”(ipfix)(其也称为“netflow”)的标准来收集网络业务统计的其它硬件的网络流程数据。ipfix允许监视(例如,审计)资产之间的网络交换,并且在一定程度上基于网络连接属性(诸如ip地址、源和目的地端口号以及在ipfix协议中定义且由ipfix发送装置或软件实现的字节计数及其它分组或连接属性)来限定信息交换。然而,常规系统可能不能将用来自其它源的数据(诸如来自入侵检测系统(ids)、入侵预防系统(ips)的数据、漏洞扫描数据、配置数据、防病毒/防恶意软件数据、应用于安全技术控制的策略、操作系统配置数据、应用程序配置数据、在资产上运行的进程(应用程序或操作系统进程)、发起用户识别的过程、二进制数字签名和/或来自防火墙的数据)用ipfix表示的网络连接。
另外,常规系统可能不能提供这些数据元件以及由其前景(perspective)生成组件在计算环境中之执行的动作之间的上下文和因果或结果得到的关系并使其相关。本公开的实施例相反地可以从多个源收集并分析资产和网络数据,并且使用此类数据通过例如针对事件、网络连接、资产操作状态以及安全技术控制的状态的相关支持并执行复杂的组合分析而与常规系统相比呈现安全状况和安全相关现象的更完整且准确的表示。
图9描绘了根据本公开的各种实施例的示例性过程。图9中的方法的元素的任何组合和/或子集可以按照任何适当顺序且结合任何适当的系统、装置和/或过程(包括图4中所示的过程和图8中所示的系统)来实施。在图9中,方法900包括从不同的源收集数据(例如,资产和/或网络数据)(905),过滤数据(910),从数据中识别一个或多个事件和与此类事件相关联的资产(915),从数据中识别资产之间的连接及其特性(920),并且生成(925)且呈现(930)流量信息图。方法900还包括:接收流程信息图中的组件的选择(935),响应于所述选择而显示附加信息(940),接收对网络业务规则的编辑(945)以及对网络应用此类规则(950)。方法900另外包括收集已更新数据(955)并用已更新数据来更新流程信息图(960)。方法900还包括储存数据(965)、分析数据(970)、生成一个或多个警报(975)、生成一个或多个报告(980)以及导出数据(985)。
本公开的实施例可以从任何数目的不同源和/或不同类型的源收集数据(905),包括关于资产、网络事件以及系统操作属性的数据。此类收集数据可以包括例如网络流程属性、关于资产的用户的信息、关于资产以及与资产相关联的硬件和/或虚拟组件的信息、关于软件应用程序的信息、不同网络节点的属性、安全漏洞、资产的网络的属性、关于数据分组的内容的信息以及任何其它期望信息。在一个示例中,实现方法900的系统可以从收集“netflow”数据的硬件组件(诸如路由器和交换机或其虚拟类似物)收集网络中的虚拟和物理资产之间的网络流程数据(例如,关于消息交换和尝试的消息交换的信息)。另外或替换地,可以从一个或多个其它源收集数据,诸如入侵检测系统(ids)、入侵预防系统(ips)和/或防火墙。收集的数据还可以包括定义特定资产、资产群组和/或逻辑区之间的被允许和被阻止业务的安全技术控制配置属性或策略。在某些实施例中,可以针对各种逻辑区定义被允许和被阻止业务的列表,并且在本文中可以称为“区访问控制列表”(zacl)。
可以用任何适当方式来接收或收集数据(905),诸如通过轮询和/或接收数据流(如在ipfix流、系统日志、api等中)。可以从多个源收集数据,归一化并出于将所有“属性”与网络流传数据相关联的目的组合成记录列表,因此允许本公开的实施例用各种方法(包括如在本文中进一步描述的图表)来创建和呈现相关。
可以用各种方式来过滤从不同源收集的数据(910)。例如,可以使用来自不同源的数据来填充数据结构,去除来自另一源的数据冗余的数据,从而产生具有从不同源收集的唯一网络流程属性和特性的数据结构。可以将从扫描接收到的漏洞数据与特定网络流程相关联(例如通过本文中所述的归一化和相关过程),从而允许系统的用户识别各种资产操作状态之间的关系和从或到资产或多个资产的网络连接。还可以根据用户偏好来过滤所收集的数据。例如,用户可能对特定网络事件(诸如安全破坏)感兴趣,并且因此实现方法900的系统可以自动地(或响应于特定用户输入)而滤出与特定被破坏资产无关的数据或在一个或多个资产上运行的被危及的应用服务。
本申请的实施例可以基于所收集的数据来识别各种网络业务事件以及与此类事件有关的网络资产(910)。事件可以包括例如网络中的两个资产之间的数据分组的交换、尝试或实际安全破坏、软件更新、与资产相关联的故障(例如,硬件和/或软件)以及其它事件。可以在一个或多个时间段内定义事件,并且本公开的实施例可以对实时地(或近实时地)接收到的数据或者先前记录和存储的数据进行操作。例如,金融网络的用户可能希望检查在三小时时段内记录的四个特定网络资产之间的网络业务以调查可能的电信诈骗尝试。在本示例中,实现本公开的系统可以检索用于定义时间段的网络数据,滤出与所述四个资产或所述三小时窗口无关的数据,并且自动地识别事件和与潜在诈骗相关联的资产。
本公开的实施例同样地能够识别资产之间的各种连接(920)以及此类连接和资产的特性。例如,由系统收集的数据(905)可以用来识别:关于一个或多个资产的数据、关于一个或多个网络事件的数据和/或关于一个或多个系统操作属性的数据。可以基于所收集的数据的过滤来定义或限定资产和/或资产之间的连接的特性(910)。资产之间的连接的特性可以包括例如所传送数据的尺寸、何时传送数据的时间、数据的源和目的地、传送数据的速率以及其它特性。
在示例性方法900中,生成流程信息图(925)以在视觉上示出各种网络资产和此类资产之间的连接。然后诸如经由由用户操作的客户端装置(例如,图8中的客户端装置820)的用户接口显示器向用户呈现流程信息图(930)。图10图示出流程信息图的示例。在本示例中,经由可选择定向流程线示出了多个trustzone资产之间的网络业务。流程信息图描绘在网络资产之间被允许的网络业务(即,经由实线流程线)和被阻止的业务(即,经由虚线流程线)。另外,对每个流程线加标签以指示用来识别连接的数据的源的类型(即,“netflow,”、“ids流程”、“ips流程”、“zacl允许”以及“zacl拒绝”)。
可以从用户接收组件的选择(例如,网络资产或资产之间的连接)(935)。例如,在其中在由用户控制的客户端装置820的显示屏上呈现流程信息图的情况下,用户可以(例如,使用鼠标)选择流程线以执行各种动作。例如,流程线的选择可以诸如通过向用户呈现与流程线相关联的连接的特性(例如,在步骤920中识别)来显示与连接相关联的附加信息(940)。流程线的选择还可以允许用户查看并编辑(945)用于允许和阻止连接上的业务的规则。然后可以将以这种方式编辑的规则应用于连接(950)。
可以结合网络流程信息、规则及其它数据以表格格式(在图11中描绘了其示例)来呈现流程信息图。除其它的之外,图11中的表允许用户使用不同字段(诸如基于时间戳、源资产名称或其它属性)来搜索和/或过滤表格中的数据并例如通过双击表格中的条目来创建和编辑规则。
图12图示出示出了可以在数据表(诸如图11中的数据表)中以及响应于由用户选择流程信息图中的组件而呈现的zacl规则描述字段的示例性屏幕快照。如所示,“描述字段输入对话框”可以被用户用来编辑应用于资产之间的连接的规则。
图13图示出示出了zacl规则被触发的另一示例性屏幕快照。在本示例中,其中业务被zacl规则允许的事件促使规则被用绿色突出显示,则其中业务被阻止的事件促使zacl规则被用红色突出显示。还可以使用用于示出被允许/被阻止的业务的其它视觉指示符。
图14和15图示出网络对象的创建(图14)和zacl规则中的网络对象的使用(图15)。图16图示出具有多个源和目的地的zacl规则。
图17图示出流程信息图上的经由实线和虚线(分别地)的被阻止和被允许业务以及允许用户选择“zacl记录”的与流程信息图相关联的数据表上的下拉。zacl规则内的记录的选择或取消选择允许用户从流程信息图上的规则包括或去除(分别地)规则命中。
图18图示出示例性实施例的“清洗流”特征,由此可以从流程信息图选择和去除特定流程,从而允许用户更精确地集中于期望的一组连接。
图19图示出流程在流程信息图(图10)或数据表(图11)上显示之前的流程的过滤。这进一步帮助用户选择用户感兴趣的特性流程。
如上所述,流程信息图可以描绘关于网络资产和此类资产之间的网络连接的各种不同信息。图20至图22图示出识别网络资产之间的连接的特性和/或资产的特性的流程信息图的示例。此类特性的识别可以响应于经由用户界面从用户的属性或其它用户输入的选择和/或基于由实现本公开的实施例的系统进行的特性的自动选择而发生。
图20图示出其中用户已从一组所收集的数据中的属性列表之中选择“流程数据”的示例性流程信息图。在本示例中,在屏幕左侧的“流程数据”图标被突出显示,并且在五个网络资产(即,本示例中的trustzone)中的每一个之间画出粗体流程线以基于所选“流程数据”属性示出其各自连接性。除用粗体和突出显示之外,可以使用文本、字体、图标、阴影等的各种组合在流程信息图中在视觉上指示资产和网络连接的特性。
可以使用任何数目的不同属性在视觉上描绘关于流程信息图中的网络连接和资产的信息。在图21中,例如,来自在屏幕左侧的“漏洞数据”菜单的特定漏洞被选定。在这里,系统已将流程信息图中的资产(即,“trustzonepciapp1web”资产)识别为与漏洞相关联(例如,具有由于过期软件而引起的漏洞)以突出显示。另外,来自“机器数据”属性菜单的用户标识符(“bobjones”)也被选定,并且“trustzonepciapp1users”资产与“trustzonepciapp1web”资产之间的连接被系统选择为与选定用户标识符相关联并因此在流程信息图上突出显示。图22描绘了响应于从图21将“机器数据”属性取消选择的流程信息图的外观,仅留下“trustzonepciapp1web”资产被突出显示以对应于选定的安全漏洞。
图23和图24描绘了可以用流程信息图来描绘的信息的附加示例。在图23中,“漏洞数据”和“流程数据”属性两者被选定,如其各自的突出显示所示出的。在图的顶部处,显示关于网络中的三个资产的信息,而图以在图表的左侧的“输入”流程数据和在图表的右侧的“输出”流程数据的形式示出了与资产相关联的网络数据。另外在图表的中间示出了系统操作属性。图24图示出“流程数据”属性未被选定的情况下的图23的流程信息图。
可以周期性地或者实时地/近实时地收集已更新数据(955)。可以同样地更新显示给用户的流程信息图(960)并呈现以示出周期性地或实时地/近实时地进行的对资产和/或连接的改变。
本申请的实施例可以存储(965)和分析(970)所收集的数据、与流程信息图的生成和/或呈现有关的数据及其它信息。例如,实现方法900的系统可以存储被收集并用来生成流程信息图的数据以及在特定时间点或者在特定时间段期间的特定流程信息图的屏幕快照,因此使得用户能够检索期望的图表而不必从头开始重新创建该图表。可以出于各种目的分析任何期望数据。例如,可以分析所收集的数据(例如,将其与安全策略、标准合规性策略和/或性能标准相比较)并基于该分析而生成一个或多个警报(975)。
还可以生成各种报告(980)并呈现给系统的用户和/或第三方。报告可以被包括在电子文档中,并且可以提供网络、trustzone和/或单独资产的某个方面的状态、状况和/或历史的概要。在一个示例性实施例中,可以创建详述报告运行时的trustzone中的所有资产的合规性状态的报告。在另一示例中,可以创建详述trustzone中的所有资产或特定资产的检测到的漏洞的报告。还可以生成报告以提供用于trustzone和/或资产的在特定时间点(例如,“屏幕快照”)的信息概要或在一定时间段内的信息概要(例如,示出数据中的趋势)。示例性实施例还可以生成详述区访问控制列表(zacl)以及具有其资产ip地址和trustzone成员资格的所有资产的报告。
方法900还包括将信息输出给第三方(985)。可以输出任何此类信息,诸如所收集的数据、流程信息图及其它信息,从而允许第三方执行此类数据的其自己的分析和处理。可以用任何期望方式将数据输出到第三方,诸如经由与应用编程界面(api)、通过实时或近实时数据流或者经由任何其它期望界面。
可以经由网络浏览器和/或利用网络浏览器的应用程序界面来执行各种实施例的功能。此类浏览器应用程序可以包括安装在计算机单元或系统内以执行各种功能的因特网浏览软件。这些计算单元或系统可以采取计算机或计算机组的形式,并且可以使用任何类型计算装置或系统,包括膝上计算机、笔记本、平板电脑、手持式计算机、个人数字助理、机顶盒、工作站、计算机—服务器、主机计算机、微型计算机、pc服务器、通用计算机、计算机的网络集合、个人计算机和平板计算机,诸如ipad、imac以及macbook、自助终端、终端、销售点(pos)装置和/或终端、电视或者能够通过网络接收数据的任何其它装置。各种实施例可以利用microsoftinternetexplorer、mozillafirefox、googlechrome、applesafari或者可用于浏览因特网的任何其它的无数软件包。
各种实施例可以结合任何适当的操作系统(例如,windowsnt、95/98/2000/ce/mobile、os2、unix、linux、solaris、macos、palmos等)以及通常与计算机相关联的各种常规支持软件和驱动程序进行操作。各种实施例可以包括任何适当的个人计算机、网络计算机、工作站、个人数字助理、蜂窝电话、智能电话、微型计算机、主机等。实施例可以实现安全协议,诸如安全套接层(ssl)、传输层安全(tls)以及安全壳(ssh)。实施例可以实现任何期望的应用层协议,包括http、https、ftp以及sftp。
可以将各种组件、模块和/或引擎实现为微应用程序或微app。微app通常部署在移动操作系统的上下文中,包括例如palm移动操作系统、windows移动操作系统、android操作系统、appleios、blackberry操作系统等。微app可以被配置成经由管理各种操作系统和硬件资源的操作的一组预定规则来利用较大操作系统和关联硬件的资源。例如,在微app期望与除移动装置或移动操作系统之外的装置或网络通信的情况下,微app可以在移动操作系统的预定规则下利用操作系统和关联装置硬件的通信协议。此外,在微app期望来自用户的输入的情况下,微app可以被配置成从监视各种硬件组件且将检测到的输入从硬件传送到微app的操作系统请求响应。
如本文中所使用的术语“网络”包括结合了硬件和/或软件组件的任何云、云计算系统或电子通信系统或方法。可以通过任何适当的通信信道来实现各方之间的通信,诸如电话网络、外部网、内部网、因特网、交互点装置(销售点装置、个人数字助理(例如
各种系统组件可以被独立地、单独地或共同地经由数据链路而适当地耦合到网络,所述数据链路包括例如通常结合标准调制解调器通信、线缆调制解调器、卫星网络、isdn、数字订户线(dsl)或各种无线通信方法使用的通过本地环路到因特网服务提供商(isp)的连接。应注意的是可以将网络实现为其它类型的网络,诸如交互式电视(itv)网络。
系统可以部分地或完全地使用云计算来实现。“云”或“云计算”包括用于使得能够实现对可以用最小的管理努力或服务提供商交互快速地提供和释放的可配置计算资源(例如,网络、服务器、储存器、应用程序以及服务)的共享池进行方便的按需网络访问的模型。云计算可以包括位置无关计算,由此共享服务器按需向计算机及其它装置提供资源、软件以及数据。
可以与网络服务、公用事业计算、通用和个性化计算、安全和识别解决方案、自主计算、云计算、商用计算、移动性和无线解决方案、开放源、生物测量、格网计算和/或网格计算相结合地使用各种实施例。
在本文中讨论的任何数据库可以包括关系、分级、图形或面向对象结构和/或任何其它数据库配置。此外,可以用任何适当方式来组织数据库,例如作为数据表或查找表。每个记录可以是单个文件、一系列文件、数据字段的链接系列或任何其它数据结构。可以通过任何期望的数据关联技术(诸如在本领域中已知或实施的那些)来实现某些数据的关联。例如,可以手动地或自动地实现该关联。
任何数据库、系统、装置、服务器或系统的其它组件可以在单个位置处或在多个位置处由其任何组合组成,其中,每个数据库或系统包括各种适当安全特征中的任何一个,诸如隔火墙、访问代码、加密、解密、压缩、解压缩等。
可以经由在本领域中现在可用或者可以变得可用的任何技术来执行加密——例如twofish、rsa、elgamal、schorr特征、dsa、pgp、pki以及对称和非对称密码系统。
实施例可以使用标准拨号、线缆、dsl或本领域中已知的任何其它网际协议连接到因特网或内部网。交易可以通过防火墙以防止来自其它网络的用户未授权访问。
在本文中讨论的计算机可以提供被用户访问的适当网站或其它基于因特网的图形用户界面。例如,可以结合microsoft操作系统、microsoftnt网络服务器软件、microsoftsql服务器数据库系统以及microsoftcommerce服务器来使用microsoft因特网信息服务(iis)、microsoft交易服务器(mts)以及microsoftsql服务器。另外,可以使用诸如access或microsoftsql服务器、oracle、sybase、informixmysqlinterbase等组件来提供活动数据对象(ado)合规数据库管理系统。在另一示例中,可以结合linux操作系统、mysql数据库以及perl、php和/或python编程语言来使用apache网络服务器。
可以通过具有网页的网站来促进本文中所讨论的通信、输入、存储、数据库或显示中的任何一个。如在本文中所使用的术语“网页”并不意图限制可能用来与用户相交互的文档和应用程序的类型。例如,典型网站可以(除标准html文档之外)包括各种形式、java小程序、java脚本、活动服务器页面(asp)、公共网关接口脚本(cgi)、可扩展标记语言(xml)、动态html、级联样式表(css)、ajax(异步java脚本和xml)、帮助器应用程序、插件等。服务器可以包括从网络服务器接收请求的网络服务,该请求包括url和ip地址。网络服务器检索适当的网页并将用于该网页的数据或应用程序发送到ip地址。网络服务是能够通过通信手段(诸如因特网)与其它应用程序相交互的应用程序。
各种实施例可以采用任何期望数目的方法以便在基于浏览器的文档内显示数据。例如,可以作为标准文本或者在固定列表、可滚动列表、下拉列表、可编辑文本字段、固定文本字段、弹出窗口等来表示数据。同样地,实施例可以利用任何期望数目的方法以便修改网页中的数据,诸如使用键盘的自由文本输入、菜单项的选择、复选框、选项框等。
可以根据功能块组件、屏幕截图、可选选择和各种处理步骤来描述本文中举例说明的示例性系统和方法。应认识到的是可以用被配置成执行指定功能的任何数目的硬件和/或软件组件来实现此类功能块。例如,系统可以采用各种集成电路组件,例如存储元件、处理元件、逻辑元件、检查表等,其可在一个或多个微处理器或其它控制设备的控制下执行多种功能。同样地,可以用任何编程或脚本语言来实现系统的软件元件,诸如c、c++、c#、java、javascript、vbscript、macromediacoldfusion、cobol、microsoftactiveserverpages、组件、perl、php、awk、python、visualbasic、sqlstoredprocedures、pl/sql、任何unix外壳脚本以及可扩展标记语言(xml),利用数据结构、对象、过程、例程或其它编程元件的任何组合来实现各种算法。此外,应注意的是系统可以采用用于数据传输、信令、数据处理、网络控制等的任何数目的常规技术。此外,可以使用该系统来检测或预防客户端侧脚本语言(诸如javascript、vbscript等)的安全问题。
如本领域的技术人员将认识到的,可以将系统体现为现有系统、附加产品、执行升级软件的处理设备、独立系统、分布式系统、方法、数据处理系统、用于数据处理的装置和/或计算机程序产品的定制。因此,系统或模块的任何部分可以采取执行代码的处理设备、基于因特网的实施例、完全硬件实施例或者将因特网、软件和硬件的各方面组合的实施例的形式。此外,系统可以采取具有在存储介质中体现的计算机可读程序代码部件的计算机可读存储介质上的计算机程序产品的形式。可以利用任何适当的计算机可读存储介质,包括硬盘、cd-rom、光学存储装置、磁性存储装置等。
在本文中参考根据各种实施例的方法、设备(例如,系统)以及计算机程序产品的屏幕快照、框图和流程图来描述所述系统和方法。将理解的是可以由计算机程序指令来实现框图和流程图中的每个功能块以及分别地框图和流程图中的功能块的组合。
这些计算机程序指令可以加载到通用计算机、专用计算机或其它可编程数据处理设备上以产生一种机器,使得在计算机或其它可编程数据处理设备上执行的指令产生用于实现在流程图方框中指定的功能的部件。这些计算机程序指令还可以被存储在计算机可读存储器中,该计算机可读介质可以命令计算机或其它可编程数据处理装置以特定方式运行,使得存储在计算机可读存储器中的指令产生一件制品,其包括实现在流程图和/或框图方框中指定的功能/动作的指令部件。还可以将计算机程序指令加载到计算机或其它可编程数据处理设备上以促使在计算机或其它可编程数据处理设备上执行一系列操作步骤以产生计算机实现过程,使得在计算机或其它可编程设备上执行的指令提供用于实现在流程图和/或框图方框中指定的功能的步骤。
因此,框图和流程图的功能块支持用于执行指定功能的部件的组合、用于执行指定功能的步骤的组合以及用于执行指定功能的程序指令部件。还将理解的是可以用执行指定功能或步骤的基于专用硬件的计算机系统或者专用硬件和计算机指令的适当组合来实现框图和流程图的每个功能块以及框图和流程图的功能块的组合。此外,过程流程图的图示及其描述可以参考用户窗口、网页、网站、网络表格、提示等。从业者将认识到的是本文中所述的所示步骤可以包括任何数目的配置,包括窗口、网页、网络表格、弹出窗口、提示等的使用。应进一步认识到的是可以将如所示和所述的多个步骤组合成单个网页和/或窗口,但是其为了简单起见已被放大。在其它情况下,可以将作为单个过程步骤示出和描述的步骤分离成多个网页和/或窗口,但是其为了简单起见已被组合。
应将术语“非临时性”理解成仅将传播暂态信号本身从权利要求范围去除,而不撤回对不仅传播暂态信号本身的所有标准计算机可读介质的权限。换言之,应将术语“非临时性计算机可读介质”的意义理解成仅仅排除在inrenuijten中发现落在根据35u.s.c.§101的可以取得专利主题的范围之外的那些类型的临时性计算机可读介质。
在本文中已相对于特定实施例描述了益处、其它优点以及问题的解决方案。然而,不应将可以促使任何益处、优点或解决方案发生或变得明显的益处、优点、问题的解决方案以及任何元素理解为本公开的关键、要求或必不可少的特征或元素。
虽然本公开包括一种方法,但可设想可以将其体现为有形计算机可读载体(诸如磁性或光学存储器或者磁盘或光盘)上的计算机程序指令。本领域的技术人员已知的上述示例性实施例的元素的所有结构、化学以及功能等价物被通过引用明确地结合到本文中,并且意图被本权利要求涵盖。此外,装置或方法不需要解决本公开设法解决的每一个问题以使其被本权力要求涵盖。此外,本公开中的元件、组件或方法步骤并不意图专用于公众,无论在权利要求中是否明确地叙述了该元件、组件或方法步骤。不应根据35u.s.c.112、第六段的条款来理解本文中的权利要求元件,除非使用“用于...的部件”明确地叙述该元件。如本文中所使用的术语“包括”、“包含”或其任何其它变体意图覆盖非排他性包括,使得包括元素列表的过程、方法、物品或设备不仅包括那些元素,而且可以包括未明确地列出或者为此类过程、方法、物品或设备所固有的那些元素。
在使用类似于“a、b或c中的至少一个”、“a、b以及c中的至少一个”、“一个或多个a、b或c”或者“a、b以及c中的一个或多个”的短语的情况下,意图在于将该短语解释成意指在实施例中可以单独地存在a,在实施例中可以单独地存在b,在实施例中可以单独地存在c,或者在单个实施例中可以存在元素a、b和c的任何组合;例如,a和b、a和c、b和c或者a和b和c。
在不脱离本公开的范围的情况下可以对公开实施例进行改变和修改。这些及其它改变或修改意图被包括在如在以下权利要求中表示的本公开的范围内。