【《网络安全测试工具原理介绍与探析概述》5400字】_第1页
【《网络安全测试工具原理介绍与探析概述》5400字】_第2页
【《网络安全测试工具原理介绍与探析概述》5400字】_第3页
【《网络安全测试工具原理介绍与探析概述》5400字】_第4页
【《网络安全测试工具原理介绍与探析概述》5400字】_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

网络安全测试工具原理介绍与分析概述目录TOC\o"1-3"\h\u262网络安全测试工具原理介绍与分析概述 3519481.1入侵检测评估数据集 35322291.1.1入侵检测评估数据集(CIC-IDS2017) 3541211.1.2入侵检测评估数据集2018(CSE-CIC-IDS2018) 371921.2Scapy 40260341.3Boofuzz 41194831.3.1模糊测试 41274751.3.2模糊测试阶段 4181301.3.2模糊测试工具 431.1入侵检测评估数据集入侵检测系统(IDSs)和入侵防御系统(IPSs)是抵御日益复杂和日益增长的网络攻击的重要防御工具。由于缺乏可靠的测试和验证数据集,基于异常的入侵检测方法的性能一致性和准确性受到影响。1.1.1入侵检测评估数据集(CIC-IDS2017)加拿大网络安全研究所对1998年以来现有的十一个数据集的评估显示,大多数数据都过时且不可靠。这些数据集中有些缺乏流量的多样性和容量,有些不包括已知攻击的种类,而其他的数据包有效载荷数据的匿名化,这不能反映当前的趋势。有些还缺少特性集和元数据。CICIDS2017是同时包含无害的良性攻击和近些年来最新出现的攻击的数据集,这与真实世界的数据(pcap)相似。基于收发时间和邮戳、源和其他目标间的ip、来自源和其他目标间的端口、协议及其他(csv)网络攻击(csv文件),利用流量标记数据流的方式cicvampire对用户网络流量使用情况数据进行了流量分析。提取的特征定义也是可用的。其首要的目的是生成真实的背景流量。该环境研究所已经充分利用了为sharafaldin等(2016年)成人提出的一种b-横向纵剖面环境模型分析系统(sharafaldin等的成人)可用来准确地分析描述各种与其他人类环境交互作用的自然抽象环境行为,并在其中不断产生一种能够适应人类大自然环境优势的良性环境背景信息流量。对于这个抽象数据集,基于一个http、https、ftp、ssh和一个电子邮件使用协议,它们分别构建了25个不同类型用户的数据抽象使用行为。数据集一共花了五天的时间进行采集制作。第一天捕获的数据较为常规,只包括良性的网络流量。实现的攻击包括蛮力FTP(BruteForceFTP),蛮力SSH(BruteForceSSH),DoS,心脏出血(Heartbleed),网络攻击,渗透,僵尸网络(Botnet)和DDoS。他们在之后四天的上午和下午被施行。在其最近的数据集评估框架中(Gharibetal.,2016),已经确定了建立一个可靠的基准数据集所必需的十一个标准。以前的IDS数据集中没有一个能够涵盖所有11个标准。在下文中,简要概述了这些标准:完整的网络配置:要想配备一个完整的配置,软件层面上需要配备操作系统,如Windows,macos和linux的各种发行版,硬件层面上需要包含调制解调器、交换机、路由器。以此来组整一个完整的网络拓扑结构。完整的流量:在Victim-Network只有一台用户分析代理和12台不同的计算机,并且包含来自攻击网络的真正攻击。标记数据集:表xxxxx显示了每天的良性和攻击标签。完全交互:通过拥有两个不同的网络和Internet通信,涵盖了内部LAN和内部LAN之间的交互。完全捕获:因为使用了镜像端口,例如窃听系统,所有的业务都被捕获并记录在存储服务器上。攻击多样性:包括基于2016年McAfee报告的最常见的攻击,比如蛮力FTP(BruteForceFTP),蛮力SSH(BruteForceSSH),DoS,心脏出血(Heartbleed),网络攻击,渗透,僵尸网络(Botnet)和DDoS。异构性:在攻击操作的间隔间,捕获来自主交换机和内存转储的网络流量以及来自所有受害机器的系统调用。特征集:利用cicvampire从生成的网络流量中提取80多个网络流量特征,并将网络流量数据集作为CSV文件提交。元数据:完整地解释了发表论文中的时间、攻击、流量和标签等数据集。概述数据集细节及其基本原则的完整研究报告:表xxxxxx日期描述含有的攻击及工具大小(GB)星期一正常活动BENIGN(正常人类活动)11.0G星期二攻击+正常活动BENIGN(正常人类活动)FTP-PatatorSSH-Patator11G星期三攻击+正常活动BENIGN(正常人类活动)DoSslowlorisDoSSlowhttptestDoSHulkDoSGoldenEyeHeartbleedPort44413G星期四攻击+正常活动BENIGN(正常人类活动)Web攻击-暴力破解Web攻击-XSSWeb攻击-Sql注入渗透7.8G星期五攻击+正常活动BENIGN(正常人类活动)BotnetARES端口扫描DDoSLOIT(LowOrbitIonCanon)8.3G1.1.2入侵检测评估数据集2018(CSE-CIC-IDS2018)入侵检测评估数据集2018是通信安全机构(CSE)和加拿大网络安全研究所(CIC)之间的合作项目。由于其在检测新型攻击方面的潜力,异常检测已经成为许多研究者关注的焦点。然而,由于系统的复杂性,它在实际应用中的应用受到了阻碍,因为这些系统在部署之前需要进行大量的测试、评估和调优。通过一系列广泛而全面的入侵和异常行为,将这些系统运行在实际标记的网络跟踪上,是最理想的测试和评估方法。这本身就是一个重大的挑战,因为数据集的可用性是极其罕见的,因为一方面,许多这样的数据集是内部的,由于隐私问题不能共享,另一方面,其他的数据集是严重匿名的,不反映当前的趋势,或者他们缺乏某些统计特征,所以一个完美的数据集尚未存在。因此,研究人员必须求助于往往是次优的数据集。随着互联网网络的行为和模式的更新与改变和入侵的进步与发展,由传统的静态和一次性的数据集到动态产生的数据集转变已经显得非常必要,这些数据集不但反映了当时的流量构成和入侵,而且都是可以被修改、可扩充和可以被重复使用。为了克服这些缺点,CSE和CIC设计了一种系统的方法来生成数据集来分析、测试和评估入侵检测系统,重点是基于网络的异常检测器。该项目的主要目标是开发一种系统方法,在创建用户配置文件的基础上,生成用于入侵检测的多样和全面的基准数据集,这些用户配置文件包含在网络上看到的事件和行为的抽象表示。这些概要文件将被组合起来,以生成一组不同的数据集,每个数据集都有一组独特的特性,这些特性涵盖了评估领域的一部分。最后的数据集包括了7种不同的攻击场景:蛮力攻击(Bruete-force)、Heartbleed攻击、僵尸网络(Botnet)攻击、拒绝服务攻击、Web攻击和渗透(Infiltration)。攻击基础设施包括50台机器,受害组织有5个部门,包括420台机器和30台服务器。数据集包括捕获网络流量和每台机器的系统日志,以及使用CICFlowMeter-V3从捕获的流量中提取的80个特征。在CSE-CIC-IDS2018数据集中,使用一个基本概要结构化的分布数学分析技术模型来进行系统地设计生成一个分布数据集,其中它们通常包含了关于应用程序、协议或者其他低层分布网络基础实体的信息入侵和数据抽象以及分布网络模型等等的相关技术信息。这些配置文件可以被代理或人工操作员用来在网络上生成事件。由于生成的概要文件的抽象性质,将它们应用于具有不同拓扑结构的各种网络协议。配置文档可以共同使用来制作出某些特殊需要的数据集,构建两个不同的概要文件类别:B-profiles:使用各种机器学习和统计分析技术(如K-Means、RandomForest、SVM和J48)封装用户的实体行为。封装的特性包括协议的分组大小分布、每流的分组数目、有效负载中的某些模式、有效负载的大小以及协议的请求时间分布。下面的协议将在我们的测试环境中进行模拟:HTTPS、HTTP、SMTP、POP3、IMAP、SSH和FTP。基于观察,大部分的流量是HTTP和HTTPS。M-Profiles:实现七个攻击场景。对于每一次攻击,根据实现的攻击网络拓扑定义一个场景,然后从目标网络之外的一台或多台机器上执行攻击。图1显示了实现的网络,这是AWS计算平台上的一个公共局域网/网络拓扑。为了拥有类似于现实世界网络的多样化机器,安装了5个子网,即研发部(dep-1)、管理部(dep-2)、技术部(dep-3)、业务部(dep-4)、信息技术部(dep-5)和服务器室。除了IT部门,为所有部门都安装不同的MSWindows操作系统(Windows8.1和Windows10),IT部门的所有计算机都是Ubuntu。对于服务器机房,实现不同的MSWindows服务器,如2012年和2016年。网络拓扑如图xxxx所示:基于上述的所有攻击和定义的场景,实现基础设施并执行了攻击场景。表2显示了攻击时间,攻击名称和流量大小。日期攻击名称大小(GB)2018-02-14星期三FTP-BruteForceSSH-BruteForce37.2G2018-02-15星期四DoS-GoldenEyeDoS-Slowloris38.4G2018-02-16星期五DoS-SlowHTTPTestDoS-Hulk35.9G2018-02-20星期二DDoS-LOIC-HTTPDDoS-LOIC-UDP41.3G2018-02-21星期三DDOS-LOIC-UDPDDOS-HOIC49.8G2018-02-22星期四BruteForce-WebBruteForce-XSSSQL注入46.8G2018-02-23星期五BruteForce-WebBruteForce-XSSSQL注入55.0G2018-02-28星期三Infiltration渗透攻击49.6G2018-03-01星期四Infiltration渗透攻击48.8G2018-03-02星期五Bot僵尸网络41.7G总大小为452.8GB1.2ScapyScapy是一款功能强大的专门用于交互式网络数据开发包网络信号采集处理通用工具、数据开发包信号产生器、网络信号扫描仪、网路信号发现器和数据包信号嗅探的通用工具。它通常可以用于提供各种类型的交互式封包产品例如生成的用户数据的封包或者可能是其他产品数据的封包的一个集合、针对这些产品数据的封包的响应操作、输出输入数据的封包、信号包的发射、信号包的嗅探、回应和参与反馈包的匹配等。Scapy有一些特定的目标,这些工具就是为它而设计的。这些目标不应该有任何偏差。如果不同的目标需要从其他工具,有必要开发不同的应用程序,以完成这一需求。其他工具无法充分区分编码和解码。其他工具在哪些机器适合编码和解码的意义上是混淆的。即使是它们也不能解码它们所接收到的足够的信息。Scapy试图克服这些问题。Scapy是一个在所有任意限制下都可以工作的灵活模型。可以自由地在任何字段中放置任何需要的值,然后按照自己的意愿堆叠它们。事实上,scapy可以同时满足所有的应用程序需求。Scapy的解释能力非常强大。它能够在解码后有效地解释信息。1.3Boofuzz1.3.1模糊测试模糊测试(fuzztesting,fuzzing)技术是从基于软件的模糊测试发展出的测试方法。这种技术的核心理念之一就是预先构造或随机构造一个测试集,并采取随机或者半随机的方式发送给待测试对象,然后通过自动监控应用程序的异常测试结果,并快速发现它们所存在的潜在应用程序设计错误。模糊度的测试主要是应用于以下的文本、网络数据或是本地输入以其他对外部输入数据依赖较大的软件。其优点有:原理简单,执行所需计算量较少,相关工具较为成熟,可以很方便地应用于大型软件的测试中等。模糊性测试通常被用来检测一个软件或者是电脑系统中的一个安全漏洞。模糊测试的应用非常广泛,根据输入的不同,在文件、网络协议、IO事件中都有用武之地。1.3.2模糊测试阶段模糊性的检验由于方法的选择,其技术相关性和操作复杂度的巨大差异,可能会使其发生巨大的改变。目前并未能够找到一种绝对公平正确的模糊质量检验法的方法。模糊分析测试方法的格式选择完全可以是由一个目标企业应用程序、研发工作人员的专业技术水平,和所有那些需要被模糊测试的大型数据库所采用的各种格式标准来进行决定。然而,无论我们是否确定要对什么样的测试模型应该进行模糊测试,也不管我们是否能够确定我们在一个模型中应该选择哪种测试方法,模糊测试的执行流程主要有几个基础性的阶段:识别测试目标确定了明确的测试对象,才可以决定所采取的模糊检测工具或技术。就是比如我们需要通过选择一个应用所包含的特定文件或者数据库来作为一个测试的目标,我们就需要把他们的注意力集中在多台应用程序之间可以分别共享的那些二进制源代码上。因为假设如果这些分享的二进制源代码中都是存在着一些安全性的漏洞,将会导致有非常多的客户受到其影响,因此可能的风险更大。识别输入绝大多数应用可被广泛利用的网络安全漏洞可能是因为这些应用不能对一个使用者的所有输入输出信号设置进行精确校验或者可能是对其他用户信号进行不必要的或或违规限制输入和输出操作。能不能够准确找到所有的模糊输入信号矢量(inputvector),这就是决定模糊信号检测器是否有用的重要因素。生成模糊测试数据大多数关于模糊系统测试的科学研究工作方法都主要是通过对应的目标软件系统不断地收集输入一些极有可能甚至会直接诱发各种类型软件系统性质存在缺陷的模糊测试结果数据,因而模糊测试结果数据的正确产生与否都一直是模糊系统测试非常重要而且必须严格遵循的一个环节,主要因素取决于模糊测试数据对象及其所在目标系统的软件性质及其测试数据库的格式。执行模糊测试数据自动化地向被测的系统发送数据包、打开文件、或是执行被测应用的过程。这个阶段一般与生成测试数据并行进行。监视异常对于监控不正确与错误进行失真是模糊测试中一个非常重要却又容易被人们所忽略的一个步骤。模糊检测需要依靠被测量的应用及其对象所作出决策而采取的模糊检测类型进行设置。判定发现的漏洞是否可被利用在模糊测试中如果发现一个有问题的错误,就需要先判断该个被检测到的错误是否为一个有问题且可被挖掘和利用。这种预警判断的过程既然可以让模糊检测的执行人员自己去做,也有可能直接交给安全检测的专家。无论是否采用了什么样的模糊测试,以上每一阶段的先后次序及其侧重点都可以根据本研究人员的目标需要进行更改。虽然模糊测试的功能性较强,但是绝不会意味着针对任何一个被测程序都可以发现其存在的百分之百的错误。1.3.2模糊测试工具SulleySulley,是一款用于python等语言进行实现的开源软件fuzztesting的软件框架,由PedramAMINI和AaronPortnoy设计。它们主要适合应用于对网络协议进行测试。事实上,在sulley之前,这两种技术方面的工具就已经开始出现了一些,但当时我们所采用的工具大多都是把它们集中到"数据生成"的部分,所以sulley设计的最

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论