网络攻击与防御技术
上QQ阅读APP看书,第一时间看更新

1.2 网络攻击的类型

网络攻击是指任何非授权而进入或试图进入他人计算机网络的行为,是入侵者实现入侵目的所采取的技术手段和方法。这种行为包括对整个网络的攻击,也包括对网络中的服务器、防火墙、路由器等单个节点的攻击,还包括对节点上运行的某一个应用系统或应用软件的攻击。根据攻击实现方法的不同,可以分为主动攻击和被动攻击两种类型。

1.2.1 主动攻击

主动攻击是指攻击者为了实现攻击目的,主动对需要访问的信息进行非授权的访问行为。例如,通过远程登录服务器的TCP 25号端口搜索正在运行的服务器的信息,在TCP连接建立时通过伪造无效IP地址耗尽目的主机的资源等。主动攻击的实现方法较多,针对信息安全的可用性、完整性和真实性,主动攻击一般可以分为中断、篡改和伪造3种类型。

1. 中断

中断主要针对的是信息安全中的可用性。可用性(availability)是指授权实体按需对信息的取得能力,强调的是信息系统的稳定性,只有系统运行稳定,才能确保授权实体对信息的随时访问和操作。可用性同时强调的是一种持续服务能力,这种能力的实现需要立足系统的整体架构来解决可能存在的安全问题,降低安全风险。中断是针对系统可用性的攻击,主要通过破坏计算机硬件、网络和文件管理系统来实现。拒绝服务是最常见的中断攻击方式,除此之外,针对身份识别、访问控制、审计跟踪等应用的攻击也属于中断。

2. 篡改

篡改针对的是信息安全中的完整性。完整性(integrity)是指防止信息在未经授权的情况下被篡改,强调保持信息的原始性和真实性,防止信息被蓄意地修改、插入、删除、伪造、乱序和重放,以致形成虚假信息。在计算机系统和网络环境中,信息所具有的数字化特征,致使信息被篡改的可能性和可操作性要比传统纸介质简单得多,为此篡改也成为了网络攻击过程中较常使用的一种危害性较大的攻击类型。

完整性要求保持信息的原始性,即信息的正确生成、存储和传输。在网络环境中,信息的完整性一般通过协议、纠错编码、数字签名、校验等方式来实现。针对这些实现方法,篡改攻击则会利用存在的漏洞破坏原有的机制,达到攻击目的。例如,通过安全协议可以有效地检测出信息存储和传输过程中出现的全部或部分被复制、删除、失效等行为,但攻击者也可以破坏或扰乱相关安全协议的执行,进而使安全协议丧失应有的功能。

3. 伪造

伪造针对的是信息安全中的真实性。真实性(validity)是指某个实体(人或系统)冒充成其他实体,发出含有其他实体身份信息的数据信息,从而以欺骗方式获取一些合法用户的权利和特权。伪造主要用于对身份认证和资源授权的攻击,攻击者在获得合法用户的用户名和密码等账户信息后,假冒成合法用户非法访问授权资源或进行非法操作。例如,当攻击者冒充为系统管理员后,可拥有对系统的最高权限,进而对系统进行任意的参数修改、功能设置、账户管理等操作,对系统安全产生严重威胁。

在一个授权访问系统中,认证系统的功能是使信息接收者相信所接收到的信息确实是由该信息声称的发送者发出的,即信息发送者的身份是可信赖的。另外,认证系统或协议需要保证通信双方的通信连接不能被第三方介入,防止攻击者假冒其中的一方进行数据的非法接收或传输。

1.2.2 被动攻击

被动攻击是利用网络存在的漏洞和安全缺陷对网络系统的硬件、软件及系统中的数据进行的攻击。被动攻击一般不会对数据进行篡改,而是利用截取或窃听等方式在未经用户授权的情况下对消息内容进行获取,或者对业务数据流进行分析。被动攻击主要分为窃听和流量分析两种方式。

1. 窃听

窃听原本指偷听别人之间的谈话,随着通信技术的应用和发展,窃听的含义早已超出了偷听和搭线截听电话的概念,开始借助于技术手段窃取网络中的信息,既包括以明文形式保存和传输的信息,也包括通过数据加密技术处理后的密文信息。

一些窃听的实现需要打破原有的工作机制,如对加密后密文的窃听需要对获取的密文进行破解后才能得到明文信息。而有些窃听的实现则利用了网络已有的工作机制,如目前广泛使用的以太网是一种广播类型的分组网络,任何一台接入以太网的计算机都可以接收到本网段中的广播分组,当网卡设置为混杂模式时可以接收到本网段中的所有分组,若网络通信没有采用加密机制,便可以通过协议分析获知全部的报文信息。例如,无线局域网(Wireless Local Area Networks,WLAN)目前采用2.4GHz和5.0GHz两个微波频段通信,由于微波信号以电磁波的形式在开放空间中传输,所以任何一台工作在该频段的设备在信号传输的有效范围内都可以接收到承载着各类信息的信号,然后通过信号分析便可以恢复得到原始信号。

2. 流量分析

数据在网络中传输时都以流量进行描述,流量分析建立在数据拦截的基础上,对截获的数据根据需要进行定向分析。Internet中,流量在节点之间传输时都需要遵循TCP/IP体系结构所确定的协议,在分层模型中每一层对网络流量的格式定义称为协议数据单元(Protocol Data Unit,PDU)。其中,物理层的PDU称为数据位(bit),数据链路层的PDU称为数据帧(frame),网络层的PDU称为分组(packet),传输层的PDU称为数据段(segment),应用层的PDU统一称为报文(message)。

流量分析攻击可以针对分层结构的每一层,最直接的是通过对应用层报文的攻击直接获得用户的数据。对于传输层及其以下层的PDU虽然无法直接获得具体的信息,但攻击者通过对获取的PDU的分析,便可以确定通信双方的MAC地址、IP地址、通信时长等,进而确定通信双方所在位置、传输的数据类型、通信的频度等,这些信息为进一步实施后续的攻击提供了重要依据。例如,通过对通信双方所占用带宽和通信时长的分析,便可以知道双方信息交换的信息类型;通过对流量的协议分析,便可以推断出用户数据的类型;通过对异常流量的分析,可以判定网络是否存在攻击等。