一种网络安全流量生成方法和系统的制作方法

文档序号:7805158阅读:177来源:国知局
一种网络安全流量生成方法和系统的制作方法
【专利摘要】本发明提供一种基于攻击向量的网络安全流量生成方法和系统。本发明根据要模拟的目标网络攻击场景,确定需要模拟的网络实体及攻击步骤,为攻击步骤建立安全攻击状态序列,完整的安全攻击状态序列组成攻击向量。对于不确定攻击步骤的未知攻击类型,采用基于内容和状态的流量提取方法,构造攻击向量。基于攻击向量,由攻击引擎创建多进程或线程实例来执行以产生网络安全流量数据。该方法通过对安全攻击过程中客户端、服务端以及客户端和服务端交互过程进行模拟,实现自动化生成具有完整状态的真实安全流量,并且通过对已有攻击流量的分析提取,支持新攻击和未知安全流量,具有良好的可扩展性和实用性,且实现简单,可行性高。
【专利说明】一种网络安全流量生成方法和系统

【技术领域】
[0001] 本发明涉及网络测试领域,具体而言,涉及一种网络安全流量生成方法和系统。

【背景技术】
[0002] 网络安全测试是检查和验证网络系统的安全性的重要手段,被广泛应用到网络系 统的开发和维护工作中。网络安全测试的核心就是通过自动化的方式产生尽可能符合真实 攻击场景的恶意流量数据,让被测系统进行处理,从而检测被测网络系统在处理这些自动 化生成的安全流量数据过程中的表现,进行网络系统的安全性验证。
[0003] 目前网络安全流量产生方法主要有:
[0004] 1)基于日志回放:这类方法通过将真实网络环境中捕获的流量数据进行重放,实 现网络攻击场景的重现。该方法存在以下局限性:(1)前提是可以获取到攻击场景流量; (2)回放的流量往往包含大量违反协议语义的分组,影响DPI设备过滤准确性;(3)由于网 络配置等变化,流量往往无法回放到真实网络中,适用的场景小;(4)流量回放很难覆盖各 种安全攻击类型,也难以进行可控的混合生成,无法全面评估安全威胁。(5)回放的流量也 只能检测DPI设备过滤出的安全流量,而无法发现成功或者失败过滤的原因。(1)和(2)说 明缺少状态,真实性差;(3)和⑷说明灵活性差。
[0005] 2)基于安全规则:根据防火墙配置策略规则,自动生成对应规则的流量数据,对 防火墙进行自动化的测试,这类方法非常局限,只能测试防火墙规则的有效性。该方法存在 以下局限性:(1)缺少攻击语义状态,往往导致漏报和误报;(2)很多安全攻击涉及复杂的 攻击过程,安全规则无法表达整个攻击过程;(3)对新的攻击需要仔细的逆向工程,分析攻 击特征,对最新攻击特征的提取和构造比较困难,灵活性差。(1)和⑵说明缺少状态,真实 性差;(3)说明灵活性差。
[0006] 3)基于受控网络:这种方法利用虚拟机等,在受控/隔离环境中进行真实安全攻 击的实验、测试和分析。该方法存在以下局限性:(1)无法应用到真实系统中发现和评估安 全威胁;(2)通常基于真实的攻击工具,环境搭建复杂,安全攻击种类非常有限。因此这种 方法的灵活性很差。


【发明内容】

[0007] 本发明提供一种用于网络安全测试的网络安全流量生成方法和系统,可以灵活地 生成各种具有完整状态的安全攻击流量。
[0008] 为达到上述目的,本发明提供了一种用于网络安全测试的网络安全流量生成方 法,包括:
[0009] 对于已知类型的攻击,包括以下步骤:
[0010] 步骤1)流量分类,根据安全流量构造方法进行分类,将网络安全流量分为恶意分 组、应用攻击及DoS攻击,并分别抽象出对应的安全流量生成动作;
[0011] 步骤2)攻击分解,将攻击行为分解为若干攻击步骤,为每个步骤定义一个对应的 安全攻击状态,对所述若干攻击步骤分别对应的安全攻击状态进行组合,得到对应攻击行 为的一组安全攻击状态跳转序列,并表示为攻击向量,其中,所述安全攻击状态包括安全流 量生成动作以及可选的响应判断;
[0012] 步骤3)攻击构造,根据所述攻击向量生成安全攻击脚本;
[0013] 步骤4)流量生成,通过攻击引擎执行所述安全攻击脚本,生成网络安全流量。
[0014] 进一步地,对于未知类型的攻击或新型攻击,在获得流量数据的前提下,采用下述 步骤生成上述步骤中的攻击向量:
[0015] 步骤21)流量分解,将安全流量分解为若干条网络流量序列;
[0016] 步骤22)数据识别,对每条网络流量序列提取对应的行为特征,构造安全攻击状 态;
[0017] 步骤23)攻击构造,根据流量的时间戳序列和所述若干条网络流量序列分别对应 的安全攻击状态构造安全攻击状态跳转序列,并表示为攻击向量;
[0018] 进而执行上述步骤3)攻击构造和步骤4)攻击执行。
[0019] 进一步地,所述安全流量生成动作支持构造任何格式的攻击数据及完备的攻击逻 辑,包括下列类型的动作:流量动作、数据构造和解析动作、运算和控制动作;所述响应判 断包括收集和处理目标实体的响应,判断流量生成动作成功/失败的结果。
[0020] 进一步地,根据每个网络攻击所采用的应用协议的协议规范,按照应用的消息交 互过程或者按照被模拟的网络实体之间的交互过程,分解出基本流量动作。
[0021] 进一步地,根据要模拟的网络攻击所采用的协议规范中所规定的消息格式,以及 该网络攻击中可能出现的特殊数据分组来分解出消息构造和解析动作。
[0022] 进一步地,所述运算和控制动作用来进行数据运算和逻辑控制,包括基本算术、逻 辑运算和逻辑控制动作。
[0023] 进一步地,所述行为特征根据识别出的协议类型的有限状态转移自动机的状态特 征提取,将行为特征表示为流量生成动作,对应协议的有限状态转移自动机对应流量的攻 击向量。
[0024] 进一步地,如果攻击为多个时,在通过攻击引擎执行所述安全攻击脚本时,创建多 个进程或线程并发执行每个攻击对应的安全攻击脚本。
[0025] 进一步地,在所述流量分解步骤中,根据数据流量特征对所获得的流量数据进行 分解。
[0026] 为达到上述目的,本发明还提供了一种网络安全流量生成系统,对于已知类型的 攻击,所述系统包括:
[0027] 流量分类模块,用于根据安全流量构造方法进行分类,将网络安全流量分为恶意 分组、应用攻击及DoS攻击,并分别抽象出对应的安全流量生成动作;
[0028] 攻击分解模块,用于将攻击行为分解为若干攻击步骤,为每个步骤定义一个对应 的安全攻击状态,对所述若干攻击步骤分别对应的安全攻击状态进行组合,得到对应攻击 行为的一组安全攻击状态跳转序列,并表示为攻击向量,其中,所述安全攻击状态包括安全 流量生成动作以及可选的响应判断;
[0029] 攻击构造模块,用于根据所述攻击向量生成安全攻击脚本;
[0030] 流量生成模块,用于通过攻击引擎执行所述安全攻击脚本,生成网络安全流量。
[0031] 与现有技术相比,本发明的优点在于:
[0032] 本发明通过对安全攻击过程中客户端、服务端以及客户端和服务端交互过程进行 模拟,实现自动化生成具有各种完整状态的真实安全流量,并且通过对已有攻击流量的分 析提取,支持新攻击和未知安全流量,具有良好的可扩展性和实用性,且实现简单,可行性 商。

【专利附图】

【附图说明】
[0033] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以 根据这些附图获得其他的附图。
[0034] 图1为本发明一个实施例的基于攻击向量的网络安全流量生成方法流程图;
[0035] 图2为本发明一个实施例的利用远程代码执行漏洞的典型攻击过程示意图;
[0036] 图3为本发明一个实施例的TCP有限状态机示意图;
[0037] 图4为本发明一个实施例的其他协议有限状态机示意图;
[0038] 图5为本发明一个实施例的网络场景的示意图;
[0039] 图6为可本发明另一个实施例的网络场景的示意图。

【具体实施方式】
[0040] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
[0041] 图1为本发明一个实施例的基于攻击向量的网络安全流量生成方法流程图。如图 所示,该方法包括:步骤1)流量分类,根据安全流量构造方法进行分类,分为恶意分组,应 用攻击及DoS攻击,抽象出安全流量生成动作。步骤2)攻击分解,将攻击分解为若干攻击 步骤,为每个步骤定义一个安全攻击状态,攻击行为即为一组安全攻击状态跳转序列,表示 为攻击向量。步骤3)攻击构造,由攻击向量生成安全攻击脚本。步骤4)安全流量生成,通 过攻击引擎执行安全攻击脚本,生成网络安全流量。
[0042] 上述方法中,所述安全攻击状态用以进行安全流量生成评估,从而实现完整的攻 击过程的分析,得出安全攻击成功和失败深层报告。安全攻击状态包括安全流量生成动作 以及可选的响应判断。响应判断应该包括收集和处理目标实体的响应,判断流量生成动作 成功/失败的结果。
[0043] 更具体地,在步骤1)的流量分类中,根据安全流量构造方法进行分类,分为恶意 分组攻击,应用攻击及DoS攻击,抽象出安全流量生成动作。
[0044] 表 1
[0045]

【权利要求】
1. 一种用于网络安全测试的网络安全流量生成方法,其特征在于,包括: 对于已知类型的攻击,包括以下步骤: 步骤1)流量分类,根据安全流量构造方法进行分类,将网络安全流量分为恶意分组、 应用攻击及DoS攻击,并分别抽象出对应的安全流量生成动作; 步骤2)攻击分解,将攻击行为分解为若干攻击步骤,为每个步骤定义一个对应的安全 攻击状态,对所述若干攻击步骤分别对应的安全攻击状态进行组合,得到对应攻击行为的 一组安全攻击状态跳转序列,并表示为攻击向量,其中,所述安全攻击状态包括安全流量生 成动作以及可选的响应判断; 步骤3)攻击构造,根据所述攻击向量生成安全攻击脚本; 步骤4)流量生成,通过攻击引擎执行所述安全攻击脚本,生成网络安全流量。
2. 根据权利要求1所述的方法,其特征在于,还包括: 对于未知类型的攻击或新型攻击,在获得流量数据的前提下,采用下述步骤生成上述 步骤中的攻击向量: 步骤21)流量分解,将安全流量分解为若干条网络流量序列; 步骤22)数据识别,对每条网络流量序列提取对应的行为特征,构造安全攻击状态; 步骤23)攻击构造,根据流量的时间戳序列和所述若干条网络流量序列分别对应的安 全攻击状态构造安全攻击状态跳转序列,并表示为攻击向量; 进而执行上述步骤3)攻击构造和步骤4)攻击执行。
3. 根据权利要求1所述的方法,其特征在于,所述安全流量生成动作支持构造任何格 式的攻击数据及完备的攻击逻辑,包括下列类型的动作:流量动作、数据构造和解析动作、 运算和控制动作;所述响应判断包括收集和处理目标实体的响应,判断流量生成动作成功 /失败的结果。
4. 根据权利要求3所述的方法,其特征在于,根据每个网络攻击所采用的应用协议的 协议规范,按照应用的消息交互过程或者按照被模拟的网络实体之间的交互过程,分解出 基本流量动作。
5. 根据权利要求3所述的方法,其特征在于,根据要模拟的网络攻击所采用的协议规 范中所规定的消息格式,以及该网络攻击中可能出现的特殊数据分组来分解出消息构造和 解析动作。
6. 根据权利要求3所述的方法,其特征在于,所述运算和控制动作用来进行数据运算 和逻辑控制,包括基本算术、逻辑运算和逻辑控制动作。
7. 根据权利要求2所述的方法,其特征在于,所述行为特征根据识别出的协议类型的 有限状态转移自动机的状态特征提取,将行为特征表示为流量生成动作,对应协议的有限 状态转移自动机对应流量的攻击向量。
8. 根据权利要求1所述的方法,其特征在于,如果攻击为多个时,在通过攻击引擎执行 所述安全攻击脚本时,创建多个进程或线程并发执行每个攻击对应的安全攻击脚本。
9. 根据权利要求2所述的方法,其特征在于,在所述流量分解步骤中,根据数据流量特 征对所获得的流量数据进行分解。
10. -种网络安全流量生成系统,其特征在于,对于已知类型的攻击,所述系统包括: 流量分类模块,用于根据安全流量构造方法进行分类,将网络安全流量分为恶意分组、 应用攻击及DoS攻击,并分别抽象出对应的安全流量生成动作; 攻击分解模块,用于将攻击行为分解为若干攻击步骤,为每个步骤定义一个对应的安 全攻击状态,对所述若干攻击步骤分别对应的安全攻击状态进行组合,得到对应攻击行为 的一组安全攻击状态跳转序列,并表示为攻击向量,其中,所述安全攻击状态包括安全流量 生成动作以及可选的响应判断; 攻击构造模块,用于根据所述攻击向量生成安全攻击脚本; 流量生成模块,用于通过攻击引擎执行所述安全攻击脚本,生成网络安全流量。
【文档编号】H04L12/26GK104219221SQ201410238904
【公开日】2014年12月17日 申请日期:2014年5月30日 优先权日:2014年5月30日
【发明者】郭瑞 申请人:郭瑞
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1