1 概述 目前情况下: WEP的破解为利用加密体制缺陷,通过收集足够的数据包,使用分析密算法还原出密码。 WPA目前没有加密体制的缺陷可被利用,破解WPA密码使用的是常规的字典攻击法。 所以在破解方式上WEP和WPA有很大差异。 2 WEP 2.1 (Wired EquIValent PrIVacy,WEP) 叫做有线等效加密。掌握WEP破解的人,肯能会说WEP不如有线的安全性高。但这 发生在WEP的很多弱点被发现之后。也是由于WEP的弱点导致WPA的出现。 2.2 (WEP)算法 WEP算法是一种可选的链路层安全机制,用来提供访问控制,数据加密和安全性检验 等。802.11 定义了WEP 算法对数据进行加密。 2.3 加密过程如图所示。
IV为初始化向量,PASSWORD 为密码KSA=IV+PASSWORD。DATA 为明文CRC-32 为明文的完整性校验值PRGA=RC4(KSA) 的伪随机数密钥流XOR 异或的加密算法。 ENCRYPTED DATA 为最后的密文。最后IV+ENCRYPTED DATA一起发送出去。 2.4 接收端的解密过程如图所示。
CIPHERTEXT 为密文。它采用与加密相同的办法产生解密密钥序列,再将密文与之 XOR 得到明文,将明文按照CRC32 算法计算得到完整性校验值CRC-32′,如果加密密 钥与解密密钥相同,且CRC-32′= CRC-32,则接收端就得到了原始明文数据,否则解密失 败。 2.5 WEP算法通过以上的操作试图达到以下的目的 采用WEP加密算法保证通信的安全性,以对抗窃听。 采用CRC32算法作为完整性检验,以对抗对数据的篡改。 2.6 WEP 算法之死 95 9 月RC4 潜在的威胁性(wanger) 00 10 月通过分析wpe包获取密码(walker) 01 5 月针对于明文攻击的一个推论(Arbaugh) 01 7 月针对于CRC32的攻击(Borisov, Goldberg,Wagner) 01 8 月针对于RC4的攻击(S。Fluhrer, I。Martin 和 A。Shamir) 01 8 月airosnort发布 02 2 月改进的攻击算法(h1kari) 04 8 月chopchop攻击出现 04 7/8 月aircrack出现(Devine,Sanchez ) 2.7 WEP的破解理论是在01 年8月就变得可行了 S.Fluhrer, I.Martin 和A.Shamir 合作研究发现了对无线局域网安全性最致命的攻击。 利用WEP 帧的数据负载中部分已知信息来计算出该WEP 帧所使用的WEP 密钥。由于 WEP 加密算法实际上是利用RC4 流密码算法作为伪随机数产生器,将由初始矢量IV 和 WEP 密钥组合而成的种子生成WEP 密钥流,再由该密钥流与WEP 帧数据负载进行异或 运算来完成加密运算。而RC4 流密码算法是将输入种子密钥进行某种置换和组合运算来生 成WEP 密钥流的。由于WEP 帧中数据负载的第一个字节是逻辑链路控制的802.2 头信 息,这个头信息对于每个WEP帧都是相同的,攻击者很容易猜测,利用猜的第一个明文字 节和WEP 帧数据负载密文就可以通过异或运算得到PRNG 生成的密钥流中的第一字节。 另外,种子密钥中的24比特初始矢量是以明文形式传送的,攻击者可以将其截获,存到初 始矢。S.Fluhrer, I.Martin 和A.Shamir 证明:利用已知的初始矢量IV 和第一个字节密钥 流输出,并结合RC4 密钥方案的特点,攻击者通过计算就可以确定WEP密钥。 2.8 CRC-32 算法缺陷 CRC-32 算法作为数据完整性检验算法,由于其本身的特点非但未使WEP 安全性 得到加强,反而进一步恶化。首先CRC 检验和是有效数据的线性函数,这里所说的线性主 要针对异或操作而言的,即C(x?y)=C(x)?C(y)。利用这个性质,恶意的攻击者可篡改原文 P 的内容。特别地,如果攻击者知道要传送的数据,会更加有恃无恐。其次,CRC-32检验 和不是加密函数,只负责检查原文是否完整,并不对其进行加密。若攻击者知道P,就可算 出RC4(v,k) (RC4(v,k)=P?(P?RC4(v,k)),然后可构造自己的加密数据C'=(P',C(P')) ? RC4(v,k)和原来的IV一起发送给接收者(802.11b 允许IV重复使用)。 2.9 WEP密码如何被破解出来的 2.9.1 监听模式被动破解(这个就是有客户端并有大量有效通信) 根据已知的的信息。我们知道要还原出WEP的密码关键是要收集足够的有效数据 帧,从这个数据帧里我们可以提取IV 值和密文。与对于这个密文对应的明文的第一个 字节是确定的他是逻辑链路控制的802.2 头信息。通过这一个字节的明文,还有密文我 们做XOR运算能得到一个字节的WEP密钥流,由于rc4 流密码产生算法只是把原来的 密码给打乱的次序。所以我们获得的这一次字节的密码就是就IV+PASSWORD 的一部 分。但是由于RC4 的打乱。不知道这一个字节具体的位置很排列次序。当我们收集到足 够多的IV 值还有碎片密码时,就可以进行统计分析运算了。用上面的密码碎片重新排 序配合IV使用RC4算法得出的值和多个流密码位置进行比较。最后得到这些密码碎片 正确的排列次序。这样WEP的密码就被分析出来了。下图就是WEP破解过程。有助于 你理解破解WEP通过分析子密码还原密码的过程。
2.9.2 主动攻击(有客户端。少量通信或者没有通讯) -3 ARP-request attack mode攻击抓取合法客户端的arp请求包。如果发现合法客户 端发给AP的arp请求包,攻击者就会向AP重放这个包。由于802.11b 允许IV重复使 用。所以AP接到这样的arp请求后就会回复客户端。这样攻击者就能搜集到更多的IV 了。当捕捉到足够多的IV就可以按上面的2.9.1里的进行破解了。如果没有办法获取arp 请求包我们就可以用-0 攻击使得合法客户端和AP断线后重新连接。-0 Deautenticate攻 击实际就是无线欺骗。这样我们就有机会获得arp请求包了。 2.9.3 主动攻击(没有客户端的模式) 先和AP进行伪链接-1 fakeauth count attack mode。这样就能产生数据包了。 收集两个IV 相同的的WEP 包,把这两个包里的密文做XOR 运算。得到一个XOR 文 件。用这个XOR文件配合伪造arp包的工具。利用CRC-32的特点伪造一个arp包和原 来的IV一起发给AP。这样就可以按上面2.9.2 里的进行破解了。其中-2 Interactive, -4 Chopchop,-5 Fragment 都是属于上面这个攻击类型的。 2.10 WEP的安全弱点 A.802.2 头信息和简单的rc4 流密码算法 导致攻击者在有客户端并有大量有效通信时,可以分析出WEP的密码。 B.IV重复使用 导致在攻击者在有客户端。少量通信或者没有通讯时,可以使用arp 重放的方法获得大 量有效数据。 C.无身份验证机制,使用线性函数CRC32进行完整性校验。 无身份验证机制,导致攻击者能使用-1 fakeauth count attack mode和AP建立伪链接。 进而获得XOR 文件。使用线性函数CRC32 进行完整性校验,导致攻击者能用XOR 文 件伪造一个arp包。然后依靠这个包去捕获大量有效数据。 2.11 WEP窃听 由于 WEP 全局都是用IV+WEP 密码来保护明文的。当有了密码后攻击者可以使用同 样的算法能随时任意窃听任意STATION 至AP 之间的通讯。这样的窃听对于网银这样的双 向认证的安全不会有影响。但是在ip 包里的明文用户名和密码就很容易被窃听到了。例如 登录AP 的用户名和密码。由于无线网络窃听的存在,在使用交换机的有线网络中用关闭 dhcp 设置陌生网段的来禁止非法访问的方式。不在适合于无线网络。攻击者完全能根据窃 听到的合法客户端数据包配合已知密码来分析出ip的真实配置。 2.12 WEP的现状 WEP真的不是一种强壮的加密方式对于那种不怀好意的攻击者。无法胜任在安全有求 比较高的场所。对于安全较低的厂所只能说有胜于无。 3 WPA 3.1 WPA加密算法的的两个版本介绍 WPA = 802.1x + EAP + TKIP + MIC = Pre-shared Key + TKIP + MIC 802.11i(WPA2) = 802.1x + EAP + AES + CCMP = Pre-shared Key + AES + CCMP 这里802.1x + EAP,Pre-shared Key是身份校验算法(WEP没有设置有身份验证机制) TKIP和AES是数据传输加密算法(类似于WEP加密的RC4 算法) MIC和CCMP数据完整性编码校验算法(类似于WEP中CRC32算法) 3.2 WPA 认证方式 802.1x + EAP (工业级的,安全要求高的地方用。需要认证服务器) Pre-shared Key (家庭用的,用在安全要求低的地方。不需要服务器) EAP 扩展认真协议,是一种架构。而不是定义了算法。常见的有LEAP,MD5,TTLS, TLS,PEAP,SRP,SIM,AKA 其中的TLS 和TTLS 是双向认证模式。这个和网络银行的 安全方式差不多。这个认证方式是不怕网络劫持和字典攻击的。而md5 是单向认证的。不 抗网络劫持,中间人攻击。关于企业级的如何破解就不讨论了。因为论坛上也很少提到。本 身EAP模式是个协议,不是算法。 3.3 WPA-PSK 论坛上破解WPA 也主要是集中在这个模式上的。我们都知道破解WPA-PSK 不是和 WEP一样抓很多包就能破解的。关键是要获取握手包,这个握手包叫4way-handshake 四次 握手包。那么我们就从这个四次握手包开始。 3.4 四次握手 通信过程如图
3.4.1 WPA-PSK 初始化工作 使用 SSID 和passphares使用以下算法产生PSK 在WPA-PSK 中PMK=PSK PSK=PMK=pdkdf2_SHA1(passphrase,SSID,SSID length,4096) 3.4.2 第一次握手 AP广播SSID,AP_MAC(AA)→STATION STATION 端 使用接受到的SSID,AP_MAC(AA)和passphares使用同样算法产生PSK 3.4.3 第二次握手 STATION 发送一个随机数SNonce,STATION_MAC(SA)→AP AP端 接受到SNonce,STATION_MAC(SA)后产生一个随机数ANonce 然后用PMK,AP_MAC(AA),STATION_MAC(SA),SNonce,ANonce 用以下算 法产生PTK PTK=SHA1_PRF(PMK, Len(PMK), "Pairwise key expansion",MIN(AA,SA) || Max(AA,SA) || Min(ANonce,SNonce) || Max(ANonce,SNonce)) 提取这个PTK 前16 个字节组成一个MIC KEY 3.4.4 第三次握手 AP发送上面产生的ANonce→STATION STATION 端 用接收到ANonce 和以前产生PMK,SNonce,AP_MAC(AA),STATION_MAC(SA) 用同样的算法产生PTK。 提取这个PTK 前16 个字节组成一个MIC KEY 使用以下算法产生MIC值 用这个MIC KEY 和一个802.1x data 数据帧使用以下算法得到MIC值 MIC = HMAC_MD5(MIC Key,16,802.1x data) 3.4.5 第四次握手 STATION 发送802.1x data ,MIC→AP STATION 端 用上面那个准备好的802.1x 数据帧在最后填充上MIC值和两个字节的0(十六进 制)让后发送这个数据帧到AP。 AP端 收到这个数据帧后提取这个MIC。并把这个数据帧的MIC部分都填上0(十六进 制)这时用这个802.1x data 数据帧,和用上面AP产生的MIC KEY 使用同样的 算法得出MIC’。如果MIC’等于STATION 发送过来的MIC。那么第四次握手成 功。若不等说明则AP 和STATION 的密钥不相同,或STATION 发过来的数据帧 受到过中间人攻击,原数据被篡改过。握手失败了。 3.4.6 MIC的派生图
SSID passphares PSK=PMK=pdkdf2_SHA1(passphr ase, SSID, SSID length, 4096) PTK=SHA1_PRF(PMK, Len(PMK), "Pairwise key expansion",MIN(AA, SA) || Max(AA,SA) || Min(ANonce, SNonce) || Max(ANonce,SNonce)) MIC KEY=提取PTK 的前16 个字节 MIC = HMAC_MD5(MIC Key,16, 802.1x data) SNonce STATION MAC APMAC ANonce 802.1x data
3.5 AP和STATION 之间的加密通信 3.5.1 通讯使用的临时KEY 的派生图
3.5.2 使用 KEY 进行加密通信 3.5.2.1 TKIP
3.5.2.2 CCMP
PTK – X bit Pairwise Transcient Key EAPOL-Key confirmtion Key 128 bits EAPOL-Key Encryption Key 128 bits Temporal Encryption Key 128 bits Temporal AP Tx MIC Key 64 bits Temporal AP Tx MIC Key 64 bits X = 512 (TKIP) X = 384 (CCMP) Bit 128-256 KEK Bit 256-384 TEK(=TK) Bit 384-447 TMK1 Bit 447-511 TMK2 Bit 0-127 KCK 3.5.3 WPA安全规则 针对于WEP的安全漏洞WPA 也相应更新了安全规则: A. 增强至48bit的IV。 B.Sequence Counter,防止IV重复。 C.Dynamic key management,动态key管理机制。 D.Per-Packet Key加密机制,每个包都使用不同的key加密。 E.MIC (Message Integrity Code ),信息编码完整性机制。 解说:动态key管理机制 在通讯期间: 如果侦测到MIC错误,将会执行如下程序。 记录并登录MIC错误,60 秒內发生两次MIC错误。 反制措施会立即停止所有的TKIP通讯。 然后更新数据加密的用的TEK。 3.5.4 WPA 安全机制作用 a. 加密通信流程图、Per-Packet Key 加密机制、动态key 管理机制使得使用类似 于WEP中分析子密码攻击的方案,在WPA 中将变得异常困难,和不可实现。 b. 身份验证机制杜绝了-1 fakeauth count attack mode,建立伪连的攻击。 c. 增强至48bit 的IV、防止IV 重复、MIC 信息编码完整性机制。使得要伪造一 个合法数据包变得异常的困难。同时也致使-2 Interactive,-4 Chopchop,5 Fragment 此类攻击对于WPA 无效。 解说: a. 虽然TKIP使用的是和WEP一样的加密算法RC4,但是TKIP中使用Per-Packet Key加密机制配合RC4。这样弥补了RC4 加密算法的不足。抵抗基于RC4 漏 洞的攻击。WPA2 中的AES比TKIP有更高的安全性,对他的破解难度就更高 了。 b. 使用非线性的MIC信息编码完整性算法,取代线性的CRC-32。增加了攻击者 伪造合法数据的难度。 有以上结论我们不难得出一个事实。类似于WEP中的无客户端破解密码的做 法在WPA 中是不存在的。 3.6 针对 WPA的破解攻击 3.6.1 抓取数据传输包进行破解 上面已经明确的指出无论数据传输算法是TKIP还是AES。使用类似于WEP中捕 获数据包进行分析破解的方式对于WPA几乎是不可能的。 3.6.2 抓取WPA-PSK 的四次握手包进行破解 可以说 WPA-PSK 安全体系是十分完善的。但他始终是用一个密码保护的。对于 这种用密码保护的安全体系。一般情况下我们都可以用一种叫字典攻击的常规攻击手 段。所以针对WPA-PSK 可以进行的直接攻击,目前就只有字典攻击这一种方式。而这 种常规的攻击方式将在字典攻击里详细讨论。当然我们WPA-PSK 的设计者也很明确这 点,所以在WPA-PSK 的安全体系中加入了潜规则加以对抗。这点将在攻击预算里做详 细的讨论。在WPA-PSK 的四次握手包中包含着和密码有联系的信息,依靠这个信息进 行字典攻击。 3.6.3 断线攻击 由于 WPA-PSK 是单向认证的。所以可以使用-0 Deautenticate攻击。这样有助于 我们获取握手包。在获得握手包时-0 攻击不要太多,否则适得其反的。有些AP几次握 手不成就会认为有攻击。禁止客户端和AP的链接30秒。(可能基于WPA EAP TLS 这 样双向认证的就不怕断线攻击了) 3.6.4 间接攻击 例子:别人输密码你在哪里偷看。使用美人计骗取密码。有技术含量点的。原来 WEP时他的计算机有漏洞你给他下了木马。改成WPA 后木马把密码发给你的。或你整 天窃听他的WEP通信,他改密WPA 模式时发给路由的密码让你截获了。比较狠一点的, AP是你卖给他的AP的系统里添加了你的后门。 3.7 WPA安全性的前景 WEP 由原来的安全到今天的不安全。你是否同样也会担心是不是很多年之后的WPA 也会是同样的命运。但我们也要看到WEP 的破解不是某个算法的漏洞导致的。而是整个 WEP的安全体系有很多漏洞所共同导致的。而WPA的安全体系很强壮。使用的大多是混合 算法。所以某一个算法的弱点往往不能给WPA 这样的安全体系以致命的打击。WPA 这种依 靠算法的安全体系也许某一天会被破解。但是可能WPA 被完全破解的那一天比WPA 废弃 的那一天都晚。如果这样的话,那么的确该说WPA 是一种很强壮的安全体系。 3.8 WPA 的窃听 WP-PSK 没有密码几乎没法窃听他的通信。在有了密码的情况下WPA 的窃听也不具 有WEP 中窃听的随意性。在WPA 中SNonce,ANonce 也很好的起到了加密数据防止窃听 的作用,所以作为攻击者我们必须从握手开始窃听。而且会同步更替数据加密密钥。所以 WPA-PSK 的安全性都依赖于密码。 3.9 WPA评价 无论是WPA还是WPA2 在目前都是有很好的安全性的。企业级EAP的安全模式更为 WPA的安全性如虎添翼。我很欣赏WPA = PSK + TKIP + MIC这个模式。因为原来WEP的 设备只需要更换代码就能升级到这个模式了。所以这个模式使用较低的成本就可以实现很高 的安全性,还有便捷性。成本当然也是一个东西是否能普及重要因素。而WPA2 AES+CCMP 的更高的安全性对硬件的要求也是要高一点的。 4 字典攻击 4.1 寻找可以攻击的信息元素 字典攻击作为一种常用的攻击手段要明白的是从那里开始攻击。要寻找和密码有有联系 的信息元素。在WPA 中和密码有联系的信息有数据的传送包和四次握手包。由于无法知道 明文,和WPA的数据加密算法的复杂性。在数据传输包上要找到可以攻击的信息元素基本 上很难实现。所以只能在握手包里寻找有密码有联系的信息。在上面的四次握手包的图片中 很清楚的表明,在四川握手中主要传递的有如下数据:SSID,AP_MAC,STATION_MAC, SNonce,ANonce,802.1x data,MIC。前面6 个元素很清楚,一般不会和密码有联系的。 只有最后一个MIC和密码有所联系。通过MIC的派生图我们知道,MIC是通过上面六个信 息元素和密码通过三个主要的算法派生出来的。那么我们是不是只要找到这三个算法的逆反 算法就可以根据上面的7 个信息元素把密码计算出来了呢。的确实这样。但是这三个算法有 一个共同的名字叫HASH 函数。 4.1.1 HASH 函数 HASH 函数是不可能从生产的散列值来唯一的确定输入值。 a. 单向性(one-way)。HASH 函数是没有反函数的。 b. 抗冲突性(collision-resistant)。要寻找两个hash值相同的原值十分困难。 c. 映射分布均匀性和差分分布均匀性。不像普通函数那样数值分布有一定规 律。 由于上面的pdkdf2_SHA1,SHA1_PRF,HMAC_MD5是HASH 函数。所以我们就基 本上无法直接计算出密码。对于HASH 函数比较有效的攻击就是建立HASH 字典攻击。 HASH 字典就是把预先算好的HASH 值按照线性排列然后组成一个数据库。当我们知道 一个HASH 值时在这个数据库里能马上找到他的原值。当然这个过程是通过数据库实现 的而不是HASH 的逆反函数。所以有些HASH 值在这样的数据库里是找不到原值的。 由于HASH 库是线性的所以。所以在HASH 库里找数据是十分迅速的。下面的链接让 你体验一下HASH 线性库的速度。还有一点有的人也知道的国内 的王小云教授对于部分HASH 算法有突出贡献的。她的主要贡献是寻找碰撞值。暴力破 解的话就是大概需要2^80 量级的MD5 HASH 运算。被王教授提高到只需要2^69 量级 的MD5 HASH 运算就能够找到一个碰撞。我们有这样两个对付HASH 函数的方法。那 么对我们破解我怕密码是不是如虎添翼了呢? 4.1.2 HMAC (HASH Message Authentication Code)哈希消息校验算法 这里我承认我刚才有骗过你。pdkdf2_SHA1,SHA1_PRF,HMAC_MD5 不是HASH 函数。当然我骗你我也有我的理由啦。第一我以前被别人骗过,某论坛上说建立HASH 库然后进行WPA破解的。能建立HASH 库那三个函数不是HASH 函数那是什么啊。第 二我不是故意的。了解HASH 函数,有助于你理解HMAC 算法。所以 pdkdf2_SHA1,SHA1_PRF,HMAC_MD5是HMAC算法。不是HASH 函数。HMAC算法 就是用一个密码,和一个消息。最后生成一个HASH值。由上面的介绍,我们可以看出, HMAC算法更象是一种加密算法,它引入了密钥,其安全性已经不完全依赖于所使用的 HASH 算法。所以上面对HASH 的攻击,对于HMAC 是没有效果的。HMAC 特别是 象“挑战/响应”身份认证应用中,由于攻击者无法事先获得HMAC 的计算结果,对系 统的攻击只能使用穷举或“生日攻击”的方法,但计算量巨大,基本不可行。所以,在 目前的计算能力下,可以认为HMAC算法在“挑战/响应”身份认证应用中是安全的。 4.1.3 四次握手包 有上面的HMAC 的特性我们也不难得出SSID,AP_MAC,STATION_MAC, SNonce,ANonce,802.1x data,这些信息元素都是上面的HMAC算法里的消息。HMAC 算法里的密码在pdkdf2_SHA1 算法里是WPA 的密码,在SHA1_PRF 算法里是PMK, 在HMAC_MD5算法里是PTK。最后才得出MIC值。由于这些消息和这个MIC值都有 关联性。所以四次握手吧的后面三次是缺一不可的。而且是有时效性的。不能把不是同 一次的握手包拼起来使用的。当然第一次握手包的SSID 和AP-MAC是可以后获取的。 这里你也明白了四次握手中根本是不是在传递一个简单的HASH 值。而是要传递一个 HMAC 值。如果是传递一个简单的HASH 值,那么我们只要获取后重播这个值就可以 欺骗AP 获得认证了。都不要知道这个HASH 值对应的原值。但我的这么好的想法被 HMAC给打破了。 4.1.4 面向于四次握手包的字典攻击。 字典攻击,就是把密码的可能性罗列起来组成一个密码字典。然后把字典里的密 码和SSID,AP_MAC,STATION_MAC,SNonce,ANonce,802.1x data,这些信息元 素。通过pdkdf2_SHA1,SHA1_PRF,HMAC_MD5 这些算法最后生成MIC’(具体过程看 上面MIC派生图)。当在字典里找到一个密码他的MIC’等于握手包中的MIC。这时字 典破解成功。这就是我们要的那个密码。如果把字典里的所有密码都找遍了还有没有符 合上述条件的。那么破解失败。 4.2 WPA-PSK 密码规范和可能的密码空间 4.2.1 HEX 模式 64 个的十六进制数字。 4.2.2 ASCII模式 密码至少8位最大不能超过63位。字符要求a~z,A~Z,任意字符包括空格。所 以一共可是使用的字符个数为95 个。 这两种模式的密码的穷举字典(罗列所有的可能性)是超乎想象的大(不包括那 想象特别大的人)。我们就拿HEX 模式的穷举打个比方吧。如果用一个水分子比作是一 个密码的话。那么穷举字典里的密码组成一个圆球。这个球的直径是2.4光年。而ASCII 模式密码空间,你别逗了!我们可能观察到的最广阔宇宙空间的直径只可能在150亿光 年这样的范围之内。这样水球都还需要在那个基础上在大上百万倍。密码空间有时会形 成超天文数字的。当然我们不需要尝试像上面一样如此多的数值。因为MIC值只有128 位,我们只需要上面的球和月亮这么大的尝试就能找到一个符合的MIC。但是这个找到 的值可能可以成功握手。但不一定能正常通讯。这样的值可能就是一个MIC的碰撞值。 他的MIC 是相同的但是PMK 是不同的。所以需要尝试所有PMK 的可能性,而256 位 PMK 的穷举组成的水球直径还是2.4 光年。根据WPA的密码规范,使用字典攻击法, 如此大的密码空间足以让人类计算机的总和望而却步。 4.3 弱密码字典 WPA-PSK的密码空间用浩瀚来形容一点不为过,所以直接进行字典攻击是傻子的行为。 但是作为一个密码对字典攻击来说有强密码和弱密码的区别。强密码就是破解希望极其渺茫 的密码。弱密码是很有希望破解的密码。当然强弱也是个相对概念,他也是依赖于加安全制 的。银行的密码一般都为6 位。像这样密码空间如此小的密码。普通情况下都为弱密码。但 是银行的ATM 一天只让你试三次。三次密码不对锁卡。有这样的机制。6 位的就不再是弱 密码了。由弱密码组成的字典叫弱密码字典。当然一般的弱密码有以下几种。 4.3.1 密码空间太小的密码 什么叫密码空间。密码可能字符个数为n 密码的位数为p 那么n 的p 次幂就是密 码空间,例如一个6 位数子的的密码他的密码空间6M=10^6。密码空间的大小也是个相 对概念,这个和安全体制有关系的。还有就是尝试密码的速度。在WPA-PSK 的破解中。 我们可以无限次的尝试。尝试密码的速度也和设备有关系。WPA-PSK 分布式破解无疑 是用速度来换取同等时间里更大的密码尝试空间。在下面的攻击预算里会对这一部分内 容做详细的补充。 4.3.2 社会工程学的弱密码 就是密码中带有一定的社会工程学属性。也就是说密码中带有和个人有关系的信 息。这里列出一个mm做的社会工程学字典方便理解。 19602008.txt 1960-2008 年的生日组合 mydic.txt 自己弄的常用字典 abc-birth.txt 任意三字母+所有的生日组合; shouji10.txt 10位的手机号 shouji11.txt 11 位的手机号 shouji.txt 上海的手机号 8-af16.txt 8位的abcdef和123456 的任意组合 8-qrafzv.txt qwerasdfz 当然你可以看到社会工程学字典中穷举法的影子。WPA-PSK 破解中一般情况下我 们没有办法知道设置密码的人的具体信息。所以WPA-PSK 破解就没法生成针对性很强 的社会工程学字典。 4.3.3 有一定联系性规律性弱密码 例子:有人曾破如此一个WPA-PSK 密码IX1V7051242。如果你不了解这个密码的 背景你肯能会觉得很神奇,这么强的密码也能破。这样的密码是在西班牙的tele2 这样 的AP 上有,而且这样AP_ESSID 里都有tele2 字段。这样的密码后面的8 位是相同的有 真正的密码只有四位。四位密码其密码空间很小很容易被字典攻击出来。这个也是AP 的默认密码。所以这个密码被破解是因为AP本身产生的随机密码就是个弱密码。是AP 的厂家自己降低了安全性的做法。 4.3.4 暴露过的强密码 密码这个名字就告诉我们他是不能见光的。见光即死。见光的方式很多被***了, 被窃听了等。这里讲个典型点的例子:有些人具备一定的安全知识的。知道要设置一个 密码空间很大的强密码如,这个密码破之实在不易。但是这个AP 的密码 还是被破解了。原因何在。因为这个人比较懒,他在任何地方都是使用的这个强密码。 由此他注册了一个论坛。习惯性的输入自己的强密码。但是那个不怀好意的论坛的后台 有个密码收集工具。他的密码被收录进字典。用这样的字典破他的WPA-PSK 不是很容 易吗。你是不是这样的人啊?至少我碰到一个就是他的blog密码和银行卡是一个密码。 《剑鱼行动》中那个黑客是如何在一分钟进入国家安全信息网的啊。就是网络上工作着 为他收集密码的程序。而他就是通过这样的字典迅速破解的。而这样的字典真正的黑客 也是不愿意发布出来的。原因还是那句话密码见光即死。 4.4 强密码 看名字你就应该知道破解强密码的希望是十分渺茫的。怎么样的密码算一个强密码,第 一肯定不能有上面弱密码的属性。第二是需要足够的密码空间。关于WPA-PSK 中什么 形式的密码可以被称之为强密码了,在下面的攻击预算里会指出来的。
转自 论坛 ID 0o90o9 QQ3040165 梵音天 2008年9 月23 日 |