用于与动态计算机网络进行通信的桥接器的制造方法

文档序号:7791490阅读:122来源:国知局
用于与动态计算机网络进行通信的桥接器的制造方法
【专利摘要】一种用于将数据从计算机网络(100)中的第一计算装置(101)传送到第二计算机网络(124)中的第二计算装置的方法涉及在所述计算机网络(100)中的第一位置(105)处动态地修改多个真值(120)。所述真值正确地表示多个身份参数。将这些真值变换为不正确地表示所述身份参数的假值(122)。随后,在桥接器(115)第二位置处修改所述身份参数以将所述假值变换回到所述真值。所述第一位置的定位随着此过程的部分而动态地变更。所述身份参数的动态修改根据任务计划而发生,所述任务计划可在不中断所述网络中的数据传送的情况下进行修改。
【专利说明】用于与动态计算机网络进行通信的桥接器

【技术领域】
[0001] 本发明布置涉及计算机网络安全,且更特定来说涉及用于在两个或两个以上网络 之间进行通信的系统,其中所述网络中的至少一者可动态地操控(maneuverable)以防御 恶意攻击。

【背景技术】
[0002] 当前网络基础设施的主要弱点为其静态特性。资产获得永久或不经常改变的识 另IJ,从而允许敌手拥有几乎无限时间来探查网络、标定(map)及恶意探索漏洞。此外,可捕 获在这些固定实体之间行进的数据并获得其属性。针对网络安全的当前途径在固定资产周 围设置例如防火墙及入侵检测系统的技术,且使用加密来保护在途中的数据。然而,此传统 途径在根本上有缺陷,因为其向攻击者提供固定目标。在现今的全球连接通信基础设施中, 静态网络为易受攻击的网络。
[0003] 国防高级研究计划局(DARPA)信息保证(IA)项目已在动态网络防御的领域中进 行初步研究。在信息保证项目下开发一种技术来动态地重新指派馈送到预先指定的网络飞 地(enclave)的因特网协议(IP)地址空间以迷惑观察网络的任何潜在敌手。此技术称为 动态网络地址变换(DYNAT)。已在由DARPA发表的标题为《用于挫败敌手情报搜集的动态 途径(Dynamic Approaches to Thwart Adversary Intelligence(2001))》的论文中提出 DYNAT技术的概述。


【发明内容】

[0004] 本发明的实施例涉及一种用于在计算机网络中传送数据的方法。所述方法包含在 所述计算机网络上从第一计算装置传送数据到第二计算装置。所述数据包含与所述第一及 第二计算装置中的一者或两者相关联的一或多个身份参数。所述方法继续在所述计算机网 络中的第一位置处动态地修改多个真值的步骤。所述真值正确地表示多个身份参数。将这 些真值变换为不正确地表示身份参数的假值。随后,在所述计算机网络中的第二位置处动 态地修改数据通信中含有的身份参数。所述第二位置处的修改涉及将假值变换回到真值。 注意,所述计算机网络内的所述第一及/或第二位置的定位也作为此过程的部分而动态地 改变。
[0005] 根据本发明的另一方面,所述方法可进一步涉及在所述第一及第二位置处根据任 务计划执行身份参数的动态修改。在此类实施例中,所述方法进一步涉及将所述任务计划 改变为第二任务计划(不同于所述第一任务计划)以改变在第一位置及/或第二位置处执 行的动态操纵。在不中断网络中的数据传送的情况下执行将任务计划改变为第二任务计划 的此过程。多个任务计划可由用户定义且经存储使得其对网络装置可存取。因此,用户可 如所需或期望股从一个任务计划改变到不同任务计划以维持网络的安全。
[0006] 本发明还涉及一种用于从包含于第一计算机网络中的第一计算装置传送数据到 包含于第二计算机网络中的第二计算装置的方法。所述方法可从在所述第一计算机网络上 发射数据通信开始。所述数据通信将包含指定与所述第一及第二计算装置中的至少一者相 关联的真值的身份参数的第一群组。此后,通过在所述第一计算机网络中的第一位置处动 态地修改身份参数的所述第一群组的第一集合而继续所述过程。所述动态修改涉及变换所 述第一集合以指定假信息。此变换在将数据通信重新发射到桥接器位置之前执行。在所述 桥接器位置处,通过动态地修改所述第一集合以变换所述第一集合以指定真信息而继续所 述过程。在所述桥接器位置处变换所述第一集合以指定真信息之后,通过从所述桥接器位 置发射所述数据通信到所述第二计算机网络而继续所述方法。所述方法进一步包含动态地 变更所述计算机网络内的所述第一位置的定位。

【专利附图】

【附图说明】
[0007] 参考以下图式描述实施例,其中贯穿所述图式,相同数字表示相同项目,且其中:
[0008] 图1为有用于了解本发明的计算机网络的实例。
[0009] 图2为可在本发明中使用以执行身份参数的特定操纵的模块的实例。
[0010] 图3为可用于了解可用于帮助描绘图1中的网络的特性的工具的图。
[0011] 图4为可用于针对图1中的模块选择动态设定的图形用户接口的对话框的实例。
[0012] 图5为可用于选择与图1中的每个模块相关联的作用中状态及旁通状态序列的图 形用户接口的对话框的实例。
[0013] 图6为可用于了解任务计划可传送到图1中的网络中的多个模块的方式的图式。
[0014] 图7为可用于选择任务计划且将所述任务计划传送到如图6中所示的模块的图形 用户接口的对话框的实例。
[0015] 图8为可用于了解图1中的模块的操作的流程图。
[0016] 图9为可用于了解关于建立及加载任务计划的网络控制软件应用程序(NCSA)的 操作的流程图。
[0017] 图10为可用于实施图1中的模块的计算机架构的框图。
[0018] 图11为可用于实施图1中的网络管理计算机(NAC)的计算机架构的框图。
[0019] 图12为有用于了解图1中的桥接器的操作的流程图。
[0020] 图13为有用于了解可被修改的一些类型的身份参数的表。

【具体实施方式】
[0021] 参考附图描述本发明。所述图式并非按比例绘制且其仅为说明本发明而提供。出 于说明的目的,下文参考实例应用而描述本发明的若干方面。应了解,阐明许多具体细节、 关系及方法以提供本发明的全面了解。然而,相关技术的一股技术人员将容易认知,本发明 可在没有所述具体细节中的一或多者下或使用其它方法实践。在其它例项中,未详细展示 众所周知的结构或操作以避免使本发明变得模糊。本发明不受所说明的动作或事件顺序限 制,因为一些动作可以不同顺序发生及/或与其它动作或事件同时发生。此外,实施根据本 发明的方法无需所有经说明的动作或事件。
[0022] 还应了解,本文中使用的术语仅用于描述特定实施例且并非希望限制本发明。如 本文中所使用,单数形式"一(a)"、"一个(an)"及"所述"希望也包含复数形式,除非上下 文另有清楚指示。此外,就在详细描述及/或权利要求书中使用的术语"包含"、"具有"或 其变体而言,此类术语希望以类似于术语"包括"的方式具有包含性。
[0023] 此外,除非另外定义,否则本文中使用的全部术语(包含技术及科学术语)具有与 本发明所属的技术的一股人员普遍了解的含意相同的含意。将进一步了解,术语(例如普 遍使用的字典中定义的术语)应解释为具有与其在相关技术的内容背景中的含意一致的 含意且不应以理想化或过于正式的意义来解释,除非本文中明确地如此定义。
[0024] 身份敏捷计算机网络
[0025] 现参考图1,展示包含多个计算装置的示范性网络100的图式。所述计算装置可包 含客户端计算机101到103、网络管理计算机(NAC) 104、服务器111、112、网络集线器108、 109、路由器110及桥接器115。客户端计算机可为可能需要网络服务的任何类型的计算装 置,例如常规平板计算机、笔记本计算机、膝上型计算机或桌上型计算机。路由器110可为 在计算机网络之间转发数据包的常规路由装置。集线器108、109为此项技术中众所周知的 常规集线器装置(例如,以太网集线器)。服务器111、112可提供由客户端计算机101到 103利用的各种计算服务。例如,服务器111、112可为文件服务器,其为由客户端计算机101 到103使用的计算机文件的共享存储提供位置。
[0026] 网络100的通信媒体可为有线、无线或两者,但是为简单起见及避免使本发明变 得模糊,在本文中应描述为有线网络。所述网络将使用通信协议传送数据。如此项技术中 众所周知,通信协议定义用于贯穿所述网络传送数据的格式及规则。图1中的网络可使用 现在已知或未来知晓的任何通信协议或协议组合。例如,所述网络可使用适于此类通信的 众所周知的以太网协议。或者,所述网络可利用其它协议,例如因特网协议套件(通常称为 TCP/IP)、S0NET/SDH或异步传送模式(ATM)通信协议。在一些实施例中,可组合使用这些通 信协议中的一或多者。虽然图1中展示一个网络拓朴,但是本发明在此方面不受限制。而 是,可使用任何类型的适宜网络拓朴,例如总线网络、星状网络、环形网络或网状网络。
[0027] 本发明通常涉及一种用于在计算机网络(例如计算机网络100中)中传送数据的 方法,其中数据从第一计算装置传送到第二计算装置。所述网络内的计算装置用多个身份 参数表示。如本文中使用的词组"身份参数"可包含例如因特网协议(IP)地址、媒体访问控 制(MAC)地址、端口等等的项目。然而,本发明在此方面不受限制,且身份参数还可包含有 用于描绘网络节点的特性的多种其它信息。在下文中更详细论述本文中预期的各种类型的 身份参数。本发明布置涉及使用移动目标技术(MTT)来操纵所述网络内的一或多个计算装 置的此类身份参数中的一或多者。此技术伪装此类计算装置的通信模式及网络地址。如本 文中所述的身份参数的操纵通常与所述网络中的数据通信一起(即,在数据将从所述网络 中的第一计算机(例如,客户端计算机101)传送到所述网络中的第二计算机(例如,客户 端计算机102)时)执行。因此,所操纵的身份参数可包含来源计算装置(数据源自所述装 置)及目的地计算装置(数据被发送到所述装置)的身份参数。经传送的身份参数集在本 文中称为身份参数集(IDP集)。此概念说明于图1中,其展示IDP集120作为数据包(未 图示)的部分由客户端计算机101发射。
[0028] 根据本发明布置的过程涉及在计算机网络内的第一位置处选择性地修改数据包 或数据报中所含有的指定来源及/或目的地计算装置的一或多个身份参数的值。根据任务 计划而修改所述身份参数。执行此修改的位置通常将与模块105到107、113、114中的一者 的位置重合。再次参考图1,可观察到模块105、106、107、113、114在网络中插置于各种计算 装置之间(其构成此网络中的节点)。在这些位置中,模块拦截数据包通信,执行身份参数 的必要操纵,且沿着发射路径重新发射数据包。在替代实施例中,模块105、106、107、113、 114可执行类似功能,但可直接集成到一或多个计算装置中。例如,模块可集成到客户端计 算机101、102、103、服务器111、112、集线器108、109中及/或路由器110内。
[0029] 在图2中展示模块105的功能框图的实例。模块106到107、113、114可具有类似 功能框图,但是应了解,本发明在此方面不受限制。如图2中所示,模块105具有至少两个数 据端口 201、202,其中每一者可对应于相应网络接口装置204、205。在端口 201处接收的数 据在网络接口装置204处经处理且暂时存储于输入缓冲器210。处理器215存取输入缓冲 器210中所含有的输入数据包,且执行如本文中所述的身份参数的任何必要操纵。所修改 的数据包经传递到输出缓冲器212且随后使用网络接口装置205而从端口 202发射。类似 地,在端口 202处接收的数据在网络接口装置205处经处理且暂时存储于输入缓冲器208。 处理器215存取输入缓冲器208中所含有的输入数据包且执行如本文中所述的身份参数的 任何必要操纵。所修改的数据包经传递到输出缓冲器206且随后使用网络接口装置204而 从端口 201发射。在每一模块中,由处理器215根据存储于存储器218中的任务计划220 而执行身份参数的操纵。
[0030] 从图2将了解,模块优选经配置使得其双向操作。在此类实施例中,取决于特定数 据包的来源,所述模块可实施不同修改功能。可根据特定数据包的来源计算装置而在任务 计划中指定每个模块中的动态修改功能。模块可通过任何适宜方法确定数据包的来源。例 如,出于此目的可使用数据包的来源地址。
[0031] 在网络100内的选定模块处,处理器215将确定将代替真身份参数值而使用的一 或多个假身份参数值。所述处理器将一或多个真身份参数值变换为优选由伪随机函数指定 的一或多个假身份参数值。在此变换之后,所述模块将沿着发射路径将经修改的包或数据 报转发到网络的下一节点。在通信路径中的后续节点处,正监视此类网络通信的敌手将观 察到关于在网络上通信的计算装置的身份的假或不正确信息。
[0032] 在优选实施例中,由伪随机函数指定的假身份参数根据一或多个触发事件的发生 而改变。触发事件导致处理器215使用伪随机函数来产生真身份参数所变换成的一组新的 假身份参数值。因此,触发事件用作本文中所述的假身份参数的动态变更的基础。在下文 中更详细论述触发事件。然而应注意,用于选择一组新的假身份参数值的触发事件可基于 经过的时间及/或特定网络事件的发生。触发事件还可通过用户命令起始。
[0033] 上文所述的身份参数的变换提供一种操控计算机网络100以阻挠网络攻击的方 式。在优选实施例中,由处理器215实施的任务计划220还将控制计算机网络可操控的方式 的某些其它方面。例如,任务计划可指定操纵身份参数的动态选择。所述动态选择可包含 选择修改哪些身份参数的选择,及/或所选择的此类身份参数的数目。此可变选择过程提 供附加的不确定性或变更维度,此可用于进一步阻挠敌手尝试侵入或获悉计算机网络1〇〇。 作为此技术的实例,认为在第一时段期间,模块可修改每个数据包的目的地IP地址及目的 地MAC地址。在第二时段期间,所述模块可操纵每个数据包中的来源IP地址及来源主机名。 在第三时段期间,所述模块可操纵来源端口号及来源用户名称。身份参数选择的改变可同 步发生(所有选定的身份参数同时改变)。或者,身份参数选择的改变可异步地发生(随着 个别身份参数被添加或从选定的身份参数群组移除,所选定的身份参数群组递增地改变)。
[0034] 伪随机函数优选为用于确定待操纵或变换为假值的身份值的选择。换句话说,所 述模块将仅变换由伪随机函数选择的身份参数。在优选实施例中,由伪随机函数指定的身 份参数的选择根据触发事件的发生而改变。触发事件导致处理器215使用伪随机函数来产 生待变换为假身份参数的身份参数的新选择。因此,触发事件用作本文中所述的身份参数 的选择的动态变更的基础。注意,身份参数的值也可根据伪随机算法而改变。
[0035] 所述模块有利地还能够提供操控计算机网络以阻挠网络攻击的第三方法。具体 来说,加载在每个模块中的任务计划可动态地变更网络内发生身份参数的修改或变换的位 置。认为在从客户端计算机101发送到客户端计算机102的IDP集120中的身份参数的修 改可发生于模块105中。在图1中展示此条件,其中IDP集120中所含有的身份参数在模 块105中经操纵,使得IDP集120变换为新的或经修改的IDP集122。相比于IDP集120中 的身份参数,IDP集122中的至少一些身份参数是不同的。但是发生此变换的位置优选也 由任务计划控制。因此,IDP集120的操纵可例如有时发生于模块113或114处,而非模块 105处。选择性地变更发生身份参数的操纵的位置的此能力对计算机网络的操控能力增添 更重要维度。
[0036] 通过选择性地控制每个模块的操作状态而促进修改身份参数的位置的动态变更。 为此,每个模块的操作状态优选包含(1)作用中状态,其中根据当前任务计划处理数据,及 (2)旁通状态,其中包可流动通过模块如同模块并不存在一样。通过选择性地导致特定模块 处于作用中状态及特定模块处于备用状态而控制执行动态修改的位置。所述位置可通过以 协调的方式动态地变更模块的当前状态而动态地改变。
[0037] 任务计划可包含用于确定计算机网络100内将要操纵身份参数的位置的预定义 序列。将要操纵身份参数的位置将根据由触发事件指示的时间序列而改变。例如,触发事 件可导致转变到新位置以如本文中所述地操纵或变换身份参数。因此,触发事件用作修改 身份参数的位置发生改变的基础,且预定义序列确定新位置将在何处。
[0038] 从前文应了解,在模块处修改数据包以包含假身份参数。某些时候在计算机网络 内,必需使身份参数还原到其真值,使得所述身份参数可用于根据特定网络协议而适当地 执行其预期功能。因此,本发明布置还包含在第二位置(即,第二模块)处根据任务计划动 态地修改身份参数的指派值。所述第二位置处的修改基本上包括在第一位置处所使用的过 程的逆过程来修改身份参数。所述第二位置处的模块可因此使假值身份参数还原或变换回 到其真值。为完成此动作,所述第二位置处的模块必须能够确定至少(1)待变换的身份参 数值的选择,及(2)选定身份参数从假值到真值的正确变换。实际上,此过程涉及用于确定 身份参数选择的伪随机过程或若干伪随机过程的逆过程及对此类身份参数值实现的改变。 在图1中说明逆变换步骤,其中在模块106处接收IDP集122,且IDP集122中的身份参数 值被变换或操纵回到其原始或真值。在此案例中,模块106将身份参数值转换回到IDP集 120的身份参数值。
[0039] 注意,模块必须具有确定适当变换或操纵以施加到其接收的每个数据通信的某种 方式。在优选实施例中,通过检查所接收的数据通信内含有的至少来源地址身份参数而执 行此确定。例如,所述来源地址身份参数可包含来源计算装置的IP地址。一旦已知来源计 算装置的真身份,所述模块便查阅任务计划(或从任务计划导出的信息)以确定其需要采 取的动作。例如,这些动作可包含将特定真身份参数值转换为假身份参数值。或者,这些改 变可包含将假身份参数值转换回到真身份参数值。
[0040] 注意,将存在所接收的数据通信中含有的来源地址身份参数信息已改变为假值的 情况。在所述境况中,接收数据通信的模块不会立即能够确定数据通信的来源的身份。然 而,接收通信的模块在此类例项中仍可识别来源计算装置。这在接收模块处通过比较假来 源地址身份参数值与列出在特定时间期间投入使用的所有此类假来源地址身份参数值的 查找表(LUT)而完成。LUT还包含对应于假来源地址值的真来源地址身份参数值的列表。 LUT可由任务计划直接提供,或可由任务计划中含有的信息产生。在任一情况中,可从LUT 容易地确定真来源地址身份参数值的识别。一旦已确定真来源地址身份参数,则接收数据 通信的模块可使用此信息以(基于任务计划)确定所述身份参数所需的操纵。
[0041] 注意,任务计划还可指定使身份参数还原到其真值的第二位置的变更。例如,假设 在包括模块105的第一位置处动态地修改所述身份参数。所述任务计划可指定所述身份参 数到其真值的还原如所述股发生于模块106处,但是可替代性地指定动态修改代替性地发 生于模块113或114处。在一些实施例中,发生此类操纵的位置通过任务计划根据预定义 序列而动态确定。预定义序列可确定将发生身份参数的操纵的位置或模块的序列。
[0042] 涉及不同位置处的动态修改的转变优选根据触发事件而发生。因此,预定义序列 确定将发生数据操纵的位置的模式或序列,且触发事件用作导致从一个位置转变到下一位 置的基础。在下文中更详细论述触发事件;然而,应注意,触发事件可基于经过的时间、用户 控制及/或特定网络事件的发生。对第二位置(即,身份参数返回到其真值的位置)的选 择的控制可以与上文关于第一位置所述的方式相同的方式而实现。具体来说,两个或两个 以上模块的操作状态可在作用中状态与旁通状态之间切换。身份参数的操纵将仅发生于具 有作用中操作状态的模块中。具有旁通操作状态的模块将仅传递数据包而无修改。
[0043] 还可使用替代方法来控制将发生身份参数的操纵的位置。例如,网络管理员可在 任务计划中定义身份参数可从真值转换为假值的若干可能模块。在发生触发事件时,可通 过使用伪随机函数且使用触发时间作为伪随机函数的种子值而在所述若干模块之间选择 新位置。如果每个模块使用相同初始种子值实施相同伪随机函数,那么每个模块将计算相 同伪随机值。触发时间可基于时钟时间确定,例如GPS时间或系统时钟时间。以此方式,每 个模块可独立地确定其当前是否为应发生身份参数的操纵的作用中位置。类似地,网络管 理员可在任务计划中定义动态操纵将身份参数返回到其正确值或真值的若干可能模块。选 择哪个模块用于此目的还可根据如本文中所述的触发时间及伪随机函数而确定。其它方法 也可用于确定将发生身份参数操纵的位置或模块。因此,本发明不希望限制于本文中所述 的特定方法。
[0044] 注意,变更操纵身份函数的第一位置及/或第二位置的定位通常将导致变更第一 位置与第二位置之间沿着网络通信路径的物理距离。所述第一位置与所述第二位置之间的 距离在本文中称为距离向量。距离向量可为所述第一位置与所述第二位置之间沿着通信 路径的实际物理距离。然而,将距离向量视为表示第一位置与第二位置之间的通信路径中 所存在的网络节点数目是有用的。应了解,针对网络内的第一位置及第二位置动态地选择 不同定位可具有改变所述第一位置与所述第二位置之间的节点数目的效果。例如,在图1 中,在模块105、106、107、113、114中的选定者中实施身份参数的动态修改。如前文所述股 确定实际上用于分别实施动态修改的模块。如果模块105用于将身份参数转换为假值且模 块106用于将其转换回到真值,那么在模块105与106之间存在三个网络节点(108、110、 109)。但如果模块113用于转换为假值且模块114用于将身份参数转换回到真值,那么在 模块113与114之间仅存在一个网络节点(110)。因此,应了解,动态地改变发生动态修改 的位置的定位可动态地变更距离向量。距离向量的此变更对网络操控或修改提供附加可变 性维度,如本文中所述。
[0045] 在本发明中,将身份参数值的操纵、身份参数的选择及这些身份参数的位置中的 每一者定义为操控参数。每当这三个操控参数中的一者中发生改变时,便可认为已发生网 络操控。无论何时这三个操控参数中的一者改变,我们便可认为已发生网络操控。为最有效 地阻挠敌手尝试侵入计算机网络100,优选借助于如前文所述的伪随机过程而控制网络操 控。所属领域的技术人员将了解,还可使用混乱过程来执行此功能。相比于伪随机函数,混 乱过程在技术上不同,但是出于本发明的目的,可使用任一者,且将所述两者视为等效。在 一些实施例中,可使用相同伪随机过程来动态地变更操控参数中的两者或两者以上。然而, 在本发明的优选实施例中,使用两个或两个以上不同伪随机过程使得这些操控参数中的两 者或两者以上独立于其它操控参数而修改。
[0046] 触发事件
[0047] 如上文所述,通过至少一个触发控制每个操控参数的动态改变。触发为导致发生 关于本文中所述的动态修改的改变的事件。换句话说,可认为触发导致网络以不同于先前 时间(即,在发生触发之前)的新的方式操控。例如,在第一时段期间,任务计划可导致IP 地址可从值A改变为值B ;但在触发事件之后,IP地址可代替性地从值A改变为值C。类似 地,在第一时段期间,任务计划可导致IP及MAC地址被修改;但在触发事件之后,任务计划 可代替性地导致MAC地址及用户名称被修改。作为第三实例,认为在第一时段期间,任务计 划可导致身份参数在ID集120到达模块105时改变;但在触发事件之后,可导致身份参数 代替性地在ID集120到达模块113时改变。
[0048]以其最简单形式,触发可经用户激活,或基于简单时序方案。在此实施例中,每个 模块中的时钟时间可用作触发。例如,触发事件可定义为发生于每个60秒时间间隔期满 时。对于此布置,操控参数中的一或多者可根据预定时钟时间每隔60秒而改变。在一些实 施例中,所有操控参数可同时改变,使得所述改变被同步化。在略微更复杂的实施例中,还 可使用基于时间的触发布置,但是可对于每个操控参数选择不同的独有触发时间间隔。因 此,可在时间间隔X改变假身份参数值,身份参数的选择将根据时间间隔Y而改变,且执行 此类改变的位置将在时间间隔Z发生,其中X、Y及Z为不同值。
[0049] 应了解,在本发明的实施例(其依赖于作为触发机制的时钟时间)中,有利地提供 各种模块105、106、107、113、114中的时钟之间的同步化以确保包不会由于未经辨识的身 份参数而遗失或丢失。同步化方法是众所周知的,且可出于此目的使用任何适当同步化机 制。例如,可通过使用高度精确时间参考(例如GPS时钟时间)而同步化所述模块。或者, 独有无线同步化信号可从中央控制设施广播到每个模块。
[0050] 其它类型的触发对于本发明也可行。例如,触发事件可基于潜在网络安全威胁的 发生或检测。根据本发明的实施例,可通过网络安全软件套件识别潜在网络安全威胁。或 者,可在模块105、106、107、113、114处接收数据包后即刻识别潜在网络安全威胁,其中所 述包含有与网络操控的当前状态不一致的一或多个身份参数。此威胁的存在可用作触发事 件而与用于识别网络安全威胁的基础无关。基于网络安全威胁的触发事件可导致与由上文 所述的基于时间的触发引起的网络操控相同类型的网络操控。例如,除检测到网络安全威 胁的情况之外,假身份参数、身份参数的选择及身份参数变换的位置可保持稳定(即,不改 变)。例如在不期望频繁的网络操控的计算机网络中可选择此布置。
[0051] 或者,基于时间的触发事件可与基于对网络安全的潜在威胁的触发事件组合。在 此类实施例中,相比于基于时间的触发,基于安全威胁的触发事件可对网络操控具有不同 影响。例如,基于安全威胁的触发事件可导致网络操控中的战略或防御性改变,以便更积极 地对抗此网络安全威胁。此类措施的确切性质可取决于威胁的性质,但可包含多种响应。例 如,可选择不同伪随机算法,及/或可增加针对每个IDP集120中的操纵而选择的身份参数 的数目。在已利用基于时间的触发的系统中,响应还可包含增加网络操控的频率。因此,可 相对于以下每一者进行更频繁改变:(1)假身份参数值;(2)每个IDP集中待改变的身份参 数的选择;及/或(3)改变身份参数的第一位置及第二位置的定位。因此,本文中所述的网 络操控提供用于识别潜在网络安全威胁且响应于潜在网络安全威胁的方法。
[0052] 任务计划
[0053] 根据本发明的优选实施例,根据任务计划控制本文中所述的网络操控。任务计划 为定义及控制在网络及安全模型的背景中的可操控性的方案。因而,任务计划可表示为从 网络管理计算机(NAC) 104传送到每个模块105到107、113到114的数据文件。此后由每个 模块使用任务计划以控制身份参数的操纵,且使其活动与网络中的其它模块的动作协调。
[0054] 根据优选实施例,任务计划可不时由网络管理员修改,以更新或改变网络操控的 方式以阻挠潜在敌手。因而,任务计划对网络管理员提供工具,所述工具促进对所述网络内 将发生网络操控的时间、地点及方式的完全控制。此更新能力允许网络管理员针对当前操 作条件而定制计算机网络的行为,且更有效地阻挠敌手尝试侵入网络。多个任务计划可由 用户定义且经存储使得其对网络内的模块可存取。例如,多个任务计划可存储于NAC104处 且视需要传送到模块。或者,多个任务计划可存储于每个模块上且可如所需或期望股经激 活以维持网络的安全。例如,如果网络管理员确定或怀疑敌手已发现网络的当前任务计划, 那么管理员可希望改变任务计划。有效安全程序还可规定周期性地改变任务计划。
[0055] 通过模型化网络100,可开始建立任务计划的过程。通过在网络命令中心处的计算 机或服务器上执行的网络控制软件应用程序(NCSA)而促进模型的建立。例如,在图1中所 示的实施例中,NCSA可在NAC104上执行。网络模型优选包含定义网络100中所包含的各 种计算装置之间的数据连接及/或关系的信息。NCSA将提供促进键入此关系数据的适当接 口。根据一个实施例,NCSA可促进将数据键入可用于定义任务计划的表中。然而,在优选 实施例中,使用图形用户接口以促进此过程。现参考图3, NCSA可包含网络拓朴模型产生器 工具。所述工具用于帮助网络管理员定义网络的各种组件中的每一者之间的关系。网络拓 朴工具提供其中管理员可通过使用光标304拖曳及置放网络组件302的工作空间300。网 络管理员还可建立各种网络组件302之间的数据连接306。作为此模型化过程的部分,网络 管理员可提供各种网络组件(包含模块105到107、113、114)的网络地址信息。
[0056] -旦已模型化所述网络,便可通过网络管理员保存及使用所述网络以定义各种模 块105到107、113、114表现及彼此互动的方式。现参考图4,NCSA可产生对话框400,对话 框400可用于进一步开发任务计划。可使用下拉式菜单432来选择对话框400中的设定将 应用到的特定模块(例如,模块105)。或者,网络管理员可使用下拉式菜单432来指示对 话框400中的设定希望应用于网络内的所有模块(例如,通过选择菜单432中的"全部")。 可通过指定是否在每个模块中将始终修改身份参数的固定集合,或是否应动态地变更被操 纵的所述身份参数集而继续所述过程。如果希望动态地变更在模块中待操纵的身份参数的 选择或集合,那么网络管理员可标记复选框401以指示所述偏好。如果复选框401未经标 记,那么将指示将要变更的所述身份参数集为不随时间变更的固定集合。
[0057] 对话框400包含标签402、404、406,所述标签允许用户选择其想要运作的特定身 份参数以建立任务计划。出于本发明的目的,对话框400促进仅三个身份参数的动态变更。 具体来说,这些标签包含IP地址、MAC地址及端口地址。可通过提供额外标签动态地变更更 多或更少身份参数,但是所述的三个身份参数足以解释本发明的概念。在图4中,用户已选 择标签402以与IP地址类型的身份参数运作。在标签402内,提供多种用户接口控件408 到420以指定与所选定模块内的IP地址的动态变更有关的细节。可提供更多或更少控件 以促进IP地址类型的动态操纵,且仅提供所示的控件以帮助读者了解概念。在所示的实例 中,网络管理员可通过(例如,用指向装置,例如鼠标)选择标记为启用IP地址跳跃的复选 框408而启用IP地址的动态变更。类似地,网络管理员可指示是否将改变来源地址、目的 地地址或两者。在此实例中,标记来源地址框及目的地地址框410、412两者,从而指示将改 变两种类型的地址。来源地址及目的地地址的允许值的范围可由管理员在列表框422、424 中指定。
[0058] 通过选择伪随机过程而指定用于选择假IP地址值的特定伪随机过程。在框414、 415中指定此选择。不同伪随机过程对于真随机性的可变程度可具有不同水平的复杂性,且 管理员可选择最适合网络100的需求的过程。
[0059] 对话框400还允许网络管理员设定待用于IP地址身份参数的动态变更的触发类 型。在此实例中,用户已选择框416,从而指示将使用基于时间的触发以确定何时转变为新 的假IP地址值。此外,已选择复选框418以指示基于时间的触发将以周期性为基础而发生。 可由用户调整滑轴420以确定周期性基于时间的触发的频率。在所示的实例中,触发频率 可经调整而介于每小时发生6次触发(每10分钟触发)与每小时发生120次触发(每30 秒触发)之间。在此实例中,选择还可用于其它类型的触发。例如,对话框402包含复选框 428、430,网络管理员可通过复选框428、430而选择基于事件的触发。可选择若干不同特定 事件类型以形成此类基于事件的触发的基础(例如,事件类型1、事件类型2等等)。这些 事件类型可包含各种潜在计算机网络安全威胁的检测。在图4中,标签404及406类似于 标签402,但是其中的控件是针对MAC地址及端口值(而非IP地址)的动态变更而定制。 可提供额外标签以控制其它类型的身份参数的动态变更。
[0060] 任务计划还可指定用于动态地变更修改身份参数的位置的计划。在一些实施例 中,通过控制定义每个模块何时处于作用中状态或旁通状态的序列而促进此可变位置特 征。因此,任务计划有利地包含指定此序列的一些构件。在本发明的一些实施例中,这可涉 及使用通过触发事件的发生而分离的经定义时间间隔或时隙。
[0061] 现在参考图5,可由NCSA提供对话框500以促进位置序列及时序信息的协调及键 入。对话框500可包含控件502,控件502用于选择待包含在时间纪元506内的许多时隙 504 1到504"。在所说明的实例中,网络管理员已定义每时序纪元4个时隙。对话框500还 可包含表503,表503包含网络100中的所有模块。对于列出的每个模块,所述表包含对于 一个时序纪元506的可用时隙501到5044的图形表示。回顾对操纵身份参数的位置的动 态控制由每个模块是否处于作用中或旁通操作状态而确定。因此,在图形用户接口内,用户 可移动光标508且进行选择以指定特定模块在每个时隙期间是否处于作用中或旁通模式。 在所示的实例中,模块105在时隙504及504 3期间处于作用中,但在时隙5042、5044期间处 于旁通模式。相反地,模块113在时隙504 2、5044期间处于作用中,但在时隙50+及5043期 间处于旁通模式。参考图1,此表示身份参数的操纵在时隙501及504 3期间发生在与模块 105相关联的位置处,但在时隙5042、5044期间代替性地发生在模块113处。
[0062] 在图5中所示的实例中,网络管理员已做出选择以使模块114始终以作用中模式 操作(即,模块114在所有时隙期间均处于作用中)。因此,对于从客户端计算机101发射 到客户端计算机103的数据通信,在模块105U13中将交替操纵数据包,但是在模块114处 将始终操纵数据包。最后,在此实例中,网络管理员已做出选择以在时隙501到504 4期间 将模块106及107维持于旁通模式中。因此,在任何所定义的时隙期间,在这些模块处将 不执行身份参数的操纵。一旦已在对话框500中定义模块时序,网络管理员便可选择按钮 510以存储改变作为经更新任务计划的部分。任务计划可以各种格式保存。在一些实施例 中,任务计划可保存为简单表或可由每个模块使用以控制模块的行为的其它类型的经定义 数据结构。
[0063] 任务计划的分布及加载
[0064] 现将更详细描述如本文中所揭示的任务计划的分布及加载。再次参考图1,可观察 到模块105到107、113、114贯穿网络100而分布于一或多个位置。所述模块集成到通信路 径内以在此类位置处拦截通信,执行必要操纵,且将数据转发到所述网络内的其它计算装 置。运用前述布置,本文中所述的模块的任何必要维护(例如,用以更新任务计划的维护) 将具有在替换或重新编程模块时中断网络通信的可能。此类中断在网络服务的可靠性及可 用性为至关重要的许多情形中是非所要的。例如,对于军用、急救用及商用的计算机网络, 不中断的网络操作可为至关重要的。
[0065]为确保不中断的网络操作,每个模块优选具有若干操作状态。这些操作状态包含: (1)关闭状态,其中模块经断电且不处理任何包;(2)初始化状态,其中模块根据任务计划 安装软件脚本;(3)作用中状态,其中根据当前任务计划处理数据;及(4)旁通状态,其中包 可流动通过模块如同所述模块并不存在一样。所述模块经配置使得,当其处于作用中状态 或旁通状态时,所述模块可接收及加载由网络管理员提供的经更新任务计划。模块操作状 态可由网络管理员借助于例如在NAC104上执行的NCSA而手动控制。例如,用户可通过使 用图形用户接口控制面板而选择各种模块的操作状态。用于控制网络的操作状态的命令经 由网络100传送,或可通过任何其它适宜方式传送。例如,出于所述目的可使用单独有线或 无线网络(未图示)。
[0066] 所述任务计划可直接加载于每个模块的物理位置,或其可从NCSA传送到所述模 块。此概念说明于图6中,其展示任务计划604经由通信媒体606从NCSA602传送到每个 模块105到107、113、114。在所示的实例中,NCSA软件应用程序在由网络管理员操作的 NAC104上执行。在一些实施例中,通信媒体可包含使用计算机网络100的带内信令。或者, 可将带外网络(例如,单独无线网络)用作为通信媒体606以将经更新的任务计划从NCSA 传送到每个模块。如图7中所示,NCSA可提供对话框700以促进选择若干任务计划702中 的一者。这些任务计划702中的每一者可存储于NAC104上。网络管理员可从若干任务计 划702中的一者选择,此后其可激活发送任务计划按钮704。或者,多个任务计划可传送到 每个模块且存储于每个模块处。在任一情境中,用户可选择激活所定义的任务计划中的一 者。
[0067] 响应于发送任务计划的命令,在模块处于作用中状态(其中所述模块经配置以主 动执行如本文中所述的身份参数的动态修改)时将所选定的任务计划传送到所述模块。此 布置最小化网络在明文中且未操纵身份参数的情况下操作的时间。然而,在模块处于旁通 模式时也可将经更新的任务计划传送到所述模块,且此途径在某些情况中可能为合意的。 [0068] 一旦任务计划由模块接收,所述任务计划便自动存储于所述模块内的存储器位置 中。此后,可使得所述模块进入旁通状态,且在仍处于所述状态时,所述模块可加载与新任 务计划相关联的数据。进入旁通状态及加载新任务计划数据的此过程可响应于接收任务计 划而自动发生,或可响应于来自由网络管理员控制的NCSA软件的命令而发生。新任务计划 优选包含变更身份参数值的方式的改变。一旦已加载新任务计划,模块105到107、113及 114便可以同步化方式从旁通模式转变为作用中模式,以确保不发生数据通信错误。任务计 划可指定模块返回到作用中模式的时间,或网络管理员可使用NCSA以将命令传送到各种 模块,从而引导所述模块进入作用中模式中。更新任务计划的前述过程有利地允许在不中 断附接到计算机网络1〇〇的各种计算装置之间的通信的情况下发生网络安全程序的改变。
[0069] 每个模块105、106、107、113及114处的各种身份参数的动态操纵优选由在每个模 块105到107、113、114上执行的应用程序软件控制。然而,应用程序软件的行为有利地由 任务计划控制。
[0070] 现参考图8,提供概述每个模块105到107、113、114的操作的流程图。为避免混 淆,关于单向通信描述过程。例如,在模块105的情况中,单向可涉及数据从客户端计算机 101发射到集线器108。然而,实际上,优选的是模块105到107、113、114双向操作。当模 块通电时,过程开始于步骤802且继续到步骤804 (其中初始化模块应用程序软件以执行本 文中所述的方法)。在步骤806中,从所述模块内的存储器位置加载任务计划。此时,模块 准备开始处理数据且在步骤808继续处理数据,其中所述模块从其输入数据缓冲器存取数 据包。在步骤810中,模块检查以确定其是否处于旁通操作模式中。如果是,那么在步骤 812中在无任何数据包修改的情况下重新发射在步骤808中存取的数据包。如果模块并未 处于旁通模式中,那么其必然处于其作用中操作模式,且继续到步骤814。在步骤814中,模 块读取数据包以确定数据包所源自的来源节点的身份。在步骤816中,模块检验所述包以 确定所述来源节点是否有效。可比较指定的来源节点与有效节点的列表以确定所述指定的 来源节点当前是否有效。如果指定的来源节点并非有效节点,那么在步骤818中舍弃所述 包。在步骤820中,所述过程检查以确定是否发生触发事件。触发事件的发生将影响待使 用的假身份值的选择。因此,在步骤822中,模块基于触发信息、时钟时间及任务计划中的 一或多者而确定待使用的假身份值。接着,模块继续到步骤826,其中所述模块操纵数据包 的身份参数。一旦完成操纵,便将数据包从所述模块的输出端口重新发射到邻近节点。在 步骤830中,做出关于是否已命令所述模块断电的确定。如果是,那么所述过程在步骤832 结束。在步骤808,所述过程继续且从模块的输入数据缓冲器存取下一数据包。
[0071] 现参考图9,提供概述本文中所述的用于管理动态计算机网络的方法的流程图。过 程始于步骤902且继续到步骤904,其中建立网络模型(例如,如关于图3所示及所述)。在 步骤906中,做出关于是否将要建立新任务计划的确定。如果是,那么在步骤908中建立新 任务计划且过程继续到步骤910,其中选择新任务计划。或者,如果在步骤906中已建立所 要任务计划,那么所述方法可直接继续到步骤910,其中选择现有任务计划。在步骤912中, 将任务计划传送到模块(例如,模块105到107、113、114),其中所述任务计划存储于存储器 位置中。当网络管理员准备实施新任务模型时,在步骤914中发送导致模块进入如本文中 所述的备用模式的命令。当模块处于此备用模式时,在步骤916加载任务计划。任务计划的 加载发生于每个模块处,使得任务计划可用于控制在所述模块上执行的应用程序软件的操 作。特定来说,任务计划用于控制应用程序软件执行身份参数的动态操纵的方式。在步骤 918中,再次使得任务模块进入作用中操作模式,其中每个任务模块根据任务计划而执行身 份参数的操纵。步骤914、916及918可响应于从网络管理员发送的特定命令而发生,或可 响应于在步骤912中接收到任务计划而在每个模块处自动发生。在步骤918之后,模块继 续根据已加载的任务计划而执行处理。在步骤920中,通过检查以确定用户是否已指示期 望改变任务计划而继续过程;如果是,那么过程返回到步骤906,其中过程如上文所述股继 续。如果不存在用户或网络管理员希望改变现有任务计划的指示,那么过程在步骤922中 确定是否已指示终止过程。如果是,那么过程在步骤924中终止。如果未接收到终止指令, 那么过程返回到步骤920且继续。
[0072] 现参考图10,提供展示可用于执行本文中所述的身份参数的操纵的示范性模块 1000的计算机架构的框图。模块1000包含处理器1012(例如中央处理单元(CPU))、主存 储器1020及静态存储器1018,其经由总线1022彼此通信。计算机系统1000可进一步包含 显示单元1002(例如液晶显示器或IXD)以指示模块的状态。模块1000还可包含允许模块 在两个单独数据线上同时接收及发射数据的一或多个网络接口装置1016、1017。两个网络 接口端口促进图1中所示的布置,其中每个模块经配置以同时拦截及重新发射从网络上的 两个单独计算装置接收的数据包。
[0073] 主存储器1020包含其上存储一或多组指令1008 (例如,软件代码)的计算机可读 存储媒体1010,指令1008经配置以实施本文中所述的方法论、程序或功能中的一或多者。 指令1008还可在其由模块执行期间完全或至少部分驻留于静态存储器1018内及/或处理 器1012内。静态存储器1018及处理器1012还可构成机器可读媒体。在本发明的各种实 施例中,连接到网络环境的网络接口装置1016使用指令1008而经由网络通信。
[0074] 现参考图11,展示根据本发明布置的示范性网络管理计算机(NAC) 114。NAC可包 括各种类型的计算系统及装置,包含服务器计算机、客户端用户计算机、个人计算机(PC)、 平板计算机PC、膝上型计算机、桌上型计算机、控制系统或能够执行指定待由所述装置采取 的动作的(按顺序或以其它方式)旨令集的任何其它装置。此外,虽然图11中说明单个计 算机,但是应了解词组"NAC"包含个别或共同执行一组(或多组)旨令以执行本文中论述 的任何一或多个方法论的计算装置的任何集合。
[0075] 现参考图11,NAC104包含处理器1112(例如中央处理单元(CPU))、磁盘驱动器单 元1106、主存储器1120及静态存储器1118,其经由总线1122而彼此通信。NAC104可进一 步包含显示单元1102,例如视频显示器(例如,液晶显示器或LCD)、平板、固态显示器或阴 极射线管(CRT)。NAC104可包含用户输入装置1104(例如,键盘)、光标控制装置1114(例 如,鼠标)及网络接口装置1116。
[0076] 磁盘驱动器单元1106包含其上存储一或多组指令1108 (例如,软件代码)的计算 机可读存储媒体1110,指令1108经配置以实施本文中所述的方法论、程序或功能中的一或 多者。指令1108还可在其执行期间完全或至少部分驻留于主存储器1120、静态存储器1118 内及/或处理器1112内。主存储器1120及处理器1112还可构成机器可读媒体。
[0077] 所属领域的技术人员应了解,图10中说明的模块架构和图11中的NAC架构各自 表示可分别用以执行本文中所述的方法的计算装置的仅一个可能实例。然而,本发明在此 方面不受限制且在无限制的情况下还可使用任何其它适宜计算装置架构。专用硬件实施方 案包含(但不限于)专用集成电路、可编程逻辑阵列,且其它硬件装置可同样经建构以实施 本文中所述的方法。可包含各种实施例的设备及系统的应用广泛包含多种电子及计算机系 统。一些实施例可实施两个或两个以上特定互连的硬件装置(其中在模块之间及通过模块 传送相关控制及数据信号)中或作为专用集成电路的部分的功能。因此,示范性系统可应 用于软件、固件及硬件实施方案。
[0078] 根据本发明的各种实施例,本文中所述的方法存储为计算机可读存储媒体中的软 件程序,且经配置以在计算机处理器上运行。此外,软件实施方案可包含(但不限于)分布 式处理、组件/对象分布式处理、并行处理、虚拟机处理,其也可经建构以实施本文中所述 的方法。
[0079] 虽然在图10及11中将计算机可读存储媒体1010、1110展示为单个存储媒体, 但是术语"计算机可读存储媒体"应视为包含存储一或多个指令集的单个媒体或多个媒体 (例如,集中式或分布式数据库及/或相关联的高速缓冲存储器及服务器)。术语"计算机 可读存储媒体"还应视为包含能够存储、编码或载送指令集以由机器执行且导致机器执行 本发明的任何一或多个方法论的任何媒体。
[0080] 因此,术语"计算机可读媒体"应视为包含(但不限于)固态存储器,例如存储器 卡或容置一或多个只读(非易失性)存储器、随机存取存储器或其它可重写(易失性)存 储器的其它封装;磁光或光学媒体,例如磁盘或磁带。因此,本发明被视为包含本文中列出 的任何一或多个计算机可读媒体,且包含公认等效物及后继媒体(其中存储本文中的软件 实施方案)。
[0081] 与动态网络外部的计算装置的通信
[0082] 虽然本文中所述的用于身份参数的动态操纵的方法可在网络100内良好地运作, 但是所述方法确实存在关于与网络100外部的计算机通信的一些问题。例如,网络100外 部的计算机将不知道在运作中的用于操纵身份参数的动态过程。因此,如果未采取适当动 作,那么可能中断与网络100外部的计算机的通信。因此,网络100有利地包含至少一个桥 接器115,桥接器115经布置以处理进入或离开网络100的通信。所述桥接器确保网络100 内的计算装置与网络100外部的计算装置之间的此类通信可在无错误的情况下发生。
[0083] 桥接器115为将具有类似于如图2中所示的模块的功能框图的功能框图的计算装 置。桥接器115还可具有类似于图10中所示的计算机架构的计算机架构。由桥接器115 执行的操作类似于由模块105到107、113、114执行的操作。桥接器将从网络100接收数 据通信,且将在将此类数据通信重新发射到第二网络124之前根据任务计划而操纵身份参 数。在一些实施例中,此类操纵将涉及将假身份参数转换回到真身份参数,其中真身份参数 是基于任务计划中含有的信息而确定。在第二网络未动态修改身份参数信息的情况下,此 布置是足够的。
[0084] 在替代实施例中,第二网络124为以类似于网络100的方式操作的动态网络。因 而,所述第二网络可具有其自身的任务计划(第二任务计划)。在所述情况中,桥接器将从 第一网络接收数据通信中的身份参数,且将具有假值的身份参数的第一集合变换为代替性 地具有真值。第二网络124的任务计划可指定完全不同的动态网络。例如,第二网络的任 务计划可指定待修改的不同身份参数、不同触发时序等等。因此,桥接器将需要从第一网络 接收消息,根据第一网络100的任务计划校正所述第一集合中的假值,且接着根据第二网 络的任务计划而动态地修改第二集合中的相同(或不同)身份参数。一旦所述身份参数的 第二集合已适当地转换为假值,便将所述数据通信发射到第二网络。
[0085] 应了解,根据与第一网络相关联的第一任务计划确定第一集合,且根据与第二网 络相关联的第二任务计划确定第二集合。类似地,根据第一任务计划确定所述第一集合中 所含有的假信息,且根据第二任务计划确定所述第二集合中所含有的假信息。所述身份参 数的第一集合相比于所述身份参数的第二集合可为相同或不同的。并且,应了解,第一集合 及第二集合可包含所述数据通信中包含的所有或一些身份参数。所述数据通信通常将为含 有多个身份参数的包数据通信。所述桥接器还将从第二网络124接收数据通信,且将根据 第一网络、第二网络或两者的任务计划而操纵此类数据通信中的身份参数。例如,桥接器可 从第二数据网络接收第二数据通信,第二数据通信可包含第二多个身份参数。取决于第二 网络是否动态地修改身份参数,所述第二身份参数可或可不指定假信息。如果第二网络未 动态地修改身份参数,那么桥接器仅需使用与第一网络相关联的任务计划以动态地变换第 二多个身份参数的集合以指定假信息。
[0086] 如果第二网络确实动态地修改身份参数,那么桥接器将需要使用与第二网络相关 联的任务计划以将第二多个身份参数的第一集合(具有假值)转换为真值。此步骤优选在 所述桥接器使用与第一网络相关联的任务计划以将第二多个身份参数的第二集合变换为 假值之前执行。第一集合及第二集合可相同或不同,且将在每个情况中通过每个网络的任 务计划而确定。同样地,经执行以将身份参数转换为假值的变换可相同或不同,且将取决于 与每个网络相关联的任务计划。此后,所述桥接器将此类数据通信重新发射到网络100。
[0087] 在一些实施例中,根据伪随机过程确定网络100、124的假身份参数。在所述情况 中,可通过相关联网络的任务计划确定伪随机过程及/或伪随机过程的种子值。同样地,可 通过伪随机过程确定将要操纵的身份参数的选择,其中通过与每个网络相关联的任务计划 分别确定所述过程及/或此过程的种子值。如上文关于模块所描述,桥接器将根据一或多 个触发事件的发生而对假身份参数值及/或将要操纵的身份参数的选择做出改变。不同于 模块,桥接器115将需要相对于触发事件而执行此类动作,所述触发事件相对于第一网络 及第二网络而发生。
[0088] 除需要潜在地管理与一个以上任务计划相关联的动态操作以外,桥接器115的操 作类似于模块的操作。然而应了解,桥接器115的操作相比于模块105到107、113、114的操 作是不同的。例如,不同于模块,执行身份参数操纵的位置在桥接器115的情况中不改变。 代替性地,当网络100中的至少一个模块处于作用中模式时,桥接器115将始终处于作用中 模式,因为桥接器形成与网络100外部的计算装置的链接。
[0089] 现参考图12,提供概述桥接器115的操作的流程图。当桥接器通电时,过程开始于 步骤1202且继续到步骤1204,其中初始化桥接器应用程序软件以执行本文中所述的方法。 在步骤1206中,从所述桥接器内的存储器位置加载一或多个任务计划。如果桥接器连接到 未参与身份参数的动态操纵的网络,那么仅需要单个任务计划。然而,如果桥接器连接两个 或两个以上网络(其每一者如本文中所述动态地修改身份参数),那么在步骤1206中将加 载一个以上任务计划。第一任务计划可定义第一网络的动态操控,且第二任务计划可定义 第二网络的动态操控。此时,桥接器准备开始处理数据且在步骤1208中进行处理数据,其 中桥接器从其输入数据缓冲器存取数据包。在步骤1210中,桥接器检查以确定其是否处于 旁通操作模式中。如果是,那么在步骤1212中在无任何数据包修改的情况下重新发射在步 骤1208中存取的数据包。如果桥接器不处于旁通模式,那么其必然处于其作用中操作模 式,且继续到步骤1214。
[0090] 在步骤1214中,桥接器读取数据包以确定数据包所源自的来源节点及目的地节 点的身份。在步骤1216中,桥接器检验数据包以确定所述来源节点是否有效。这可通过比 较所述数据包中指定的来源节点与有效来源节点的当前列表而完成。如果来源节点信息无 效,那么在步骤1218中舍弃所述包。在步骤1220中,过程检查以确定是否已发生触发事件。 这是重要步骤,这是因为触发事件的发生可对适当假身份值的计算具有显著影响。如果桥 接器正在使用两个或两个以上任务计划,那么此步骤包含确定是否已发生关于任一任务计 划的触发事件。注意,每个任务计划可涉及不同触发事件。
[0091] 所接收数据的来源及目的地地址信息是重要的,这是因为需要允许桥接器确定如 何适当地操纵数据通信内所含有的身份参数。一旦已确定此信息,接着桥接器便继续到步 骤1222,其中桥接器确定假身份参数的选择/值。接着,过程继续到步骤1226,在所述步骤 处桥接器根据一或多个任务计划而操纵数据包的身份参数。一旦完成操纵,在1228处将数 据包从桥接器的输出端口重新发射到邻近节点。在步骤1230中,做出关于是否已命令桥接 器断电的确定。如果是,那么过程在步骤1232结束;否则,过程返回到1208。在步骤1208 中,过程继续且从桥接器的输入数据缓冲器存取下一数据包。如上文所解释,在步骤1216 处执行的操纵的类型将取决于数据通信的来源及目的地,及是否存在一个或一个以上正动 态操控的网络。
[0092] 可变更的身份参数的类型
[0093] 现参考图13,提供可由模块105到107、113、114及/或由桥接器115操纵的一些 身份参数的列表。图13中列出的参数中的每一者包含于数据通信中,所述数据通信包含于 使用TCP/IP通信协议的网络中。图13中列出的大多数信息类型为所属领域的技术人员所 众所周知的。然而,在本文中提供每个信息类型及其作为身份参数的使用的简单描述。还 提供每个身份参数可被操纵的方式的简要论述。
[0094] IP地址。IP地址为指派到参与计算机网络的每个计算装置的数字识别符,其中所 述网络使用众所周知的因特网协议进行通信。IP地址可为32位或128位数字。出于本发 明的目的,IP地址数字可改变为随机选择的假值(例如,使用伪随机数字产生器)。或者, 可从假值的预定列表(例如,由任务计划指定的列表)随机选择假IP地址值。来源及目的 地IP地址包含于数据包的TCP标头部分中。因此,这些值的操纵通过使用包操纵技术仅改 变IP标头信息而执行。当包到达第二模块(可操纵其位置)时,将假IP地址值变换回到 其真值。第二模块使用相同伪随机过程(或其逆过程)以基于假值而导出真IP地址值。
[0095] MAC地址。MAC地址为由制造商指派到网络接口装置且存储于板载ROM中的唯一 值。出于本发明的目的,来源及/或目的地MAC地址可改变为随机选择的假值(例如,使用 伪随机数字产生器)。或者,可从假值的预定列表(例如,由任务计划指定的列表)随机选 择假MAC值。来源及目的地MAC地址包含于数据包的IP标头部分中。因此,这些值的操纵 是通过仅改变每个包的以太网标头信息而执行。当包到达第二模块(可操纵其位置)时, 将假MAC地址值变换回到其真值。接收包的模块将使用相同伪随机过程(或其逆过程)以 基于假值而导出真MAC地址值。
[0096] 网络/子网。在一些实施例中,IP地址可被视作单个身份参数。然而,IP地址通 常定义为包含至少两个部分,所述部分包含网络前缀部分及主机号码部分。网络前缀部分 识别数据包待传送到的网络。主机号码识别局域网(LAN)内的特定节点。子网络(有时称 为子网)为IP网络的逻辑部分。在网络被划分为两个或两个以上子网的情况下,IP地址 的主机号码区段的一部分用于指定子网号码。出于本发明的目的,可将网络前缀、子网号码 及主机号码中的每一者视作单独身份参数。因此,这些身份参数中的每一者可以伪随机方 式独立于其它者而单独操纵。此外,应了解,数据包将包含来源IP地址及目的地IP地址。 因此,可在来源IP地址及/或目的地IP地址中操纵网络前缀、子网号码及主机号码,从而 可以伪随机方式操纵总共六个不同可变身份参数。接收包的模块将使用与发源节点相同的 伪随机过程(或此过程的逆过程)以基于假值导出真网络/子网信息值。
[0097] TCP序列。在TCP会话的相对侧上彼此通信的两个客户端计算机各自将维持TCP 序列号码。所述序列号码允许每个计算机追踪其已传送多少数据。TCP序列号码包含于在 会话期间传送的每个包的TCP标头部分中。在TCP会话起始时,随机选择初始序列号码值。 出于本发明的目的,TCP序列号码可根据伪随机过程而操纵为身份参数。例如,TCP序列号 码可改变为随机选择的假值(例如,使用伪随机数字产生器)。当在网络的不同模块(将动 态地变更其位置)处接收包时,TCP序列号码可使用伪随机过程的逆过程而从假值变换回 到真值。
[0098] 端口号码。TCP/IP端口号码包含于数据包的TCP或UDP标头部分中。如TCP/IP 通信协议中使用的端口在此项技术中是众所周知的,且因此在本文中将不详细描述。端口 信息包含于数据包的TCP标头部分内。因此,端口信息的操纵是通过仅修改TCP标头信息 以将真端口值改变为假端口值而完成。如同本文中论述的其它身份参数,可在第一模块处 根据伪随机过程将端口号码信息操纵或变换为假值。随后,可在第二模块处使用伪随机过 程的逆过程将端口信息从假值变换为真值。
[0099] 虽然已关于一或多个实施方案说明及描述本发明,但是所属领域的技术人员在阅 读及了解本说明书及所述附图之后将想起等效变更及修改。此外,虽然可能已关于若干实 施方案中的仅一者揭示本发明的特定特征,但是如对于任何给定或特定应用可期望及有 利,此特征可与其它实施方案的一或多个其它特征组合。因此,本发明的广度及范围不应受 限于任何上述实施例。而是,本发明的范围应根据所附权利要求书及其等效物加以界定。
【权利要求】
1. 一种用于将数据从包含于第一计算机网络中的第一计算装置传送到包含于第二计 算机网络中的第二计算装置的方法,其包括: 在所述第一计算机网络上发射数据通信,所述数据通信包含第一多个身份参数,所述 第一多个身份参数指定与所述第一及第二计算装置中的至少一者相关联的真值; 在所述第一计算机网络中的第一位置处动态地修改所述第一多个身份参数的第一集 合,以在将所述数据通信重新发射到桥接器位置之前变换所述第一集合以指定假信息; 在所述计算机网络中的所述桥接器位置处动态地修改所述第一集合,以变换所述第一 集合以指定真信息; 在所述桥接器位置处变换所述第一集合以指定真信息之后,将所述数据通信从所述桥 接器位置发射到所述第二计算机网络;及 动态地变更所述计算机网络内的所述第一位置的定位。
2. 根据权利要求1所述的方法,其中所述第二计算机网络未动态地修改身份参数,且 所述数据通信从所述桥接器发射到所述第二网络,其中所有所述第一多个身份参数含有真 信息。
3. 根据权利要求1所述的方法,其中所述第二计算机网络动态地修改身份参数,且所 述方法进一步包括在所述桥接器位置处动态地修改所述多个身份参数的第二集合,以变换 所述第二集合以指定假信息。
4. 根据权利要求3所述的方法,其中所述第一集合根据第一任务计划确定,且所述第 二集合根据第二任务计划确定。
5. 根据权利要求4所述的方法,其中所述第一集合中含有的所述假信息根据所述第一 任务计划确定,且所述第二集合中含有的所述假信息根据所述第二任务计划确定。
6. 根据权利要求4所述的方法,其中所述第一集合与所述第二集合不同。
7. 根据权利要求1所述的方法,其进一步包括: 在所述桥接器位置处从所述第二计算机网络的所述第二计算装置接收第二数据通信, 所述第二数据通信含有与所述第一及第二计算装置中的至少一者相关联的第二多个身份 参数; 在所述桥接器位置处动态地修改所述第二多个身份参数的第一集合,以变换所述第二 多个身份参数的所述第一集合以指定假信息;及 在变换所述第二多个身份参数的所述第一集合以指定假信息之后,将所述数据通信从 所述桥接器位置发射到所述第一计算机网络。
8. 根据权利要求1所述的方法,其进一步包括响应于至少一个触发事件而变更所述第 一位置的所述定位。
9. 根据权利要求8所述的方法,其进一步包括基于用户命令、时序间隔及潜在网络安 全威胁的检测中的至少一者而确定所述触发事件的发生。
10. -种用于在包含于第一计算机网络中的第一计算装置与包含于第二计算机网络中 的第二计算装置之间传送数据的桥接器,其中所述数据包含用于传达关于所述第一计算装 置及所述第二计算装置中的至少一者的信息的多个身份参数值,所述桥接器包括: 至少一个计算机处理装置,其经配置以: 选择性地执行第一变换,其中从所述第一计算装置到所述第二计算装置的第一数据通 信中的身份参数值的第一集合从假值变换为真值; 配合所述第一计算机网络中的多个模块而动态地确定所述第一变换的至少一个特性。
【文档编号】H04L29/12GK104106250SQ201380008826
【公开日】2014年10月15日 申请日期:2013年1月30日 优先权日:2012年2月9日
【发明者】韦恩·史密斯 申请人:贺利实公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1