@奥卡姆剃刀
【摘要】国际标准的争夺就是国家战争,Wi-Fi和WAPI的技术标准之争有国人不知道的惊人真相。
10月份发表的《网络安全协议的国家战争》微博阅读量有80多万,没想到这个冷门的网络安全协议科普得到了这么多人的关注,评论区里有很多内行网友表达了自己的观点,汇集起来就是这十多年来国内对Wi-Fi和WAPI协议的舆论大全。这些观点非常有价值,我认真地进行了梳理,继续查阅资料深入研究,于是便有了这篇技术分析文章。
一、网络的层次
说到网络的层次,总是会想起研究生面试时的场景,老师问了我一个问题:ISO的OSI有哪几层?这个问题当场把我问懵了。
ISO指的是国际标准化组织,OSI指的这个组织提出的开放式系统互联规范,它把信息系统从物理层到应用层分成了七层结构。随着后续学习的深入和科研实践,我越来越体会到分层概念的重要性,这个我当初没答出的问题,现在成为了我面试研究生时的保留题目。
如何理解分层的概念呢?不妨举一个你我都熟知的例子,你用微信给朋友发一条信息“在吗?”,你朋友手机上马上就出现了这个信息,这个最常见应用的技术实现却并不简单。
信道
你在手机上打出“在吗?”这个词语,这只是应用层的实现,信息要一层接一层地组装和下传,最终通过物理层的电磁波把信号传到了对方的设备上。对方从设备的物理层开始,把信号沿着反向的顺序逐层地解析和上传,恢复出原始信息,最终在你朋友的微信APP(应用App)上显示出来。
这种分层方法是人类处理复杂劳动时最常用的办法。例如粮食生产就分为了品种选育、耕地播种、浇水施肥、收割处理、食品加工等很多个阶段。每个阶段都有不同的工作,也都有不同的生产规范和安全标准,逐层配合协调工作粮食才能生产出来。
信息系统的构建也是如此,这不是单一工种能够完全实现的,从物理层到应用层,每个层面都有不同的功能要求和技术规范,并由不同专业的技术人员实现。
层还有一个好处,一个设备只要符合了它所在层的接口规范,那它就具备了承接上层和衔接下层的基础,各层功能以标准模块的形式存在,搭建系统时可以像摞积木一样方便。
无论是美国的Wi-Fi,还是中国的WAPI,它们都工作于链路层。在讨论二者的安全性对比时,有些网友认为这个问题不重要,链路层机制有点问题不要紧,甚至认为没必要在链路层做安全的工作,都可以放在应用层进行处理,这是一个很常见的错误想法,根源就在于缺乏对“层”的理解。
稍有生活常识的人都知道逐级检查是最安全的,例如乘坐飞机时先要验票,可以基本排除有人假冒乘客的危险。确定是合法乘客后再进行安检,进一步筛查违禁物品。逐级就是分层,每个层的检查重点是不同的,方法和标准也都不同。如果不分层,把所有人都放在候机区只进行一次检查,那危险系数就增加了。
信息安全还有个规律,那就是底层漏洞靠上层很难弥补,而上层的加密防护从底层却很容易突破。例如在军事安全领域中有一种旁路攻击技术,虽然军用系统的加密方法很复杂,在应用层面上破密基本上是不可能的,但无论如何复杂,最终都要通过某个芯片的某个管脚(例如图中的红色管脚)的某种电磁波信号来实现“开启”这个动作。
攻击者找到这个管脚,偷偷安装一个很精密的信号采集探头,把正常开启的物理信号给采集下来。不管应用层的加密算法和密钥如何变化,只要把这个物理信号重新加载到这个管脚上,复杂的加密系统就被绕过去了。这就好比是偷汽车,甭管钥匙做得多么复杂,只要把发动机的点火线扯出来就能对着火。
网络信息安全也是这样,从最下面的物理层到最上面的应用层,每个层面都有不同的安全主题,也相应有不同的安全标准,各层次之间相互支撑相互配合,但是不能够相互替代。
所以说,那些提出把底层安全隐患交给上层来解决的网友们,他们缺乏对信息系统理论的基本常识,对这个问题的认识不在一个基点上,并不适合讨论这个问题。
如果我问您“谁在搞信息安全?”,估计您脑海里出现的是防病毒App企业和提供网盘服务的企业,毕竟这些企业工作在与用户直接打交道的应用层,所以会被广泛知晓。
其实还有很多安全企业工作在信息系统的底层,他们的职责更基础更重要,只是因不跟公众直接打交道而不为公众知晓。
如果是信息网络系统底层出了安全问题,那就超出了防病毒App企业的工作层面,他们能做的也只是尽量弥补而不是根治,好比是因肝病而导致了脸色发黄,那就该找医生去治肝,而不是找美容师往脸上抹粉。
在网络安全问题上,从物理层、链路层到应用层,每个层都有自己的安全挑战,其中链路层的安全挑战就包括假基站、非法终端接入、数据监听、重放攻击、篡改、拒绝服务攻击等等,这些挑战对于链路层上支撑承载的任何应用都是存在的,包括微信、微博和支付等等。因此链路层需要自身的安全技术,不能将安全隐患遗留给上层应用去解决。
Wi-Fi的安全就是一个最明显的例子,在2015年和2016年连续两年央视315曝光了Wi-Fi的安全漏洞,国内的互联网安全企业对此高度重视,但现在这个问题依然没有完全解决。这是为什么呢?这就是因为问题出在底层,仅靠上层的修补是不能彻底解决问题的。
Wi-Fi的安全漏洞出现在链路层,终归要在链路层去解决。Wi-Fi联盟发现WEP不安全后,采用了WPA和WPA2来进行弥补,这的确算是在链路层解决链路层的问题。但结果却很令人遗憾,安全隐患只是得到了缓解,并没有得到根治,这又是为什么呢?
二、安全架构的演进
Wi-Fi的安全问题出在链路层,具体说就是链路层的二元安全架构,这种架构已不满足新形势下的网络安全要求,这是根本原因。
您一定会问,既然问题已经找到,那就把二元架构改掉了不就完全了?令人遗憾的就在这里,这种基本架构是改不掉的,好比是房子的承重墙和大梁都建好了,无论后期再怎么装修,房子的框架是变不了的。
那二元架构到底是咋回事呢?这要从二十世纪九十年代中期Wi-Fi设计之初的背景说起,那时的接入设备一般都是庞大的有线路由器,无线应用还非常罕见,现在很常见的“伪造无线接入的基站”在那时简直就是黑科技,那时没人料到将来会出现伪造基站的问题,所以在设计时根本就没有考虑这事。
当时的安全需求只是基站对终端的合法性进行鉴别,并依据鉴别结果确定是否允许终端接入,通俗地说就是基站决定让谁上网不让谁上网的问题,所以采取的是单向鉴别的结构,无线接入点(即大家熟悉的无线路由器)对终端进行鉴别,而终端却并不对接入点进行上行鉴别。这也是电信业百年以来的惯性使然,当然有其历史的局限性。
这种架构的工作原理是:接入点确定并向合法终端分发了共享密钥,终端和接入点用共享密钥进行鉴别和保密通信,但终端无法判断接入点是否合法,这就为钓鱼和中间人攻击提供了机会。
2015年和2016年两届央视315晚会的Wi-Fi安全警示说的就是这种危险,黑客设置钓鱼接入点,诱导您用手机登录,然后就获取了您手机里的个人隐私。
当时的研发人员忽视了这种危险,也就没有进行针对性的安全设计,大家当然不能跨越时空去谴责前人,但这个架构性的安全隐患是客观存在的。
随着时间推移,无线接入点的应用越来越普及,Wi-Fi的安全问题也就随之愈加突出,Wi-Fi联盟被迫采用了新的安全机制,用WPA和WPA2代替了WEP,采用802.1x来实现无线局域网的鉴别和访问控制。虽然有所发展,但其安全架构实质还是二元鉴别架构,危险模式并没有得到解除。
这种模式简单说就是增加了一个实体性的鉴别服务器,但与接入点绑定在一起的,默认两者相互是可信的,形成了相对于终端的网络端,这在形式上实现了终端和网络端之间的双向鉴别,安全性比以前得到了提高。
但新结构有个重要问题,那就是无线接入点还是没有独立身份,它与鉴别服务器之间的通信是透明传送,接入点只是帮助终端和鉴别服务器之间形成了双向鉴别,而终端与接入点之间却并没有形成双向鉴别,面临的钓鱼和中间人攻击风险依然存在,系统维护和管理的代价更高。由于依赖于接入点和鉴别服务器的“强绑定”,在接入点和鉴别服务器之间也因此引入了新的攻击点。
而被美国使用各种流氓手段强力抵制多年的中国人发明的WAPI协议,在设计之初就提出了与Wi-Fi完全不同的三元对等安全架构,并精细地设计了传递协议,它没有这个历史包袱。
在这里多说一句,大家一般会把采用WAPI安全机制的无线局域网称为WAPI网络,而把采用IEEE 802.11i安全机制的无线局域网称为Wi-Fi网络。
三元架构的鉴别相当于多了个公证人,他把双方的与众不同的体貌特征做成数字签名,然后分别核实,这就不会误认了,很明显三元架构比二元架构更安全。
这种三元架构采取了五步鉴别的模式,具体过程是这样的:第一步接入点向终端发消息“鉴证身份开始”,第二步终端发消息回答接入点“这是我的身份信息,请鉴别,并请给我看第三方对你的鉴别身份鉴别结果”,第三步接入点向鉴别服务器发消息“这是我和终端的身份信息,请鉴别并反馈结果”,第四步鉴别服务器给接入点发消息“这是对你和终端的身份鉴别结果”,此时接入点就知道了终端身份是否通过了鉴别,第五步接入点给终端发消息“这是我的身份鉴别结果”,此时终端就知道了接入点身份是否通过了鉴别。
这五步信息的传递设计首先要考虑它是通信协议系统的分系统,要与通信协议协同。另一方面,它运用公钥密码学原理,还包括集成数字证书技术,以提升终端和接入点双方身份的真实性。
那什么又是数字证书呢?数字证书跟大家常见的用户名和密码完全不是一回事,用户名和密码的体制非常不安全,你不小心的泄露就可能被坏人所利用。
而你在访问银行网站时,会在浏览器上看到一个小挂锁的标志,点击开来就会发现是一个数字证书,WAPI采用这种银行级别鉴别所用的数字证书作为载体,它不仅能保证身份的真实性,还能保证操作的不可抵赖性。
什么是不可抵赖呢?数字证书不仅能帮作为用户的你核实接入点的真实性,还能够确认是对方真实身份在操作,双方都不能抵赖,这就从身份和内容两个方面保证了信息交流的真实性。
不要小瞧这种三元架构中的五步实体鉴别方法,它的学名叫作“TePA三元对等实体鉴别”,曾于2010年6月被国际标准化组织通过成为了国际标准,这是我国在基础性信息安全领域的第一个国际标准,也是全球范围内非对称实体鉴别领域在过去十余年内的唯一技术,它的双向身份鉴别可以彻底解决Wi-Fi一类的先天性二元鉴别漏洞。
当年李总理总理视察宽带无线IP标准工作组时,秘书处将这部标准文本作为礼物送给了他,李总应当即表示要把这个标准摆在自己办公室里。
三、WAPI的应用与使用
WAPI比Wi-Fi更安全,这是先天性的三元架构所决定的,也恰恰是因为它的技术优势而被美国强力阻挠抵制,在全球推广受到了影响。
美国政府在全球范围内强力推广Wi-Fi,并阻挠抵制欧洲和中国的同类技术,等全球市场都被其占领后再放手,竞争者们就难于扭转局面了。
现在公众只知道Wi-Fi,其实当初有多种同类技术,都不比Wi-Fi差,甚至更有技术优势。除了中国的WAPI之外,欧洲的HiperLAN也是一项,无论是服务质量、速率、越区切换、安全保密,HiperLAN都优于Wi-Fi,但它的命运还不如WAPI。
当年HiperLAN就被忽悠到美国控制的标准组织IEEE去搞标准化,搞着搞着美国企业主导的技术方案成了正式标准,HiperLAN技术则活生生地被拖垮了,在2003年IEEE的一份内部文档中指出:战争要一场一场打,WAPI就是下一个(欧洲的HiperLan是上一个)。
向全球推广技术标准,在技术质量过硬的基础上,一要靠政府引导,二要靠产业协同生态建设,美国这两手都很硬。Wi-Fi被集成到当时的英特尔迅驰处理器上,通过CPU的全球垄断就能把Wi-Fi标准推广起来,即便不安全又咋了,话语权在我美国手里。
而中国在推广WAPI标准方面两手都很软,甚至在中美贸易谈判中被当作了“弃卒”。当时是2004年,美国的Wi-Fi立足未稳,被中国的WAPI顶得很难受,美国政府高官纷纷向中方施压,最终我方做出了妥协。
|