在描绘了前沿的无线攻击技术以及如何进行相应的防范之后,我们再回过头来讨论众所周知的Wi-Fi安全问题以及使其成为日常威胁的社会条件。 习惯于以以太网技术为基础的局域网网络用户和管理员很难理解无线的相对不可控性。局域网使用的是非常不安全的协议(嗅探和篡改、系统伪装和实施拒绝服务攻击都是很常见的),但是有线电缆的物理限制性能够缓解一些安全问题,你不可能在网线内部部署一个恶意的系统。而无线技术故意去掉了我们习以为常的物理安全层,使得网络流量会泄露出去,甚至能够跨域有形的围墙和围栏之类的物理界限。 如果我在本章开始提到的,管理员(假设他们使用部署任何安全措施时都足够细致)一开始是采用WEP来保证接入点的安全。WEP的主要问题是黑客能够很容易地嗅探到在空气中传输的数据包,并且能够提取密钥进行解密。甚至初级黑客都能够借助于一些工具来实施这种攻击。 后来又引进了WPA技术来解决WEP问题,即解决从嗅探到的数据包中快速提取密钥的漏洞。这时,无线工程师们都很高兴。 当然,喜悦是短暂的,又有人发现仍然能够提取用于WPA预共享密钥(Pre-Shared Key,PSK)的密码短语。WPA协议首先传输的是交换包,即所谓的握手机制,它能够验证客户端和接入点。由于数据是加密的,所以即便是在无线路由附近对传输的数据包进行监控并记录整个握手过程,也没有人能够推导出密钥进而破坏整个系统。但是,黑客可以记录下这些数据,然后采用暴力破译密码的方法来进行攻击,即从一张单词列表中对每个单词进行穷举,以找到和记录数据相匹配的。 黑客要成功地实施这种攻击,需要满足几个条件。首先,黑客要必须能够从接入点接收到无线信号。我见过很多公司把这作为主要的防御点。有些时候,考虑到在墙外接收到的无线信号会很弱,管理员会把接入点安装到非常隐蔽的地方。确实,这样做的话,普通笔记本电脑中的无线设备很难再捕捉到无线信号了,但是对于那些坚定的黑客来说,他们往往都拥有非常强大的天线以接收任何弱小的信号源。 其次,黑客需要从客户端和无线接入点开始会话时就进行监控。监控会话建立后的数据包没有什么用处。虽然听起来这个要求大大减少了黑客获取初始握手信息的机会,但实际情况是这根本算不上什么。事实证明,已经出现了大量的能够终止无线会话的工具,它们能够迷惑客户端,并发送一条终止会话的命令。一旦连接断开,客户端一般会尝试重新连接。这时黑客就能够对数据包进行监控并获取初始握手信息了。 最后一条是密码短语本身的强度。在我的测试中已经出现了像tootired和bicycles这样简单的密码。密码破译软件在几分钟之内就能够找到这些密码。一个WPA密码短语可以由8到63个字符组成,但是我发现大多数人一般都只用8个或者9个字符。当然,最好的密码短语是63个字符,它可以混合字母、数字和标点符号。那么为什么没有一个管理员这么做呢? 最主要的原因是不管你为接入点设置了什么样的密码短语,每台电脑在连接的时候都需要输入这一密码。对于一个真正疯狂的密码的支持成本将成为一个噩梦,因为人们会输错字符或完全忘记了密码。所以,取而代之的是,管理员走向了另一个极端,即使用尽可能简单的密码。虽然没有完美的解决方法,但我建议可以采取皆大欢喜的折中方法。比如“This1was900yearsold!!!”这样的密码既便于记忆,又比标准字典中的单词更难破译。