用于不可变应用审计代理跟踪的层7代理制造技术

技术编号:26228353 阅读:69 留言:0更新日期:2020-11-04 11:11
提供了一种系统,该系统包括被布置成获取在网络中发送的应用层网络流量的一个或多个应用层审计代理。每个应用层审计代理被配置为:接收作为生产者实体与消费者实体之间的通信会话的一部分发送的应用层网络流量;将关于应用层网络流量的信息记录到包括不可变数据块的区块链的分布式许可数据库中的审计日志;以及将应用层网络流量转发到生产者实体或消费者实体。

【技术实现步骤摘要】
【国外来华专利技术】用于不可变应用审计代理跟踪的层7代理
本公开涉及审计应用网络流量。
技术介绍
应用客户端和服务器通过通信网络在所谓的“应用层”或“层7”处交换信息。负责确保这些应用客户端和服务器正确运行的运营者偶尔需要检查在这些客户端和服务器之间交换的层7网络流量。另外,出于审计和合规原因,运营者可能希望记录网络流量。附图说明图1是根据示例实施例的系统的框图,该系统包括应用层审计代理的代理网络,应用层审计代理被配置为执行记录应用层网络流量的审计追踪。图2是示出了根据示例实施例的由结合客户端和服务器之间的通信会话的应用层审计代理执行的操作的序列图。图3是示出了根据示例实施例的如何在区块链中记录应用审计数据的图示。图4是根据示例实施例的用于记录应用层审计数据的方法的流程图。图5是根据示例实施例的应用层审计代理的框图。具体实施方式概述在独立权利要求中陈述了本专利技术的一些方面,在从属权利要求中陈述了优选特征。一个方面的特征可以单独地或与其他方面组合地应用于每个方面。在一个实施例中,提供了一种系统,该系统包括被布置为获取在网络中发送的应用层网络流量的一个或多个应用层审计代理。每个应用层审计代理被配置为:接收作为生产者实体与消费者实体之间的通信会话的一部分发送的应用层网络流量;将关于应用层网络流量的信息记录到包括不可变数据块的区块链的分布式许可数据库中的审计日志;以及将应用层网络流量转发到生产者实体或消费者实体。本文还描述了相应的方法和设备,包括网络节点,还描述了用于实现系统的计算机程序、计算机程序产品、计算机可读介质以及在有形介质上编码的逻辑。示例实施例出于审计和合规原因,为了记录网络流量,网络运营者将原始网络数据分组存储到承载应用流量的网络装置上的文件中。替代地,应用流量审计数据可以被发送到中央数据库,在该中央数据库中,维护通过网络发送流量的所有应用的审计信息。这些方法存在挑战。应用审计数据保存在单个集中式数据存储装置中(网络装置上的本地文件或审计数据库)。这样的数据存储装置通常是可修改的,因此,对手可以访问中央数据存储装置并修改应用审计数据。这可能会导致运营者对正在审计的应用的行为做出错误的结论。这允许对手可能擦除或修改应用审计数据中包含的信息,这可能会暴露其行为。事后,检查应用审计数据的运营者无法检测到应用审计数据是否已经被篡改或修改。只能假定应用审计日志中包含的信息真正代表了生成该信息的应用流量。无法知道是否不应信任应用审计日志。此外,不能保证集中式数据存储装置中的应用审计数据与产生该应用审计数据的原始应用流量有关系。因此,运营者必须假定应用审计数据实际上是实际基础应用流量的真实表示。如果由于审计系统中的某些故障或所监视的网络上的某些瞬时故障,任何应用流量未能反映在中央审计数据存储装置中,或未正确地反映在审计存储装置中,则运营者可以从应用的明显状态中得出的结论可能不正确。这是因为审计日志表示的应用状态实际上是不正确的(在故障点,它偏离了实际的应用状态,并且在该故障点之后不能被相信是准确的)。运营者希望以安全、准确的方式记录其应用层网络流量,以便运营者能够正确确定哪些应用行为导致了特定的不良应用状态。事后,合适的应用审计跟踪不应是可修改的,应提供与其准确性有关的保证,并应提供某种机制来检测篡改或其他修改尝试。本文提出的是一种用于创建和管理存储在链接的数据块链中的应用层网络流量审计数据的系统,该数据块链是由应用层代理的网络创建和维持。这样的系统实现了为在应用传统应用审计技术时可能遇到的上述问题提供稳健、可靠的解决方案。现在描述了系统中的每个实体以及其与其他实体的关系,以及与本文提出的审计系统的属性有关的一些术语。运营者——负责确保联网应用的可用性和正确运行,并且诊断和修复可能导致联网应用性能下降的任何问题的实体。作为此责任的一部分,运营者可能有兴趣记录层7流量,以便以后进行检查或审计。生产者——产生运营者有兴趣对其记录以用于审计目的的应用层网络流量的实体。作为联网应用正确运行的要求,该应用流量被中继到消费者,其中其将以某种方式起作用,从而改变联网应用的当前状态。生产者可以是独立的物理服务器、在物理机器上运行的服务器应用进程、在服务器上运行的虚拟机或产生应用层网络流量的任何其他基于物理或软件的实体。消费者——消费来自生产者的应用层网络流量的实体。在接收到合适的应用流量后,消费者修改联网应用的状态,以便联网应用能够继续其工作。消费者可以是独立的物理装置、在物理机上运行的客户端应用进程、虚拟机、或消耗应用层网络流量的任何其他基于物理或软件的实体。数据块——出于存储和处理效率的原因被绑定在一起的不可变的一组审计记录。数据区块链——通过嵌入链中的前一个块的哈希值被链接的一组数据块。这意味着,如果以任何方式篡改或修改了链中任何数据块的任何字节,则该数据块的哈希值将改变。由于该值被写入到后续块中,因此在链验证过程中,任何节点都能够验证哈希值实际上不相等,并将整个链视为无效(因此,其内容不可信)。层7审计代理——审计在生产者和消费者之间的通信会话中(沿一个或两个方向)的应用层数据的实体。例如,层7审计代理接受来自生产者的应用层网络流量,将任何相关信息记录到审计日志中,然后将应用层网络流量转发到正确的消费者。相反地,层7审计代理接受来自消费者的应用层网络流量,将任何相关信息记录到审计日志中,然后将应用层网络流量转发到生产者。此外,层7审计代理作为集群联网应用一起工作,以在由不可变数据块链组成的分布式数据存储装置中维护审计日志。为简单起见,层7审计代理在本文中被称为“审计代理”。现在参考图1。图1示出了包括代理网络20的系统10,该代理网络20包括一个或多个审计代理30(1)-30(N)。代理网络20逻辑上位于生产者40(1)-40(K)和消费者50(1)-50(P)之间,如图1所示,以便捕获在生产者和消费者之间(沿一个方向或两个方向)发送的应用层网络流量。代理网络20中的审计代理30(1)-30(N)还被配置为作为如下面更详细描述的区块链网络操作。生产者40(1)-40(K)和消费者50(1)-50(P)可以是驻留在运营者网络内的实体。还存在审计管理60,该审计管理60连接到代理网络20,并被配置为访问由审计代理网络20存储的一个或多个审计跟踪,以便促进分析审计数据,来确保符合运营者可能为在其网络中运行的给定应用提出的任何要求。审计管理实体60可以是独立服务器,或者可以是在云中或在与代理网络20具有连接性的任何装置上运行的服务器应用。审计代理30(1)-30(N)每个都像反向代理一样工作。反向代理是一种类型的代理服务器,其代表客户端(消费者)从一个或多个服务器(生产者)检索资源。反向代理将资源返回给客户端(消费者),就好像资源源自服务器(生产者)一样。与正向代理不同,正向代理是其关联的客户端与任何服务器联系的中介,反向代理是任何客户端要联系其关联的服务器的中本文档来自技高网...

【技术保护点】
1.一种系统,包括:/n一个或多个应用层审计代理,所述一个或多个应用层审计代理被布置为获取在网络中发送的应用层网络流量,所述应用层审计代理中的每一个被配置为:/n接收作为生产者实体与消费者实体之间的通信会话的一部分而发送的应用层网络流量;/n将关于所述应用层网络流量的信息记录到分布式许可数据库中的审计日志,该数据库包括不可变数据块的区块链;以及/n将所述应用层网络流量转发到所述生产者实体或所述消费者实体。/n

【技术特征摘要】
【国外来华专利技术】20180413 US 15/952,4121.一种系统,包括:
一个或多个应用层审计代理,所述一个或多个应用层审计代理被布置为获取在网络中发送的应用层网络流量,所述应用层审计代理中的每一个被配置为:
接收作为生产者实体与消费者实体之间的通信会话的一部分而发送的应用层网络流量;
将关于所述应用层网络流量的信息记录到分布式许可数据库中的审计日志,该数据库包括不可变数据块的区块链;以及
将所述应用层网络流量转发到所述生产者实体或所述消费者实体。


2.根据权利要求1所述的系统,还包括形成代理网络的多个应用层审计代理。


3.根据权利要求2所述的系统,其中,所述多个应用层审计代理的第一应用层审计代理被配置为:
响应于接收到应用层网络流量,向所述代理网络中的其他应用层审计代理中的每一个发送针对其本地数据区块链的长度的请求;并且
选择所述其他应用层审计代理中的最长区块链,以用于将新数据写入所述审计日志。


4.根据权利要求3所述的系统,其中,所述第一应用层审计代理还被配置为:
基于对所述最长区块链中的每个数据块所计算出的哈希值与针对所述最长区块链中的后续块所计算出的哈希值的比较,来验证所述最长区块链。


5.根据权利要求4所述的系统,其中,所述第一应用层审计代理还被配置为:
如果所述最长区块链未能通过验证,则选择下一个最长区块链;并且
如果所述代理网络中的其他应用层审计代理中没有区块链通过验证,则选择所述第一应用层审计代理处的本地区块链来用于所述审计日志。


6.根据权利要求1至5中的任一项所述的系统,其中,每个应用层审计代理通过将根据所述区块链中的完整的前一个数据块的哈希计算所计算出的哈希值写入所述区块链的当前数据块,将信息记录到所述审计日志。


7.根据权利要求1至6中的任一项所述的系统,其中,每个应用层审计代理被配置为:
从所述消费者实体接收去往所述生产者实体的请求;
将从所述请求得到的审计信息记录到所述审计日志;
将所述请求转发到所述生产者实体;
从所述生产者实体接收去往所述消费者实体的响应;
将从所述响应得到的审计信息记录到所述审计日志;以及
将所述响应转发到所述消费者实体。


8.根据权利要求1至7中的任一项所述的系统,其中,所述消费者实体和所述应用层审计代理位于同一块物理硬件上。


9.一种方法,包括:
在被布置为获取在网络中发送的应用层网络流量的一个或多个应用层审计代理处:
接收作为生产者实体与消费者实体之间的通信会话的一部分而发送的应用层网络流量;
将关于所述应用层网络流量的信息记录到分布式许可数据库中的审计日志,该数据库包括不可变数据块的区块链;以及
将所述应用层网络流量转发到所述生产者实体或所述消费者实体。


10.根据权利要求9所述的方法,其中,提供了形成代理网络的多个应用层审计代理。


11.根据权利要求9或10所述的方法,还包括:所述多个应用层审计代理的第一应用层审计代理:
响应于接收到应用层网络流量,向所述代理网络中的其他应用层审计代理中的每一个发送针对其本地数据区块链的长度的请求;并且
选择所述其他应用层审计代理中的最长区块链,以用于将新数据写入所述审计日志。


12.根据权利要求11所述的方法,还包括:由所述第一应用层审计代理:
基于对所述最长区块链中的每个数据块所计算出的哈希值与针对所述最长区块链中的后续块所计算出的哈希值的比较,来验证所述最长区块链。

<...

【专利技术属性】
技术研发人员:泰勒·莱文克里斯托弗·梅茨李肇星罗汉·德西坎戴维·D·沃德
申请(专利权)人:思科技术公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1