第12章无线网络安全12.1无线局域网的基本概念12.2早期的无线网络安全及安全漏洞12.3新无线局域网安全标准802.11i12.4802.11i——认证12.5802.11i——密钥分配12.6802.11i——数据加密本章学习目标无线网络安全涉及无线局域网工作原理、认证、密钥管理、加密解密等内容,涉及的概念、原理、协议、算法较多,掌握无线局域网基本工作原理、WEP的攻击原理。新安全标准802.11i由来,顺着802.11i的工作流程,学习其认证、密钥生成与分配、加密各阶段的工作原理。无线网络的分类全球无线标准12.1无线局域网的基本概念12.1.1无线局域网的传输媒质无线局域网的传输媒质分为无线电波和光波两类。无线电波主要使用无线电波和微波,光波主要使用红外线。无线电波和微波频率由各个国家的无线电管理部门规定,分为专用频段和自由频段。专用频段需要经过批准的独自有偿使用的频段;自由频段主要是指ISM频段(Industrical,Scientific,Medical)标准最大传输率典型距离工作频段评注802.112Mbps50-100m2.4GHz802.11a54Mbps50-100m5GHz昂贵,不与80.211b兼容802.11b11Mbps50-100m2.4GHz已成为主流802.11g54Mbps50-100m2.4GHz5GHz与802.11b兼容12.1.2无线局域网标准的演进表中所有标准都包含共同的安全性能设计,即有线等价协议WEP(WiredEquivalentPrivacy),希望能提供与有线网络同等的安全性能。12.1.3无线局域网网络结构站STA1.802.11网络的两个基本构件无线局域网网络有两个基本构件——站和无线接入点。(1)站(Station,STA)站是无线网的端头设备,例如笔记本、掌上电脑等。通常是通过计算机加一块无线网卡构成的。(2)无线接入点(AccessPoint,AP)AP将STA与DS相连,典型的DS是某单位的有线网络,AP也可在不访问DS情况下将多个STA相连。2.802.11网络的两种组网模式(1)工作在对等模式下的STA集合称为自主基本服务集IBSS(IndependentBasicServiceSet)对等网络用于一台无线工作站(STA,Station)和另一台或多台其他无线工作站的直接通讯,该网络无法接入有线网络中,只能独立使用。这是最简单的无线局域网结构。一个对等网络由一组有无线接口的计算机组成。这些计算机要有相同的工作组名、SSID和密码。对等网络组网灵活,任何时间,只要两个或更多的无线接口互相都在彼此的范围之内,它们就可以建立一个独立的网络。这些根据要求建立起来的典型网络在管理和预先调协方面没有任何要求。802.11网络的两种组网模式(2)基础模式是一种最常用的无线网络配置模式,所有的STA与AP联系,AP在STA之间、STA与DS之间转发数据帧。无线访问点也称无线AP或无线Hub,用于在无线STA和有线网络之间接收、缓存和转发数据。无线AP通常能够覆盖多个甚至几十用户,覆盖半径达上百米。基本服务集BSS一个BSS(BasicServiceSet)包含一个AP和与其关联的一个或数个STA。BSS是无线局域网的基本构件。一个无线访问点所覆盖的微蜂窝区域就是基本服务区BSA(BasicServiceArea)扩展服务集ESS扩展服务区ESS是指由多个AP以及连接它们的分布式系统组成的结构化网络,所有AP必需共享同一个ESSID,也可以说扩展服务区ESS中包含多个BSS。分布式系统在IEEE802.11标准中并没有定义,但是目前大都是指以太网。扩展服务区只包含物理层和数据链路层,网络结构不包含网络层及其以上各层。因此,对于高层协议比如IP来说,一个ESS就是一个IP子网。3.802.11体系结构IEEE802.11标准提出一个体系结构,如下图所示,主要有两个部分:数据链路层的MAC子层和物理层。MAC子层MAC子层管理实体站点管理实体PLCP子层PHY子层管理实体PMD子层802.11体系结构在PLCP(PhysicalLayerConvergenceProcedure)子层,将来自MAC子层的数据作为PLCP的服务数据单元(PSDU),加上PLCP的前导码(同步信号或帧起始信号)和PLCP帧头组成PLCP的协议数据单元(PPDU),送交给PMD子层。PLCP的帧数据单元与PMD子层采用的媒体传送方式有关。PMD子层将PLCP的数据调制后经天线发射出去。与安全相关的是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,在IEEE802.11中,概念“连接”被称为“关联”。当STA与AP关联在一起时,它才能发送和接收数据。STA发送关联请求消息,AP发送关联请求消息,AP以关联响应回复表明连接成功。此后,STA发送的数据就由AP转发到有线局域网,同样,从有线局域网发给STA的数据也由AP转发。IEEE802.11中的3种MAC帧(1)控制帧。告诉设备何时开始、停止发送以及通信是否失败的帧。如:RTS、CTS、ACK帧等。(2)协商和管理STA和AP之间关系的帧。如:认证帧、关联请求帧。(3)数据帧。一旦STA和AP已经同意建立连接,数据就以这种消息类型发送。管理帧(1)信标帧发送信标是接入点对外通告它已经准备就绪和在网络中维持定时的方法。信标是AP定期发送的管理帧。信标包含诸如网络名称和AP性能等有用信息。例如,信标可以告诉STA,AP是否支持IEEE802.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早期的无线网络安全及漏洞安全问题对早期的无线局域网来说不是大问题。那时设备是私有的,互相不兼容。许多无线局域网使用服务区标识符(SSID)和MAC地址过滤作为安全的基本形式。这两种方式都是不安全的,无线监听可以找到合法的MAC地址和服务区标识符SSID。12.2.1早期的无线网络安全(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.2802.11网络的安全方案1.认证802.11标准中的认证是用来对无线终端或设备进行认证,不对用户进行认证。IEEE802.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)是在IEEE802.11标准中采用的信息保密机制,它主要用于保障无线局域网中链路层信息数据的保密。WEP采用对称加密原理,数据的加密和解密采用相同的密钥和加密算法。WEP只对数据帧实体内容加密,加密后的数据帧替换原数据帧,然后发送出去。WEP协议只保护客户和访问点之间链路级数据(无连接部分),而不是端到端的安全,如下图所示:WEP帧格式FCSFrameBodyAddress4SequenceControlAddress3Address2Address1Duration/IDFrameControlOrderWepMoreDataPwrMgtPetryMoreFragFromDSToDSSub-typeTypeProtocolVersion421211111112bytes通用帧格式控制域格式假如使用WEP加密算法对帧实体进行加密,那么该标记被置为1,只有数据类型和管理类帧中的认证子类型的WEP标记位才能设为1,所有其他帧的WEP标记位被置为0.