20179311《网络攻防实践》第六周作业

Wesley13
• 阅读 816

网络安全是指网络系统的硬件、软件及其系统受到保护,不受偶然的或者恶意的原因而遭到破坏、更改、泄漏,系统连续可靠正常运行,网络服务不被中断。网络安全的三个基本属性:机密性、完整性和可用性。国际电信联盟在X.800安全体系标准中还定义了网络安全的其他两个属性:真实性和不可抵赖性。

在网络通信中,攻击者可采取如下四种基本攻击模式:截获(被动,具体攻击技术为嗅探与监听)、中断、篡改与伪造(主动)。

TCP/IP网络协议栈在设计时采用了分层模型,分为了网络接口层、互联层、传输层与应用层。网络接口层协议最常用的是以太网协议。在以太网接口检测数据帧,当检测到的数据帧目标MAC地址不属于自己时,就直接把它忽略,不发往上层协议,但当网络接口处于混杂模式下时,则可以直接嗅探并截获数据包。常用的网络接口层协议还有PPP协议,PPP协议为在点对点连接上传输多协议数据包提供了一个标准方法。互联层的基础协议是互联网协议IPv4,其他还包括ICMP、ARP、BGP等动态路由协议。ICMP协议运行在IP协议之上,BGP协议运行在TCP协议之上,TCP/IP协议栈与OSI七层模型之间并非具有清晰的层次对应关系。IP协议的首要安全问题在进行分组交换时只根据目的地址进行转发,而不检查源IP地址是否真实有效。IP分片攻击利用了一些操作系统协议栈、防火墙、入侵检测系统处理特殊IP分片包时的错误和缺陷,来达到拒绝服务或躲避检测的攻击目标。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以确保网络通信的顺利进行。ICMP协议存在的主要安全缺陷在于攻击者可以利用ICMP重定向报文控制数据包由路径,从而实施ICMP路由重定向攻击。传输层协议主要包括TCP和UDP。攻击者可以进行TCP RST攻击直接中断会话过程,或结合其他攻击技术进行中间人会话劫持攻击,此外,TCP协议的三次握手过程存在设计缺陷,攻击者可以进行SYN洪泛攻击。目前一些流行的应用层协议如HTTP、FTP、POP3/SMTP、DNS、SMB大多采用明文传输,存在被嗅探监听、欺骗与中间人攻击的风险,如DNS欺骗攻击、SMB中间人攻击、URL欺骗或钓鱼攻击、网页挂马攻击等。

一系列针对TCP/IP网络协议栈的攻击技术中,最流行的是欺骗技术。实现欺骗技术需要攻击者伪造出特制的网络数据报文,发送给目标主机,使其在处理这些伪造报文时遭受攻击。除了自己编程实现之外,也存在可以实施各种网络欺骗攻击的工具软件,Netwox是其中一个非常强大的开源工具包,可以创建任意的TCP/UDP/IP数据报文。Netwag则提供了友好的GUI界面。Netwox支持命令行方式构造及发送伪造包,可以通过脚本编程实现自动化处理,工具包中包含了超过200个不同功能的网络报文生成工具,每个工具都有一个特定的编号,可以按“#netwox number [parameters...]”的格式来运行Netwox中特定功能的工具,参数格式则取决于你所使用的具体工具,并可以通过执行“netwox number -help”来查询参数配置格式。

是指攻击者伪造具有虚假源地址的IP数据包进行发送,以达到隐藏发送者身份、假冒其他计算机等目的。IP地址源欺骗原理:IP协议在设计时只使用数据包中的目标地址进行路由转发,而不对源地址进行真实性的验证。IP地址源欺骗最普遍应用于拒绝服务攻击中,也经常在进行网络扫描时应用,nmap的“-D”选项就是用来配置假冒源IP地址的。Netwox中的第41号工具是构造ICMP的数据包,其参数很多,需要设定的是IP协议的上层协议类型为0x01,ICMP协议的类型为0x08,然后是IP的源地址和目的地址,比如要查看172.31.4.200上的8080端口是否开放,且使用IP源地址为172.31.4.180进行欺骗,则相应的nmap命令为:nmap –sS –p 8080 172.31.4.200 –D 172.31.4.180。

ARP欺骗也被称为ARP下毒,是指攻击者在有线以太网或无线网络上发送伪造ARP消息,对特定IP所对应的MAC地址进行假冒欺骗,从而达到恶意目的的攻击技术。ARP协议工作原理:ARP协议用于将网络主机的IP地址解析成其MAC地址,然后在局域网内通过MAC地址进行通信。ARP协议的基本功能就是对目标IP地址查询它的MAC地址,以便把数据包发送到目标主机。ARP欺骗攻击技术原理:ARP欺骗攻击的根源在于ARP协议在设计时认为局域网内部的所有用户都是可信的,是遵循协议设计规范的。ARP协议在进行IP地址到MAC地址映射查询时存在安全缺陷,一方面采用了广播请求包方式在局域网段中询问映射关系,但没有对响应结果进行真实性验证的技术流程与方法,而另一方面ARP协议为提高效率,设计了ARP缓存机制,以及会将主动的ARP应答视为有效信息进行接受,这使得ARP缓存非常容易被注入伪造的IP地址到MAC地址的映射关系,从而进行欺骗。如果被ARP欺骗攻击的是网关节点,那么将导致整个局域网所有节点经过网关出入的数据包都会首先通过攻击节点,从而可能被嗅探、监听和恶意修改。可以实施ARP欺骗攻击的工具软件也很多,著名的包括DSniff套装中的Arpspoof工具、arpoison、Ettercap、Netwox工具集等。Netwox中的33号工具可以构造任意的以太网ARP数据报,80号工具可以周期性地发送ARP应答报,因此可以利用这两个工具来实施ARP欺骗攻击。

主要方法有静态绑定关键主机的IP地址与MAC地址映射关系、使用相应的ARP欺骗防范工具(ARP欺骗防火墙)、使用VLAN虚拟子网细分网络拓扑,并加密传输数据以降低ARP欺骗攻击的危害后果等。还可以使用一些工具软件查找ARP欺骗攻击源,如nbtscan和Anti ARP Sniffer。

是指攻击者伪装成路由器发送虚假的ICMP路由路径控制报文,使得受害主机选择攻击者指定的路由路径,从而进行嗅探或假冒攻击的一种技术。

IP协议缺点:缺少差错控制和查询机制,为解决这些问题,设计了ICMP协议。ICMP报文类型分为两类:差错报告类和控制类。差错报告报文分为3类:目的站不可达、数据报超时、数据报参数错误。控制报文分为两类:请求/应答类和通知类。其中请求/应答类总是成对出现的:回送请求/应答、地址掩码请求/应答、路由器恳求/通告、时间戳请求/应答,一共8种;通知类有两种:源站抑制和重路由定向。ICMP路由重定向主要用于应对网络故障时的数据包处置。ICMP重定向攻击就是利用ICMP路由重定向报文来改变主机的路由表,向目标机器发送重定向消息,自己则可以伪装成为路由器,使目标机器的数据报发送至攻击机从而加强监听。利用Netwox的第86号工具,可以进行ICMP重定向攻击实验,其工作原理是嗅探网络中的数据包,每嗅探到一个符合要求的数据包,就向该IP地址发送一个ICMP重定向报文,让该IP的主机重定向至预先设定的IP地址。ICMP路由路由重定向攻击防范:ICMP路由路由重定向攻击的主要防范措施是根据类型过滤一些ICMP数据包,设置防火墙过滤,对于ICMP重定向报文判断是不是来自本地路由器等。

传输层的主要协议TCP和UDP也存在很多种不同攻击方式,最流行的TCP RST攻击、TCP会话劫持攻击、TCP SYN洪泛拒绝服务攻击和UDP洪泛拒绝服务攻击等。

也被称为伪造TCP重置报文攻击,是一种假冒干扰TCP通信连接的技术方法。TCP重置报文将直接关闭掉一个TCP会话连接。TCP重置报文的设计是为了避免在发生一些特殊情况时TCP会话仍继续传输无效数据。在开源网络入侵检测系统Snort中使用了TCP重置报文来阻断可疑的入侵攻击连接,而中国防火长城也利用了该项技术对包含封禁内容的会话连接进行阻断。在Netwox中,我们可以选择编号为78的“Reset every TCP packet”工具来实现TCP RST攻击。

TCP会话劫持则是一项更为复杂的TCP协议攻击技术方法,其目标是劫持通信双方已建立的TCP会话连接,假冒其中一方的身份,与另一方进行进一步通信。TCP会话劫持攻击最核心的是通过TCP对会话通信方的验证。重定向网络通信可以利用滥用IP协议源路由选项、ICMP路由重定向攻击和ARP欺骗攻击完成,IP源路由选项和ICMP路由重定向攻击都能使得攻击者可以指定IP数据包的路由路径,通过攻击者所控制的路由器,然后实施劫持。目前比较普遍的方法是结合ARP欺骗来进行TCP会话劫持。攻击者发送数据包中的序列号(记为CLT_SEQ)必须满足条件:SVR_ACK<=CLT_SEQ<=SVR_ACK+SVR_WND。目前对TCP会话劫持攻击可防范的措施包括:禁用主机上的源路由,采用静态绑定IP-MAC映射表以避免ARP欺骗,引用和过滤ICMP重定向报文,此外采用网络层加密机制,即IPsec协议,是对抗TCP会话劫持攻击最通用的办法。

拒绝服务攻击是目前比较有效而又非常难于防御的一种网络攻击方式,它的目的就是使服务器不能够为正常访问的用户提供服务。TCP SYN Flood,又称SYN洪泛攻击,是目前最为有效和流行的一种拒绝服务攻击形式。它利用TCP三次握手协议的缺陷,向目标主机发送大量的伪造源地址的SYN连接请求,消耗目标主机的连接队列资源,从而不能够为正常用户提供服务。对于SYN Flood攻击的主要防范措施包括:SYN-Cookie技术和防火墙地址状态监控技术。

①客户端通过传送SYN同步信息到服务器,要求建立连接;②服务器响应客户端SYN-ACK,以响应请求;③客户端应答ACK,TCP会话连接随之建立。TCP三次握手过程是每个使用TCP传输协议建立会话连接的基础。

由于UDP协议的无状态不可靠的天然特性,UDP Flood拒绝服务攻击的原理非常简单,即通过向目标主机和网络发送大量的UDP数据包,造成目标主机显著的负载提升,或者目标网络的网络拥塞,从而使得目标主机和网络陷入不可用的状态,造成拒绝服务攻击。UDP Flood一般会被用于分布式拒绝服务攻击。对于UDP Flood攻击的防范措施包括:禁用或过滤监控和响应服务;禁用或过滤其他的UDP服务。

通过部署一些监测、预防与安全加固的防范措施,是增强网络对已知攻击抵御能力不可或缺的环节。分别为网络接口层、互联层、传输层和应用层。网络互联层目前最重要的安全通信协议主要是IPsec协议簇。IPsec适用于目前的IP版本IPv4和下一代IPv6。IPsec协议簇的基本目的是把密码学方法支持机密性和认证服务,使用户能有选择地使用,并得到所期望的安全服务。IPsec的安全协议主要包括AH协议和ESP协议两大部分。IPsec协议支持隧道及传输两种模式。传输层上的安全协议主要是TLS,前身是由Netscape网景公司所开发的SSL。TLS协议包括两个协议组:TLS记录协议和TLS握手协议。TLS记录协议位于可靠的传输协议TCP之上,用于封装各种高层协议,提供的安全性具有两个基本特性:①加密②可靠。对于万维网访问进行安全防护的主要协议是安全超文本传输协议,基于传输层安全协议TLS实现,端口号为443.安全电子邮件协议是电子邮件的安全传输标准。用于替代telnet远程控制的安全网络协议是SSH。

①IPv4相比,IPv6具有更大的地址空间。②IPv6使用更小的路由表。③IPv6增加了增强的组播支持以及对流的支持。④IPv6加入了对自动配置的支持。⑤IPv6具有更高的安全性。

“信息安全金三角”的CIA安全属性,即机密性、完整性和可用性。在理论模型方面,先后出现了针对机密性的BLP多级安全策略模型、针对完整性保护的Biba模型和Clark-Wilson模型等。为了评估信息系统是否能够满足特定的安全需求和属性,1985年美国国防部国家计算机安全中心公布了可信任计算机系统评估准则,又称为“桔皮书”。TCSEC将计算机系统的安全划分为ABCD这4个等级,共7个级别,并分别定义了各个安全等级所需要实现的安全机制及安全特性。美国则进一步联合加拿大和欧洲在TCSEC和ITSEC的基础上,制订了一个国际统一的安全评估标准,即通用准则,通过了国际标准化组织ISO的认可,称为ISO15408。传统的安全评估和防范方法是通过对网络进行风险分析,制定相应的安全策略,然后采取一种或多种安全技术作为防护措施的。动态可适应网络安全模型基于闭环控制理论,典型模型是PDR模型以及在其基础上提出的P2DR模型等。PDR安全模型是一个基于时间的动态安全模型,以经典的网络安全不等式Pt>Dt+Rt为本质基础,并提出安全性可量化和可计算的观点。P2DR安全模型基本描述为:网络安全=根据风险分析制定安全策略+执行安全防护策略+实时检测+实时响应。在P2DR模型中,安全策略是模型的核心,所有的防护、检测、响应都是根据安全策略实施的,安全策略为安全管理提供管理方向和支持手段。策略体系的建立包括安全策略的制定、评估、执行等。制定可行的安全策略取决于对网络信息系统及其安全风险的了解程度。防护机制就是采用一切手段保护信息系统的机密性、完整性、可用性、真实性和不可抵赖性。通常采用传统的静态安全技术及方法来实现,主要有防火墙、加密、身份认证和控制访问等方法。监测机制是动态响应和加强防护的依据,是强制落实安全策略的工具。检测的对象主要针对系统自身的脆弱性及外部威胁,利用检测工具了解和评估系统的安全状态。主要的检测技术包括入侵检测和漏洞评估等。响应措施包括应急处理、备份恢复、灾难恢复等。

网络安全防范技术对应P2DR中的“防护”环节,设立在被保护主机与外部网络中间。防火墙技术概述:防火墙指的是置于不同的网络安全域之间,对网络流量或访问行为实施访问控制的安全组件或设备。合理地部署和配置防火墙,首先必须将防火墙部署在不同网络安全域之间的唯一通道上;其次只有网络安全管理员根据安全需求合理地设计安全策略规则,才能充分发挥防火墙的功能,保护网络安全;最后防火墙并非是一劳永逸的安全最终解决方案。

防火墙可以在网络协议栈的各个层次上实施网络访问控制机制,对网络流量和访问进行检查和控制。根据其工作的网络协议栈层次,防火墙技术可以分为包过滤(网络层)、电路级网关(传输层)和应用层代理技术(应用层)。防火墙最基本的功能就是控制在计算机网络中不同信任程度网络域之间传输的数据流,根据最少特权原则保证网络安全性的功能机制。防火墙技术通常能够为网络管理员具体提供如下安全功能:(1)检查控制进出网络的网络流量(2)防止脆弱或不安全的协议和服务(3)防止内部网络信息的外泄(4)对网络存取和访问进行监控和审计(5)防火墙可以强化网络安全策略并集成其他安全防御机制。

(1)来自网络内部的安全威胁(2)通过非法外联的网络攻击(3)计算机病毒传播。由于技术瓶颈问题目前还无法有效防范的安全威胁包括如下。(1)针对开放服务安全漏洞的渗透攻击(2)针对网络客户端程序的渗透攻击(3)基于隐蔽通道进行通信的特洛伊木马或僵尸网络。

广泛采用的技术主要有包过滤技术、基于状态监测的包过滤技术、代理技术等。包过滤技术通常检查的信息包括数据包的源地址和目的地址、网络协议号、网络端口号、ICMP报文类型和号码等。UDL不包括任何连接或序列信息,只包含源地址、目的地址、校验和携带数据。代理技术是一种重要的计算机安全防护功能,允许客户端通过它与另外一个网络服务进行非直接的连接,也成“网络代理”。提供代理服务的计算机或其他类型的网络节点称为代理服务器,根据工作的网络协议栈层次的不同,代理技术包括应用层代理(常见的有HTTP代理,邮件代理)、电路级代理(传输层)和NAT代理(方便和安全两个重要优势)等。

从产品形态角度划分,防火墙大致分为如下几种类型:(1)集成包过滤功能的路由器(2)基于通用操作系统防火墙软件产品(3)基于安全操作系统的防火墙(4)硬件防火墙设备。

(1)包过滤路由器(2)双宿主堡垒主机(3)屏蔽主机(4)屏蔽子网。

netfilter/iptables。netfilter/iptables组合是目前Linux开源操作系统中普遍使用的防火墙技术解决方案,其中netfilter是Linux内核中实现的防火墙功能模块,iptables则是应用态的防火墙管理工具。

在netfilter/iptables防火墙系统中,netfilter组建爱你位于Linux的内核空间中,实现了静态包过滤和状态报文检查基本防火墙功能,此外也支持NAT网络地址转换等其他额外功能,并提供了多层API接口以支持第三方扩展,netfilter具备构建防火墙、NAT共享上网、利用NAT构建透明代理,以及构建OoS或策略路由器等安全功能。Iptables则是工作在Linux用户空间中的防火墙配置工具,通过命令行方式允许用户为netfilter配置各种防火墙过滤和管理规则。netfilter/iptables中包含三个最基本的规则表,分别为用于包过滤处理的filter表(包含INPUT、OUTPUT、FORWARD规则链)、用于网络地址转换处理的nat表(包含PREROUTING、POSTROUTING和OUTPUT规则链),以及用于特殊目的数据包修改的mangle表。

$iptables [-t table] command [match] [target] 其中-t指定配置规则所在的表,缺省表包括filter、nat、mangle、raw等。command部分是iptables命令的最重要部分。-A或—append:该命令将一条规则附加到链的末尾。-D或—delete:通过用-D指定要匹配的规则或者指定规则在链中的位置编号,该命令从链中删除该规则。-P或—policy:该命令设置链中的缺省目标操作,即策略。-N或—new-chain:用命令中所指定的名称创建一个新链。-F或—flush:如果指定链名,该命令删除链中所有的规则,如果未指定链名,该命令删除所有链中规则,此参数用于快速清除。-L或—list:列出指定链中所有的规则。Match部分为规则匹配条件,匹配条件分为两大类:通用匹配和特定协议匹配。Target部分指定满足匹配条件之后的目标操作,即对那些规则匹配的数据包执行的处理操作。在设置和执行网络访问控制时,防火墙通常会有如下两种不同的策略:(1)设置缺省的通行策略为允许,然后定义禁止的网络流量和行为;(2)设置缺省的通行策略为禁止,然后定义允许的网络流量和行为。

对NAT网络地址转换技术的支持非常全面,包括IP伪装、透明代理、端口转发和其他形式的网络地址转换技术等。NAT主要包括两种类型,即Source NAT和Destination NAT。SNAT是指改变网络连接数据包的源地址,SNAT需要在路由转发之后做,IP伪装也是一种SNAT机制;DNAT是指改变网络连接数据包的目的地址,DNAT需要在路由转发之前做,端口转发、负载均衡、透明代理都属于DNAT。netfilter/iptables进行NAT配置主要是通过nat表中的3个缺省链,即PREROUTING、POSTROUTING、OUTOUT。netfilter的NAT机制最通常使用的需求是IP伪装。具体配置规则为:#iptable –t nat –A POSTROUTING –I eth1 –o eth0 –j MASQUERADE。

主要包括VPN、内网安全管理、内容安全管理、统一威胁管理等。VPN,是利用大规模网络上的公共网络链路代替企业内部专线构建的安全专用网络,是大型跨地域企业构建内部网的常用方案。VPN主要采用隧道技术、加解密技术、密钥管理技术和使用者与设备身份认证技术。IPsec VPN、SSL VPN、MPLS VPN是目前VPN最为主要的三种技术和产品形态。内网安全管理技术是以防火墙为代表的网络边界防护技术的有效补充。内网安全管理一般分为中断安全管理、终端运维管理、终端补丁分发管理和系统日志管理四部分。内容安全管理主要关注网络中传输内容的安全,属于内容安全管理技术范畴的网络安全产品包括网络行为监控审计类设备、绿色上网软件、防病毒网关、防蠕虫网关、垃圾邮件过滤网关。统一威胁管理UTM是指由硬件、软件和网络技术组成的具有专门用途的设备,它主要提供一项或多项安全功能,将多种安全特性集成在一个硬件设备里,构成一个标准的统一管理平台。UTM通常集成了网络访问控制、入侵防御、防病毒、内容过滤、反垃圾邮件、上网行为管理、VPN、身份认证和准入控制等多种安全功能。

在PDR模型中,检测技术主要包括流动评估、入侵检测等。在网络攻防技术领域,一次入侵可被定义为任何尝试破坏信息资源的保密性、完整性或可用性的行为。入侵检测即为通过对计算机网络或计算机系统中若干关键点信息的收集和分析,从中发现入侵行为的一种安全技术。入侵检测系统则是实现入侵检测技术,专门用于入侵行为发现和处理的软件系统或硬件设备。入侵检测是防火墙之后的第二道安全屏障。NSM第一次直接将网络流作为审计数据来源,正式形成了基于主机的入侵检测系统和基于网络的入侵检测系统两大阵营。误用检测主要关注对复杂攻击特征的描述和检测,具有代表性的成果包括UCSB的状态转移分析模型及STAT系列入侵检测系统、SRI开发的基于产生式专家系统语言P-BEST和ENERALD分布式入侵检测系统等。异常检测方法代表性研究有采用统计分析方法的IDES统计异常检测器、NIDES、Haystack等,基于神经网络方法的由NNID、Forrest等人提出的基于免疫学方法,以及lee等人提出的数据挖掘方法等。

评估入侵检测技术和系统的两个重要参数是检测率和误报率。理想的入侵检测系统应该同时具有较高的正确检出率和较低的误报率。然而由于存在基调悖论现象,故提高检测率和降低误报率是互为矛盾的。以评价入侵检测算法的一种常用工具是ROC曲线。ROC曲线是平面直角坐标曲线,其纵轴表示IDS的检测率,其横轴表示IDS的误报率。ROC曲线越靠近坐标平面左上方的检测方法,其准确率越高、误报率越低、性能越好。

信息收集是入侵检测的基础,入侵检测系统的可靠性和准确性在很大程度上依赖于所收集信息的可靠性和完备性。充分利用系统日志文件信息是检测入侵的关键数据源。入侵检测技术最核心的任务是信息分析。入侵检测围绕着误用检测和异常检测来进行的。误用检测:通过收集已知入侵行为的特征并进行描述,构成攻击特征库,然后对手机信息进行特征模式匹配,所有符合特征描述的行为均被视为入侵,具有较高漏报率的弱点。异常检测:通常使用统计分析的方法来检测入侵,具有误报率较高的弱点。

从入侵检测系统的监测数据来源,可以将入侵检测系统分为基于主机的入侵检测系统和基于网络的入侵检测系统两大类。入侵检测系统所采用的信息分析技术可分为误用检测方法和异常检测方法两类。根据入侵检测系统所采用的体系结构分类,可以分为集中式、层级式和协作式。入侵检测系统的部署往往需要考虑到监测数据来源uiande可靠性与全面性,以及所采取的入侵检测系统体系结构。

入侵防御系统采用直接在网络边界位置内联连接的方式,并在检测到入侵行为后,直接对所有关联的攻击网络连接进行阻断处理,侧重于极低的误报率和高效的处理性能,并最小化对网络传输带来的延迟。

Snort是一款非常著名的开源网络入侵检测系统软件,以符合GPL版权开源发布,其特征规则库格式被网络安全业界广为接受,并成为网络安全专家编写和发布针对最新攻击行为检测规则的通用格式,除了是一款网络入侵检测软件之外,还具备数据包嗅探、数据包分析与记录等多种功能,还支持内联模式,可以作为网络入侵防御系统使用。Snort用C语言编写,并采用了标准的捕获数据包函数库libpcap,具有非常好的可移植性,具有数据包嗅探、数据包记录和分析,以及各种入侵检测功能,主要由四个基本部分组成:①数据包嗅探/解码器②预处理器/插件③检测引擎/插件④输出模块/插件。Snort的最基本功能就是数据包嗅探器,其使用混杂模式的网络接口接入网络并进行数据包监听,采用标准的libpcap函数库接口获取数据包嗅探内容,并通过协议栈层次化的包解码器对嗅探获得的数据包进行协议分析。预处理器主要包括三种类型的插件,包括TCP/IP协议栈模拟、应用层协议解码与规范化,以及异常检测。检测引擎主要采用的检测技术是误用检测方法,但在预处理其中也包含了若干采用异常检测方法的检测插件,如通过统计方法检测端口扫描的sfportscan插件,第三方SPADE插件,利用协议规范异常检测的httpinspect插件等。

Snort数据包嗅探器通过将网卡设置为混杂模式,然后利用libpcap抓包函数库进行数据包的监听和捕获,在调用pcap_loop()数据包处理主循环中,当pcap从网卡驱动接收到数据包时,便开始调用ProcessPacket()函数,链接至数据包解码器入口decode.c。Snort的预处理器插件其源码位于preprocessors目录中,以spp_为开头,主要包括TCP/IP协议栈模拟、应用层协议解码与规范化以及异常检测这三种类型。TCP/IP协议栈模拟类预处理插件包括frag3、stream5等。异常检测类预处理插件针对无法用特征规则进行描述和检测的攻击,主要通过统计分析、协议规范异常等一些异常检测技术来对特定攻击实施检测,目前Snort中包含的此类预处理器包括通过统计分析方法检测端口扫描行为的sfportscan、检测Back Orifice后门软件的bo、通过用户预定义映射表来检测ARP欺骗攻击的arpspoof等。检测引擎与插件是Snort入侵检测功能的主题模块,主要包含规则库解析、多模式匹配,以及规则插件检查这三个部分。Snort的攻击特征规则集是基于文本的,通常存在于Snort的etc/rules目录下。Snort在Linux平台上,可以通过源码包安装和RPM包安装两种方式。

网络安全响应是P2DR模型中响应环节的关键技术手段。所谓网络安全时间,指的是那些影响计算机系统和网络安全的不当行为,这些行为包括传统意义上对CIA基本属性的破坏行为,以及侦查性攻击、抵赖、骚扰性攻击、敲诈、传播色情或非法内容、通过电子方式组织的犯罪活动、在线欺诈和愚弄等其他类型事件。网络安全事件响应过程中涉及的关键技术包括计算机取证、攻击追溯与归因、备份恢复与灾难恢复等。计算机取证是指安全事件的调查过程中对计算机系统进行详细检查,并对计算机犯罪的电子证据进行保护、确认、提取和归档的过程,通常是针对存储介质进行的,但有时也用来对网络日志进行检查和分析。攻击追溯与归因是找出真正实施网络攻击的来源,并确定出攻击者真实身份。备份恢复是在遭受网络安全事件之后快速恢复业务运转的关键保障性技术。

Cewl是个很酷的工具,可以通过爬行网站获取关键信息创建一个密码字典。

一个很小的安全审计工具,扫描Cisco路由器的一般性漏洞,例如默认密码,SMMP community字串和一些老的IOS bug。

在线哈希破解工具,借助在线破解哈希网站的借口制作的工具。

20179311《网络攻防实践》第六周作业

在线哈希破解工具,借助在线破解哈希网站的借口制作的工具。

使用参数很简单,如: 破解FTP服务:hydra –L user.text –P pass.text –F ftp://127.0.0.1:21 破解SSH服务:hydra –L user.text –P pass.text –F ssh://127.0.0.1:22 破解SMB服务:hydra –L user.text –P pass.text –F smb://127.0.0.1 破解MSSQL账户密码:hydra –L user.text –P pass.text –F mssql://127.0.0.1:1433

类似于Hydra的一款工具,使用方法例如: Medusa –h 192.168.235.96 –u root –P //wordlists/rockyou.text –M ssh 如要选择服务只需要改变-M后的参数即可。

相似的功能基本类似,但突出了RDP(3389)爆破功能,如使用命令:ncrack –vv –U windows.user –P windows.pwd 192.168.1.101:3389,CL=1 –f

Onesixtyone是一个snmp扫描工具,用于找出设备上的SNMP Community字串,扫描速度非常快

Patator是一款Python编写的多服务破解工具,如美剧一个服务用户名密码:patator ssh_login host=127.0.0.1 user=root password=FILE0 0=pass.text –x ignore:mesg=’Authentication failed’

多线程支持插件式的密码破解工具。

顾名思义,THC-PPTP-Bruter是针对PPTP VPN端点的暴力破解程序。支持最新的MSChapV2验证,对Windows和Cisco网关测试通过。用以探测微软的Anti-Bruto Force Implementation中存在的一个漏洞,并通过此漏洞,尝试以每秒300个密码进行暴力破解。

(1)Creddump套件

Kali Linux下离线攻击工具中的Cache-dump、Isadump与pwdump均为creddump套件的一部分,基于Python的哈希抓取工具。

(2)Chntpw

用来修改WindowsSAM文件实现系统密码修改,亦可在Kali作为启动盘时做删除密码的用途。

(3)Crunch

实用的密码字典生成工具,可以指定位置生成暴力枚举字典

20179311《网络攻防实践》第六周作业

实用的密码字典生成工具,可以指定位置生成暴力枚举字典

(4)Dictstat

Dictstat是一款字典分析工具,可以分析出一个现有字典分布状况,也可按照一定的过滤器提取字典。

(5)Fcrackzip

Kali下的一款ZIP压缩包密码破解工具

(6)Hashcat

Hashcat系列软件是比较强大的密码破解软件,系列软件包括Hashcat;还有一个单独新出的oclRausscrack。其区别为Hashcat只支持cpu破解;oclHashcat和oclGausscrack则支持gpu加速。oclHashcat则分为AMD版和NIVDA版。一些参数的介绍如下: -m (--hash-type=NUM) #hash种类,下面有列表,后面跟对应数字 -a (--attack-mode=NUM) #破解模式,下面也有列表 Attack-mode: 0=Straight(字典破解) 1=Conbination(组合破解) 2=Toggle-Caso 3=Brute-force(掩码暴力破解) 4=Permutation(组合破解) 5=Table-lookup

(7)Hashid

一款简单易用的哈希分析工具,可以判断哈希或哈希文件是何种哈希算法加密的。

(8)HashIdentifyer

无独有偶,Hashdentifyer是一款与HashID类似的一款工具。

(9)John the ripper

老牌密码破解工具,常用于Linux Shadow中账户的密码破解,社区版也支持MD5-RAW等哈希的破解。

20179311《网络攻防实践》第六周作业

老牌密码破解工具,常用于Linux Shadow中账户的密码破解,社区版也支持MD5-RAW等哈希的破解。

20179311《网络攻防实践》第六周作业

(10)Johnny

对应于命令行版的John,Johnny将其图形化,更易使用与操作。

(1)Ophcrack

彩虹表Windows密码HASH破解工具,对应有命令行版的ophcrack-cli。可以从官网下载部分彩虹表。

(2)Pyrit

是一款无线网络密码破解工具,借助GPU加速,可让WPA2密码破解更效率。使用analyze检查抓到的包: Pyrit –r xxx.cap analyze 开始跑包:pyrit –r xxx.cap –I yyy.dic –b ssid attack_passthrough 也可以将PYRIT与CRUNCH结合使用:crunch 8 8 1234567890 | pyrit –I - -r /file/hack01-cap –b bssid attack_passthrough

(3)Rcrack

彩虹表密码哈希工具,使用了第一代彩虹表,当然首先,我们需要有足够容量的彩虹表,使用很简单,按照参数破解即可。

(4)Rcracki_mt

又一款彩虹表哈希破解工具,不同的是此工具支持最新格式的彩虹表进行哈希破解。

(5)rsmangler

字典处理工具,可以生成几个字串的所有可能组合形式, 在生成社工字典时也可用到。可以有选择性的关闭某些选项。

(6)Samdump2与BKhive

Linux下破解Windows下哈希的工具 首先获取win下的文件 SAM文件:C:\windows\system32\config\SAM System文件:C:\windows\system32\config\system

(7)SIPCrack

SIPcrack是针对SIP protocol协议数据包的破解工具,支持PCAP数据包与字典破解。

(8)SUGrack

借助su命令进行本地root账户的密码破解。

(9)Truecrack

一款针对TrueCrypt加密文件的密码破解工具。

(1)Passing the hash套件

要进行哈希传递攻击,首先我们要有目标主机的哈希信息。

(2)Keimpx

一款Python编写的哈希传递工具,可以通过已有的哈希信息GET一个后门SHELL。

(3)Metasploit

模块exploit/windows/smb/psexec亦可万户次呢个HASH传递攻击。

20179311《网络攻防实践》第六周作业

20179311《网络攻防实践》第六周作业

20179311《网络攻防实践》第六周作业

(1)Aircrack

Aircrack-ng是一个与802.11标准的无线网络分析有关的安全软件,主要功能有:网络侦测,数据包嗅探,WEP和WPA/WPA2-PSK破解。Aiecrack-ng可以工作在任何支持监听模式的无线网卡上并嗅探802.11a,802.11b,802.11g的数据。该程序可运行在Linux和Windows上。Linux版本已经被移植到Zaurus和Macmo系统平台,并概念验证可移植到iPhone。

(2)Cowpatty

是一款知名的WPA-PSK握手包密码破解工具。

(3)EAPMD5PASS

针对EPA-MD5的密码破解工具

(4)图形化的Fern Wifi Cracker

值得一提的是,无线网络中,如果使用虚拟机的Kali Linux,则需要外置无线网卡。

(5)MDK3

MDK3是一款无限DOS攻击测试工具,能够发起Beacon Flood、Authentication DoS、Deauthentication/Disassociation Amok等模式的攻击,另外它还具有针对隐藏ESSID的暴力探测模式、802.1X渗透测试、WIDS干扰等功能。 (6)Wifite

自动化的无线网审计工具,可以完成自动化破解。Python脚本编写,结合Aircrack-ng套件与Reaver工具。

(7)Reaver

对开启WPS的路由器PIN码进行破解。

课本实践SQL注入实验

20179311《网络攻防实践》第六周作业

课本实践SQL注入实验

20179311《网络攻防实践》第六周作业

20179311《网络攻防实践》第六周作业

20179311《网络攻防实践》第六周作业

20179311《网络攻防实践》第六周作业

20179311《网络攻防实践》第六周作业

课本实践XSS攻击实验

20179311《网络攻防实践》第六周作业

课本实践XSS攻击实验

20179311《网络攻防实践》第六周作业

20179311《网络攻防实践》第六周作业

20179311《网络攻防实践》第六周作业

完成了课本第五六章的学习,实验了kali视频第21到25集的操作。

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Wesley13 Wesley13
3年前
Java获得今日零时零分零秒的时间(Date型)
publicDatezeroTime()throwsParseException{    DatetimenewDate();    SimpleDateFormatsimpnewSimpleDateFormat("yyyyMMdd00:00:00");    SimpleDateFormatsimp2newS
Stella981 Stella981
3年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
为什么mysql不推荐使用雪花ID作为主键
作者:毛辰飞背景在mysql中设计表的时候,mysql官方推荐不要使用uuid或者不连续不重复的雪花id(long形且唯一),而是推荐连续自增的主键id,官方的推荐是auto_increment,那么为什么不建议采用uuid,使用uuid究
Python进阶者 Python进阶者
10个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这