本文共 4871 字,大约阅读时间需要 16 分钟。
idea中出现紫色
我们使用技术构建产品和服务的方式正在不断发展,其发展速度难以理解。 遗憾的是,用于确保设计方法安全的主要方法是预防性的,这意味着我们正在无状态的世界中设计有状态的安全性。 我们设计,实施和仪器安全性的方式与现代产品工程技术(例如连续交付和复杂的分布式系统)并不一致。 我们通常为生产版本的第零天设计安全控件,而未能将控件的状态从第一天发展到第二天( N )。
此问题也源于现代基于软件的体系结构和安全控件之间缺乏反馈循环。 迭代的构建实践不断推动产品更新,创建不可变的环境并应用复杂的蓝绿色部署以及对日新月异的第三方微服务的依赖。 结果,现代产品和服务每天都在变化,即使安全隐患不断。
安全性应该是客观且经过严格测试的,数据和度量驱动我们对企业安全性的决策。 复杂的分布式系统,连续交付和高级交付模型(例如蓝/绿部署)的时代挑战着传统的测试方法是否足够。 尽管测试可能是系统检测的有用反馈机制,但仅凭测试本身是不够的; 我们也应该尝试。
我们如何假设系统正在运行以及 实际运行情况 。安全工程领域的安全实验从根本上是通过混沌工程的应用而实现的。 混沌工程学是在分布式系统上进行实验的学科,目的是建立对系统抵御生产中动荡环境能力的信心。
混乱工程中的一句俗语是“希望不是战略。” 当我开始使用将混乱应用于安全性的 ,我开始对故障的作用有所不同,无论是在构建系统的方式还是在尝试保护故障的方式上。 我们通常如何识别企业内部安全控制的失败? 我们通常不认识到某些东西无法正常工作,直到不再起作用为止,而对于安全事件,这通常是正确的。 安全事件不是有效的检测手段,因为那时已经为时已晚。 如果我们希望主动检测安全故障,就必须找到更好的检测和监视方式。
尽管它可能使您想起Suess博士的经典儿童读物安全测试所涉及的不只是充满紫色,蓝色和红色团队练习的蜡笔盒。 相反,它是一门广泛的学科,由重要技术组成,例如道德黑客,威胁搜寻,漏洞扫描等。 在本文中,我们将讨论总体上客观安全工具的重要性,当前安全测试方法(例如红色和紫色团队练习)中的差距以及安全实验的出现如何能够帮助弥补这些差距。
我们的目的不是要贬低红色和紫色练习或其他安全测试方法的价值,而是要扩大这种测试的重要性并阐明一种新兴技术。
多年来, 起源于武装部队,有着许多不同的定义,但如今可以描述为一种对抗性方法,它以最现实的方式模拟攻击者的行为和技术,以测试安全程序的有效性。 在企业安全测试中看到的红色团队的两种常见形式是道德黑客和渗透测试,这通常涉及内部和外部参与。
通过增加透明度,教育程度和更好的反馈循环,试图在进攻性和防御性安全技术之间创建更紧密的测试体验。 通过将蓝队的防御策略和控制与红队发现的威胁和脆弱性整合到一个叙述中,目标是最大程度地发挥各自的作用。
在我们深入研究混沌工程及其演变成安全性试验之前,请考虑一个简单的问题:“数据泄露通常来自何处?”
上图来自研究,该表明,恶意或犯罪攻击占2017年数据泄露的47%。这是网络安全行业最常见的关注领域,其中包括高级持续威胁,零日攻击,网络钓鱼活动,民族国家攻击,恶意软件变体等。
图表的其他两个部分由人为错误(28%)和系统故障(25%)组成,合起来占2017年数据泄露的53%。 解决方案和网络安全的通用定义在很大程度上只关注整个问题的47%:恶意或对抗性攻击。 大多数人发现恶意和犯罪活动比人类和机器所犯的错误更有趣。
人为错误和系统故障是造成数据泄露的主要原因。 这不是新趋势。 它已经进行了大约八年。 除非我们开始改变想法,否则它不可能改变。 为什么尽管在安全解决方案上花了更多钱,我们似乎还是无法每年减少安全事件和破坏的次数? 您可能会争辩说,如果网络安全行业更加关注人为因素和系统故障,那么许多恶意活动将失败。 例如,如果安全控制范围内没有配置错误或安全技术解决方案失败,那么就不可能进行许多恶意或犯罪攻击。 但是,由于缺乏关于恶意攻击与人为因素或系统故障(作为根本原因)之间关系的可靠信息,因此很难证明这一观点。
在2018年1月13日上午8:07,通过紧急警报系统和商业移动警报系统在夏威夷州的电视,广播和手机上发布了 ,警告即将到来的弹道导弹威胁并向居民提供建议寻求庇护。 警报的结论是:“这不是演习。” 但是,国家没有授权或响起民防户外警报器。
混沌工程植根于始终存在故障的概念,而我们对此的选择是我们的选择。 在Netflix的推动下,混沌工程学是一门新兴学科,旨在以可控的方式有意识地主动触发故障,以使人们确信系统将以我们期望的方式响应故障。 回顾“希望不是策略”,仅希望系统运行正常并且不可能失败就不是有效或负责任的策略。
在将混沌工程学应用于网络安全时,重点一直放在确定人为因素和系统故障如何直接影响我们构建和保护的系统的安全性之间的关系。 如前所述,在信息安全领域,我们通常仅在触发安全事件后才了解安全或系统故障。 事件响应阶段为时已晚。 我们必须更加主动地确定我们的安全功能及其所保护系统的故障。
混沌工程超越了传统的故障测试,因为它不仅涉及验证假设。 它还有助于我们探索可能发生的许多不可预测的事情,并发现我们固有的混沌系统的新特性。 混沌工程通过一系列受控实验来测试系统应对现实事件(例如服务器故障,防火墙规则配置错误,消息格式错误,关键服务降级等)的能力。 简而言之,一个混乱的实验(或就此而言,一个安全性实验)必须遵循四个步骤:
备份始终有效; 这是您必须担心的还原。 灾难恢复和备份/还原测试是一个典型的例子,说明如果执行的频率不够高,影响可能是灾难性的。 其余的安全控制也是如此。 不要等到发现某件事不起作用了;不要等待。 相反,您必须主动将故障引入系统,以确保安全性与您认为的一样有效。
开始进行安全性实验和混乱工程的一种常见方法是了解游戏日练习的作用,它是用于计划,构建,协作,执行和进行验尸的主要渠道。 游戏日练习通常需要2到4个小时,并且需要一组工程师来开发,操作,监视和/或保护应用程序。 理想情况下,他们需要成员从这些领域的组合中进行协作。
我们无法告诉您由于错误配置的防火墙规则更改而导致主要系统中断的频率。 我们愿意打赌,这对于许多其他人也是常见的情况。
目的是将故障引入受控的安全性实验中(通常是在游戏日练习期间),以确定您的工具,技术和流程如何有效地检测到故障,哪些工具提供了导致检测到故障的见解和数据,以及数据的有用性是确定问题,最终确定系统是否按您预期的方式运行。
那些朝着混乱的工程道路前进的人最常见的回答是:“哇,我没想到会这样!” 或“我不知道它能那样工作。”
混沌工程学和安全性实验都需要对它们的原理和基本原理有扎实的理解,并且需要专注于建立该学科的成熟度。 作为一个恰当的例子,如果没有先在较低的环境(例如分阶段)中测试任何工具,实验等,就永远不会开发实验并直接在生产环境中运行该实验。 首先要开发出对进行实验所需的方法和工具的能力和信心。
James Hamilton和Bill Hoffman,
想了解更多? 通过在Twitter上关注@aaronrinehart和@AWeidenhamer ,加入讨论。
[请参阅我们的相关故事, 。]
翻译自:
idea中出现紫色
转载地址:http://awnzd.baihongyu.com/