87
第 12 第 第第第第第第 12.1 第第第第第第第第第第 12.2 第第第第第第第第第第第第第第 12.3 第第第第第第第第第第 802.11i 12.4 802.11i—— 第第 12.5 802.11i—— 第第第第 12.6 802.11i—— 第第第第

第 12 章 无线网络安全

  • Upload
    yale

  • View
    123

  • Download
    6

Embed Size (px)

DESCRIPTION

第 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 的工作流程,学习其认证、密钥生成与分配、加密各阶段的工作原理。. - PowerPoint PPT Presentation

Citation preview

Page 1: 第 12 章  无线网络安全

第 12 章 无线网络安全12.1 无线局域网的基本概念12.2 早期的无线网络安全及安全漏洞12.3 新无线局域网安全标准 802.11i12.4 802.11i——认证12.5 802.11i——密钥分配12.6 802.11i——数据加密

Page 2: 第 12 章  无线网络安全

本章学习目标 无线网络安全涉及无线局域网工作原理、认证、密钥管理、加密解密等内容,涉及的概念、原理、协议、算法较多,掌握无线局域网基本工作原理、 WEP 的攻击原理。 新安全标准 802.11i 由来,顺着 802.11i 的工作流程,学习其认证、密钥生成与分配、加密各阶段的工作原理。

Page 3: 第 12 章  无线网络安全

无线网络的分类

全球无线标准

Page 4: 第 12 章  无线网络安全

12.1 无线局域网的基本概念 12.1.1 无线局域网的传输媒质 无线局域网的传输媒质分为无线电波和光波两类。 无线电波主要使用无线电波和微波,光波主要使用红外线。 无线电波和微波频率由各个国家的无线电管理部门规定,分为专用频段和自由频段。专用频段需要经过批准的独自有偿使用的频段;自由频段主要是指 ISM 频段( Industrical ,

Scientific , Medical )

Page 5: 第 12 章  无线网络安全

标准 最大传输率 典型距离 工作频段 评注802.11 2Mbps 50-100m 2.4GHz802.11a 54Mbps 50-100m 5GHz 昂贵,不与80.211b 兼容802.11b 11Mbps 50-100m 2.4GHz 已成为主流802.11g 54Mbps 50-100m 2.4GHz

5GHz

与 802.11b兼容

12.1.2 无线局域网标准的演进

表中所有标准都包含共同的安全性能设计,即有线等价协议 WEP ( Wired Equivalent Privacy ),希望能提供与有线网络同等的安全性能。

Page 6: 第 12 章  无线网络安全

12.1.3 无线局域网网络结构

站 STA

Page 7: 第 12 章  无线网络安全

1. 802.11 网络的两个基本构件 无线局域网网络有两个基本构件——站和无线接入点。 ( 1 )站( Station , STA ) 站是无线网的端头设备,例如笔记本、掌上电脑等。通常是通过计算机加一块无线网卡构成的。 ( 2 )无线接入点( Access Point , AP ) AP 将 STA 与 DS 相连,典型的 DS 是某单位的有线网络, AP 也可在不访问 DS 情况下将多个 STA 相连。

Page 8: 第 12 章  无线网络安全

2. 802.11 网络的两种组网模式( 1 )

Page 9: 第 12 章  无线网络安全

工作在对等模式下的 STA 集合称为自主基本服务集 IBSS( Independent Basic Service Set )

Page 10: 第 12 章  无线网络安全

对等网络用于一台无线工作站( STA , Station )和另一台或多台其他无线工作站的直接通讯,该网络无法接入有线网络中,只能独立使用。这是最简单的无线局域网结构。一个对等网络由一组有无线接口的计算机组成。这些计算机要有相同的工作组名、 SSID和密码。 对等网络组网灵活,任何时间,只要两个或更多的无线接口互相都在彼此的范围之内,它们就可以建立一个独立的网络。这些根据要求建立起来的典型网络在管理和预先调协方面没有任何要求。

Page 11: 第 12 章  无线网络安全

802.11 网络的两种组网模式( 2 ) 基础模式是一种最常用的无线网络配置模式,所有的 STA 与 AP 联系, AP在 STA 之间 、 STA 与 DS 之间转发数据帧。 无线访问点也称无线 AP 或无线 Hub ,用于在无线 STA 和有线网络之间接收、缓存和转发数据。无线 AP通常能够覆盖多个甚至几十用户,覆盖半径达上百米。

Page 12: 第 12 章  无线网络安全

基本服务集 BSS 一个 BSS ( Basic Service Set )包含一个 AP和与其关联的一个或数个 STA 。 BSS 是无线局域网的基本构件。 一个无线访问点所覆盖的微蜂窝区域就是基本服务区 BSA( Basic Service Area )

Page 13: 第 12 章  无线网络安全

扩展服务集 ESS 扩展服务区 ESS 是指由多个 AP 以及连接它们的分布式系统组成的结构化网络,所有 AP 必需共享同一个 ESSID ,也可以说扩展服务区 ESS 中包含多个 BSS 。 分布式系统在 IEEE802.11 标准中并没有定义,但是目前大都是指以太网。扩展服务区只包含物理层和数据链路层,网络结构不包含网络层及其以上各层。因此,对于高层协议比如 IP 来说,一个 ESS 就是一个 IP 子网。

Page 14: 第 12 章  无线网络安全
Page 15: 第 12 章  无线网络安全

3. 802.11 体系结构 IEEE802.11 标准提出一个体系结构,如下图所示,主要有两个部分:数据链路层的 MAC 子层和物理层。

MAC 子层 MAC 子层管理实体站点管理实体PLCP子层 PHY 子层管理实体

PMD子层802.11体系结构

Page 16: 第 12 章  无线网络安全

在 PLCP ( Physical Layer Convergence Procedure)子层,将来自 MAC 子层的数据作为 PLCP 的服务数据单元( PSDU),加上 PLCP 的前导码(同步信号或帧起始信号)和 PLCP 帧头组成 PLCP 的协议数据单元( PPDU),送交给 PMD子层。 PLCP 的帧数据单元与 PMD子层采用的媒体传送方式有关。 PMD子层将 PLCP 的数据调制后经天线发射出去。

Page 17: 第 12 章  无线网络安全

与安全相关的是 MAC 子层, MAC 子层提供 3种服务: ( 1)异步数据服务。异步数据服务允许两端的 LLC 实体交换 MSDU,要支持这项服务,本地 MAC需要使用底层PHY 级的服务将 MSDU传送到对端的 MAC 实体,然后再将MSDU传送到对端的 LLC。 ( 2)安全服务。 ( 3) MSDU 排序。 MSDU是由 LLC 层发给 MAC 层的数据,称服务数据单元,它被添加 MAC头后,成为 MPDU,称协议数据单元,在同层的两个 MAC 实体中传递。一个 MSDU可能被切分为多个 MPDU。

Page 18: 第 12 章  无线网络安全

12.1.4 基础模式工作原理 STA 连接到 AP并开始发送数据的过程: 先假设 AP已经开机且正在运行。 AP以固定的时间间隔(通常为每秒钟 10次)发送无线短消息通告它的存在。这些短消息称为信标—使无线设备发现 AP 的标识。 现在假设有人打开了一台装有无线网卡的笔记本电脑( STA ),初始化后, STA开始寻找 AP ,它也许配置为寻找一个特定的 AP,也可能准备连接到任一 AP。 STA扫描所有频段,收听信标, STA 可能会发现若干个 AP,通常它根据信号的强度来决定要与哪个 AP连接。当 STA 准备连接到 AP 时,它首先发送一条认证请求消息给 AP (假定不使用安全措施), AP马上发送一条表示接受的认证响应来回复认证请求。

Page 19: 第 12 章  无线网络安全

现在 AP被允许连接到 AP ,在 IEEE 802.11 中,概念“连接”被称为“关联”。当 STA 与 AP关联在一起时,它才能发送和接收数据。 STA 发送关联请求消息, AP发送关联请求消息, AP以关联响应回复表明连接成功。此后, STA 发送的数据就由 AP转发到有线局域网,同样,从有线局域网发给 STA 的数据也由 AP转发。

Page 20: 第 12 章  无线网络安全

IEEE 802.11 中的 3 种 MAC 帧 ( 1)控制帧。告诉设备何时开始、停止发送以及通信是否失败的帧。如: RTS 、 CTS 、 ACK帧等。 ( 2)协商和管理 STA 和 AP 之间关系的帧。如:认证帧、关联请求帧。 ( 3)数据帧。一旦 STA 和 AP已经同意建立连接,数据就以这种消息类型发送。

Page 21: 第 12 章  无线网络安全

管理帧 ( 1)信标帧 发送信标是接入点对外通告它已经准备就绪和在网络中维持定时的方法。信标是 AP定期发送的管理帧。信标包含诸如网络名称和 AP性能等有用信息。例如,信标可以告诉 STA , AP 是否支持 IEEE 802.11 标准中的新规范。 ( 2)探测帧 为了加速找到一个 AP, STA 可以选择发送探测帧。相当于大喊“喂,有人在吗?”任何接入点收到探测请求,立刻以探测响应来进行回答, STA 就可以迅速找到 AP 。

Page 22: 第 12 章  无线网络安全

( 3)连接到 AP 连接到 AP 的过程称为关联。当你相连接时,先发送关联请求,接入点以关联响应回答。如果响应是肯定的,那么现在你就与接入点关联上了。 ( 4)漫游 如果同一网络中有几个接入点,你的 STA 可能选择将其关联从当前 AP移动到新的 AP。首先,它必须使用解除关联,与原来的 AP断开连接,然后使用重新关联,连接到新的 AP。重新关联包含一些与原来的 AP有关的信息,能够移交更顺利,这些信息让新的 AP与原来的 AP对话,确定已经发生了漫游。

Page 23: 第 12 章  无线网络安全

( 5)发送数据 一旦你通过了认证,并且被关联上了,就可以发送数据。数据在 STA 和 AP 之间交换。通常,数据先到达 AP ,然后被转发到有线局域网或其他的 STA 。 每个发到或者来自 AP的 802.11 数据帧都有 3个地址: 2 个是源地址和目的地址,第 3 个是“中间”地址——消息路过的接入点的地址。当你从 STA 发送数据到 AP 时,一个源 STA地址, 2个目的地址,一个目的端的 AP地址,另一个目的 STA地址,与此相似,从 AP到 STA 的数据有一个目的地址( STA )和 2个源地址——AP地址和 STA地址。

Page 24: 第 12 章  无线网络安全

12.2 早期的无线网络安全及漏洞 安全问题对早期的无线局域网来说不是大问题。那时设备是私有的,互相不兼容。许多无线局域网使用服务区标识符( SSID )和 MAC 地址过滤作为安全的基本形式。这两种方式都是不安全的,无线监听可以找到合法的 MAC 地址和服务区标识符 SSID 。

12.2.1 早期的无线网络安全

Page 25: 第 12 章  无线网络安全

( 1 )服务区标识符 在每个 AP内都会设置唯一的网络 SSID ,每当无线终端设备要连接 AP时, AP会检查其 SSID 是否与自己的服务区域认证 ID一致。只有当 AP 和无线终端的 SSID 相匹配时, AP才接受无线终端的访问并提供网络服务;如果不匹配,访问点就拒绝给予服务。 服务区标识 SSID 是一个数据结构,用来在逻辑上区分不同的服务区。 SSID并不提供任何数据机密功能,也不提供终端到无线接入点的认证。 使用网络分析工具(如 Sniffer )很容易就可以获得 SSID 。

Page 26: 第 12 章  无线网络安全

( 2 ) MAC 地址过滤 接入点 AP存有一个允许接入无线局域网的 STA 的 MAC地址列表,阻止非列表内的 STA 访问请求。 由于 MAC 地址通常是明文传输,攻击者可轻松地嗅到 MAC 地址。另外,无线网卡允许通过软件更换 MAC 地址。一个攻击者能使用这些“特性”通过对网卡的编程,伪装成有效的 MAC 地址,进入并享有网络。

Page 27: 第 12 章  无线网络安全

12.2.2 802.11 网络的安全方案 1. 认证 802.11 标准中的认证是用来对无线终端或设备进行认证,不对用户进行认证。 IEEE 802.11 网络中的安全包括认证和加密两大主要功能,定义了两种认证方式:开放系统认证和共享密钥认证。 802.11 要求必须实现开放系统认证,共享密钥认证的实现是可选的。初始 STA 与认证 STA (通常是 AP)建立连接前需要认证,认证使用管理帧。

Page 28: 第 12 章  无线网络安全

开放系统认证 开放系统认证是 802.11 的一种默认协议,正如其名,无论谁请求认证都会被对方通过,实质上,它是一个空认证过程。开放认证对于确定一个客户是否合法没有提供任何帮助。 开放认证系统分为 2步: ①STA 发送认证请求帧给认证 STA ,帧内通常包含 STA 的MAC 地址和 SSID号。 ②如果认证 STA 的认证方式设为开放系统认证,要向请求者发送认证成功帧。 当然,在开放系统认证中,认证 STA (通常是 AP)并没有被认证。

Page 29: 第 12 章  无线网络安全

共享密钥认证 共享密钥认证支持拥有密钥的 STA进行身份认证,密钥不会在网络上文明传送,但它需要使用 WEP 协议 ,因此只能在已现实 WEP 协议的节点运行。 共享密钥认证假设密钥已分配并已正确装入 MAC 层内,它回避了密钥分配问题,共享密钥认证分为 4步,请求者为 STA ,认证者为 AP。

Page 30: 第 12 章  无线网络安全
Page 31: 第 12 章  无线网络安全

①请求者向认证者发送认证请求。 ②认证者向请求者发送一个文明的随机数。 ③请求者使用 WEP 密钥加密此随机数,并发送给认证者。 ④认证者使用 WEP 密钥加密原随机数,并与受到的密文比较,若相同,向请求者发认证成功帧。

Page 32: 第 12 章  无线网络安全

2. 有线等价保密协议 WEP 有线等效保密协议( WEP )是在 IEEE 802.11 标准中采用的信息保密机制,它主要用于保障无线局域网中链路层信息数据的保密。 WEP采用对称加密原理,数据的加密和解密采用相同的密钥和加密算法。 WEP 只对数据帧实体内容加密,加密后的数据帧替换原数据帧,然后发送出去。 WEP 协议只保护客户和访问点之间链路级数据(无连接部分),而不是端到端的安全,如下图所示:

Page 33: 第 12 章  无线网络安全

WEP 帧格式FCSFrame

BodyAddress4Sequence

ControlAddress3Address2Address1Duration

/IDFrame

Control

OrderWepMore Data

Pwr Mgt

PetryMore Frag

From DS

To DS

Sub-typeTypeProtocol Version

42 12 1 1 1 1 1 1 1

2 bytes 通用帧格式

控制域格式假如使用 WEP 加密算法对帧实体进行加密,那么该标记被置为 1 ,只有数据类型和管理类帧中的认证子类型的 WEP 标记位才能设为1 ,所有其他帧的 WEP 标记位被置为 0.当WEP 标记位为 1 时,帧实体将按下图所述被扩展。

Page 34: 第 12 章  无线网络安全

4字节的扩展域,不加密 PDU 使用 CRC-32生成的帧校验序列,将同 PDU 一同被加密ICV4

Data>=1

IV4

1 OctetPad KD

6bits 2bits

IV3

加密

WEP 帧扩展格式

初始化向量域密钥 ID 域指示使用 4 个可能密钥中的某个密钥

填充内容为 0

Page 35: 第 12 章  无线网络安全

12.2.3 RC4 加密算法 WEP 使用 RC4 加密算法, RC4 是一种对称流密码,每次加密一个字节明文。 RC4 算法产生密钥字节流,密钥流与明文异或,形成密文。 RC4 主要包括 2 个阶段: 1.KSA 阶段( The Key—Scheduling Algorithm , KSA ) 2.PRGA 阶段( The Pseudo-Random Algorithm , PRG

A )

Page 36: 第 12 章  无线网络安全

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 个字节是可监听到的明文。

Page 37: 第 12 章  无线网络安全

2. 认证的漏洞分析 认证期间, AP 发送一个 128字节的随机串, STA 用 WEP 加密数字串然后返回, WEP 用密钥流与明文相异或形成密文。(异或的性质是任意两者异或就得到第 3者)若监听到明文的质询和加密后的回应,将二者异或,就得到与 IV值相对应的密钥流。 3.完整性的漏洞分析 由于 ICV是由 CRC32产生的,而 CRC32运算对于异或运算而言是线性的,而 WEP 算法使用异或加密,采用“比特翻转”技术就可以实现改动,造成攻击,而无法发现消息的非法改动,所以无法胜任数据完整性检测。

Page 38: 第 12 章  无线网络安全

12.3 新无线局域网安全标准 802.11i WEP 协议的缺陷引起了 IEEE 的重视,它委托 802.11i任务组制定新的标准,加强无线局域网的安全性。 IEEE 标准委员会已于 2004年 6月批准 802.11i 标准。IEEE 802.11i 标准提出了一个新概念—— RSN健壮安全网络,定义了新的认证、密钥管理、数据加密方法。 在一个真正的 RSN 网中,仅允许符合 RSN 要求的设备连入接入点。 软件升级 临时密钥完整性协议 TKIP 作为 RSN 的一个可选模式。

Page 39: 第 12 章  无线网络安全

为了强化无线网络安全性,解决目前无线网络安全方面的漏洞, IEEE 成立的 802.11i 工作小组开发了新的无线网络机制,其中新增了几项新技术: 首先, 802.11i 使用了 EAP(Extensible Authentication 通信协议)以及 802.1x,强迫使用者必须进行验证以及交互验证; 第二,使用了MIC(Message Integrit Code ,信息完整性编码)检测传送的字节是否有被修改的情况; 第三,使用 TKIP ( Temporal Key Integrity 通信协议),使加密的过程由原来的静态变为动态,让攻击者更难以破解。为了能提供更高级别的加密保护, 802.11i采用新的 WLAN 架构,支持新的 AES ( A

dvanced Encryption Standard )标准。

Page 40: 第 12 章  无线网络安全

12.3.1 802.11i 标准体系结构IEEE 802.11i Security

RSN 之前 RSN

WEP加密开放认证 共享密钥认证

IEEE 802.11X 基于端口的访问控制

EAP 认证和密钥分配 TKIP CCMP

802.11 安全机制分类图

Page 41: 第 12 章  无线网络安全

RSN重点处理了 WEP 协议中的缺陷,并对无线链路提供数据完整性、机密性保护。 RSN安全机制只工作在数据链路层,为 STA 与 AP 之间或 STA 与 STA 之间的通信提供保护,并不提供端到端的应用层通信保护。 RSN只工作在整个网络的无线部分,在基础模式中,不为有线网络部分提供保护。

Page 42: 第 12 章  无线网络安全

12.3.2 802.11i 标准工作流程 RSN 中有三种类型的设备: STA:无线终端设备 AP:网络设备,它允许 STA 通过无线通信或连入有线网 AS ( Authentication Servers ):为 STA 提供认证服务, AS 是 RSN 新提出的部件。

Page 43: 第 12 章  无线网络安全

RSN 工作流程

STA AP 服务器 STA阶段 1 :发现阶段 2 :认证阶段 3 :密钥生成与分配

阶段 4 :加密的数据传输阶段 5 :连接终止

密钥管理 密钥分配AP 不参与认证,只转发 STA 与 AS 间通信

STA 中的加密与认证机制必须能满足 AP 提出的要求

RSN 只保护 STA 与 AP 间的数据链路层的安全,不包括端到端的安全

Page 44: 第 12 章  无线网络安全

12.4 802.11i— 认证 在 802.11i 的认证中,涉及三个核心协议: 802.1x 、EAP 、 RADIUS 。 802.11i 标准使用 802.1x 协议,为 STA 与 AS 之间提供双向认证。

Page 45: 第 12 章  无线网络安全

12.4.1 IEEE 802.1x 协议

端口访问实体 PAE ,执行认证机制中规定的算法或协议。申请者中的 PAE负责相应认证;认证者中的 PAE负责与申请者通信,并将认证信息传递给认证服务器;认证者中的 PAE 根据认证结果,决定控制端口处于认证或非认证状态。

认证服务器802.1x体系结构

申请者 认证者EAPOL帧

Page 46: 第 12 章  无线网络安全

认证者中定义了两个逻辑端口:控制端口和非控制端口。 非控制端口始终打开,但只能用于同申请者交换认证信息,主要是EAPOL 帧; 控制端口只有在认证通过的状态下才打开,可传递网络服务。

控制端口

非认证状态非控制端口

LAN

控制端口认证状态

非控制端口

LAN基于端口的访问控制

Page 47: 第 12 章  无线网络安全

申请者、认证者、认证服务器间基于端口的访问控制

STA

网络服务

非认证状态

LAN

PAE

AP Authentication Server

PAE PAE封装在高层协议内的 EAP 消息

Page 48: 第 12 章  无线网络安全

认证者与认证服务器之间的通信细节超出了 802.1x 标准的范围。 一种典型的实现是将 EAP 帧加载到一个合适的高层协议中,例如 RADIUS 协议。 这样,认证服务器可放置在局域网之外,因为高层协议能穿越复杂的网络,认证者要进行协议转换,将 EAPOL拆封,取出数据,再封装入 RADIUS消息中。

Page 49: 第 12 章  无线网络安全

12.4.2 EAP 协议 EAP ( Extension Authentication Protocol ,可扩展认证协议)本身具有良好的可扩展性,可以支持多种认证机制,允许通信双方使用它们希望采用的认证算法。认证算法的具体内容在 EAP 中并没有定义。 EAP 是基于认证方的,定义了两个术语是认证方和对端。

Page 50: 第 12 章  无线网络安全

EAP 规定了 4 种消息可供传送:( 1 ) Request— 用来发送由认证方给对端的消息( 2 ) Response— 用来发送由对端返回给认证方的消息( 3 ) Success— 由认证方发送的消息,用来指示允许对端接入( 4 ) Failure— 由认证方发送的消息,用来指示拒绝对端接入

Page 51: 第 12 章  无线网络安全

代码 Code 标志符 Identitier 长度 Length

类型 type 类型数据 Type data

代码域占用一个字节,用来指示消息的类型: Request ( 01 )、Response ( 02 )、 Success ( 03 )、 Failure ( 04 )。

Success 和 Failure 这两种消息不包含具体数据,十分短小,用来指示认证结果。 不同的认证算法使用不同的类型,并将所需数据放在类型数据。在 RFC2284文档中,类型值高于 6 的都没有定义。

EAP消息细化格式

Page 52: 第 12 章  无线网络安全

12.4.3 EAPOL

EAP 最初是为拨号系统设计的,根本不是一个局域网协议,要在局域网中传送 EAP消息,就需要对 EAP消息进行封装, IEEE802.1x制定了在局域网上 EAP消息封装格式 EAPOL ( EAP Over LAN ),在申请者和认证方之间传送 EAP消息。 并非所有的 EAPOL 帧都用来承载 EAP消息,其中有些是用来执行管理任务的。

Page 53: 第 12 章  无线网络安全

EAPOL 的消息类型 EAPOL消息共有五种类型,具体如下所示: EAPOL-Encapsulated-ASF-Alert—— 可忽略该帧,它允许一个未授权设备向系统发送管理警告, WPA/RSN 中没有使用这种消息。 ( 1 ) EAPOL-Start——申请者 PAE 使用此帧启动认证过程。 ( 2 ) EAPOL-Key—— 用来在申请者和认证者之间传送密钥。 ( 3 ) EAPOL-Logoff——申请者若想离开,就发送该帧,使认证者 PAE 将控制端口变为非授权状态。 ( 4 ) EAPOL-Packet—— 数据帧,真正在局域网上封装 EAP消息的帧,是制定 EAPOL 协议的最初目的。

Page 54: 第 12 章  无线网络安全

EAPOL 帧格式

EAPOL-Start , EAPOL-Logoff 帧中没有 Packet Body 部分; EAPOL-Packet 帧中的 Packet Body 部分就是 EAP 帧; EAPOL-Key 帧中的 Packet Body 部分是密钥描述信息。 EAPOL-Start 帧、 EAPOL-Logoff 帧、 EAPOL-Key 帧只在申请者和认证者之间传递。 EAPOL-Packet 帧在认证者处被拆封,取出 EAP消息,再封装入 RADIUS消息中,然后在认证者与认证服务器间传递。

第 1-2字节 第 3字节 第 4字节 第 5-6字节 第 7-n字节以太网 MAC头 Protocol Vertion Packet

TypePacket Body

Length

Packet Body

Page 55: 第 12 章  无线网络安全

12.4.4 RADIUS RADIUS 协议描述了一种网络访问服务器( NAS )与一个共享的认证服务器之间的通信规范。 在 IEEE802.1x 情景中,可理解 NAS 为认证者,认证服务器仍为认证服务器,使用 RADIUS完成认证者和认证服务器的通信。

Page 56: 第 12 章  无线网络安全

RADIUS 认证协议主要特征 1.客户 / 服务器模型 RADIUS 将 NAS 作为其客户端,客户端的主要任务是完成与访问用户的交互,向服务器发送收集到的认证信息以及对服务器发送回的认证结果进行应答。认证服务器对用户身份进行认证,并返回认证结果。 2. 网络安全性 RADIUS 服务器与 NAS 之间共享一对密钥,它们之间的所有通信都受到这对密钥的鉴别保护,同时提供一定的完整性保护。 3. 可扩展的协议设计 RADIUS 数据包通过定义一个相对固定的消息头和一系列属性构成。用户可以自定义其他的属性。

Page 57: 第 12 章  无线网络安全

4. 灵活的鉴别机制 RADIUS 规定使用 UDP 传输消息,实现 NAS 与服务器之间的通信。每一个 RADIUS消息都被封装在一个 UDP报文中。

IP 头 UDP 头 RADIUS消息RADIUS消息封装图

代码 标识符 长度认证数据

属性类型 属性长度 属性值RADIUS消息基本长度结构图

Page 58: 第 12 章  无线网络安全

12.4.5 安全分层 安全分层只是逻辑概念,是为了更清楚地理解无线网络认证过程,而不是网络体系结构或安全体系结构中定义的。 三个层次是无线局域网层、接入控制层、认证层。 无线局域网层:一个工作层,能够实现正常的无线数据通信,在未认证前,应能接受入网申请等。 接入控制层:控制 STA 的接入,在未通过认证前, STA 不能获取网络服务。 802.1x描述了它的体系结构——由申请者、认证者和认证服务器构成。 认证层:制定一种认证策略,对申请者进行身份认证。

Page 59: 第 12 章  无线网络安全

12.4.6 在 EAP 中使用 TLS TLS现已被业界广泛认可,在 OSI 分层结构中位于 TCP和应用层协议之间,它既可以为客户机认证服务器,也可以为服务器认证客户机,二者都是基于公钥机制的。 TLS 协议分为两部分:握手协议和记录协议。 握手协议在客户机和服务器双方进行保密通信前要确定密钥、加密认证算法等安全参数; 记录协议则定义了传输的格式。

Page 60: 第 12 章  无线网络安全

EAP-TLS 认证过程

STA AP AS请求认证请求帧,要求客户输入用户名

用户名信息 信息被封装成 RADIUS

服务器证书 服务器证书用户证书 用户证书随机会话密钥生成(认证过程中) RADIUS-AcceptEAP-Success

Page 61: 第 12 章  无线网络安全

12.5 802.11i— 密钥分配 RSN 的工作流程可分为 5 个阶段,在完成认证之后,STA 与 AP 要执行一系列操作来配置密钥,这一阶段称密钥生成与分配阶段 KGD ( Key Generation and Distribution )。 密钥通常都是分层使用的,在 RSN 中也是一样。 AP和 STA 之间的单播所用的密钥称为成对密钥,其分层使用称为成对密钥层次结构; AP 和 STA 之间的组播所用的密钥称为组密钥,其分层使用称为组密钥层次结构。

Page 62: 第 12 章  无线网络安全

12.5.1 创建和交付 PMK 成对密钥层次结构最复杂,这种层次结构从顶端的 PMK (成对主密钥 Pairwise Master Key )开始,全部其他成对密钥从它这里导出。 作为认证过程的副产物,认证方法必须生成能用于密钥层次结构的密钥材料,例如 TLS 和 Kerberos 都能产生密钥,认证过程中产生的密钥就是 PMK 。 认证发生在申请者和服务器之间,结果是申请者 STA和服务器生成了匹配的 PMK ,但是使用 PMK 的是 STA 和 AP ,需要把 PMK 提供给 AP 。

Page 63: 第 12 章  无线网络安全

12.5.2 计算 PTKPairwise Master Key ( PMK ) 256bits

PRF-512

RSN 中的密钥层次结构依据加密方法为 TKIP 或 AES而分为两类,下以 TKIP 为例讲解。

TKIP 成对密钥层次图

Page 64: 第 12 章  无线网络安全

PMK应用伪随机函数 PRF导出 PTK ,计算 TKIP 的 PTK时使用 PRF-512 ,计算 AES 的 PTK 时使用 PRF-384 ,函数 PRF 中的参数 AA 和 SA 分别是认证者和申请者的 MAC地址, SNonce 和 ANonce 分别是申请者和认证者发出的现时当前值。 PTK=PRF-384/512 ( PMK ,“ Pairwise key expansion” , Min ( AA , SA ) ||Max ( AA , SA ) || SNonce||ANonce )

Page 65: 第 12 章  无线网络安全

12.5.3 四次握手

AP 的 IEEE802.1x控制端口关闭

AP 的 IEEE802.1x控制端口打开

认证阶段之后是密钥生成与分配阶段,要通过 4次握手完成以下任务: STA 和 AP 要确认 PMK ,产生新的 PTK ,确认数据加密与完整性检验方法。

Page 66: 第 12 章  无线网络安全

12.5.4 结束握手与组密钥分发 成对密钥的生成和分配比较复杂,因为不得不从一个非安全连接开始,要考虑监听、假冒、篡改、重放等攻击。 组密钥的情况比较简单,因为可以等到成对密钥建立后再使用安全的连接传送组密钥,仅仅需要 2次握手。 在组密钥分发过程中, AP完成下面的步骤: ( 1 )创建一个 256 位的组主密钥( GMK )。 ( 2 )导出 256 位组临时密钥。 ( 3 )在每一个成对的安全连接建立后: 第一帧: AP 传送 GTK到 STA , GTK被加密,并且整个消息有完整性保护。 第二帧: STA 发送到 AP ,只是作为对上一帧的确认。

Page 67: 第 12 章  无线网络安全

12.6 802.11i— 数据加密 RSN 的工作流程的第 4步是加密的数据传输。在这一阶段之前, STA 和 AP已经协商好了安全策略,完成了相互认证,产生,分配,确认了会话密钥,控制端口也已经打开。 STA 和 AP开始保密的通信,包括机密性和数据完整性,所用的算法是在发现阶段协商的。 IEEE802.11i 中定义了两种加密和完整性协议,一种是 TKIP临时密钥完整性协议( Temporal Key Integrity Protocol ),另一种是 CCMP ( Counter Mode with Cipher Block Chaining MAC Protocol )。 TKIP 由于使用了 RC4 ,有一些缺点,不适合高可靠环境,若需要高可靠性,最好使用 CCMP 。

Page 68: 第 12 章  无线网络安全

12.6.1 TKIP 2001年,当WEP被攻破的时候,已安装的数百万个系统突然失去安全,需要一种方案解决这一问题。但这些系统的硬件不能支持 AES-CCMP 。因此,设计者们寻找到一种既能够克服 WEP 的缺陷,又能利用现有的硬件的方法,这就是 TKIP 。 TKIP必须能够运行在已安装的硬件上,只要升级软件就可以更新安全系统。

Page 69: 第 12 章  无线网络安全

WEP 的主要缺陷: ( 1 ) IV值太短,不能防止重用。 ( 2 )由 IV 生成密钥的方法使其易受攻击。 ( 3 )无法检测消息是否被篡改。 TKIP 中的数据完整性校验和加密主要包括 4 个过程: ( 1 ) MIC 的产生和校验 ( 2 ) IV 的产生和校验 ( 3 ) IV 加密 ( 4 )解密

Page 70: 第 12 章  无线网络安全

TKIP 加密过程示意图

MIC 密钥主密钥加密密钥

密钥混合 添加 MIC 头IV 生成

加密传输 MPDU

添加 IV/ICV

计算 MICMSDU

添加 MIC分帧

MPDU

Michael 部分

RC4 部分

Page 71: 第 12 章  无线网络安全

1. 完整性校验 完整性校验值是在分段之前计算完毕并附加到MSDU内的,校验值字节只出现在最后的 MPDU 内,并在加密的有效载荷中。原来的校验码 ICV仍然进行计算并且附加到每个 MPDU 中,初始向量 IV 通常是由一个计数器从 0开始计数产生,所以它也叫 TSC ( TKIP Sequence Counter )。 TKIP 中使用了Michael 算法计算 MIC值。

Page 72: 第 12 章  无线网络安全

2.IV 的产生

MIC8 octets

Data>=0 octets

Extendend IV4 octets

IV/Key ID4 octets

原头部 新增 32位 加密部分

RC4Key[0] TSC2 TSC3 TSC4 TSC5Rsvd Ext

IVKeyID

b0 b4 b5 b6 b7

ICV4 octets

RC4Key[1]

RC4Key[2]

TSC1

TSC0用来避免弱密钥

为 1 表示 TKIP 帧;为 0 表示WEP帧

Page 73: 第 12 章  无线网络安全

3. 密钥混合 TKIP并不直接使用由 PTK/GTK分解出来的密钥作为加密报文的密钥,而是将该密钥作为基础密钥( Base Key),经过两个阶段的密钥混合过程,从而生成一个新的每一次报文传输都不一样的密钥,该密钥才是用做直接加密的密钥。 通过这种方式可以进一步增强 WLAN的安全性。密钥的生成方式如下图所示。

Page 74: 第 12 章  无线网络安全
Page 75: 第 12 章  无线网络安全

12.6.2 CCMP CCMP 是围绕 AES 建立的安全协议,称为计数器模式+密码块链认证码协议( Counter Mode with Cipher Block Chaining MAC Protocol , CCMP )。 CCMP 能提供高可靠的安全性,因为它是独立的设计,不是妥协的产物。 在实际加密过程中,如何使用密码算法,称为密码工作模式。

Page 76: 第 12 章  无线网络安全

计数器模式

E

计数器t

+

密文 1明文 1

E

计数器t+1

+

密文 2明文 2

Key E

计数器t+n

+

密文 n明文 n

Key

计数器模式

Page 77: 第 12 章  无线网络安全

CBC-MAC 工作原理图

EKey

+

EKey

+

EKey

明文 1 明文 2 明文 n

密文 1 密文 2 密文 nCBC—MAC 工作原理图

Page 78: 第 12 章  无线网络安全

CBA-MAC是目前使用最广泛的数据认证模式之一,经过 20多年的发展,已经很成熟且已标准化。它的概念非常简单: ( 1)取出消息中的第一块,应用 AES 对它进行加密。 ( 2)将此结果与第二个块异或,将结果加密。 ( 3)将此结果与下一个块异或,再加密…… 如此进行下去。

Page 79: 第 12 章  无线网络安全

Couter ( CTR )和 CBC-MAC 都是 20世纪 70年代提出的,目前都已标准化。 CCMP 使用 CBC-MAC 来计算 MIC值,使用 CTR 来进行数据加密, CCMP 就是定义了一套 AES 的使用方法, AES 对 CCMP 的关系就像RC4 对 TKIP 的关系一样。 IEEE802.11i 中指定 AES 的密钥长度和块长度为 128bits 。

Page 80: 第 12 章  无线网络安全

1.CCMP处理步骤 在 CCMP 对信息包加密过程中, CCMP 在 MAC 协议数据单元MPDU级别加密数据,服务数据单元MSDU可能被切分,添加头部后成为多个 MPDU 。

Page 81: 第 12 章  无线网络安全

CCMP对MPDU 的处理步骤如下 ( 1 )准备 MPDU ,在 MAC 头部有些字段的值无法预先得到,直到其传送过程中才有,这些字段值先设置为 0 。 ( 2 )准备 MIC 计算格式,添加第一块,一个特殊块,在 MAC 头部之后添加 CCMP 头部,此外还增加了填充字节(设置为 0 ),以确保头部、明文数据部分恰好为整数个 128 位块,准备计算 MIC值,填充字节只是为计算而插入的,实际并不插入到MPDU 中。 ( 3 )计算 MIC值, MIC值附加于数据之后。 ( 4 )对数据和 MIC值部分进行加密。 ( 5 )准备发送帧,在加密部分前添加 CCMP报头,然后使用 802.11封装格式进行封装,封装后的 MPDU 在无线网中传输。

Page 82: 第 12 章  无线网络安全

2.CCMP 封装格式

MIC8 octets

Data>=0 octets

Extendend IV4 octets

IV/Key ID4 octets

原头部 新增 32位 加密部分

IV0 IV1 Rsvd IV2 IV3 IV4 IV5Rsvd ExtIV

KeyID

b0 b4 b5 b6 b7

6 个字节的 IV 域中放置的是 PN ,一个 48 位、唯一标记每个分组的号码。 PN 主要用于抵御重放攻击,并用于接收方的现时( Nonce )

Page 83: 第 12 章  无线网络安全

MIC8 octets

Data>=0 octets

Extendend IV4 octets

IV/Key ID4 octets

原头部 新增 32位 加密部分

IV0 IV1 Rsvd IV2 IV3 IV4 IV5Rsvd ExtIV

KeyID

b0 b4 b5 b6 b7

为 1 ,指示这个帧为 RSN格式;为 0 指示是早期的 WEP格式指示使用哪个密钥

Page 84: 第 12 章  无线网络安全

3.AES-CBC-MAC 概述 CCMP 使用 AES-CBC-MAC 来计算 MIC值。 MIC 的计算步骤如下: ( 1 )使用 AES 和数据完整性密钥加密第一块,这将产生一个 128 位的结果 Result1 。 ( 2 ) Result1 与下一块明文异或,产生一个 128 位的结果 XResult1 。 ( 3 )使用 AES 和数据完整性密钥对 XResult1进行加密,这将产生 Result2 。 ( 4 ) Result2继续与下一块明文异或,这将产生 XResult2 。 如此计算,直至结束,最终结果为 128 位,取最终结果中的高 64 位为 MIC值。

Page 85: 第 12 章  无线网络安全

4.AES-CTR 概述 计数器模式加密需要一个计数器,用来产生输出值,输出值与明文异或产生密文。 保证 CTR 安全的关键在于正确地设置计数器值,不能重复。由于计数器值包含 PN||Counter ,对同一个 MPDU 来讲,各块的 Counter 不同,而不同的 MPDU , PN 不同,因此,在整个加密过程不会有同一个计数器值出现两次。

Counter ( 0x0000 )数据包编号 PN源地址 A2优先级Qos-TC标志 Flag

计数器初值示意图

Page 86: 第 12 章  无线网络安全

加密过程如下: ( 1 )使用 AES 和数据加密密钥加密计数器初值,产生一个 128位的结果 Result1 。 ( 2 )对 Result1 与第一块明文数据异或操作,这将产生第一个128 位加密文块。 ( 3 )计数器值加 1 ,并使用 AES 和数据加密密钥对其进行加密,将产生 Result2 。 ( 4 ) Result2 与第二个明文数据块异或,将产生第二个加密文块。 依此类推。

Page 87: 第 12 章  无线网络安全

5.解密过程 CCMP 解密过程是加密过程的逆过程,原理完全相同。过程如下:( 1 )从MAC 头和 CCMP报头中取出 A2 和 PN 的值,确定计数器初值。( 2 )用数据加密密钥计数器值,然后与密文数据块异或,得到明文。( 3 )创建第一个块、 MAC报头、 CCMP报头、填充字段等,准备好 MIC 计算所需格式,输入数据完整性密钥,计算 MIC 。( 4 )将 MIC 计算值与解密后的 MIC值进行比较,如果MIC值不匹配,丢弃该数据,如果 MIC值匹配,将该数据传递到更高层进行处理。