什么是AWS云安全?

AWS云安全是标准构建的一系列协议和检查,以便您工作的云的基础设施尽可能安全. AWS上的云安全是AWS和客户的共同责任, AWS保护云本身,客户保护他们在云中的操作.

AWS云安全如何工作?

AWS云安全的工作原理是保护在AWS云中运行服务的基础设施. 它由硬件、软件、网络和运行AWS云服务的设施组成. AWS负责补丁管理、配置管理等安全流程, 维护云基础设施中的缺陷,以及维护其基础设施设备的配置.

传统资讯科技保安vs. 云安全

在最高水平上, 保护云基础设施的基本原理类似于保护本地网络的基本原理. 例如, NIST网络安全框架 仍然适用:您正在尝试确定需要保护的内容, 保护这些资产, 检测恶意活动, 响应安全事件, 然后恢复. 然而, 云环境的独特之处意味着您实现这些功能的方式可能非常不同.

责任分担模式

也许最明显但又被误解的区别是在云环境中, 云服务提供商(CSP)负责保护该环境的某些元素. 误解发生在CSP到底负责什么. 像AWS这样的csp已经创建了共同责任模型来帮助澄清问题.

责任分担模式 表示AWS负责保护其云的底层基础设施. 这意味着它负责维护和更新硬件. 使用AWS基础设施的客户负责保护他们放在AWS环境中的任何东西. 这意味着他们负责更新和修补操作系统, 正确配置他们使用的AWS服务, 并控制谁有权使用这些服务. 

您的组织中是否有人错误地认为您的云提供商正在负责某些方面的安全性, 这可能导致云资产的安全保护不当. 因此, 在赋予任何人修改云环境的能力之前,这一点非常重要, 他们首先被告知什么是共享责任模型,以及您的组织负责安全的哪些部分.

云资产管理

云环境的另一个独特之处在于可以轻松地创建和部署新资产. 在本地网络中, IT和安全团队可以控制所有添加的新基础设施. 在云网络中, 任何具有正确凭证的人或系统都可以立即添加新的基础结构. 这使得修改云网络变得容易得多, 但除非有正确的护栏和监控, 它还增加了新基础设施配置不安全的可能性,从而容易受到攻击.

同时,云环境变化非常快. 自动缩放和无服务器计算等技术意味着云网络中的资产不断出现和消失. 像漏洞扫描这样的传统安全措施已经不够用了,因为一个易受攻击的资产可能只存在几分钟或几小时, 这意味着资产不会被每周甚至每天的扫描发现.

你可能会认为,这也意味着资产寿命不够长,不会带来风险, 但是我们的数据 项目罗蕾莱 全球蜜罐网络表明,新资产在启动后的几个小时内就会被恶意源扫描.

易于部署和高变化率使得安全团队很难维护其云环境的全貌. 在混合环境(包括本地和云网络的IT环境)和多云环境(包括来自多个云提供商的云网络的IT环境)中,这种情况会变得更糟。, 不同的信息存储在不同的系统中, 通常由不同的安全工具保护.

在这些情况下, 安全团队必须在不同的系统之间来回切换,以管理他们的安全工作. 缺乏统一的数据使得很难(如果不是不可能的话)准确地了解组织的整体安全状况,或者跟踪在云和本地网络之间移动的恶意行为者.

AWS有多安全?

AWS的安全性有多强就有多强. 以上, 我们讨论了共享责任模型,以及AWS如何负责底层基础设施的安全性. 事实是,与大多数拥有本地网络的组织相比,AWS在共享责任模型中投入了更多的资源. 对于这些组织来说,迁移到AWS可以增强其部分安全状态. 

然而,迁移到AWS或任何其他公共云提供商也会带来新的风险. 如上所述,云环境具有独特的挑战. 您不能简单地将现有的安全策略应用到云中. 话虽如此, 如果您了解云安全的独特方面并应用最佳实践, AWS可以与本地网络一样安全(甚至比本地网络更安全).

强大的AWS云安全的重要性

强大的AWS安全性非常重要,其原因与网络安全非常重要的原因相同. 您需要保护您的组织和客户免受恶意行为者的侵害. 对于很多组织来说, 随着他们将更多有价值的工作负载和更敏感的数据迁移到云中,拥有强大的AWS安全性的重要性也在增加.

强大的AWS安全性之所以重要的另一个原因是,可避免的事件可能会对声誉造成损害. 高德纳预测,到2020年底, 95%的云安全故障将是客户的错. 客户是否应该知道一个组织由于一个容易避免的错误而受到损害, 这可能会动摇他们的信心,以至于他们将业务转移到其他地方.

AWS云安全最佳实践

在我们开始之前,有一件事很简单:从他们的名字可以看出,AWS喜欢缩写. 这可能会让人们对各种AWS服务的功能产生一些困惑,所以这里有一个快速细分:

  • S3(简单存储服务) =对象存储
  • EC2(弹性计算云)实例 =虚拟机/服务器
  • AMI(亚马逊机器图像) 包含操作系统的机器映像,有时还包含在EC2实例上运行的附加软件.
  • VPC(虚拟私有云) 与传统数据中心网络非常相似的虚拟网络. 所有现代EC2实例都在VPC中运行.

我们将在下面更深入地讨论其他AWS服务, 但我们想确保你熟悉基本知识. 现在,我们来看一下最佳实践:

1. 提前计划

在理想的情况下, 在开始采用AWS环境之前,您应该开始考虑如何保护您的AWS环境. 如果那艘船已经起航了, 不用担心—只是可能需要更多的努力来实现一些最佳实践.

2. 拥抱云

第一次接触云环境时, 一些安全团队试图通过禁止开发人员进行基础设施更改等措施,使云模拟他们习惯于保护的内部部署环境. 在几乎所有的情况下, 最终的结果是,团队可以免除对云安全的责任,或者工程师可以找到绕过限制的方法(参见最佳实践No . 5). 9 .为什么这不好).

安全团队需要认识到云的潜在风险, 比如快速的变化速度和易于部署, 使用云基础设施的最大好处是什么. 为了取得成功,安全团队必须努力被视为云计算的推动者. 他们必须找到保持云基础设施安全的方法,同时又不会过度扼杀那些使云对组织有益的方面. 首先要采取开放的心态,并认识到成功管理云环境中的风险需要新的策略和流程. 

3. 为您的AWS环境定义安全基线

您的安全和DevOps团队应该一起工作,从安全的角度定义您的AWS环境应该是什么样子. 基线应该清楚地描述从资产必须如何配置到事件响应计划的所有内容. 团队应该考虑使用像 AWS架构良好的框架AWS安全的CIS基准 作为起点. 他们可能还希望向AWS解决方案架构师寻求帮助, 谁是能够熟练帮助客户构建AWS环境的技术专家.

确保您的基线应用于您的生产环境以及任何测试和预生产环境. 至少每六个月重新评估一次你的基线,把环境中的新威胁和变化纳入其中.

4. 执行基线

一旦你的安全和DevOps团队定义了你的AWS安全基线是什么样的, 你需要执行它. 通过向开发人员提供已经正确配置的基础架构模板,使他们更容易遵守您的基线. 您可以使用 AWS CloudFormation 或者像代码供应商那样的基础设施 起程拓殖

您还需要一个监视解决方案,以便在某些内容不符合基线时进行检测(因为它是在配置错误的情况下部署的,或者因为在部署后进行了更改)。. 要做到这一点,一个选择是使用 AWS安全中心,但一些第三方漏洞管理解决方案包括 内置的云错误配置监控.

使用内置错误配置检测的VM解决方案有两个好处. 第一个, 它将两种类型的风险监控(资产漏洞和云基础设施配置错误)整合到一个工具中. 第二个, 对于大多数漏洞管理解决方案,所有错误配置规则和检测都是由供应商为您管理的, 而使用AWS安全中心,您需要自己设置和管理规则. 了解更多关于InsightVM的漏洞评估和云配置.

强制执行安全基线的另一个选项是 云安全态势管理(CSPM)解决方案. 一个高质量的CSPM将有能力 监控来自多个云提供商的帐户 为配置错误. 这是件大事, 因为它允许您的组织为所有云提供商设置一个安全基线, 然后使用一个工具强制执行它. 除了能够 监控云帐户的错误配置,您应该寻找具有以下能力的CSPM 自动修复错误配置 一旦发现他们. 这将大大减轻您的安全团队的负担,并确保没有任何遗漏. 

在CSPM中寻找的其他功能包括 将基础结构中的问题标记为代码 在部署任何东西之前, 我管理 (有关IAM的更多信息,请参阅下一节),以及 合规审计. cspm往往有点贵, 但是对于使用多个云提供商或在单个提供商处拥有大量帐户的组织来说, CSPM是将管理所有这些帐户的混乱变为有序的方法.

5. 限制访问

要创建一个安全的AWS环境,没有什么比只允许那些需要它的用户和系统访问更重要的了. 这可以使用 AWS身份访问管理(IAM). IAM由以下组件组成:

  • 用户:这些代表需要与AWS交互的个人或系统. 用户由名称和凭据组成.
  • 凭证: 用户访问AWS的方式. 凭据包括控制台密码、访问密钥、SSH密钥和服务器证书.
  • :用户的集合. 与组, 您可以一次管理组中所有用户的权限, 而不必单独更改每个用户的权限.
  • 角色:这些类似于用户,但没有长期凭据,如密码或访问密钥. 角色可以由用户或服务来承担. 当假设一个角色时,它为会话提供临时凭据. 只有指定的用户、角色、帐户和服务才能承担角色. 角色可以让你做一些事情,比如让用户访问多个AWS账户,或者让应用程序访问AWS服务,而不必在应用程序中存储长期凭据.
  • 政策:这些JSON文档授予在特定AWS服务中执行一个或多个操作的权限. 为了给用户, 集团, 或角色在AWS中做某事的能力, 你必须附上保险单. AWS提供数百个预定义的“AWS托管策略”供您选择, 或者你可以建立自己的.

现在您已经对组成IAM的组件有了基本的了解, 让我们谈谈最佳实践. AWS有一个IAM最佳实践列表,您应该通读一遍. AWS的CIS基准中也提到了类似的实践. 所有这些最佳实践都很重要, 但为了简洁起见, 我们将列出一些最重要的(也是经常被打破的)准则:

  • 不要使用root用户: root用户是与用于创建AWS帐户的电子邮件地址相关联的用户. root用户可以做一个完整的管理员不能做的事情. 如果恶意行为者获得了根用户凭据,就会造成巨大的破坏. 确保在根用户上使用一个非常复杂的密码, 启用MFA(理想情况下使用硬件MFA), 把MFA装置锁在保险箱里. 是的,把MFA设备锁起来. 您还应该删除为根用户创建的所有访问键. 只有在非常罕见的情况下才需要使用root用户.
  • 通过联合SSO管理用户:使用联合SSO来管理员工对资源的访问是一种安全最佳实践, 其中包括AWS. 你应该好好利用我的 身份提供商 功能,以便您可以通过现有的SSO解决方案集中管理对AWS的个人访问.
  • 不要将策略附加到单个用户相反,将它们应用于组和角色. 这使得保持对谁可以访问什么内容的可见性变得更加容易,并最大限度地减少个人通过雷达访问超出其需要的内容的可能性.
  • 需要一个强密码你应该这么做 配置IAM要求使用强密码. CIS建议您将IAM设置为至少14个字符,其中至少一个大写字母和一个小写字母, 一个数字, 还有一个符号. CIS还建议密码至少每90天过期一次,并且以前的密码不能重复使用.
  • 需要MFA:加上一个强密码,你应该 确保所有用户都启用了MFA.
  • 删除未使用的凭据我可以 生成凭据报告 它显示最后一次使用每个用户的凭据的时间. 您应该定期进入此报告并禁用或删除过去90天内未使用的凭据.
  • 定期旋转访问键在许多情况下, 您可以(并且应该)使用IAM角色而不是访问密钥来编程访问AWS. 在必须使用访问键的情况下, 你应该确保他们至少每90天轮换一次. IAM凭据报告显示上次轮换访问密钥的时间. 使用此报告可确保更改了任何过期的访问键.

6. 注意漏洞

很多人甚至在云计算中也没有意识到这一点, 未修补的漏洞仍然构成威胁. 要检测EC2实例中的漏洞,可以使用 AWS检查员 或者第三方 漏洞管理解决方案. 使用漏洞管理解决方案允许您 最好优先安排你的工作, 提高您的报告能力, 促进与基础设施所有者的沟通,帮助每个人监控减少风险的进展. 除了, 处理混合云或多云环境的安全团队通常更喜欢使用第三方解决方案,因为它允许他们在一个地方监督所有环境的漏洞和风险管理(详见最佳实践第1项). 9).

尽管大多数网络安全专业人员应该熟悉漏洞管理, 在像AWS这样的云环境中,VM有一些独特的方面需要注意. 正如我们前面提到的,云环境可以快速更改. 资产每时每刻都在出现和消失. 在这样一个充满活力的世界里, 每周甚至每天的扫描都不足以准确了解漏洞和您的风险暴露. 有一些方法可以确保您对存在哪些EC2实例有一个完整的了解,这一点很重要, 以及在实例的整个生命周期中持续监视实例的方法. 确保您对EC2实例有一个完整的了解, 投资于漏洞管理解决方案 动态资产发现,在部署新实例时自动检测它们. 使用AWS检查员可以实现类似的功能 CloudWatch事件,不过安装过程更需要手动操作.

当在EC2实例中检测到漏洞时,可以通过几种方法来解决它们. 一种选择是使用 补丁管理器 在AWS系统管理器. 这种方法与您在本地网络中管理漏洞的传统方式最为相似. 然而,许多云环境被设计为不可变的. 换句话说,像EC2实例这样的资产一旦被部署就不应该被更改. 而不是, 当需要做出改变时, 终止现有资产,并用包含更改的新资产替换. 

So, 在不可变的环境中, 您不部署补丁, 而是部署包含补丁的新实例. 实现这一点的一种方法是创建和维护一个基本AMI,该AMI可以定期更新,以运行您正在使用的任何操作系统的最新版本. 通过这种方法, 当检测到漏洞时, 您可以创建一个新的基线AMI,其中包含针对该漏洞的补丁. 这将消除您未来部署的任何EC2实例中的漏洞, 但您需要确保也重新部署了任何当前正在运行的EC2实例. 

另一个选择是使用基础设施自动化工具,如 厨师 or 木偶 更新和重新部署ami. 如果您已经在使用这些工具之一来维护EC2实例,那么这种方法是有意义的.

7. 收集和保护日志

与任何其他系统一样,您应该记录AWS环境中发生的所有活动. 日志不仅对监视和遵从性很重要,而且回顾历史 NIST网络安全框架,它们是检测恶意活动的关键部分,(特别是当它们被输入 SIEM)响应安全事件,然后恢复.

在AWS中,大多数日志都使用 CloudTrail. 此服务自动捕获并存储AWS调用的AWS API活动 管理事件 免费存放在您的AWS账户中(尽管您需要支付存储费用). CloudTrail捕获了数以万计的事件, 包括关键的安全信息,如登录和对AWS服务的配置更改. 收费的, 你也可以在CloudTrail中创建“轨迹”, 它允许您做一些事情,比如捕获额外的活动,并将日志发送到S3以进行长期存储和/或导出. 以下是在AWS账户中设置CloudTrail的一些最佳实践:

  • 为所有区域创建一条路径虽然这要花钱, 你应该在CloudTrail中创建一条路径,这样你就可以将所有日志发送到S3存储桶. 这将允许您无限期地存储日志(CIS建议至少保留365天)。. 当 创造你的踪迹,你应该确定这个选项 将trail应用到所有区域 启用了. 这将允许您的踪迹显示您的活动从每一个 AWS地区. 如果您不启用此选项, 您的跟踪将只收集在您创建跟踪时所使用的AWS区域中发生的活动的日志. 从所有区域捕获数据非常重要,这样在不经常使用的区域发生可疑事件时,您就可以看到这些数据. 如果您使用多个AWS帐户,您可能也希望这样做 使用一个桶存储日志 为了你所有的账目.
  • 保护保存日志的S3桶:因为您的日志是检测和修复事件的关键部分, 存储日志的S3存储桶是攻击者的主要目标. 因此,你应该确保你尽一切可能保护它. 确保bucket不能公开访问,并将访问限制为只有那些绝对需要它的用户. 记录所有访问 并确保这个S3日志桶只能由无法访问CloudTrail日志桶的用户访问. 你还应该考虑 体育硕士专业学位要求 为了删除您的日志桶.
  • 使用SSE-KMS加密日志文件:虽然CloudTrail日志默认情况下是加密的,但您可以添加额外的防御级别 使用AWS KMS启用服务器端加密. 有了这个选项, 用户不仅需要访问保存日志文件的S3存储桶的权限, 但他们还需要访问客户主密钥(CMK)来解密这些文件. 这是确保只有少数人可以访问日志的好方法. 当您创建CMK时,请确保您也 启用按键自动旋转.
  • 使用日志验证: CloudTrail可以自动创建验证文件,用于检测CloudTrail日志是否已被篡改. 因为操纵日志文件是攻击者掩盖踪迹的好方法, 您应该确保为您的跟踪启用了日志验证.

尽管大多数日志都是在CloudTrail中收集的, 您应该确保捕获其他一些日志. VPC流量日志用于记录访问和流出VPC网络接口的IP流量。. 它们可以帮助您识别vpc内的端口扫描, 网络流量异常, 已知的恶意IP地址. 如果您使用AWS Route 53作为DNS,则还应该记录DNS查询. 您可以使用这些日志与威胁情报进行匹配,并识别已知的不良或快速传播的威胁. 请记住,您需要使用AWS CloudWatch来查看DNS日志.

8. 监视、检测和反应

现在您已经了解了如何使用日志来获得对AWS环境中的活动的可见性, 下一个问题是如何利用这种可见性. 一个(非常手动的)选项是使用AWS CloudWatch警报. 通过这种方法, 您可以为各种可疑操作(如未经授权的API调用)构建警报, VPC变化, 等. 针对AWS的CIS基准中包含了推荐警报列表. 这种方法的挑战在于必须手动构建和维护每个警报.

另一种选择是使用AWS GuardDuty. GuardDuty使用CloudTrail、VPC Flow日志和DNS日志对可疑行为进行检测和预警. GuardDuty的优点是它由aws管理的列表提供支持 发现 (也就是潜在的安全问题),以及机器学习. 这意味着不需要手动设置或维护来接收有关可疑活动的警报. 然而,发现可疑活动只是对事件做出反应的第一步.

您的安全团队将需要提取相关的日志文件和其他数据,以验证是否发生了事件, 然后决定最好的应对和恢复方式. 如果团队需要搜索多个不同的数据源来查找此信息, 它可以大大延长进行调查所需的时间. 在混合云或多云环境中,这一挑战更加严峻.

在调查期间自动集中所有相关数据只是许多安全团队决定使用 现代SIEM和事件检测工具. 一个很好的SIEM解决方案 会集成CloudTrail吗 并允许您存储来自AWS的所有日志以及来自本地网络和其他云提供商(如Azure和谷歌云平台(GCP))的日志。. 这种集中所有数据的能力可以大大有助于加快调查速度, 特别是当您需要跟踪在您的环境中移动的恶意参与者时. 

一个好的SIEM还将提供许多其他特性,以增强安全团队的检测能力, 确认, 并对攻击做出反应. 例如,最先进的siem使用多种技术来检测可疑行为. 其他需要寻找的特性包括创建自定义警报的能力, 欺骗技术(比如 预先构建的“粘蜜罐” 和蜂蜜用户,将触发警报时访问)和 文件完整性监控(FIM).

所有这些功能都提供了额外的检测层. 您还应该寻找提供如下可视化功能的SIEM 可定制的仪表盘调查的时间,这使得您的集中数据更可用. 此外,确保您正在考虑的任何SIEM都是内置的 自动化,因为这可以大大缩短事件发生时的反应时间. 最后, 许多团队喜欢同时使用AWS和第三方工具来保护他们的AWS环境, 在这种情况下,找到一个包含 GuardDuty集成.

9. 统一AWS与内部部署和其他云安全

一个非常常见的错误是在孤岛中处理AWS安全问题, 与保护现有IT基础设施的努力分开. 这就产生了可以被恶意攻击者利用的漏洞. 例如, 我们已经看到组织的内部部署和AWS安全性设计用于解决不同潜在威胁的情况. 由此产生的差距使两个网络都很脆弱.

让一个团队负责所有IT基础设施的安全,确保不会对“其他”安全团队在做什么或没有做什么做出任何假设. 而不是, 有一个团队知道它对组织的网络安全态势的各个方面负责. 在发生事件时,将您的安全工作统一到一个团队下也非常重要. 该团队可以立即获得更多的数据. 在每个团队成员的职责范围内保持清晰也要容易得多.

将安全责任统一到一个团队下不仅很重要, 但是将所有安全数据统一到一组工具中是很重要的. 绝大多数组织不只是使用AWS. 他们至少有本地网络和员工端点需要保护. 在许多情况下,组织还使用多个云提供商.

如果您为每个环境使用不同的安全解决方案, 这增加了出现盲点的可能性. 除了, 你的安全团队使用的工具越多, 他们的工作量就越高, 因为他们被迫不断地在各种工具之间切换,以便手动拼凑出组织当前网络安全态势的完整画面.

10. 自动化

有这么多保护AWS的最佳实践, 期望每个人都记住它们是不合理的. 即使他们这样做了,错误也会发生. 确保您的AWS环境始终符合您的安全基线, 你应该转向自动化.

例如,您可以使用的组合 CloudFormationλ 或者像这样的工具 起程拓殖或者其中之一 先进CSPMs 自动部署新的AWS基础设施,并确保一切都符合您建立的基线. 您还可以使用这些工具自动标记或终止不符合要求的基础设施.

使用自动化的另一个好处是它释放了安全团队内部的容量. 安全专业人员的持续短缺意味着安保团队不堪重负. 只有当组织开始迁移到云计算时,这个问题才会加剧, 这极大地扩展了团队必须确保的基础设施足迹.

为了给你的团队一个战斗的机会,考虑转向一个 高飞. 高飞可以让您轻松地在本地和云服务之间传递数据, 促进组织整个IT基础设施的统一视图. 高飞还可以缓解入职和下机等繁忙的工作, 以及在调查的初始阶段汇总数据等劳动密集型过程.

使用高飞可以减少安全团队的工作量,并帮助他们更有效地工作. 带着飞翔, 您的安全团队有更多时间专注于高价值的工作,并减少调查事件所需的时间.

了解更多关于AWS & 云安全

以Rapid7的AWS云风险评估为例

了解Rapid7的InsightCloudSec产品

AWS安全:来自博客的最新消息