Skip to Content
Google系统架构解密: 构建安全可靠的系统
book

Google系统架构解密: 构建安全可靠的系统

by Heather Adkins, Betsy Beyer, Paul Blankinship, Piotr Lewandowski, Ana Oprea, Adam Stubblefield
September 2021
Beginner to intermediate
392 pages
12h 13m
Chinese
Posts & Telecom Press
Content preview from Google系统架构解密: 构建安全可靠的系统
部署代码
217
工程师部署包含已知漏洞的旧版本代码。
CI
系统配置错误
,允许执行任意源库发起的构建请求。这么一来,恶意攻击者就可以
从包含恶意代码的源库进行构建。
恶意攻击者将自定义构建脚本上传至
CI
系统
,窃取签名密钥。然后,使用该密钥对恶
意二进制文件进行签名和部署。
恶意攻击者欺骗
CD
系统使用包含后门编译器或者可生成恶意二进制文件的构建工具。
综合整理完潜在攻击者和威胁的列表后,就可以将识别出的风险与已采取的缓解措施对应
起来,并将当前缓解策略的瓶颈加以记录,由此可得出当前系统面临风险的全景视图。如
果有威胁缺失相应的缓解措施,或现存缓解措施存在重大不足的情况,则需要改进。
14.3
 最佳实践
以下最佳实践有助于缓解威胁,收敛威胁模型中已确定的风险,并不断提高软件供应链的
安全性。
14.3.1
 强制做代码审查
代码检查是一种让另一个人(或另外几个人)在签入或部署源代码变更前做检查的实践
1
除了提高代码安全性外,代码审查还为软件项目提供了多个好处:促进知识共享学习,落
地代码规范,提高代码可读性并减少错误
2
——所有这些都有助于建立重视安全性和可靠性
的文化(更多信息参见第
21
)。
从安全性角度来看,代码审查是一种多方授权的形式
3
,这意味着任何人都无权自行提交更
改。如第
5
章所述,多方授权在安全性方面有许多益处。
必须进行强制代码审查才能保证成功。如果攻击者可以轻易地退出审查,就不会被震慑
住!为了能发现问题,代码审查还必须足够全面。审查员必须清楚变更的细节及其对系统
的影响,或者让代码的作者解释清楚。否则,该过程可能只会流于形式 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

数据库系统内幕

数据库系统内幕

Alex Petrov
管理Kubernetes

管理Kubernetes

Brendan Burns, Craig Tracey
Go语言编程

Go语言编程

威廉·肯尼迪

Publisher Resources

ISBN: 9787115569257