双鸭山网站开发,南昌网站设计公司哪家好,网站开发的心得体会,宁夏建设工程造价网目录
1.802.11 标准简介
2.802.11 协议格式
2.1管理帧协议格式
2.1.1(Beacon (信标) 帧)
2.1.2(Probe Request (探测请求) 帧)
2.1.3(Probe Response (探测响应) 帧)
2.1.4(ATIM 帧)
2.1.5(Disassociation (解除关联) 与 Deauthentication (解除认证) 帧)
2.1.6(Assoc…目录
1.802.11 标准简介
2.802.11 协议格式
2.1管理帧协议格式
2.1.1(Beacon (信标) 帧)
2.1.2(Probe Request (探测请求) 帧)
2.1.3(Probe Response (探测响应) 帧)
2.1.4(ATIM 帧)
2.1.5(Disassociation (解除关联) 与 Deauthentication (解除认证) 帧)
2.1.6(Association Request (关联请求) 帧)
2.1.7(Reassociation Request (重新关联请求) 帧)
2.1.8(Authentication (身份认证) 帧)
2.2数据帧协议格式
2.2.1(IBSS 数据帧的一种)
2.2.2(接入点发送 (From AP) 的帧数据帧的一种)
2.2.3(发送至接入点 (To AP) 的帧数据帧的一种)
2.2.4(WDS 帧数据帧的一种)
2.3控制帧协议格式
2.3.1(RTS 帧控制帧的一种)
2.3.2(CTS 帧控制帧的一种)
2.3.3(ACK 帧控制帧的一种)
2.3.4(PS-Poll 帧)
3. Wi-Fi 认证过程
3.1. AP 发送 Beacon 广播管理帧
3.2. 客户端向承载指定 SSID 的 AP 发送 Probe Request (探测请求) 帧
3.3. AP 接入点对客户端的 SSID 连接请求进行应答
3.4. 客户端对目标 AP 请求进行身份认证 (Authentication)
3.5. AP 对客户端的身份认证 (Authentication) 请求作出回应
3.6. 客户端向 AP 发送连接 (Association) 请求
3.7. AP 对连接 (Association) 请求进行回应
3.8. 客户端向 AP 请求断开连接 (Disassociation)
4. 802.11 标准中的数据安全加密协议 1.802.11 标准简介
802.11 标准将所有的数据包分为 3 种:
1. 数据数据数据包的作用是用来携带更高层次的数据 (如 IP 数据包ISO7 层协议)。 它负责在工作站之间传输数据
2. 管理管理数据包控制网络的管理功能 1) 信标帧 (Beacons): 在无线设备中定时依次按指定间隔发送的有规律的无线信号 (类似心跳包)主要用于定位和同步使用 2) 解除认证 (Deauthentication) 数据包 3) Probe(request and response) 4) Authenticate(request and response) 5) Associate(request and response) 6) Reassociate(request and response) 7) Dissassociate(notify) 管理帧负责监督主要用来加入或退出无线网络以及处理接入点之间连接的转移事宜
3. 控制控制数据包得名于术语 媒体接入控制 (Media Access Control, MAC)是用来控制对共享媒体 (即物理媒介如光缆) 的访问 1) 请求发送 (Request To SendRTS) 数据包 2) 清除发送 (Clear To SendCTS) 数据包 3) ACK 确认 (RTS/CTS) 4) PS-Poll: 当一部移动工作站从省电模式中苏醒便会发送一个 PS-Poll 帧给基站以取得任何暂存帧
控制帧通常与数据帧搭配使用负责区域的清空、信道的取得以及载波监听的维护并于收到数据时予以正面的应答借此促进工作站间数据传输的可靠性
这些不同类别的数据包被统称为 数据包类型。
802.11 的两类服务
1. 站点服务 SS (每个 STA 都要有的服务) 1) 认证 (Authentication) 2) 解除认证 (Deauthentication) 3) 加密 (Privacy) 4) MSDU 传递 (MSDU delivery)
2. 分布式系统服务 DSS (DS 特有服务) 1) 关联 (Association) 2) 解除关联 (Deassociation) 3) 分布 (Distribution) 4) 集成 (Integration) 5) 重关联 (Ressociation)
2.802.11 协议格式
2.1管理帧协议格式
2.1.1(Beacon (信标) 帧) 2.1.2(Probe Request (探测请求) 帧) 2.1.3(Probe Response (探测响应) 帧) 2.1.4(ATIM 帧) 2.1.5(Disassociation (解除关联) 与 Deauthentication (解除认证) 帧) 2.1.6(Association Request (关联请求) 帧) 2.1.7(Reassociation Request (重新关联请求) 帧) 2.1.8(Authentication (身份认证) 帧) 1. 帧控制结构(Frame Control)1) Protocol Version: (协议版本)通常为02) Type: 帧类型管理帧: 00 3) Subtype: 进一步判断帧的子类型 3.1) Beacon(信标)帧3.2) Probe Request(探测请求)帧3.3) Probe Response(探测响应)帧3.4) ATIM帧3.5) Disassociation(解除关联)3.6) Deauthentication(解除认证)帧3.7) Association Request(关联请求)帧3.8) Reassociation Request(重新关联请求)帧3.9) Authentication(身份认证)帧4) To DS: 表明该帧是否是BSS向DS发送的帧 5) From DS: 表明该帧是否是DS向BSS发送的帧 6) More Fragment: 用于说明长帧被分段的情况是否还有其它的帧如果有则该值设置为17) Retry(重传域): 表示该分段是先前传输分段的重发帧。 8) Power Management: 表示传输帧以后站所采用的电源管理模式8.1) 为1: STA处于power_save模式8.2) 为0: STA处于active模式9) More Data: 表示有很多帧缓存到站中。即至少还有一个数据帧要发送给STA是设置为1。 10) Protected Frame: 表示根据WEP(Wired Equivalent Privacy)算法对帧主体进行加密。如果帧体部分包含被密钥套处理过的数据则设置为1否则设置为0 11) Order(序号域): 在长帧分段传送时该域设置为1表示接受者应该严格按照顺序处理该帧否则设置为0
2. Duration/ID(持续时间/标识)
表明该帧和它的确认帧将会占用信道多长时间Duration 值用于网络分配向量(NAV)计算
3. Address Fields(地址域): 1) Destination Address2) Source Address3) BSS ID
4. Sequence Control(序列控制域): 用于过滤重复帧1) MSDU(MAC Server Data Unit), 12位序列号(Sequence Number)2) MMSDU(MAC Management Server Data Unit), 4位片段号(Fragment Number)组成
5. Frame Body(Data): 发送或接收的信息。对于不同类型的数据帧来说这个域的格式差别较大1) Beacon(信标)帧1.1) Timestamp(时戳)位: 可用来同步 BSS 中的工作站 BSS 的主计时器会定期发送目前已作用的微秒数。当计数器到达最大值时便会从头开始计数1.2) Beacon interval位: AP点每隔一段时间就会发出的Beacon(信标)信号用来宣布 802.11网络的存在。我们打开无线连接的时候之所以能看到很多Wi-Fi点就是因为它1.3) Capability information位: 发送Beacon信号的时候它被用来通知各方该网络具备哪种性能1.4) SSID服务集标识(Service Set Identity): 由字节所形成的字串用来标示所属网络的BSSID即我们在Wi-Fi连接前看到的接入点名称1.5) 跳频参数组合(PH Parameter Set): 包含了加入 802.11跳频(frequency-hopping)网络所需要的参数1.6) 直接序列参数集合(DS Parameter Set): 指明网络所使用的信道数1.7) 免竞争参数集合(CF Parameter Set): 出现在支持免竞争接入点所发送的 Beacon帧中并非必须1.8) IBSS 参数集合(IBSS Parameter Set): 指明ATIM window (数据待传指示通知信息间隔期间)1.9) TIM数据待传信息(Traffic Indication Map): 指示有哪些工作站需要接收待传数据1.10) Country: 国家识别码1.11) 功率限制(Power Constraint): 让网络得以向工作站传达其所允许的最大传输功率1.12) 信道切换宣告(Channel Switch Announcement): 为了警告网络中的工作站即将变换信道1.13) 禁声(Quiet): 为了避免与特定的军事雷达技术彼此干扰1.14) 发射功率控制报告(TPC Report): 指明链路的衰减情况可以帮助工作站了解该如何调整传输功率1.15) 扩展物理层(ERP)1.16) 支持速率(Supported Rates): 无线局域网络支持数种标准速率。当移动工作站试图加入网络会先检视该网络所使用的数据速率。有些速率是强制性的每部工作站都必须支持有些则是选择性的1.17) RSN强健安全网络(Robust Security Network)2) Probe Request(探测请求)帧2.1) SSID服务集标识(Service Set Identity): 由字节所形成的字串用来标示所属网络的BSSID即我们在Wi-Fi连接前看到的接入点名称2.2) Supported Rate(支持速率)2.3) 扩展支持速率(Extended Supported Rate)3) Probe Response(探测响应)帧3.1) Timestamp(时戳)位: 可用来同步 BSS 中的工作站 BSS 的主计时器会定期发送目前已作用的微秒数。当计数器到达最大值时便会从头开始计数3.2) Beacon interval位: AP点每隔一段时间就会发出的Beacon(信标)信号用来宣布 802.11网络的存在。我们打开无线连接的时候之所以能看到很多Wi-Fi点就是因为它3.3) Capability information位: 发送Beacon信号的时候它被用来通知各方该网络具备哪种性能3.4) SSID服务集标识(Service Set Identity): 由字节所形成的字串用来标示所属网络的BSSID即我们在Wi-Fi连接前看到的接入点名称3.5) 支持速率(Supported Rates): 无线局域网络支持数种标准速率。当移动工作站试图加入网络会先检视该网络所使用的数据速率 3.6) 跳频参数组合(PH Parameter Set): 包含了加入 802.11跳频(frequency-hopping)网络所需要的参数3.7) 直接序列参数集合(DS Parameter Set): 指明网络所使用的信道数3.8) 免竞争参数集合(CF Parameter Set): 出现在支持免竞争接入点所发送的 Beacon帧中并非必须3.9) IBSS 参数集合(IBSS Parameter Set): 指明ATIM window (数据待传指示通知信息间隔期间)3.10) Country: 国家识别码3.11) FH Hopping Parameters3.12) FH Pattern Table3.13) 功率限制(Power Constraint): 让网络得以向工作站传达其所允许的最大传输功率3.13) 信道切换宣告(Channel Switch Announcement): 为了警告网络中的工作站即将变换信道3.14) 禁声(Quiet): 为了避免与特定的军事雷达技术彼此干扰3.15) IBSS 动态选项(IBSS DFS):在 IBSS 中负责动态选频的工作站可以在管理帧中传递 IBSS DFS 信息元素3.16) 发射功率控制报告(TPC Report): 指明链路的衰减情况可以帮助工作站了解该如何调整传输功率3.17) 扩展物理层(ERP)3.18) 扩展支持速率(Extended Supported Rate) 3.19) RSN强健安全网络(Robust Security Network)4) ATIM帧5) Disassociation(解除关联)5.1) Beacon Code6) Deauthentication(解除认证)帧6.1) Beacon Code7) Association Request(关联请求)帧7.1) Capability information位: 发送Beacon信号的时候它被用来通知各方该网络具备哪种性能7.2) Listen interval位: 为了节省电池的电力工作站可以暂时关闭 802.11网络接口的天线。当工作站处于休眠状态接入点必须为之暂存帧7.3) SSID服务集标识(Service Set Identity): 由字节所形成的字串用来标示所属网络的BSSID即我们在Wi-Fi连接前看到的接入点名称7.4) Supported Rate(支持速率)8) Reassociation Request(重新关联请求)帧8.1) Capability information位: 发送Beacon信号的时候它被用来通知各方该网络具备哪种性能8.2) Listen interval位: 为了节省电池的电力工作站可以暂时关闭 802.11网络接口的天线。当工作站处于休眠状态接入点必须为之暂存帧8.3) Current AP Address位: 使用Current AP Address(目前接入点的地址)位来表明目前所连接的接入点的 MAC地址8.4) SSID服务集标识(Service Set Identity): 由字节所形成的字串用来标示所属网络的BSSID即我们在Wi-Fi连接前看到的接入点名称8.5) Supported Rate(支持速率)9) Authentication(身份认证)帧9.1) Authentication Algorithm Number: 指明认证程序所使用的认证类型9.2) Authentication Transaction Sequence Number: 用以追踪身份认证的进度9.3) Status Code: 状态代码用来表示某项过程成功或失败9.4) 质询口令(Challenge Text): 802.11所定义的共享密钥身份认证系统。会要求移动工作站必须成功解码一段加密过的质询口令。这段质询口令的发送系通过 Challenge Text(质询口令)信息元素
6. FCS(CRC): 包括32位的循环冗余校验(CRC)用于检错注意是检错不是纠错 管理帧类型Type为: 00 并有如下子类型Subtype
0000 Association request连接要求0001 Association response连接应答0010 Reassociation request重新连接要求0011 Reassociation response重新连接应答0100 Probe request探查要求0101 Probe response探查应答1000 Beacon导引信号1001 ATIM数据代传指示通知信号1010 Disassociation解除连接1011 Authentication身份验证1100 Deauthentication解除认证
2.2数据帧协议格式
数据帧的形式取决于网络的形式。帧究竟属于哪种类型完全取决于 subtype (子类型) 位而与其他位是否出现在帧中无关。
2.2.1(IBSS 数据帧的一种) 2.2.2(接入点发送 (From AP) 的帧数据帧的一种) 2.2.3(发送至接入点 (To AP) 的帧数据帧的一种) 2.2.4(WDS 帧数据帧的一种) 1. 帧控制结构(Frame Control)1) Protocol Version: (协议版本)通常为02) Type: 帧类型数据帧: 10 3) Subtype: 进一步判断帧的子类型不同类型的数据帧这个字段的格式是不同的3.1) IBSS帧3.1.1) 0000: Data3.1.2) 0010: Null3.2) From AP帧3.2.1) 0000: Data3.2.2) 1000: DataCFASK3.2.3) 0100: DataCFPoll3.2.4) 1100: DataCFACKCFPoll3.2.5) 1010: CFACK3.2.6) 0110: CFPoll3.2.7) 1110: ACKCFPoll 3.3) To AP帧3.3.1) 0000: Data3.3.2) 1000: DataCFACK3.3.3) 0010: Null3.3.4) 1010: CFACK(no data)3.4) WDS帧null4) To DS: 表明该帧是否是BSS向DS发送的帧时4.1) IBSS: 设置为04.2) To AP: 设置为14.3) From AP: 设置为04.4) WDS: 设置为15) From DS: 表明该帧是否是DS向BSS发送的帧时 5.1) IBSS: 设置为05.2) To AP: 设置为05.3) From AP: 设置为15.4) WDS: 设置为16) More Fragment: 用于说明长帧被分段的情况是否还有其它的帧如果有则该值设置为17) Retry(重传域): 表示该分段是先前传输分段的重发帧。 8) Power Management: 表示传输帧以后站所采用的电源管理模式8.1) 为1: STA处于power_save模式8.2) 为0: STA处于active模式9) More Data: 表示有很多帧缓存到站中。即至少还有一个数据帧要发送给STA是设置为1。 10) Protected Frame: 表示根据WEP(Wired Equivalent Privacy)算法对帧主体进行加密。如果帧体部分包含被密钥套处理过的数据则设置为1否则设置为0 11) Order(序号域): 在长帧分段传送时该域设置为1表示接受者应该严格按照顺序处理该帧否则设置为0
2. Duration/ID(持续时间/标识)
表明该帧和它的确认帧将会占用信道多长时间Duration 值用于网络分配向量(NAV)计算
3. Address Fields(地址域):
这个域的具体格式和控制帧的子类型有关不同的子类型会有一些微小的差别1) IBSS1.1) Destination Address1.2) Source Address1.3) BSSID 每个BSS都会被赋予一个BSSID它是一个长度为48个bit的二进制识别码用来辨识不同的BSS2) From AP2.1) Destination Address 2.2) BSSID2.3) Source Address3) To AP3.1) BSSID3.2) Source Address3.3) Destination Address 4) WDS 4.1) BSSID4.2) Source Address4.3) Destination Address
4. Sequence Control(序列控制域): 用于过滤重复帧1) MSDU(MAC Server Data Unit), 12位序列号(Sequence Number)2) MMSDU(MAC Management Server Data Unit), 4位片段号(Fragment Number)组成
[SA只有WDS中的帧有这个字段]
5. Frame Body(Data): 发送或接收的信息。
6. FCS(CRC): 包括32位的循环冗余校验(CRC)用于检错注意是检错不是纠错
数据帧的Type为:10
并有如下子类型Subtype
0000 Data数据0001 DataCF-Ack0010 DataCF-Poll0011 DataCF-AckCF-Poll0100 Null data (无数据未发送数据)0101 CF-Ack (未发送数据)0110 CF-Poll (未发送数据)0111 DataCF-AckCF-Poll1000 QoS Data1001 QoS Data CF-Ack1010 QoS Data CF-Poll1011 QoS Data CF-Ack CF-Poll1100 QoS Null (未发送数据)1101 QoS CF-Ack (未发送数据)1110 QoS CF-Poll (未发送数据)1111 QoS CF-AckCF-Poll 未发送数据)
2.3控制帧协议格式
2.3.1(RTS 帧控制帧的一种) 2.3.2(CTS 帧控制帧的一种) 2.3.3(ACK 帧控制帧的一种) 2.3.4(PS-Poll 帧) 1. 帧控制结构(Frame Control)1) Protocol Version: (协议版本)通常为02) Type: 帧类型控制帧: 01 3) Subtype: 进一步判断帧的子类型: 控制帧3.1) 请求发送(Request To SendRTS)数据包3.2) 清除发送(Clear To SendCTS)数据包数据帧3.3) ACK确认(RTS/CTS) 3.4) PS-Poll: 当一部移动工作站从省电模式中苏醒便会发送一个 PS-Poll 帧给基站以取得任何暂存帧 4) To DS: 表明该帧是BSS向DS发送的帧时该值设置为15) From DS: 表明该帧是DS向BSS发送的帧时该值设置为1控制帧负责处理无线介质的访问因此只能够由无线工作站产生。传输系统并不会收送控制帧因此这两个Bit必然为0 6) More Fragment: 用于说明长帧被分段的情况是否还有其它的帧如果有则该值设置为1。控制帧不可能被切割这个Bit必然为0 7) Retry(重传域): 表示该分段是先前传输分段的重发帧。控制帧不像管理或数据帧那样必须在序列中等候重送因此这个 Bit必然为0 8) Power Management: 表示传输帧以后站所采用的电源管理模式8.1) 为1: STA处于power_save模式8.2) 为0: STA处于active模式9) More Data: 表示有很多帧缓存到站中。即至少还有一个数据帧要发送给STA是设置为1。More Data bit只用于管理数据帧在控制帧中此Bit必然为010) Protected Frame: 表示根据WEP(Wired Equivalent Privacy)算法对帧主体进行加密。如果帧体部分包含被密钥套处理过的数据则设置为1否则设置为0。控制帧不会经过加密。因此对控制帧而言Protected Frame bit必然为0。11) Order(序号域): 在长帧分段传送时该域设置为1表示接受者应该严格按照顺序处理该帧否则设置为0。控制帧是基本帧交换程序(atomic frame exchange operation)的组成要件因此必须依序发送。所以这个Bit必然为0
2. Duration/ID(持续时间/标识)
表明该帧和它的确认帧将会占用信道多长时间Duration 值用于网络分配向量(NAV)计算。
注意: 在PS-Poll帧中不包含Duration/ID这个字段
3. Address Fields(地址域):
这个域的具体格式和控制帧的子类型有关不同的子类型会有一些微小的差别3.1) RTS(请求发送帧)3.1.1) Receiver Address(接收端地址)接收大型帧的工作站的地址3.1.2) Transmitter Address(发送端地址)RTS帧的发送端的地址3.2) CTS(允许发送)3.2.1) Receiver Address(接收端地址)3.3) ACK(应答)3.3.1) Receiver Address(接收端地址)3.4) PS-Poll(省电模式一轮询) 3.4.1) AID(连接识别码 association ID) 连接识别码是接入点所指定的一个数值用以区别各个连接。将此识别码置入帧可让接入点找出为其(移动工作站)所暂存的帧3.4.2) BSSID此位包含发送端目前所在 BSS(AP)的BSSID 此BSS 建立自目前所连接的AP3.4.3) Transmitter Address(发送端地址)此为PS-Poll帧之发送端的 MAC地址
4. FCS(CRC): 包括32位的循环冗余校验(CRC)用于检错注意是检错不是纠错
控制帧Type为: 01 并有如下子类型Subtype:
1010 Power Save-Poll省电模式轮询1011 RTS请求发送1100 CTS允许发送1101 ACK应答1110 CF-End免竞争期间结束1111 CF-End免竞争期间结束CF-Ack免竞争期间回应
3. Wi-Fi 认证过程
有了 802.11 协议的基本格式之后我们可以使用 wireshark 进行抓包实验验证一下我们的理论
ifconfig -a
ifconfig wlan1 up
airmon-ng start wlan1
启动wireshark选择mon0网卡(开启了Monotor模式的虚拟网卡
0x1: 普通无加密连接过程
3.1. AP 发送 Beacon 广播管理帧 因为 AP 发送的这个 Beacon 管理帧数据包是广播地址所以我们的 PCMIA 内置网卡、或者 USB 外界网卡会接收到这个数据包然后在我们的 无线连接列表 中显示出来 3.2. 客户端向承载指定 SSID 的 AP 发送 Probe Request (探测请求) 帧 当我们点击 连接 的时候无线网卡就会发送一个 Prob 数据帧用来向 AP 请求连接
3.3. AP 接入点对客户端的 SSID 连接请求进行应答 AP 对客户端的连接作出了回应并表示不接受任何形式的 帧有效负载加密 (frame-payload-encryption)
3.4. 客户端对目标 AP 请求进行身份认证 (Authentication) 3.5. AP 对客户端的身份认证 (Authentication) 请求作出回应 AP 回应表示接收身份认证
3.6. 客户端向 AP 发送连接 (Association) 请求
身份认证通过之后所有的准备工作都做完了客户端这个时候可以向 WLAN AP 发起正式的连接请求请求接入 WLAN 3.7. AP 对连接 (Association) 请求进行回应 AP 对客户端的连接请求 (Association) 予以了回应 (包括 SSID、性能、加密设置等)。至此Wi-Fi 的连接身份认证交互就全部结束了之后就可以正常进行数据发送了
3.8. 客户端向 AP 请求断开连接 (Disassociation)
当我们点击 断开连接 的时候网卡会向 AP 发送一个断开连接的管理数据帧请求进行断开连接 由此我们可以发现基于对数据帧格式的了解黑客可以发起一些针对协议的攻击。
1. Deanthentication攻击
2. Disassociation攻击
黑客可以利用这种方式加快对 WEP/WPS-PSK 保护的无线局域网的攻击迫使客户端重新连接并且产生 ARP 流量 (基于 WEP 的攻击)、或捕获重新进行 WPA 连接的四次握手然后可以对密码进行离线字典或彩虹表破解攻击
0x2: 基于 WEP 加密的连接过程
0x3: 基于 WPA-PSK 加密的连接过程
这两种连接交互过程原理上和无加密方式 (开放系统方式) 相同
4. 802.11 标准中的数据安全加密协议
在 IEEE 802.11 协议中的加密算法有如下几个
1. WEPWired Equivalent Privacy: 802.11中最早期的加密标准
http://en.wikipedia.org/wiki/Wired_Equivalent_Privacy2. CCMP(CTR with CBC-MAC Protocol): 基于AES的全新加密协议在IEEE 802.11i中提出
http://en.wikipedia.org/wiki/CCMP3. WPA(Wi-Fi Protected Access)
http://en.wikipedia.org/wiki/WPA4. TKIP(Temporal Key Integrity Protocol)
http://en.wikipedia.org/wiki/Temporal_Key_Integrity_Protocol5. WPA2(Wi-Fi Protected Access 2)
http://en.wikipedia.org/wiki/WPA2
供参考文章WLAN 帧详解 - sudochen - 博客园 (cnblogs.com)
供参考文章WIFI基本数据传输机制理解 - 百度文库 (baidu.com)