【云计算网络安全】解析 Amazon 安全服务:构建纵深防御设计最佳实践
文章目录
- 一、前言
- 二、什么是“纵深安全防御”?
- 三、为什么有必要采用纵深安全防御策略?
- 四、以亚马逊云科技为案例了解纵深安全防御策略设计
- 4.1 原始设计缺少安全策略
- 4.2 外界围栏构建安全边界
- 4.3 访问层安全设计
- 4.4 实例层安全设计
- 4.5 数据层安全设计
- 4.6 监控层安全设计
- 五、文末总结
一、前言
本文内容来源于亚马逊云科技的“亚麻拉松”,由印度讲师 Himanshu Sangshetti(由于名字太长,下文简称其 Sangshetti)主讲。博主在此基础上进行了详细归纳总结,并结合自身理解进一步拓展,深入解析了云计算网络安全中的“纵深防御”理念。文章不仅还原了讲解中的精彩内容,还通过实际案例展示了如何在亚马逊云科技的服务中设计和实现多层次的安全防御策略,为读者提供了全面且实用的网络安全知识。
二、什么是“纵深安全防御”?
“纵深防御” (Defense In Depth,或者常见缩写DiD
) 是一种网络安全策略,它使用多种安全产品和实践来保护组织的网络、Web 资产和资源。它有时与“分层安全”一词互换使用,因为它依赖于多个控制层(物理、技术和管理)的安全解决方案,来防止攻击者访问受保护的网络或本地资源。
最初,纵深防御是指一种军事战略,牺牲一条防线来阻止敌方部队。尽管名称相似,但该方法与我们所说的安全策略并不相似,在纵深防御安全策略中,多个产品协同工作以阻止攻击者和其他威胁。
三、为什么有必要采用纵深安全防御策略?
纵深安全防御策略的指导原则是,单一安全产品无法完全保护网络免受可能面临的每一次攻击。但是,实施多种安全产品和实践可以帮助检测和预防出现的攻击,使组织能够有效地缓解各种威胁。随着组织扩展其网络、系统和用户,这种方法变得越来越重要。
分层安全的另一个优点是冗余。如果外部攻击者破坏了一道防线或内部威胁危及组织网络的一部分,则其他安全措施可以帮助限制和减轻对整个网络的损害。相比之下,仅使用一种安全产品会产生单点故障;如果它受到损害,整个网络或系统可能因此遭到破坏或损坏。
四、以亚马逊云科技为案例了解纵深安全防御策略设计
整个 Sangshetti 这个讲解过程中,其实就是以现实生活中我们去一个公司园区的某个建筑中的某个房间为示例,结合亚马逊的相关云服务来构建纵深防御策略的设计。
4.1 原始设计缺少安全策略
Sangshetti 最开始举例了一个原始应用,你可以认为是一个毛坯房,这个房子只是提供了居住,或者使用,但是大门或者窗户等都是不健全的,所有人都可以随意进入,这也可以类比你最开始设计出来的程序,几乎没有什么安全可言。
4.2 外界围栏构建安全边界
直接看下图更加直观,在网络层面最开始就构建了安全策略。以这个进入建筑园区来举例,你可以认为这个网络安全层可以是园区的封闭范围,外接没有其他入口进入,进入的入口只有一个大门。无论是你送外卖还是送快递,还是员工亦或者其他人员,只能通过这一个大门进入。
拆解一下网络安全的组件,其中包括VPC,Security Groups以及Network ACLs,其实这3件套就已经是垂直的网络安全设计了,外层VPC构建独立的私有网络,可以控制以及划分一个独立的网络,你可以认为是上面讲的园区边界,在这里举例中,如下图构建了4个子网,每个私有子网都包含自己的 NACL以及SG,SG为自己的防火墙可以控制自己的入栈出栈,而NACL可以是一个过滤器,来进行额外的网络控制。(由于篇幅原因,以后关于SG与NACL我可以单独写一篇文章来讲解一下)
4.3 访问层安全设计
这里非常简单的一个例子是,如果你是园区员工,那么你就有进入的权限,并且有相应公司大楼的访问权限,类似给了你一个进入大楼的工牌,这个工牌有相应授权给你的权限,这个亚马逊核心服务就是 IAM,这既可以基于权限,又可以基于你的角色来分配访问权限。除了 Amazom IAM还有另外一个服务: Amazom Cognito,Amazon Cognito为安全的应用程序访问提供用户身份验证、授权和用户池管理。
在这里看下图可以看到在我们访问层前面多了一个web层,这个地方增加了Amazon Shield
以及 Amazon WAF
服务,你可以试想一下,即使你有访问权限,身份也得到了授权,会有一种可能发生的情况是,突然园区入口处来了一大群人,这里面只有你一个人有访问权限,但是所有人都要去核验身份或或者冲去前台,那么会发生什么,一定会发生大量的拥堵以及人手不够的情况,这个时候我们就需要WAF以及Shield了,Amazon WAF通过过滤恶意流量来保护web应用程序免受SQL注入和跨站点脚本等常见威胁;Shield 可以抵御 DDoS攻击。
4.4 实例层安全设计
在这里园区内每个建筑都有楼层和房间,就像应用程序有多个服务器或实例一样。IAM的角色权限可以控制来访人具体可以访问什么地方(亚马逊的具体什么服务),而对于这些EC2实例或者其他实例 Amazon Systems Manager确保他们能够得到管理、打补丁和安全控制等。Amazon Systems Manager 可以简化修复补丁、配置管理实例监控等操作任务。
4.5 数据层安全设计
假设你是园区内的员工,通过了上述所有的访问进入到了公司内,并且打开了公司内的某台电脑,此时你要访问电脑内的数据,而你要访问的电脑用户名密码如何来存储,或者你要访问 1000 台电脑,他们的用户名密码都不同,你如何或者这些敏感数据,这些敏感数据如何进行存储管理?亚马逊云科技的 Amazon KMS 提供了加密敏感数据,它可以加密密秘钥和进行安全管理等;而 Amazon Secrets Manager 服务则可以用于安全地存储、管理和轮换敏感信息(如数据库凭证、API 密钥等),以确保应用程序的安全性和合规性。
4.6 监控层安全设计
类比我们全文的园区例子,这里的监控层你可以认为是从你在园区大门,到经过园区的街道,到进入园区内的某栋大楼,再到你进入自己的公司以及办公室,每一个地方都有一个监控摄像头。
在亚马逊云科技服务中心,GuardDuty 可以用来检测威胁, CloudTrail 用于记录每个活动事件,而 Security Hub 则提供了所有报警和所有发现的集中视图,这3个服务组合起来就形成了一个安保监控团队。
五、文末总结
这次的亚麻拉松
活动中 Sangshetti 的这一部分总结起来是通过办公园区安全的生动类比,讲解了亚马逊云科技在纵深安全防御中的多层安全设计。从网络层的边界保护到访问层的身份管理,再到实例层的权限控制和数据层的敏感信息加密,每一层设计都紧密衔接。无论是 WAF、Shield 的流量防护,还是GuardDuty 的威胁检测,所有服务共同构筑了一个全面、稳固的安全体系,为企业的网络安全提供了强有力的保障。