网络攻防原理与技术 第3版 教案 第8讲 网络监听技术_第1页
网络攻防原理与技术 第3版 教案 第8讲 网络监听技术_第2页
网络攻防原理与技术 第3版 教案 第8讲 网络监听技术_第3页
网络攻防原理与技术 第3版 教案 第8讲 网络监听技术_第4页
网络攻防原理与技术 第3版 教案 第8讲 网络监听技术_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

内容备注《网络攻防原理与技术》课程教案讲课题目:第八讲网络监听技术目的要求:了解网络监听的工作原理;掌握网络流量劫持的主要方法;掌握数据采集与分析的方法;了解网络监听检测与防范技术。重点难点:网络流量劫持的主要方法;数据采集与分析的方法。方法步骤:理论讲授。器材保障:电脑、投影仪。主要教学内容:一、网络监听概述网络监听是指在计算机网络接口处截获网上计算机之间通信的数据,也称网络嗅探。网络监听可以协助网络管理员监测网络传输数据,排除网络故障;发现网络攻击(入侵检测)。也可能被攻击者利用来截获网络上的敏感信息,给网络安全带来极大危害。网络监听主要解决两个问题:一是网络流量劫持,使监听目标的网络流量经过攻击者控制的监听点,主要通过各种地址欺骗或流量定向的方法来实现;二是在监听点上采集并分析网络数据,主要涉及网卡数据采集、协议分析技术,如果通信流量加密了,则还需要进行解密处理。网络监听主要解决两个问题:一是网络流量劫持,使监听目标的网络流量经过攻击者控制的监听点,主要通过各种地址欺骗或流量定向的方法来实现;二是在监听点上采集并分析网络数据,主要涉及网卡数据采集、协议分析技术,如果通信流量加密了,则还需要进行解密处理。二、网络流量劫持(一)流量劫持概述攻击者要想监听目标的通信,首先要能够接收到目标的网络通信数据,而这与网络环境有关。一般来说,网络环境可以划分为共享式网络环境和交换式网络环境两类。共享意味着同一网段的所有网络接口都能够访问在物理媒体上传输的数据,总线型以太网、Wi-Fi等无线网络是典型的共享网络。早期的以太网是一种典型的共享网络,多台主机连接在总线上,共享总线的通信资源。总线以广播的方式工作,当一台主机发送数据时所有主机都能够接收到发送的数据。主机之间在数据传输时是竞争关系,采用载波监听多点接入/碰撞检测协议解决发送冲突问题。集线器(Hub)本质上是一种总线型网络。集线器的主要功能就是广播数据包:把一个接口上收到的数据包群发到所有接口。主机通过局域网发送的数据首先被送到集线器,集线器进而将接收到的数据向各个端口转发,接在集线器上的所有主机都能收到该主机发送的数据。如果接收主机的网卡处于正常工作模式,网卡检查发现数据帧的目的MAC地址不是自己的,将直接丢弃数据帧,但当主机的网卡处于混杂模式时,它们将把数据帧提交给操作系统分析处理,实现网络监听。与总线型以太网相似,Wi-Fi等无线网络的特点也是在发送信号覆盖范围内,所有网络结点均能接收到网络流量,主机根据地址判断是否进一步处理接收到的网络数据。交换式环境的网络流量劫持交换机内部维护了一份地址与交换机端口的映射表。如果是二层交换机,映射表保存的是MAC地址与交换机端口的对应关系,此时映射表也称为MAC地址表;如果是三层交换机,则表中保存的是IP地址与端口的对应关系,映射表也称为IP地址表。采用交换机作为网络连接设备,数据帧发送到交换机时,交换机将解析出数据帧的目的MAC地址或IP地址,并查询自己的MAC或IP地址表,依据查询到的端口信息进行数据帧的转发。交换机与集线器最大的不同是通信数据不再需要向网络连接设备的所有端口复制,而是精确发往目标主机所在的端口。主机在正常情况下无法接收到发往其他主机的数据,即使网卡处于混杂模式也无法实现网络监听。网络管理员可以利用交换机所提供的一种称为端口镜像(PortMirroring)的功能实施网络监听。攻击者由于不像网络管理员一样在网络中拥有绝对的权限,需要采用一些攻击技术来达到监听目的,主要包括MAC攻击、端口盗用和ARP欺骗。1.端口镜像大部分交换机都具备端口镜像的功能。端口镜像指的是将交换机一个或多个端口接收或发送的数据帧完全相同的复制给指定的一个或多个端口,其中被复制的端口称为镜像源端口,而复制操作的目的端口称为镜像目的端口。交换机中引入端口镜像功能主要是为网络管理员提供方便,使他们能够便捷的监控数据通信,掌握网络运行情况。2.MAC攻击MAC攻击针对交换机的MAC地址表进行。MAC地址表在交换机进行数据转发的过程中起着基础性的作用。交换机进行数据转发的过程可以描述如下。(1)交换机从自己的某一端口接收数据帧,它提取出数据帧的源MAC地址并建立MAC地址与交换机相应端口的映射,将映射关系写入MAC地址表。(2)交换机提取数据帧的目的MAC地址,在MAC地址表中查找相应MAC地址,以决定向哪个端口转发数据帧。(3)如果MAC地址表中包含了目的MAC地址的信息,则将数据帧发向与目的MAC地址相对应的交换机端口;(4)如果MAC地址表中没有目的MAC地址的信息,则将数据帧向交换机的所有端口转发,转发的过程称为洪泛(flood)。可以看出,交换机建立MAC地址表的过程中是一个自学习的过程。自学习的方法思想简单,易于实现,但存在很大的安全隐患。网络中数据帧的地址信息并不一定真实。数据帧的源MAC地址如果是虚假的,交换机也会更改MAC地址表。MAC攻击的攻击思路是:持续发送大量源MAC地址为随机值的数据帧,虚假的MAC地址记录信息将不断增加到交换机的MAC地址表中。由于交换机MAC地址表中都是虚假的记录,当有数据帧需要发送时,交换机无法通过MAC地址表找到数据帧目的MAC对应的端口,此时交换机只能采用洪泛的方法,向所有物理端口转发数据帧。3.端口盗用端口盗用技术也利用了交换机MAC地址表的自学习机制。端口盗用的攻击思路是:向交换机发送欺骗性的数据帧,在交换机的MAC地址表中使被监听主机的MAC地址与黑客所处的交换机端口联系在一起。在采用端口盗用技术进行网络监听的过程中也存在一个问题:应当如何把监听到的数据发还给被监听的主机?针对此问题,目前比较常用的方法是将数据先进行缓存,然后定期给交换机发送正确的被监听主机MAC地址与端口对应关系数据包,恢复MAC地址表后,再将数据转交给被监听主机。转交完毕后,再实施新一轮的端口盗用。4.ARP欺骗ARP协议建立在信任局域网中所有主机的基础上。协议具有高效的优点,但是缺乏验证机制。当主机接收到ARP数据包时,不会进行任何认证就刷新自己的ARP高速缓存。利用这一点可以实现ARP欺骗,造成ARP缓存中毒(CachePoisoning)。所谓ARP缓存中毒,就是主机将错误的IP地址和MAC地址的映射信息记录在自己的ARP高速缓存中。ARP欺骗有两种实现方法。一种实现方法是利用ARP请求,攻击主机可以发送ARP请求,在ARP请求的源IP地址和源MAC地址字段填充虚假的信息。由于ARP请求以广播的形式发送,一个包含欺骗性信息的ARP请求将刷新网络中所有主机的ARP高速缓存,影响面大。这是一种优势也是一种缺陷,缺陷主要在于欺骗行为过于明显,容易被发现。实施ARP欺骗的另外一种方法是利用ARP响应。一台主机发送ARP请求以后,如果有其他主机发送欺骗性的ARP响应,发送请求的主机不会进行甄别,会认为ARP响应的内容真实并刷新自己的ARP高速缓存。采用ARP响应进行欺骗,针对性强,只有被欺骗的目的主机会刷新ARP高速缓存,其他主机不受干扰。此外,身份被伪造的主机上也不会有告警信息出现。因此,这种ARP欺骗方法在网络攻击过程中经常被使用。ARP欺骗软件常常将控制的主机伪装成网关。因为内网主机与外网的通信都需要经由网关转发,监听主机和网关之间的通信,往往可以获得大量有价值的信息。另外,如果攻击者不将劫持到的数据包转发出去,则被劫持的主机也就无法与外网通信,从而造成严重的断网。DHCP欺骗DHCP协议采用客户端/服务器模型,使用UDP协议作为其传输协议。主机地址的动态分配任务由网络主机驱动。当DHCP服务器接收到来自网络主机申请地址的信息时,才会向网络主机发送相关的地址配置等信息,以实现网络主机地址信息的动态配置。如果攻击者也在内网里开启了DHCP服务,用户收到的回复包很可能就是攻击者发出的,这时用户的网络配置,如IP地址、网关地址、DNS地址,完全由攻击者设置了。例如,攻击者可以将自己控制的主机的IP地址作为网关或DNS地址回复给被攻击主机,从而将被攻击主机的网络数据包劫持到自己控制的主机进行监听。DHCPDISCOVER是以广播方式进行的,因此只能在同一网段之内进行。如果多个网络共用一个DHCP服务器,则需要通过DHCPAgent(或DHCPProxy)主机来接管客户的DHCP请求,然后将此请求传递给真正的DHCP服务器,然后将服务器的回复传给客户。如果采用有线上网的方式,最好还是手动配置地址信息。对于不得不使用DHCP来配置IP地址,管理员应该严格控制DHCP回复的权限,只允许交换机特定的接口才能发送DHCP回复包。DNS劫持DNS服务器一旦被攻击者控制,用户发起的各种域名解析,都将被暗中操控。例如,将正常网站解析成攻击服务器的IP地址,并事先在攻击服务器上开启HTTP代理,保证用户的网络通信正常进行,用户上网时几乎看不出任何破绽,而攻击者则获取到了所有访问流量。攻击者还可以通过社会工程学等手段获得域名管理密码和域名管理邮箱,然后将指定域名的DNS纪录指向到攻击者控制的DNS服务器,进而通过在该DNS服务器上添加相应域名记录,从而使网民访问该域名时,进入攻击者所指向的主机。Wi-Fi流量劫持无线网络如同一个看不见的集线器,无需任何物理传播介质,附近所有人都可以收听数据信号,很多攻击者利用无线网络的开放性进行流量劫持。攻击者可以利用无线路由器的弱口令,暴力破解无线路由器的后台管理员口令,进而控制无线路由器进行网络监听。除此之外,攻击者主要采用无线热点钓鱼的方式来劫持用户的通信数据。在无线Wi-Fi网络中,每个热点都时时刻刻广播着一种称为“信标(Beacon)”的数据包,里面带有热点名等相关的信息。功率大的热点,用户接收时的信号强度(RSSI)自然也会高一些,客户端总是跟信号最强的热点联系。热点钓鱼的基本原理是:攻击者只需开一个同名同认证的伪热点,并且在信号功率大于被模仿的热点即可,这样客户端就会跟信号强的钓鱼热点联系,从而获得客户的通信数据。数据采集与解析(一)网卡的工作原理网卡的全称是网络接口卡(NetworkInterfaceCard,NIC),它用于实现计算机和网络电缆间的物理连接,为计算机之间的通信提供物理通道。网卡工作在数据链路层,其地址被称为MAC地址或者硬件地址(PhysicalAddress)。MAC地址由6个字节组成,前3个字节是IEEE分配给网络设备制造厂商的,不同厂商使用不同的数值,后3个字节由网络设备制造厂商自行分配,在生产时写入设备,每块网卡不同。数据帧的帧头中有源MAC地址和目的MAC地址信息。数据帧到达主机网卡时,在正常情况下,网卡读入数据帧,并检查数据帧帧头中的MAC地址字段。如果数据帧的目的MAC地址是自己的MAC地址或者是广播地址,则产生中断信号通知操作系统进行相应处理,否则,数据帧将被丢弃。每个到达网卡的数据帧,都有这样一个处理流程。网卡有一种接口配置模式称为混杂(Promiscuous)模式。网卡工作在混杂模式时,对于接收到的数据帧,不会检查其帧头信息,而是一律产生硬件中断,通知操作系统进行处理。将主机网卡配置为混杂模式是实施网络监听的一项前提条件。(二)数据采集将网卡置成混杂模式后,就可以采集网络通信数据了。数据链路层处于协议栈的第2层,基于物理层之上,所有数据链路层以上协议都要直接或间接使用数据链路层协议提供的服务。因此,数据采集通常需要在数据链路层上进行,通过数据链路层编程接口实现。Libpcap(LibraryforPacketCapture),即分组捕获函数库,是由劳伦斯·伯克利国家实验室开发的一个在用户级进行实时分组捕获的接口。当初设计Libpcap仅仅是准备用在不同版本的Unix平台上,但实际效果却远远超过了当初的预计,目前的Libpcap已成为开发跨平台的分组捕获和网络监视软件的首选工具,2021年6月发布的是Libpcap版本为1.10.1。Libpcap包捕获机制是在数据链路层(主要由网络接口卡驱动程序处理)增加一个旁路处理(NetworkTap,网络分接口),在不干扰操作系统自身网络协议栈处理的情况下(也就是不影响系统正常网络功能和应用的运行,网卡驱动程序同样会将收到的网络数据包正常交与系统网络协议栈进行处理),对接收的数据包通过Linux内核中的BPF(BerkeleyPacketFilter)进行过滤和缓冲处理,最后直接传递给上层网络监听应用程序。Winpcap是Libpcap的Windows版,其工作原理与Libpcap类似。Winpcap由内核中的网络组包过滤器(NetgroupPacketFilter,NPF)、低层动态链接库packet.dll和高层动态链接库wpcap.dll三部分组成。Winpcap最后的官方版本是4.1.3,2018年9月之后不再更新,取而代之的是Npcap(/)。Npcap是网络扫描软件Nmap工程组开发的Windows系统包捕获(以及发送)库,它综合利用一个定制的Windows内核驱动程序以及Nmap工程组开发的高性能Libpcap库为Windows系统上网络数据包的发送和接收提供了一个非常好用的、功能强大的PcapAPI,完全兼容Winpcap。(三)协议解析协议解析就是使用特定的程序对相应层次中的网络协议进行分析,去除本层中网络协议的首部,提取出本层中的数据部分,按照此方法自下而上的对网络协议进行逐层解析,最终还原出网络中传输的原始数据以及解析MAC地址、IP地址和端口号等有价值的网络相关参数。网络数据的传输在发送端先进行自上而下的数据封装,之后通过物理层的比特流传输给接收方,再由接收方相应的解析程序进行自下而上的解析还原。在网络数据封装过程中,网络分层模型中的每一层都会为到来的数据添加一些控制信息,帮助数据进行正确传输。控制信息通常放在数据部分之前,称为各层报文的首部。应用层将为原始数据添加应用层协议首部;当运输层接收到应用层传来的数据时,会对其添加包含源端口号、目的端口号和其他控制信息组成的运输层首部;网络层收到运输层传送的信息时,将为它添加含有源IP地址、目的IP地址以及其他信息构成的IP首部;而网络接口层收到网络层传来的信息时,不仅将为其加上含有源MAC地址、目的MAC地址和其他信息组成的帧首部,还将在网络层数据后加上相关校验序列。当接收方接收到传来的网络数据时,与数据封装过程相反,会按照自下而上的网络分层模型逐次去除各层添加在上层数据中的控制信息,逐层还原出用户的原始数据,这一过程称为数据包的拆封。数据包的拆封过程就是底层网络协议的解析过程。网络监听工具早期常常使用Cain软件来实现ARP欺骗。Cain是由Oxid.it公司开发的一款针对Microsoft操作系统的免费口令恢复工具。它的功能十分强大,可以进行网络嗅探,ARP欺骗,破解加密口令、解码被打乱的口令、显示口令框、显示缓存口令和分析路由协议,甚至还可以监听内网中他人使用VoIP拨打的电话。尽管Cain的主要功能是口令破解,但实际应用中,常常使用Cain来进行ARP欺骗,然后利用Wireshark进行网络数据采集与解析。近几年来,应用最广泛的网络流量劫持软件是Ettercap。Ettercap是一款功能强大的开源网络中间人攻击工具,可以实现基于ARP欺骗、ICMP路由重定向、DHCP欺骗等技术的中间人攻击,监听网内主机间的通信,并提供强大的协议解析能力。Ettercap主要运行于Debian/Ubuntu、FreeBSD、OpenBSD、Fedora等Unix类操作系统平台。网络数据采集与分析软件有很多,如Sniffer、Wireshark、MNM、Tcpdump等。Sniffer是NAI公司推出的一款便携式网管和应用故障诊断分析工具,分为软件和硬件两种。软件Sniffer有SnifferPro、NetworkMonitor、PacketBone等。硬件Sniffer通常称为协议分析仪,一般都是商业性的,价格也比较昂贵,但其支持链路捕获能力扩展,并支持高速数据流的实时捕获分析。Wireshark是一款与Sniffer功能类似的开源网络协议分析软件,也是当前应用最广的网络协议分析软件,广泛应用于网络管理和网络安全领域,如日常网络安全监测、网络性能测试与故障诊断、网络恶意代码捕获及分析、网络用户行为监测、黑客活动追踪、网络协议逆向分析等。MNM(MicrosoftNetworkMonitor)是微软公司推出的一款免费网络流量采集与分析软件,功能与Wireshark类似。但在无线局域网(如Wi-Fi)抓包方面,相比Wireshark,MNM的使用更方便一些,功能也要强一些,很多时候Wireshark不能抓取的无线网络协议包,而MNM可以。Fiddler软件是一款得到广泛应用的专门针对HTTP、HTTPS协议的网络流量采集与分析工具,运行平台为Windows。网络监听的检测和防范(一)监听检测方法有一些技术手段可以用于识别网络中实施监听的主机。具体的手段包括以下几种。(1)采用Ping主机的方法。向可能运行监听软件的主机发送定制的Ping数据包,目的IP地址是可疑主机的IP地址,目的MAC地址是随机填入的数值。如果主机网卡处于混杂模式,它将接收错误的MAC地址,主机会对这个错误的Ping数据包产生回应。(2)发送垃圾数据包的方法。向网络中发送大量目的MAC地址不存在的数据包,正常的主机会忽略这些数据包,而运行监听软件的主机将对这些数据包进行分析和处理。向可疑机器发送正常的Ping命令,比较主机在垃圾数据包发送之前及之后对Ping命令的响应速度。(3)利用ARP数据包进行检测。在局域网中发送非广播方式的ARP请求数据包,包中所查询的IP地址是局域网中不存在的地址,如果网络中有主机响应此ARP请求,并以自己的MAC地址作为被查询IP地址的解析结果,那么可以推断该主机在实施ARP欺骗,很可能处于网络监听模式。(4)观察DNS服务器的解析请求。在网络中针对一些实际不存在的IP地址发送Ping数据包,如果有主机对这些IP地址进行DNS反向查询,可以推断这些主机运行了监听程序。防范网络监听为了保证数据传输的安全,还可以采取一些举措主动防范网络通信被监听。(1)从逻辑或物理上对网络分段。网络监听只能在局域网中实施,即被监听的主机与实施监听的主机必须同属一个网络。黑客无法直接对远程主机实施监听。网络分段有助于将非法用户与敏感的网络资源相隔离,一般将网络划分得越精细,网络监听软件能够收集到的信息越少。虚拟局域网(VirtualLocalAreaNetwork,VLAN)就是一种常用的网络分段方法。(2)交换机端口绑定。网络中的主机如果相对固定,尽量将IP地址或MAC地址与交换机的端口相关联,使得端口盗用、ARP欺骗等网络监听所依赖的攻击手段难以实施。(3)采用加密技术。数据经过加密后传输,即使在传输过程中有黑客实施监听,所获取的也只是密文信息,攻击者必须能够破译密文才能获取具体的传输内容。加密技术能够提升网络的安全,但它会在一定程度上减缓数据传输速度。(4)防范与网络监听有关的黑客技术。在交换式环境中实施网络监听,往往需要采用一些黑客技术达成监听目的。例如,ARP欺骗是使用广泛的监听手段,可以采用静态绑定ARP的方法来应对。静态绑定ARP即将局域网中其他主机的IP地址和MAC

温馨提示

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

评论

0/150

提交评论