Google基础设施架构安全设计_第1页
Google基础设施架构安全设计_第2页
Google基础设施架构安全设计_第3页
Google基础设施架构安全设计_第4页
Google基础设施架构安全设计_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 Google基础设施架构安全设计目 录 TOC o 1-3 h z u HYPERLINK l _Toc515917268 1.底层基础设施安全设计 PAGEREF _Toc515917268 h 4 HYPERLINK l _Toc515917269 1.1.物理基础架构安全 PAGEREF _Toc515917269 h 4 HYPERLINK l _Toc515917270 1.2.硬件设计部署 PAGEREF _Toc515917270 h 4 HYPERLINK l _Toc515917271 1.3.安全引导和服务器识别机制 PAGEREF _Toc515917271 h 4 H

2、YPERLINK l _Toc515917272 2.安全服务部署 PAGEREF _Toc515917272 h 5 HYPERLINK l _Toc515917273 2.1.服务标识、完整性与隔离 PAGEREF _Toc515917273 h 5 HYPERLINK l _Toc515917274 2.2.服务间访问管理 PAGEREF _Toc515917274 h 6 HYPERLINK l _Toc515917275 2.3.服务间通信加密设计 PAGEREF _Toc515917275 h 7 HYPERLINK l _Toc515917276 2.4.终端用户数据访问管理 P

3、AGEREF _Toc515917276 h 8 HYPERLINK l _Toc515917277 2.5.静态加密 PAGEREF _Toc515917277 h 9 HYPERLINK l _Toc515917278 2.6.数据删除 PAGEREF _Toc515917278 h 10 HYPERLINK l _Toc515917279 3.网络通信的安全性设计 PAGEREF _Toc515917279 h 10 HYPERLINK l _Toc515917280 3.1.谷歌前端服务 PAGEREF _Toc515917280 h 11 HYPERLINK l _Toc515917

4、281 3.2.DoS攻击防御 PAGEREF _Toc515917281 h 11 HYPERLINK l _Toc515917282 3.3.用户认证 PAGEREF _Toc515917282 h 11 HYPERLINK l _Toc515917283 4.运维安全 PAGEREF _Toc515917283 h 12 HYPERLINK l _Toc515917284 4.1.安全软件开发 PAGEREF _Toc515917284 h 12 HYPERLINK l _Toc515917285 4.2.员工设备和凭据安全保护 PAGEREF _Toc515917285 h 13 HY

5、PERLINK l _Toc515917286 4.3.内部风险消控 PAGEREF _Toc515917286 h 14 HYPERLINK l _Toc515917287 4.4.入侵检测 PAGEREF _Toc515917287 h 14 HYPERLINK l _Toc515917288 5.谷歌云存储平台(GCP)安全设计 PAGEREF _Toc515917288 h 15谷歌的技术基础设施共同构建了搜索、邮件(Gmail)、照片等普通用户系统和G Suite 、谷歌云存储平台等企业系统,是谷歌数据中心的关键,是整个谷歌网络服务赖以存在的安全基础。针对谷歌技术基础设施的安全设计作

6、了简要分析与介绍,这些技术基础设施为谷歌全球信息系统提供了一系列安全防护,它们包括运行安全服务、终端用户数据安全存储、服务安全通信、用户安全通信和运维安全管理等。在介绍中,我们将围绕谷歌数据中心的物理安全、整体软硬件基础安全、技术限制和操作的运维安全进行逐层描述。底层基础设施安全设计物理基础架构安全谷歌数据中心包括了生物识别、金属感应探测、监控、通行障碍和激光入侵感应系统等多层物理安全保护,并做了严格的限制访问。因为谷歌的某些服务托管在第三方数据中心,为了确保绝对的安全控制,必须部署此类高度安全措施。硬件设计部署谷歌数据中心网络由数千台服务器组成,这些服务器的主板和网络设备都由谷歌自行定制设计

7、,相关设备组件和供应商都必须经过严格的安全检测和背景审查。同时谷歌也自己设计了安全芯片,这些芯片被广泛应用于服务器和相关外设环境,为硬件级别的安全识别和认证提供了有效的安全手段。安全引导和服务器识别机制为了确保正确的服务启动,谷歌服务器使用了一系列的启动引导技术,包括在BIOS、bootloader、kernel和系统镜像等底层组件中使用加密签名,这些签名在每次启动和更新时都能进行安全验证。整个过程中涉及的组件都由谷歌构建、控制和加固。随着硬件的更新换代,谷歌也在不断努力进行安全改进,比如自行设计了可锁固件芯片、安全微控制器和安全芯片,并按照不同服务器的设计版本,在各类芯片中内置了可信的安全启

8、动机制。在软件引导和硬件启动过程中,数据中心的每台服务器都有自己独特的标识身份,这些标识也被用于机器底层管理的API调用验证。另外,谷歌也开发了自动更新检测系统,以保证各类软硬件的及时更新、识别和诊断,必要时可以自动隔离那些出现故障的服务器。安全服务部署此节中,将对一些基本的软硬件服务安全进行介绍,数千台服务器将对这些服务应用请求进行伺服和备份,这些服务包括Gmail的SMTP服务、分布式数据存储服务、YouTube视频转码服务、客户端APP沙箱运行服务等常规用户请求。所有运行于基础设施架构的服务请求都由一个叫Borg的集群业务管理服务进行控制。服务标识、完整性与隔离在内部服务的应用层通信之间

9、,谷歌使用了加密认证授权方式,为管理和服务提供了高强度的访问控制。虽然谷歌不完全依赖内部网络划分和防火墙作为主要安全机制,但为了防止IP欺骗等进一步攻击,谷歌在网络入口和出口的各种不同点位使用了过滤策略,这种方法也最大化地提高了网络性能和可用性。每一个运行服务都有自身相关的服务账户标识,当创建服务或接收RPC请求时,就能提供相应的加密验证凭据。这些标识同样被用于服务间通信,以及对特定客户端的数据和方法访问限制。谷歌的源代码被存储在一个中心库内,在这里可以针对当前和以往的代码进行审计。谷歌基础设施可以针对特定服务配置相应的安全审核、验证和源代码检测程序。在代码审查方面,需要除编写者之外的至少一名

10、工程师进行审查和批准,另外,在审查出现问题之后,需要经系统管理员批准才能更改和执行代码。这些强制要求限制了内部人员或攻击者对源代码作出恶意更改,同时也为服务代码提供了可追溯的取证流程。除此之外,为了保护同一台服务器上运行的其它服务,谷歌还设置了一系列的沙箱和隔离技术。这些技术包括通用的用户隔离、基于语言和内核的沙箱以及硬件虚拟化等。总体来说,为了应对存在风险的请求服务,如用户请求的复杂文件格式转换,或APP端及谷歌运算引擎这类产品面临的用户执行代码等,谷歌使用了多层隔离技术。另外,为了保证网络边界的安全可按,谷歌还使用了一些特殊敏感的服务,如集群业务服务和关键管理服务等,这些服务都运行在专门的

11、服务器之上。服务间访问管理所有运行服务可以使用谷歌基础设施提供的访问管理功能来指定哪些服务可以与其进行通信。例如,某个服务可以设置只提供一些特定白名单服务的API请求调用,该服务可以被配置为仅允许白名单帐户身份,之后,这种访问限制机制将会被谷歌基础设施自动执行。就像谷歌工程师对服务的访问同样需要身份标识验证一样,这些服务可以设置为允许或拒绝访问。所有标识类型信息(机器、服务或员工)都存储于谷歌基础设施的全局域中。在内部身份标识认证中,谷歌提供了多样的标识管理系统,包括审批流程、记录和通知等。例如,这些标识可以通过某个系统指派给访问控制组,以方便不同工程师进行服务的更改和批准。标识管理系统可以对

12、成千上万的运行服务进行安全访问管理。除了自动的API级别访问控制机制外,谷歌还设置了访问控制列表(ACLs)和数据库的读取服务,以方便执行必要时自定义和细粒度的访问控制操作。服务间通信加密设计除了前述的PRC认证授权功能之外,谷歌还提供了网络内PRC数据的加密保密性和完整性功能,为了对HTTP等其它应用层协议进行安全保护,这些加密功能被谷歌封装在了内部的PRC机制中。本质上来说,这提供了应用层隔离,同时消除了任何网络路径的安全依赖因素。即使网络被窃听或设备被入侵,加密的服务通信也能保证信息安全可靠。可以针对每一种PRC调用,为服务设置不同的加密保护级别,例如,对于数据中心内部的低价值数据交换只

13、设置完整性保护级别;而针对复杂的网络攻击和内部网络窃听行为,将会自动开启所有RPC流量加密功能,无需额外的操作配置。同时,谷歌配置部署了硬件加密加速器,可以为数据中心内部所有PRC流量进行加密。终端用户数据访问管理典型的谷歌服务为终端用户带来了很多便利,例如Gmail,在用户使用类似程序的过程中,将会和谷歌基础设施进行交互,如Gmail服务中调用通讯录服务API访问终端用户地址薄。结合前述章节,通讯录服务可以设置成Gmail服务中只允许特定RPC的请求。然而,这仍然是一个非常广泛的权限控制集。但在权限许可范围内,Gmail服务将对任何时间的任何用户作出请求回应。由于Gmail服务将会代表终端用

14、户执行对通讯录的RPC请求,而此时,作为RPC请求的一部分,谷歌基础设施将会为Gmail服务提供一个“终端用户许可凭据”,该凭据是特定终端用户的身份证明,这也为特定终端用户通讯录服务的数据回应实现了安全保障。为了向终端用户发布“权限许可凭据”,谷歌运行有一个中央用户身份服务系统。终端用户登录后,将会通过该身份服务进行多种方式验证,如用户密码、cookie信息、OAuth令牌等,之后,任何从客户端发起到谷歌内部的后续请求也将需要身份信息验证。当服务接收到终端用户密码信息后,将把其传递到中央身份服务系统进行验证,如果验证正确,身份服务系统将返回一个短期有效的“权限许可凭据”,用于用户的RPC相关请

15、求。结合前面的例子,Gmail服务如果获得了“权限许可凭据”后,将把该凭据将传递给通讯录服务进行验证。之后,作为RPC调用的一部分,该凭据将适用于任何客户端请求。安全数据存储静态加密谷歌基础设施中运行有很多存储服务,如分布式数据库(BigTable)、Spanner以及集中密钥管理系统。大多数应用程序都将通过这些存储服务对物理存储设备进行直接访问。存储数据在写入物理存储设备之前,可以配置使用集中密钥管理系统分发的密钥进行加密。而集中密钥管理系统支持自动密钥轮换,并提供了全面的日志审计、特定用户身份完整性校验等功能。Spanner是谷歌公司研发的、可扩展的、多版本、全球分布式、同步复制数据库。它

16、是第一个把数据分布在全球范围内的系统,并且支持外部一致性的分布式事务。在应用层执行加密允许基础设施隔离掉一些如恶意磁盘固件的底层存储潜在威胁,这也是另一种加密保护层的额外实现。谷歌的每一块机械硬盘和固态硬盘都支持硬件加密和状态跟踪。如果某个加密存储设备被更换或废弃,必须经过多步骤的磁盘清理和两次独立验证,不经过此清除过程的设备也将被执行物理破坏。数据删除谷歌的数据删除不是执行完全数据清除,而是针对某些特定数据的“计划性删除”,这样做的好处是,可以恢复那些客户端或运维操作无意删除的数据。如果数据被标记为“计划性删除”后,将按照特定服务策略删除。当某个终端用户执行了账户删除之后,谷歌的基础设施将通

17、知相关数据清除服务对被删账户的数据进行清除。删除了谷歌账号和谷歌邮箱之后,谷歌系统将删除掉该账户相关的所有数据,不能再继续以该账户使用谷歌提供的各项服务。网络通信的安全性设计此节中,将描述谷歌安全通信和相关服务设计。如前所述,谷歌基础设施由大量物理设备组成,这些设备共同构成了不同的LAN和WAN。为了防止诸如DoS之类的攻击,谷歌基础设施使用了一段私有IP空间。谷歌前端服务谷歌基础设施内部的服务需要通过谷歌前端服务(GFE)注册之后,才能运行于外部互联网上。GFE确保所有TLS连接必须使用正确的证书和安全策略,同时还能起到防御DoS攻击的作用。GFE对请求的转发使用了前述的RPC安全协议。实际

18、上,任何通过GFE注册运行于互联网的内部服务都是敏捷的反向前端代理服务,该前端不仅能提供服务的DNS公共IP,还能起到DoS防御和TLS保护作用。GFE像其它运行于谷歌基础设施的服务一样,可以应对大量的发起请求。DoS攻击防御从规模体量上来说,谷歌基础设施可以化解或承受大量DoS攻击,谷歌具备多层级联的DoS防护手段,以阻止和缓解任何对GFE注册服务的DoS攻击。外部骨干网向谷歌数据中心发起的连接请求,将通过多层软硬件的负载平衡传导。这些负载平衡传导器将实时向谷歌基础设施内部的中央DoS监测系统反馈传入流量的状态信息,当DoS监测系统探测到DoS攻击之后,将会第一时间让负载平衡传导器丢弃或节流

19、可疑攻击流量。在更下一层,GFE实例还会实时向谷歌中央DoS监测系统反馈所接收到的请求信息,这些信息包括了网络层负载平衡传导器不具备的应用层信息。如果监测到疑似攻击,中央DoS监测系统同样会让GFE实例丢弃或节流可疑攻击流量。用户认证在DoS防御之后,接下来就是谷歌的中央身份服务系统,该服务从终端用户的登录页面开始,除了要求所需的用户名密码之外,系统内部还会对最近登录地点和登录设备进行智能校验。在认证步骤完成之后,身份服务系统将会向用户分发一个如cookie或OAuth令牌的凭据,以进行后续请求调用。当然,在登录时,用户还可以采用如OTP动态口令、防钓鱼安全密钥等双因素认证措施。另外,谷歌还与

20、安全密码联盟(FIDO)共同协定了U2F用户双因素认证标准,制作了YubiKey外连密钥登录USB适配器,用户可以通过购买该适配器实现更安全的登录。运维安全安全软件开发除了前述的安全控制系统之外,谷歌还提供了防止开发人员引入某些安全缺陷的开发库。例如,在WebAPP方面,谷歌设置有排除XSS漏洞的开发库和框架。另外,谷歌还配置有大量自动化安全缺陷检测工具,如Fuzzer、静态代码分析工具、网页安全扫描器等。最后,谷歌还会从快速简单的缺陷识别到深度的风险发现,对开发代码进行全方位的手工安全审查。这些手工审查由包括Web安全、加密和操作系统安全等各方面专家组成的团队实施。除此之外,谷歌还通过实施的

21、漏洞奖励计划,来发现应用程序和基础设施存在的漏洞,到目前为止,谷歌已经为此计划支付了数百万美元的漏洞赏金。另外,谷歌还投入了大量智力和精力,致力于寻找其基础设施中在用和上游产品的0-day漏洞。例如,由谷歌工程师发现的心脏出血漏洞就是最好的典型,而且谷歌安全团队一直是CVE漏洞库的最多提交者,并且是LinuxKVMhypervisor虚拟化技术漏洞的发现和修复者。员工设备和凭据安全保护为了保护员工设备和凭据免受入侵、窃取和其它非法内部活动,谷歌在这方面投入了大量资金和代价,这也是谷歌确保自身基础设施安全运行的关键组成部分。一直以来,针对谷歌员工的高端复杂钓鱼攻击总是持续不断,为了防止这种攻击,

22、我们强制员工把存在钓鱼风险的OTP口令认证方式更换成了U2F的USB适配器安全密钥。另外,谷歌投入了大量资金开发了员工客户端安全操作监控系统,同时,还配置了针对员工客户端的安装程序、下载程序、浏览器扩展和访问内容的安全扫描系统。进入公司内部局域网,并不意味着可以获取到谷歌的访问控制权限。谷歌使用了应用级别的访问控制管理,只允许那些来自特定管理设备、网络或地埋位置的限定用户才能访问内部控制程序。(详细参见BeyondCorp内容)内部风险消控谷歌严格限制具备管理权限的员工数量,并对其网络行为进行了积极监管。另外,对于一些特殊任务,尽量不需要权限许可,而使用自动化的安全可控方式完成,以消除权限许可

23、需求的泛滥。这就要求某些活动需行为双方批准,同时将引入限制性API以排除信息泄露风险。谷歌员工对终端用户信息的获取,会被底层架构信息钩子(hook)记录,谷歌安全团队会对所有访问类型进行实时监控,并对其中的异常可疑事件开展调查。入侵检测谷歌拥有成熟的数据处理管道,可以很好地集成基于主机、基于网络和基于服务的入侵检测信号。内置在这些管道内的安全规则和探测机制会及时向运维安全人员发出事件警告,谷歌的事件响应团队也实行全天候待命。同时,谷歌内部运维团队也定期实施红方练习,以不断衡量和提高检测响应机制的有效性。谷歌云存储平台(GCP)安全设计在此,我们将以谷歌运算引擎(GCE)服务为例,简单描述谷歌云存储平台(GCP)的安全设计和改进。GoogleComputeEngine,GCE是谷歌旗下的IaaS(基础设施即服务)的一个基础架构服务产品,可以让你用Google的服务器来运行Linux的虚拟机,得到更强大的数据运算能力。谷歌在I/O大会上表示,ComputeEngine服务比对手的产品更具性价比,每一美元所购买的计算能力要高出对手50%。谷歌ComputeEngine服务的背后是由大量的Linux虚拟机组成,此外用于该服务的处理器共计771886核。GCE服务可以使客户在谷歌基础设施上运行谷歌Linux虚拟机,来得到强

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论