0.3 小结
阅读完本章后,你应该充分掌握了以下基础知识:威胁建模的基础知识、如何适应系统开发生命周期、重要的安全概念和术语,以及对理解系统安全至关重要的原则。在进行威胁建模时,你将在系统设计中寻找这些安全原则,以确保适当地保护系统免受入侵或破坏。
在第1章中,我们将讨论如何构造系统设计的抽象表示,以识别安全或隐私问题。在后面的章节中,我们将介绍基于本章中的概念和第1章中的建模技术的特定威胁建模方法论,以使用威胁建模活动进行完整的安全威胁评估。
[1]这个短语是由Wilf Hey和陆军专家William D. Mellin提出的。
[2]“货物崇拜是一种沿袭千年的信仰体系,在该体系中,信奉者会举行信奉仪式,他们相信仪式会导致社会交付货物技术的进步。”——维基百科,2020.10.24。
[3]LAMP堆栈由Linux OS、Apache Web服务器、MySQL数据库和PHP脚本语言的集合组成。
[4]MEAN堆栈由MongoDB、Express.js、Angular.js和Node.js组成。
[5]Arvinder Saini,“How Much Do Bugs Cost to Fix During Each Phase of the SDLC?”,软件完整性博客,Synopsis,2017年1月,https://oreil.ly/NVuSf;Sanket,“Exponential Cost of Fixing Bugs”,DeepSource,2019年1月,https://oreil.ly/ZrLvg。
[6]“What Is Serverless Computing?”,Cloudflare,2020年11月访问,https://oreil.ly/7L4AJ。
[7]Isaac Sacolick,“What Is CI/CD? Continuous Integration and Continuous Delivery Explained”, InfoWorld,2020年1月,https://oreil.ly/tDc-X。
[8]Barry Boehm,软件工程经济学(Prentice Hall,1981年)。
[9]凯拉·马修斯(Kayla Matthews),“What Do IoT Hacks Cost the Economy?”,IoT For All,2018年10月,https://oreil.ly/EyT6e。
[10]“What is WebAuthn?”,Yubico,https://oreil.ly/xmmL9。
[11]Christoph Kern,“Preventing Security Bugs through Software Design”,USENIX,2015年8月,https://oreil.ly/rcKL_。
[12]“外部”在此处是相对的,并且特定于授权上下文,例如,操作系统、应用程序、数据库等。
[13]有人说,DREAD已经失去了作用,参见艾琳·米奇林(Irene Michlin),“Threat Prioritisation:DREAD Is Dead, Baby?”,NCC Group,2016年3月,https://oreil.ly/SJnsR。
[14]NIST 800-53修订版4,“Security and Privacy Controls for Federal Information Systems and Organizations”:B-5。
[15]NIST 800-53修订版4,“Security and Privacy Controls for Federal Information Systems and Organizations”:B-12。
[16]NIST 800-160第1卷,“Systems Security Engineering:Considerations for a Multidisciplinary Approach in the Engineering of Trustworthy Secure Systems”:166。
[17]“Functional Safety and IEC 61508”,国际电工委员会,https://oreil.ly/SUC-E。
[18]J. Saltzer和M. Schroeder,“The Protection of Information in Computer Systems”,弗吉尼亚大学计算机科学系,https://oreil.ly/MSJim。
[19]“Zero Trust Architecture”,国家先进网络安全中心,https://oreil.ly/P4EJs。
[20]Brook S. E. Schoenfield,威胁建模专家和大量的作者提醒我们,“观察到相互不信任”的观念早在2003年4月就已经被Microsoft提出,但是很遗憾,我们无法找到相关资料。
[21]Christoph Kern,“Securing the Tangled Web”,acmqueue,2014年8月,https://oreil.ly/ZHVrI。
[22]Eric Bonabeau,“Understanding and Managing Complexity Risk”,MIT Sloan ManagementReview,2007年7月,https://oreil.ly/CfHAc。
[23]Brook S. E. Schoenfield, Secrets of a Cyber Security Architect (Boca Raton, FL:CRC Press, 2019).
[24]当然,除了使用copyleft许可证和开源项目时。
[25]“Humans Are the Weakest Link in the Information Security Chain”,Kratikal Tech Pvt Ltd,2018年2月,https://oreil.ly/INf8d。
[26]某些安全功能可能会对可用性造成负面影响,因此,如果用户可以在部署系统时启用某些安全功能,则默认可以禁用某些安全功能。