像黑客一样思考:应对安全问题所需的心理模型
在信息安全领域,人们常常被要求“像黑客一样思考”。但是问题是,如果你想到的只是一个非常狭义的黑客(例如,只会攻击Web应用程序的黑客),那么它可能会对你的思维模式和业务开展方式产生负作用。 俗语有言“一知半解,害已误人”,孤立的事实并不能很好地呈现事情本来面目。正如传奇投资人Charlie Munger曾经所言,“如果你只是记住一些孤立的事实,那么你不能真正知道任何事情。如果不将事实与心智模型的网格联系在一起,你就不能使用它们。” 你必须建立自己的心理模型。而且必须将你的间接和直接经验排列在模型的网格上。具体来说,如果有一些学生只是尝试记住一些事情并回想所记住的内容,那么他们在学校和生活中都是失败的,你必须将经验放在你头脑里心理模型的网格上。 当然,不仅仅是建立心理模型就可以了,你还必须要有多个模型。因为如果你只有一两个可以使用的模型,那么人类的本性会使你将现实歪曲,使其适应你的模型。就像谚语所说:“对于一个拿着锤子的人来说,一切问题看起来都像钉子。”这对思考来讲是一个巨大的灾难,所以你必须要有多个模型。 对于安全专家而言,这一点是值得铭记的。 当我们观察一个(成熟的)安全专家的思维过程时,我们会发现其中包含许多心理模型,不仅涉及黑客攻击或更广泛的攻击技术,而且还涵盖了具有更广泛应用的原则。 下面就让我们一起去了解一些一般的心理模型及其安全应用: 1. 转化、反转 当困难的问题发生反转(Inversion)时,它们就能得到最好的解决。研究人员非常擅长利用反转系统和技术来说明系统架构师应该避免什么问题。换句话说,仅仅考虑所有可以保证系统安全的事情是远远不够的,你应该考虑所有可能会导致系统不安全的事情。 从防御的角度来看,这就意味着你不仅仅要考虑如何取得成功,而且还要考虑如何管理失败。 2. 确认偏差 心理研究发现人们存在着确认偏差(confirmation bias),即一旦人们形成先验信念,他们就会有意识地寻找有利于证实先验信念的各种证据。我们发现,这种确认偏差在应用程序、系统乃至整个业务中都已经根深蒂固。这就是为什么2名审计师可以评估相同的系统,并就其充分性得出截然不同的结论的原因所在。 从防御者的角度来看,确认偏见是非常危险的,因为它会蒙蔽真实的判断结果。这一点也总是被黑客所利用。例如,人们经常会沦为钓鱼邮件的受害者,因为他们自认为自己太聪明不会落入攻击者陷阱。但是得知现实早已为时晚矣。 3. 能力范围 大多数人都有一个(或至少一个)自己非常擅长的领域。但是如果你超出这个领域对他们进行测试,你可能会发现他们并非面面俱到。更糟糕的是,他们甚至可能对自身的无知一无所知。 当我们把安全视为一门学科时,我们意识到它并不是一个单一的东西,它由无数的能力领域组成。例如,社会工程师具有一个独特的技能,使其与具有远程访问SCADA(数据采集与监视控制)系统的专业研究人员区别开来。 一个工具箱中拥有的工具数量并不重要,更重要的是知道自己能力范围(Circle of Competence)的界限在哪里。正如华伦·巴菲特所言:“你必须找到你自己的能力是什么。如果你玩其他人玩得好的游戏而你不会,你就会输。这能够尽可能地接近一些任何你可以做的预测结果。你必须弄清楚你的优势在哪里。你必须在你自己的能力范围内玩”。 所以,建立安全团队的经理必须对团队中的个人进行评估,并建立本部门的能力范围,这可以帮助企业直观地确定哪些领域是亟待填补的空白领域。 4. 奥卡姆剃刀定律 奥卡姆剃刀定律(Occam's Razor)意思是“简约之法则”,即如果关于同一个问题有许多种理论,每一种都能作出同样准确的预言,那么应该挑选其中使用假定最少的。尽管越复杂的方法通常能作出越好的预言,但是在不考虑预言能力的情况下,前提假设越少越好。 这个“简约之法则”在很多方面与安全存在联系。例如,通常情况下,黑客会使用简单的、经过测试和验证的方法来危险企业系统网络,这些方法包括停车场被感染的USB驱动器,或者伪装成财务部门的鱼叉式钓鱼邮件等。 虽然攻击者也有很多复杂且先进的攻击手段,但是这些攻击手段不太可能适用于大多数公司。通过使用奥卡姆剃刀定律,攻击者经常可以更快、更轻松地攻击目标。所以,为了“像黑客一样思考”,在防御方面也可以/应该使用相同的原则。 5. 二阶思维 所谓“二阶思维”(Second-Order Thinking)就意味着要考虑结果背后的结果。举个例子,一阶思维会说这是一家好公司,让我们来买进它的股票。二阶思维则需要考虑这是一家好公司,但是人人都知道它是一家好公司,所以这股票的定价和股价都过高了,因此对于投资者来说,这家公司就不是足够好的公司了,我们可以卖出它的股票。 所以说,二阶思维就是迫使我们在采取行动时考虑其长期影响。在此过程中,我们最需要问自己的问题是,“如果我做了X,那么接下来会发生什么?” 在安全领域,提供一阶建议是非常简单的事情。例如,及时安装补丁程序是很好的建议。但是,如果缺少二阶思维就可能会做出错误的决策,导致无法预料的后果。所以说,安全专家在执行操作前考虑所有可能的影响是至关重要的环节。例如,执行操作前问问自己,“如果我升级了设备X上的操作系统,那么会对下游系统产生什么影响呢?” 6. 思维实验 思维实验(thought experiments)是阿尔伯特·爱因斯坦推广的一种技术,是一种在自己的头脑中进行逻辑测试的方式,在现实生活中难以或不可能实现。因为思维实验需求的是想像力,而不是感官。爱因斯坦曾说:“理论的真理在你的心智中,不在你的眼睛里。” 在安全领域,这种技术通常在“桌面”练习或风险建模时使用。当与其他心理模型一起使用时,这种方法还是非常奏效的。其目的不一定是非要达成一个明确的结论,而是鼓励具有挑战性的思维想法来将人们推出自己的思维舒适区。 7. 贝叶斯概率思维 这个世界是被概率性结果所主导的,这种概率性结果与确定性结果有所不同。虽然我们不能很确定地预测未来,但是我们常常会不自觉地根据概率做出决策(Probabilistic Thinking)。例如,在过马路的时候,我们认为被汽车撞到的风险很低。这种风险当然是存在的,但是因为你已经仔细观察了周围的交通情况,所以你有信心能够安全通过。 (编辑:ASP站长网) |