当我收到苹果公司在“全球开发者会议”的演讲活动的邀请函时,我的第一反应是:“为什么邀请我呢?” 我是被公认为搞安全的,这意味着只有在出现安全问题时我才会被邀请出来。但是在我看完邀请函后,我明白为什么了。
在苹果公司的IOS和OS X系统被讨论的众多新特性中,两个安全相关的问题被特别关注:iCloud钥匙串和激活锁;当我看过这些功能的演示和接下来的时间里发布的一些新特性,我开始意识到苹果公司正在向安全战略靠近,这是我之前没有想到的。
人为因素
苹果公司因其将“专注于设计和用户体验”为首要指导原则而出名,当遇到安全问题时,就像是自找麻烦。所有的安全几乎都是在为攻击者设置重重障碍,但是同样的不便也会带给用户(尽管有安全厂商的索赔)。
多年来,苹果公司倾向于良好的用户体验而遗留给用户的是安全风险。
保护好你的密码:重要的是他们保护我们和我们的设备,但他们又是一个最普遍被鄙视的东西(我曾经到处找密码)。
多年来,苹果公司倾向于良好的用户体验,而遗留给用户的是安全风险,这一战略实施了很长时间,部分原因是苹果市场的占有率很低,不是被攻击的目标。但是,现在的苹果产品正在普及,在安全市场上很多人想知道在如今被关注的位置下,苹果会怎样调整自身的安全策略。
事实上,苹果公司不仅平滑的处理了变化,而且已经接受了它。尽管开局不利,苹果公司现在将其令人印象深刻的设计理念变得更安全,以自己的方式在过程中改变我们对安全和技术的预期。
务实的设计
虽然苹果公司没有说的那么明确,很明显的是,一个重要原则引导他们谈到安全问题:你越是阻止用户去做一件事情,用户就越有可能绕过安全措施。在公司的WWDC(全球开发者会议)主题演讲中有三个很好的例子:
iCloud钥匙串:当苹果首次宣布此功能时,我感到很疑惑;为什么要添加一个密码器来管理操作系统和默认的浏览器呢?现在已经有大量的第三方应用程序已经这么做了,而且这并不是一个可以让用户感到惊奇的功能。
然后我意识到苹果其实是在解决现实世界中的安全问题,他试图让问题简单的离开用户,苹果当然不能够阻止钓鱼攻击,但是它可以添加一个内置的、基于云端的密码管理器,这样既降低了安全风险,又提高了用户体验。这样可以使用户使用复杂、特定的密码,这个密码可以使用户同步他们所有的设备(当然,这里假设用户只使用苹果产品)。
正如我们在WWDC看到的,随着安全特性深度集成在浏览器中,用户不必管理插件或者额外的点击按钮来决定什么时候该使用这个工具,在用户需要它的时候就会自动弹出来,这样比手动输入一个密码看起来更容易使用。这种更人性化的设计原则,不仅解决了安全问题,而且还增强了用户体验。
无需安装额外的软件或插件,也不用记住点击哪些按钮,iCloud钥匙串用来增强用户安全可能不是足够好,但是它将密码管理权交给了用户。
激活锁:世界各地偷窃苹果设备的案件接连不断,虽然我们可能会责怪苹果公司做出如此令人满意的产品,但是苹果公司显然是不愿意看到人们在公众场所因为恐惧盗窃而不得不隐藏他们的设备。手机运营商可以通过拒绝激活被盗的手机而大大的减少盗窃案(每台蜂窝设备都有独一无二的硬件ID),但是到目前为止,他们一直行动缓慢。即使国内运营商创建注册表项,但是并不是国外运营商也能这么做,并且还会有坏人把设备偷渡到海外。
激活锁使得决定权不在运营商手中,而是在实施一个全球性的解决方案,除非有新的黑客技术,否则手机一旦被盗,手机和iCloud都将无法使用,除了拥有一个免费的iCloud账户外用户不必做任何事情,没有载波锁定、登记、注册工作,没有其它障碍来阻止使用它,该特性减少了对消费者使用额外的成本来防止设备被盗。
所以,在此重申一遍,苹果公司是在解决现实世界遇到的问题,而且不影响用户的体验(也许只有时间会证明它是有效的)。
守护者和Mac App商店:我之前写过的一篇文章,守护者具有沙盒、App 商店、代码签名等技术,大大的减少了用户被诱导安装恶意软件。这是基于终端沙盒技术和依赖于IOS的App商店来成功实现的,在IOS平台阻止了大量的恶意程序的出现。
再次,苹果公司解决用户端的问题,它不依赖于深度的安全技术使得目标可以被欺骗绕过,相反,通过推动用户依赖于App商店和提供强有力的激励措施(比如简单易用的更新和免费的升级),苹果减少了用户从其它地方下载App,从而减少了安全风险,苹果公司的守护者可以让用户不会偶然的下载不信任的应用程序。
这种方式挫败了恶意软件的攻击并最低限度的影响用户体验,大多数用户不用考虑他们使用的程序是从哪里来的或者是否安装了不良的程序。
让安全问题消失不见和务实的设计
你会在苹果公司的其它地方看到同样的处理方式:
通过使用FileVault2,为用户提供全磁盘加密来保护丢失的笔记本电脑,同时,如果用户不小心把自己锁住了,该技术允许用户安全、免费的恢复他们的系统(而不会给国家安全局留下后门)。Xprotect提供无形的、基本的反恶意软件来保护电脑,免去杀毒软件等工具。除非用户有明确的需求,否则在浏览器中的Java是自动被禁用的,最大限度的减少对Mac电脑的攻击。IOS会很快的对所有应用程序做强加密,同时做严格的隔离,有效的消除了大部分的攻击形式。
这些严格的控制可能会阻碍一些技术先进的用户,包括一些安全厂商。但是他们确实是提供了一个安全的用户体验,在过去的五年时间里有效的证明了这是正确的。
根据这些理念所一贯执行的措施都是苹果公司正在进行的尝试,在可能的情况下,使用安全策略来改善用户体验也是可以实现的,另外,通过专注与设计,苹果持续采用这些技术,所以,会使得苹果产品越来越安全。
译者按:
iCloud钥匙串
这个新功能将会把同一个用户的苹果设备里的网页密码和wifi密码等全部通过iCloud存储到iCloud钥匙串里面,它会同步到所有苹果设备里面。
举个例子:如果你拿着一台iPhone去到朋友家里,然后蹭他家里的wifi,然后iCloud钥匙串将会把这个wifi密码保存到云里。如果这时候你将Macbook拿出来在他家办公,那么这台Macbook将会自动蹭他家的wifi,无须再搜索wifi和输入密码了。
激活锁
该功能旨在降低苹果设备的被盗率。
当小偷准备关闭iOS设备的“找到我的手机”功能,或者企图删除手机数据、重置系统时,会被系统要求输入Apple ID和密码。
由于小偷无法向以前一样重置系统,被偷的设备流入黑市的可能性就很小了,这大大降低了小偷手中被盗设备的价值,也就降低了iOS设备被盗的几率。
*本文由美国安全顾问公司Securosis安全研究员Rich Mogull撰写,IDF志愿者张土豆翻译,做个好人校验。