2015年11月

WIFI 协议 读书笔记

PKI: Public Key Infrastructure, 有又称 非对称加密 asymmetric encryption;
PSK: Pre-Shared Key.
MAC: Media Access Control;
WPA: Wi-Fi Protected Access;
TKIP: Temporal Key Integrity Protocol;
MIC: Michael integrity check, TKIP 使用这个 Michael 作为完整性check的方法.
TSC: TKIP sequence, 类似 IV;
TLS/SSL :Transport Layer Security/Secure Sockets Layer;
SSH: Secure Shell;
EAP: extensible authentication protocol;
FCS: frame check sequence, 有很多实现, CRC 32 就是其中一种实现算法;
ICV: Integrity Check Value, MAC 层加密之前后边追加 ICV, 加密之后的 frame 上追加的是 CRC, CRC可以被中间人截获,重算, ICV 不可能, 因为没有被解密, 无法重算;
MSDU: MAC service data unit, IP层传给 MAC 层的数据单元, 可以拆分成多个 MPDU;
MPDU: MAC protocol data unit;
RC4: Rivest Cipher 4, Rivest 设计的第4代加密算法, 加密解密用一个函数.

使用命令行扫描无线访问点:
iwlist wlan0 scanning
使用命令行配置访问点: (iwconfig 相对于ifconfig, 只设置 wireless 相关的接口设置).
iwconfig wlan0 essid "tp_link_89s3sd"
使用命令行设置IP
ifconfig wlan0 192.168.0.2 netmask 255.255.255.0 up
显示路由表 (显示或者操作路由表)
route -n

WEP -> RC4 -> 128 (104 bit key + 24 bit IV) -> 流加密 -> 24 bit IV 明文传输 -> IV reuse.
WEP -> 两种Key -> Default Key[4 keys] 和 Key Mapping Key

WPA -> TKIP -> RC4
RSN -> WPA2 ->

802.3 -> Ethernet -> Hub
802.11 -> WLAN -> AP (Infrastructure)

802.11 -> Infrastructure & ad-hoc mode

802.11 和 WIFI 的关系就是, 一个是理论, 一个是实际实现.

WEP
RSN (WPA + WPA2).

加密算法: 流式加密/块加密
解密方式: 对称加密/非对称加密

WPA2 is used in CCMP (counter with CBC MAC protocol) mode for implementing AES in 802.11i, including:

-128-bit keys;
-Using AES in CBC-MAC mode for calculating MIC and AES in counter mode for data encryption; and
-Guaranteeing 48 bit initialisation vector.

WEP 加密过程:
WEP.png

WEP, WPA, WPA2 对比
wepwpawpa2Diff.jpg

[读书笔记] 802.11 RSN WPA

IEEE 802.11 工作组是一个技术标准委员会, WIFI 联盟是主要的WIFI 设备厂家的联盟. 经过 WIFI 联盟的测试程序测试通过的, 可以打上 WIFI 的logo. 在这个测试中不是所有 802.11 的功能都是必须的, 同时还添加了一下其他小的功能, 来保证互操作性.

802.11i 定义了一种新的无线网络, 称之为: robust security network (RSN). RSN 只能和 RSN 设备互操作.
802.11i 对应于 RSN.
由于算法的不同, 老的 WEP 设备不能升级到 RSN 算法的网络.
transitional security network (TSN) 是一个介于 WEP 和 RSN的中间过度网络.

TKIP: Temporal Key Integrity Protocol. TKIP 是 RSN 网络下一个可选的 模式. 对应于 RC4 和 AES.

由于新的标准 RSN 迟迟不能完成, 即使完成, 也无法在现有支持 WEP的设备上通过软件升级使用, WIFI联盟 就想定义一个新的协议可以在现有设备上运行, 这个协议就是 TKIP, 但是TKIP 的审批需要很长时间, 于是WIFI 联盟就采用了一个基于 RSN 草案的安全方法, 但是仅仅采用TKIP算法, 这种新的RSN 之集的标准, 称之为: WPA (Wi-Fi Protected Access)

RSN 和 WPA 使用通用的架构和方式, RSN 让实现更灵活, WPA 则强调实现一种方式去实现网络. RSN 支持 AES 芯片加密, WPA 则主要是 TKIP.

[读书笔记] WEP 协议 及 加密的基本信息

802.11 WEP 的安全体现在2个部分, 分别是 认证 和 数据加密.

客户连接端连接到访问点之前都要经过 认证(Authentication) -> 关联(Association) 2个阶段.

即使是没有密码的访问点 (open network), 也需要 (Authentication)阶段: 客户连接端发出一个 Authentication request frame, 访问点返回一个 success Authentication response frame.

使用 WEP 加密的网络, 认证过程:

  1. 客户连接端发送一个认证请求消息
  2. 访问点回应一个挑战请求消息
  3. 客户连接段使用密码产生挑战请求答案消息
  4. 访问点回应成功接受或拒绝接受

这里的挑战请求可以理解为: 访问点发送一个随机字符串, 连接端使用密码去加密这个字符串, 发给访问点, 访问点用自己的密码也去加密, 对比结果.
以上这个过程并不能证明, 访问点就是真的访问点, 它只是发送一个随机字符串, 连接客户端就使用它的加密方法, 把结果给访问点了. 如果我们把加密方法虚拟为这个公式: 加密后字符 = 加密方法(随机字符串, 密码), 那么一个真正的访问点, 这3个数据都有, 一个假的访问点, 就有了: 加密后的字符 和 随机字符串, 如果公式是可逆的, 那么这个假的访问点就能推导出 密码了.

事实上, 大多数 WIFI 都没有使用密码认证, 而是设为 open network, 等 Association 之后, 进行加密数据传输.
后来, 很多厂家的 WEP 产品都 弃用 了认证阶段.

WEP 加密使用的是 RC4 算法.
WEP 最初的标准只能使用 40bit 的KEY, 后来厂家基本都扩展到104bit, WIFI 最后也接受了这个长度, 最后变成40~104 bit.
WEP 的密码是 40 ~ 104 bit, 也就是5 ~ 13 个 ASCII 码可打印字符. 另外有24 bit 的 Initialization Vector (IV), 每个包都使用不同的 IV. 这就是组成了128 bit 的加密强度.
RC4 使用上面 128 bit 的组合 Key 来对数据进行加密.
即使是一样的明文, 由于每个包使用不同的 IV , 所以生成的密文也不一样.
但是这个 IV 对于连接的另外一方, 却不知道, 所以它要传给对方, 并且是明文传过去的, 这样对方才能用它 加上自己的密码去解密.
由于IV 只有24bit, 24bit的可能值只有16777216个, 所以有大量的数据, 这个很快就会被遍历一遍.

在WEP 标准种有2种 WEP key, 分别是 Default Key(s) 和 Key mapping key(s)
Default Key(s): 所有的客户连接端和访问点都有共同的一个或一组key(最多4个, 多个是为了在key change 过程中使用);
Key mapping key(s): 每个客户连接端使用不同的key, 访问点有个key mapping 列表, 同时有个default key 用来广播什么的, 现在几乎没有厂商使用这种了.

你应该了解为什么当时WEP 标准对于 Default Key(s) 使用了4个key?

  1. 发送和接收使用不同的key -> 2 个;
  2. 当发生key 改变的时候 -> 2个.
    当然你用一个key 也是完全可行的.

ICV: Integrity Check Value
MAC : Media Access Layer
MSDU :(MAC service data unit)
加密之前的数据用 ICV, 加密之后的数据frame 用CRC (cyclic redundancy check)

数据从TCP/IP 层进入到 链路层之后, 在物理层发出去之前的过程:

  1. 计算 ICV, 追加到数据之后
  2. 产生 IV, 和 WEP key 组合在一块(WEP 可能是多个当中选一个)
  3. 初始化 RC4 加密引擎, 进行加密

发出的数据 : MAC header | 24bit IV | 8bit Key Id | 加密后的 (data + ICV) | CRC

更多关于 MAC header 的图例, 可以google 一下, 里面有个bit 是用来标明是不是 WEP 加密的.

由于 RC4 的线性流加密, 由于前几个可猜测的字节, 由于弱的IV, WEP 可以在有一定样本数据的情况下被破解.

[读书笔记] 无线局域网 初级基本概念

当我们讨论局域网的时候, 一般指的是链路层和物理层, 较上2层: TCP/IP 传输层/网络层 来说, 链路层和物理层有不同的介质, 组网方式, 协议. TCP/IP 相对比较固定.

IEEE 802 一系列协议就是处理 链路层和物理层的一些协议, 如:
802.3 Ethernet协议、802.5 Token Ring协议、802.3z 100BASE-T快速以太网协议, 802.11 WLAN 协议.

802.11 里面又包括很多协议: 如 802.11a/b/g/n, 802.11i, 802.11e 基于WLAN的QoS协议

无线网络有2种模式: Infrastructure 模式和 Ad-Hoc 模式.

  1. Infrastructure 模式所有的无线连接端连接到同一个访问点(AP), 就是我们现在家里常用的路由器模式.
  2. Ad-Hoc 模式: 即点对点模式, Ad Hoc源自于拉丁语,意思是“for this”引申为“for this purpose
    only”,即“为某种目的设置的,特别的”意思,即Ad hoc网络是一种有特殊用途的网络。

WIFI, 802.11 和 无线局域网

  • Wireless LAN is a general term used for short-range, high-speed radio
    networks. Wi-Fi is one kind of wireless LAN.
  • IEEE 802.11 is the formal technical standard that defines how Wi-Fi
    systems operate.
  • Wi-Fi is the industry standard for products based on IEEE 802.11 as
    defined by the Wi-Fi Alliance. Wi-Fi products are tested for
    compatibility among different manufacturers.

在无线客户端连接到一个访问点之前, 一般有2步: authentication -> association.

Wired Equivalent Privacy: 最开始的想法是: 像有线设备一样保障隐私.
Wi-Fi Protected Access(WPA) 实现了 802.11i的一个子集, WIFI 联盟对于完全实现802.11i的协议称之为 WPA2, 也被称为 RSN (Robust Security Network).

WPA2 使用 AES (Advanced Encryption Standard) 块加密算法, WPA 和 WEP 是使用 RC4 流式加密算法.

Unlike 802.11a, b and g specifications, all of which define physical layer issues, 802.11i defines a security mechanism that operates between the Media Access Control (MAC) sublayer and the Network layer.

在802.11i制定的漫长过程中, WPA 作为一种过渡方案而出现.

参考:
http://www.windowsecurity.com/articles-tutorials/Wireless_Security/80211i-WPA-RSN-Wi-Fi-Security.html
https://en.wikipedia.org/wiki/IEEE_802.11i-2004
http://techbus.safaribooksonline.com/book/networking/wireless/0321136209/firstchapter

无线局域网知识列表

http://techbus.safaribooksonline.com/book/-/9781849517386
http://techbus.safaribooksonline.com/book/networking/security/9780071760942
确实如其书名说写: beginner's book

http://techbus.safaribooksonline.com/book/networking/wireless/9781785280856
http://techbus.safaribooksonline.com/book/networking/wireless/9781849515580
http://techbus.safaribooksonline.com/book/networking/security/9780071760942
http://techbus.safaribooksonline.com/book/networking/wireless/9781597491174

http://techbus.safaribooksonline.com/book/networking/intrusion-detection/9781782164067
这个完全不值得看

http://techbus.safaribooksonline.com/book/networking/intrusion-detection/9780124116443
http://etutorials.org/Networking/802.11+security.+wi-fi+protected+access+and+802.11i/
这个不错, 可惜是2003年出版的, 所以..

http://www.aircrack-ng.org/doku.php?id=links#technique_papers