870 likes | 1.04k Views
第 12 章 无线网络安全. 12.1 无线局域网的基本概念 12.2 早期的无线网络安全及安全漏洞 12.3 新无线局域网安全标准 802.11i 12.4 802.11i —— 认证 12.5 802.11i —— 密钥分配 12.6 802.11i —— 数据加密. 本章学习目标. 无线网络安全涉及无线局域网工作原理、认证、密钥管理、加密解密等内容,涉及的概念、原理、协议、算法较多,掌握无线局域网基本工作原理、 WEP 的攻击原理。 新安全标准 802.11i 由来,顺着 802.11i 的工作流程,学习其认证、密钥生成与分配、加密各阶段的工作原理。.
E N D
第12章 无线网络安全 12.1 无线局域网的基本概念 12.2 早期的无线网络安全及安全漏洞 12.3 新无线局域网安全标准802.11i 12.4 802.11i——认证 12.5 802.11i——密钥分配 12.6 802.11i——数据加密
本章学习目标 • 无线网络安全涉及无线局域网工作原理、认证、密钥管理、加密解密等内容,涉及的概念、原理、协议、算法较多,掌握无线局域网基本工作原理、WEP的攻击原理。 • 新安全标准802.11i由来,顺着802.11i的工作流程,学习其认证、密钥生成与分配、加密各阶段的工作原理。
无线网络的分类 全球无线标准
12.1 无线局域网的基本概念 • 12.1.1 无线局域网的传输媒质 • 无线局域网的传输媒质分为无线电波和光波两类。 • 无线电波主要使用无线电波和微波,光波主要使用红外线。 • 无线电波和微波频率由各个国家的无线电管理部门规定,分为专用频段和自由频段。专用频段需要经过批准的独自有偿使用的频段;自由频段主要是指ISM频段(Industrical,Scientific,Medical)
12.1.2 无线局域网标准的演进 表中所有标准都包含共同的安全性能设计,即有线等价协议WEP(Wired Equivalent Privacy),希望能提供与有线网络同等的安全性能。
12.1.3 无线局域网网络结构 站STA
1. 802.11网络的两个基本构件 • 无线局域网网络有两个基本构件——站和无线接入点。 • (1)站(Station,STA) 站是无线网的端头设备,例如笔记本、掌上电脑等。通常是通过计算机加一块无线网卡构成的。 • (2)无线接入点(Access Point,AP) AP将STA与DS相连,典型的DS是某单位的有线网络,AP也可在不访问DS情况下将多个STA相连。
工作在对等模式下的STA集合称为自主基本服务集IBSS(Independent Basic Service Set)
对等网络用于一台无线工作站(STA,Station)和另一台或多台其他无线工作站的直接通讯,该网络无法接入有线网络中,只能独立使用。这是最简单的无线局域网结构。一个对等网络由一组有无线接口的计算机组成。这些计算机要有相同的工作组名、SSID和密码。对等网络用于一台无线工作站(STA,Station)和另一台或多台其他无线工作站的直接通讯,该网络无法接入有线网络中,只能独立使用。这是最简单的无线局域网结构。一个对等网络由一组有无线接口的计算机组成。这些计算机要有相同的工作组名、SSID和密码。 • 对等网络组网灵活,任何时间,只要两个或更多的无线接口互相都在彼此的范围之内,它们就可以建立一个独立的网络。这些根据要求建立起来的典型网络在管理和预先调协方面没有任何要求。
802.11网络的两种组网模式(2) • 基础模式是一种最常用的无线网络配置模式,所有的STA与AP联系,AP在STA之间 、STA与DS之间转发数据帧。 • 无线访问点也称无线 AP 或无线 Hub,用于在无线STA和有线网络之间接收、缓存和转发数据。无线AP通常能够覆盖多个甚至几十用户,覆盖半径达上百米。
基本服务集BSS • 一个BSS(Basic Service Set)包含一个AP和与其关联的一个或数个STA。 • BSS是无线局域网的基本构件。 • 一个无线访问点所覆盖的微蜂窝区域就是基本服务区BSA(Basic Service Area)
扩展服务集ESS • 扩展服务区 ESS 是指由多个 AP 以及连接它们的分布式系统组成的结构化网络,所有 AP 必需共享同一个ESSID,也可以说扩展服务区 ESS 中包含多个 BSS。 • 分布式系统在 IEEE802.11标准中并没有定义,但是目前大都是指以太网。扩展服务区只包含物理层和数据链路层,网络结构不包含网络层及其以上各层。因此,对于高层协议比如 IP 来说,一个 ESS 就是一个 IP 子网。
3. 802.11体系结构 • IEEE802.11标准提出一个体系结构,如下图所示,主要有两个部分:数据链路层的MAC子层和物理层。 802.11体系结构
在PLCP(Physical Layer Convergence Procedure)子层,将来自MAC子层的数据作为PLCP的服务数据单元(PSDU),加上PLCP的前导码(同步信号或帧起始信号)和PLCP帧头组成PLCP的协议数据单元(PPDU),送交给PMD子层。PLCP的帧数据单元与PMD子层采用的媒体传送方式有关。PMD子层将PLCP的数据调制后经天线发射出去。
与安全相关的是MAC子层,MAC子层提供3种服务:与安全相关的是MAC子层,MAC子层提供3种服务: • (1)异步数据服务。异步数据服务允许两端的LLC实体交换MSDU,要支持这项服务,本地MAC需要使用底层PHY级的服务将MSDU传送到对端的MAC实体,然后再将MSDU传送到对端的LLC。 • (2)安全服务。 • (3)MSDU排序。MSDU是由LLC层发给MAC层的数据,称服务数据单元,它被添加MAC头后,成为MPDU,称协议数据单元,在同层的两个MAC实体中传递。一个MSDU可能被切分为多个MPDU。
12.1.4 基础模式工作原理 • STA连接到AP并开始发送数据的过程: • 先假设AP已经开机且正在运行。AP以固定的时间间隔(通常为每秒钟10次)发送无线短消息通告它的存在。这些短消息称为信标—使无线设备发现AP的标识。 • 现在假设有人打开了一台装有无线网卡的笔记本电脑(STA),初始化后,STA开始寻找AP,它也许配置为寻找一个特定的AP,也可能准备连接到任一AP。STA扫描所有频段,收听信标,STA可能会发现若干个AP,通常它根据信号的强度来决定要与哪个AP连接。当STA准备连接到AP时,它首先发送一条认证请求消息给AP(假定不使用安全措施),AP马上发送一条表示接受的认证响应来回复认证请求。
现在AP被允许连接到AP,在IEEE 802.11中,概念“连接”被称为“关联”。当STA与AP关联在一起时,它才能发送和接收数据。STA发送关联请求消息,AP发送关联请求消息,AP以关联响应回复表明连接成功。此后,STA发送的数据就由AP转发到有线局域网,同样,从有线局域网发给STA的数据也由AP转发。
IEEE 802.11中的3种MAC帧 • (1)控制帧。告诉设备何时开始、停止发送以及通信是否失败的帧。如:RTS、CTS、ACK帧等。 • (2)协商和管理STA和AP之间关系的帧。如:认证帧、关联请求帧。 • (3)数据帧。一旦STA和AP已经同意建立连接,数据就以这种消息类型发送。
管理帧 • (1)信标帧 发送信标是接入点对外通告它已经准备就绪和在网络中维持定时的方法。信标是AP定期发送的管理帧。信标包含诸如网络名称和AP性能等有用信息。例如,信标可以告诉STA,AP是否支持IEEE 802.11标准中的新规范。 • (2)探测帧 为了加速找到一个AP,STA可以选择发送探测帧。相当于大喊“喂,有人在吗?”任何接入点收到探测请求,立刻以探测响应来进行回答,STA就可以迅速找到AP。
(3)连接到AP 连接到AP的过程称为关联。当你相连接时,先发送关联请求,接入点以关联响应回答。如果响应是肯定的,那么现在你就与接入点关联上了。 • (4)漫游 如果同一网络中有几个接入点,你的STA可能选择将其关联从当前AP移动到新的AP。首先,它必须使用解除关联,与原来的AP断开连接,然后使用重新关联,连接到新的AP。重新关联包含一些与原来的AP有关的信息,能够移交更顺利,这些信息让新的AP与原来的AP对话,确定已经发生了漫游。
(5)发送数据 一旦你通过了认证,并且被关联上了,就可以发送数据。数据在STA和AP之间交换。通常,数据先到达AP,然后被转发到有线局域网或其他的STA。 • 每个发到或者来自AP的802.11数据帧都有3个地址: 2个是源地址和目的地址,第3个是“中间”地址——消息路过的接入点的地址。当你从STA发送数据到AP时,一个源STA地址,2个目的地址,一个目的端的AP地址,另一个目的STA地址,与此相似,从AP到STA的数据有一个目的地址(STA)和2个源地址——AP地址和STA地址。
12.2 早期的无线网络安全及漏洞 12.2.1 早期的无线网络安全 • 安全问题对早期的无线局域网来说不是大问题。那时设备是私有的,互相不兼容。许多无线局域网使用服务区标识符(SSID)和MAC地址过滤作为安全的基本形式。这两种方式都是不安全的,无线监听可以找到合法的MAC地址和服务区标识符SSID。
(1)服务区标识符 • 在每个AP内都会设置唯一的网络SSID,每当无线终端设备要连接AP时,AP会检查其SSID是否与自己的服务区域认证ID一致。只有当AP和无线终端的SSID相匹配时,AP才接受无线终端的访问并提供网络服务;如果不匹配,访问点就拒绝给予服务。 • 服务区标识SSID是一个数据结构,用来在逻辑上区分不同的服务区。SSID并不提供任何数据机密功能,也不提供终端到无线接入点的认证。 • 使用网络分析工具(如Sniffer)很容易就可以获得SSID。
(2)MAC地址过滤 • 接入点AP存有一个允许接入无线局域网的STA的MAC地址列表,阻止非列表内的STA访问请求。 • 由于MAC地址通常是明文传输,攻击者可轻松地嗅到MAC地址。另外,无线网卡允许通过软件更换MAC地址。一个攻击者能使用这些“特性”通过对网卡的编程,伪装成有效的MAC地址,进入并享有网络。
12.2.2 802.11网络的安全方案 • 1.认证 802.11标准中的认证是用来对无线终端或设备进行认证,不对用户进行认证。IEEE 802.11网络中的安全包括认证和加密两大主要功能,定义了两种认证方式:开放系统认证和共享密钥认证。802.11要求必须实现开放系统认证,共享密钥认证的实现是可选的。初始STA与认证STA(通常是AP)建立连接前需要认证,认证使用管理帧。
开放系统认证 • 开放系统认证是802.11的一种默认协议,正如其名,无论谁请求认证都会被对方通过,实质上,它是一个空认证过程。开放认证对于确定一个客户是否合法没有提供任何帮助。 开放认证系统分为2步: • ①STA发送认证请求帧给认证STA,帧内通常包含STA的MAC地址和SSID号。 • ②如果认证STA的认证方式设为开放系统认证,要向请求者发送认证成功帧。 • 当然,在开放系统认证中,认证STA(通常是AP)并没有被认证。
共享密钥认证 • 共享密钥认证支持拥有密钥的 STA进行身份认证,密钥不会在网络上文明传送,但它需要使用WEP协议 ,因此只能在已现实WEP协议的节点运行。 • 共享密钥认证假设密钥已分配并已正确装入MAC层内,它回避了密钥分配问题,共享密钥认证分为4步,请求者为STA,认证者为AP。
①请求者向认证者发送认证请求。 • ②认证者向请求者发送一个文明的随机数。 • ③请求者使用WEP密钥加密此随机数,并发送给认证者。 • ④认证者使用WEP密钥加密原随机数,并与受到的密文比较,若相同,向请求者发认证成功帧。
2.有线等价保密协议WEP • 有线等效保密协议(WEP)是在IEEE 802.11标准中采用的信息保密机制,它主要用于保障无线局域网中链路层信息数据的保密。 • WEP采用对称加密原理,数据的加密和解密采用相同的密钥和加密算法。 • WEP只对数据帧实体内容加密,加密后的数据帧替换原数据帧,然后发送出去。 • WEP协议只保护客户和访问点之间链路级数据(无连接部分),而不是端到端的安全,如下图所示:
Frame Control Duration/ID Address1 Address2 Address3 Sequence Control Address4 Frame Body FCS 2 bytes 通用帧格式 Protocol Version Type Sub-type To DS From DS More Frag Petry Pwr Mgt More Data Wep Order 2 2 4 1 1 1 1 1 1 1 1 控制域格式 WEP帧格式 假如使用WEP加密算法对帧实体进行加密,那么该标记被置为1,只有数据类型和管理类帧中的认证子类型的WEP标记位才能设为1,所有其他帧的WEP标记位被置为0.当WEP标记位为1时,帧实体将按下图所述被扩展。
加密 IV 4 Data >=1 ICV 4 IV 3 1 Octet Pad KD 6bits 2bits WEP帧扩展格式 4字节的扩展域,不加密 PDU使用CRC-32生成的帧校验序列,将同PDU一同被加密 初始化向量域 密钥ID域指示使用4个可能密钥中的某个密钥 填充内容为0
12.2.3 RC4加密算法 • WEP使用RC4加密算法,RC4是一种对称流密码,每次加密一个字节明文。RC4算法产生密钥字节流,密钥流与明文异或,形成密文。 • RC4主要包括2个阶段: • 1.KSA阶段(The Key—Scheduling Algorithm,KSA) • 2.PRGA阶段(The Pseudo-Random Algorithm,PRGA)
12.2.4 802.11的巨大安全漏洞 • IEEE802.11中的安全方案存在巨大的漏洞,认证、加密、完整性都不能保证。 • 1.机密性的漏洞分析 • WEP中RC4的使用方式主要有两个缺陷:IV重复使用与直接密钥攻击。 • (1) IV重复使用 • IV在实际产品中一般用计数器实现,但24位空间太小,在繁忙的网络里,很快就会重新使用以前的IV值,由此带来严重问题。RC4本身非常强壮,但是在取某些密钥值时,会使输出的前几个字节没那么随机,这些密钥值被称作弱密钥,使RC4出现很大隐患。 • (2)直接密钥攻击 • RC4在802.11中使用时,其密钥由前24位随机数拼接40位或104位密钥,形成一个64位或128位的密钥,用其进行加密解密,前24位即前3个字节是可监听到的明文。
2.认证的漏洞分析 • 认证期间,AP发送一个128字节的随机串,STA用WEP加密数字串然后返回,WEP用密钥流与明文相异或形成密文。(异或的性质是任意两者异或就得到第3者)若监听到明文的质询和加密后的回应,将二者异或,就得到与IV值相对应的密钥流。 • 3.完整性的漏洞分析 • 由于ICV是由CRC32产生的,而CRC32运算对于异或运算而言是线性的,而WEP算法使用异或加密,采用“比特翻转”技术就可以实现改动,造成攻击,而无法发现消息的非法改动,所以无法胜任数据完整性检测。
12.3 新无线局域网安全标准802.11i • WEP协议的缺陷引起了IEEE的重视,它委托802.11i任务组制定新的标准,加强无线局域网的安全性。 • IEEE标准委员会已于2004年6月批准802.11i标准。IEEE 802.11i标准提出了一个新概念——RSN健壮安全网络,定义了新的认证、密钥管理、数据加密方法。 • 在一个真正的RSN网中,仅允许符合RSN要求的设备连入接入点。 • 软件升级 • 临时密钥完整性协议TKIP作为RSN的一个可选模式。
为了强化无线网络安全性,解决目前无线网络安全方面的漏洞,IEEE成立的802.11i工作小组开发了新的无线网络机制,其中新增了几项新技术:为了强化无线网络安全性,解决目前无线网络安全方面的漏洞,IEEE成立的802.11i工作小组开发了新的无线网络机制,其中新增了几项新技术: • 首先,802.11i使用了EAP(Extensible Authentication通信协议)以及802.1x,强迫使用者必须进行验证以及交互验证; • 第二,使用了MIC(Message Integrit Code,信息完整性编码)检测传送的字节是否有被修改的情况; • 第三,使用TKIP(Temporal Key Integrity通信协议),使加密的过程由原来的静态变为动态,让攻击者更难以破解。为了能提供更高级别的加密保护,802.11i采用新的WLAN架构,支持新的AES(Advanced Encryption Standard)标准。
IEEE 802.11i Security RSN之前 RSN IEEE 802.11X基于端口的访问控制 EAP认证和密钥分配 WEP加密 开放认证 共享密钥认证 TKIP CCMP 12.3.1 802.11i标准体系结构 802.11安全机制分类图
RSN重点处理了WEP协议中的缺陷,并对无线链路提供数据完整性、机密性保护。RSN重点处理了WEP协议中的缺陷,并对无线链路提供数据完整性、机密性保护。 • RSN安全机制只工作在数据链路层,为STA与AP之间或STA与STA之间的通信提供保护,并不提供端到端的应用层通信保护。 • RSN只工作在整个网络的无线部分,在基础模式中,不为有线网络部分提供保护。
12.3.2 802.11i标准工作流程 • RSN中有三种类型的设备: • STA:无线终端设备 • AP:网络设备,它允许STA通过无线通信或连入有线网 • AS(Authentication Servers):为STA提供认证服务,AS是RSN新提出的部件。
STA AP 服务器 STA 阶段1:发现 阶段2:认证 阶段3:密钥生成与分配 密钥管理 密钥分配 阶段4:加密的数据传输 阶段5:连接终止 RSN工作流程 STA中的加密与认证机制必须能满足AP提出的要求 AP不参与认证,只转发STA与AS间通信 RSN只保护STA与AP间的数据链路层的安全,不包括端到端的安全
12.4 802.11i—认证 • 在802.11i的认证中,涉及三个核心协议:802.1x、EAP、RADIUS。 • 802.11i标准使用802.1x协议,为STA与AS之间提供双向认证。
端口访问实体PAE,执行认证机制中规定的算法或协议。申请者中的PAE负责相应认证;认证者中的PAE负责与申请者通信,并将认证信息传递给认证服务器;认证者中的PAE根据认证结果,决定控制端口处于认证或非认证状态。端口访问实体PAE,执行认证机制中规定的算法或协议。申请者中的PAE负责相应认证;认证者中的PAE负责与申请者通信,并将认证信息传递给认证服务器;认证者中的PAE根据认证结果,决定控制端口处于认证或非认证状态。 认证者 申请者 EAPOL帧 12.4.1 IEEE 802.1x协议 认证服务器 802.1x体系结构
控制端口 控制端口 非控制端口 非控制端口 认证状态 非认证状态 LAN LAN 基于端口的访问控制 • 认证者中定义了两个逻辑端口:控制端口和非控制端口。 • 非控制端口始终打开,但只能用于同申请者交换认证信息,主要是EAPOL帧; • 控制端口只有在认证通过的状态下才打开,可传递网络服务。
STA AP Authentication Server 网络服务 PAE PAE PAE 封装在高层协议内的EAP消息 非认证状态 LAN 申请者、认证者、认证服务器间基于端口的访问控制
认证者与认证服务器之间的通信细节超出了802.1x标准的范围。认证者与认证服务器之间的通信细节超出了802.1x标准的范围。 • 一种典型的实现是将EAP帧加载到一个合适的高层协议中,例如RADIUS协议。 • 这样,认证服务器可放置在局域网之外,因为高层协议能穿越复杂的网络,认证者要进行协议转换,将EAPOL拆封,取出数据,再封装入RADIUS消息中。
12.4.2 EAP协议 • EAP(Extension Authentication Protocol,可扩展认证协议)本身具有良好的可扩展性,可以支持多种认证机制,允许通信双方使用它们希望采用的认证算法。认证算法的具体内容在EAP中并没有定义。 • EAP是基于认证方的,定义了两个术语是认证方和对端。
(1)Request—用来发送由认证方给对端的消息 (2)Response—用来发送由对端返回给认证方的消息 (3)Success—由认证方发送的消息,用来指示允许对端接入 (4)Failure—由认证方发送的消息,用来指示拒绝对端接入 • EAP规定了4种消息可供传送: