欢迎光临散文网 会员登陆 & 注册

谁的安全

2021-07-13 04:23 作者:useStrict  | 我要投稿

近来越来越多的信息产品用户开始重视对自己个人信息的保护,信息安全相关的技术也开始越来越受到重视和追捧,或者说,用户的重视和工业界的追捧

然而,随着安全技术的不断演进,有一个问题变得越来越明显:最终用户所重视的安全性,与工业界所追捧的安全技术,这两者并不完全重合

本文将试图揭示和阐述这一问题,并对其加以讨论。本文意在促使越来越多的信息技术的最终使用者,意识到“安全”一词在最终用户,“非最终”用户和工业界之间所存在的系统性差异,并希望能够壮大最终用户一侧的声音和力量。


向谁证明

最近(2021年7月)正好有一个非常合适的例子,即某著名商业操作系统开发商的最新系统,强制要求某项平台安全特性一事。这一示例揭示了一个至关重要,却并没有被学术界充分讨论的问题信任的基点,或者说根源。注意,我这里并不是在讨论位于验证链条的最初一环,为之后的环节提供验证的那个软件或硬件,而是在这最初的一环之前的,那个引入并掌控着“最初一环”,要求着整个链条提供证明的那个人

TPM,可信平台模块,是一个提供密钥相关功能的硬件,它只会向通过完整性验证的平台和程序提供其密钥,因而可以用于验证目前的“平台环境”是否可信。即,如果可以读出TPM密钥,那么意味着平台是可信的,因而密钥可以被安全地使用,否则,平台是被篡改而不可信的,因此不能安全地在此平台上使用密钥。这一密钥可以进一步为其他密钥提供加密,从而成为平台的“最初一环”

然而,这并非TPM的全部功能:TPM,以及随后的包括TrustZone,Intel SGX,以及可能更为著名的Apple T2芯片在内的可信计算技术,还提供了一项“有趣”的技术:远程证明。它使得用户可以向某个远程的一方提供一种证明:证明用户正在运行的平台和程序的完整性。

或者,我们换一种说法,它使得远程的一方具有了这样的权利:要求最终用户提供正执行的某项平台或程序未被修改的证据

本来,对这种要求,我们可以理直气壮得回答“关你*事”,但TPM的出现却打破了这种局面。强制支持TPM 2.0,则是将所有人置于了这种危险之中,这将会使我们失去回答“管你*事”的权利。

不如说,在远程证明中,“信任基点”是被转移了的:本应作为信任基点的最终用户,现在成了提供证明的一方,而那个“远程的一方”,现在却成了要求最终用户提供证明的一方,成了整个验证链条,甚至整个平台的控制者。而那个真的在终端前进行操作的最终用户,则沦为了远程一方的傀儡

当然,这种转移并非完全没有用处:我们可以设想某个云计算服务提供商可以使用这种方式将其信任基点转移到计算服务的最终使用者,那么使用者就能有更强的理由相信云平台的安全性。

然而,遗憾的是,云计算的最终用户很难真正掌握云计算平台的TPM,这种转移可以通过TrustZone或SGX实施,但尚不具有足够的可操作性。不如说在这种场合下,远程证明甚至还不如尚处于萌芽阶段的安全多方计算更有用。


两种视角

通过这一例子,读者应该能够体会到对“安全”这一概念,其实一直存在着两种视角:一个是一切以最终用户为中心的,作为普通用户的视角;而另一个,则是“最终用户并非最终用户”的,服务提供商,企业和制造商视角

没错,持有第二种视角的,实际上更多的是企业,尤其是官僚机构成熟的,渴求着对员工的病态掌控大企业。企业员工所使用的设备归企业所有,归企业控制和管理,作为最终用户的员工则只是这些设备的操作者,而非控制者。员工在这些设备上受制于企业,在企业的完全管理和控制之下。

而且,讽刺的是,本应站在操作者视角,自觉为用户提供可信证明的服务提供商,却几乎从来没有在意过这些。相反,网络存储服务提供商检查和过滤着用户的每一项数据,即时消息提供商随意地,不提供理由和申诉地封禁着用户,作为服务提供商,它们却反过来想要控制用户

当然我们并非不能理解这一点:至少街头的ATM机不属于具有“控制台访问”的某个银行客户。不过,不同的是,ATM机只是在提供自动柜员服务;但企业员工每天要有数个小时花在企业配备的计算机上,而这台机器却不归他所有;在线服务提供商的用户更是在自己的个人计算机上使用提供商的服务:这些提供商甚至想要控制本属于用户的东西

在上述第三种情形中,苹果公司是把这种控制做到极致的厂商之一。T2芯片使用苹果公司的密钥,向苹果公司提供证明,T2芯片的信任基点从来都是苹果公司而不是最终用户。苹果公司可以不需要用户凭据就解开激活锁,而最终用户却没有任何办法重置它。用户购买了苹果公司生产的设备,但设备的控制权却从未被转移到用户手中。


作为最终用户

学术界将信息安全划分为三要素,保密性,完整性,可用性,然而对于最终用户来说,这三要素首先必须要建立在一个基础上:控制

最终用户必须获得对设备,对平台,对程序的完全,或者至少是足够充分的控制,否则这三要素便会失去根基。在不受用户控制的设备上,设备可以随意影响平台和加密程序的执行,因此其完整性就无从保证,加密程序的完整性无法被保证,那么密钥和用户数据的保密性就无从保证。不受用户控制的设备和程序可以随时在它们的实际控制者的要求下停止运行,因而可用性也无从保证。

单纯就TPM来说,对于最终用户而言,TPM提供的能力并非无用,它提供了对设备失窃以及“邪恶女仆攻击”的防护。但另一方面,TPM并非足够安全,最终用户对“最初一环”有多得多的选择,而TPM甚至不是其中足够安全的选项。另外,在多数用户事实上面临着无数更为严峻的挑战的情况下,讨论失窃和邪恶女仆攻击未免为时过早。另外,用户必须向TPM导入自己的平台密钥才能实现对TPM的掌控,它的存在显然削弱了用户对平台的控制,而非加强。

对平台和程序的完全控制,需要用户能随意改变这些程序的行为,这对绝大多数商业软件来说都是天方夜谭,因为它们无一例外得都会要求用户交出某些控制。这其中比较过分的大厂可能是腾讯,尤其是腾讯的PC端游戏:不过游戏产业依然有以cdpr为首的少数厂商愿意尊重用户的控制权。

的确我们可能不得不向这种现实妥协,但我依然建议最终用户们尽量选择那些尊重你的控制权的软件,因为只有这样,才会有越来越多的软件开发者和开发商,意识到用户的决定权也是很重要的。

而且我认为需要提醒大家一点,在我们夺回对机器的控制权之前,安全性是无从谈起的。如果我们向设备制造商或者服务提供商交出了太多控制权,那么我们的处境就变得会和大企业的员工们一样,它们将完全掌握我们的数字生活,甚至这些影响还会渗透到线下。我们不会希望这些事发生。


谁的安全的评论 (共 条)

分享到微博请遵守国家法律