好的,我要打电话。
首先,让我们看看你的第一个问题:为什么OS X在第一次启动它之前会警告用户?
由于一个重要原因,OS X已经制定了额外的预防措施:因此应用程序似乎不会自行启动。显然,如果每次启动应用程序时都会弹出确认信息,那么工作流程就会瘫痪,因此制定了首次出现的政策。如果你考虑一下这似乎就足够了,因为这意味着任何没有确认的应用程序都已经被批准过一次,从而使它成为一个“可信”的应用程序。
除了这个简单的策略,这里的含义是无法衡量的。Apple希望得到一些保证,即程序不会在没有同意的情况下运行。如果他们碰巧在用户的机器上找到了自己的方式,他们就不会被认为是“老”或“信任”的东西。它并不意味着完全防范恶意软件,而是几乎作为一种重要的培训工具。它让用户了解OS X监视这些事情。如果运行应用程序,系统将在那里提供一点保护。如果用户偶然发现某个奇怪的文件,并双击它,系统将检查它是否符合某些条件。如果是这样,它将通知用户它从未被启动并被视为“潜在”危险。然后由用户决定是否应该运行。对于用户行为而言,这是一种比实际的硬核系统保护更多的安全措施。
所以并非存在明确的威胁。它更像是一种用户土地安全措施,甚至可能更好地被认为是“先发制人”的罢工。要标明明确的案例,要么对特定威胁实施安全措施,要么在这种情况下不适用(由于上述原因)。想想苹果公司积极主动(并且非常聪明)的观点。这不是那么突兀吗?Windows每次都会发出警告。OS X只在第一次运行时提供一个。这是一个理智的妥协。
现在,为了得到你的查询的第二个尾部(对不起,如果我在这里解释,但我认为这是你正在推动的):为什么OS X没有一个反病毒程序来处理这些威胁呢?
首先,我认为摆脱术语是很重要的。没有已知的病毒已经传播到OS X. OS X基于Unix结构,这对病毒制造者来说是一个严重的问题。简而言之(并且过度简化)Windows标记了所有可执行权限。从图像到文本文件,再到音乐。这最终导致病毒制造者因缺乏更好的条件而进入城镇。Unix没有表现出这种特性。它的特权很狡猾。因此OS X(以及所有基于Unix的系统)需要防病毒的可能性很小。Windows和Unix从根本上是非常不同的。从本质上讲,如果您想在OS X上获得病毒,则需要root访问权限或重要的用户活动。您无法通过简单地打开电子邮件来交付和运行它。
现在,这本身并不代表安全。OS X并不比Windows更安全,这是一种常见的误解。这当然取决于您对安全性的定义。它在很大程度上免疫病毒(我在这里松散地使用术语“免疫”)但它仍然容易受到允许根访问的缓冲区溢出的影响。查理·米勒在Pwn2Own比赛中无数次地击败了OS X. 他是一位高超的安全研究员,但是把它放在一边,他表明OS X(以及其他所有东西)都不是铁马。它可以像其他系统一样被利用。
但Lulzsec成为攻击目标的机会相当渺茫。你可能会面临一系列脚本小子,其中包含现成的工具,这些工具更容易加剧,而不是提供集中攻击。直到今天,只有一个人成功完成了这一轮 - 足以迫使苹果公司加强其安全措施:Mac Defender。即使Mac Defender的接缝成功,它仍然需要用户通过其本机OS X安装程序浏览一系列提示(请注意,更高版本不需要管理密码)。因此,你必须用一粒盐来取得Mac Defender的“成功”。它很可能是成功的,因为它是同类中的第一个,并且更多地利用了用户对OS X的盲目信任而不是系统本身。人们很容易安装它,认为它们不会受到伤害,因为它们没有运行Windows。
因此,最后,OS X不需要防病毒,因为很简单,没有已知的病毒可以在野外消失。概念验证确实存在,但同样,它们有一天会造成严重破坏的可能性非常遥远,因为传播难以维持。另一方面,恶意软件已经证明是令人担忧的原因。OS X现在包含内置安全功能(称为“安全下载列表”),可以在“系统偏好设置”(“常规”选项卡)的“安全和隐私”部分下查看。这应该保护用户免受未来与Mac Defender相同趋势的恶意软件的侵害。此外,Lion还实施了沙盒和权限分离这是一个真正重要的一步,不仅可以防止恶意软件,还可以巩固系统的整体安全性,甚至可以集中攻击。
我希望这能让您更深入地了解Apple为什么决定实施看起来像半措施的原因。重要的是要记住,安全性始终与可用性直接冲突。所以前者必须始终保持平衡,以提供后者的外表。