第4版新增内容
自本书第3版出版以来,计算机安全领域又持续出现了一些改进和创新。在新版本中,我们试图展现这些改进和创新,同时,力求在深度和广度上涵盖整个计算机安全领域。在第4版修订之初,许多讲授该领域课程的教授和从事该领域工作的专业人士又重新仔细地审查了本书的第3版。第4版修订和完善了其中多处描述,并对相关的图表进行了改进。
除了这些适用于教学和便于阅读方面的改进外,本书也对一些实质性的内容进行了修订。下面列出的是其中一些较显著的修订:
数据中心安全:第5章增加了一节有关数据中心安全的内容,其中包括有关可靠性等级的TIA-942标准的内容。
恶意软件:在第6章中,对有关恶意软件的内容进行了修订,包含了宏病毒及其结构的相关内容,因为现在它们是病毒恶意软件的最为常见的形式。
虚拟化安全:考虑到组织和云计算环境中对虚拟化系统的使用越来越多,在第12章中对有关虚拟化安全的内容进行了扩展,增加了用于增强这些环境安全的虚拟防火墙的讨论。
云安全:第13章新增了有关云安全的讨论,包括云计算的介绍、云安全的关键概念、云安全方法的分析和一个开源的示例。
IoT安全:第13章新增了有关物联网(Internet of Things,IoT)安全的讨论,包括IoT介绍、IoT安全问题综述和一个开源的示例。
SEIM:第18章更新了有关安全信息和事件管理(SIME)系统的讨论。
隐私:第19章针对隐私问题及其管理增加了有关道德和法律方法的讨论,以及与大数据相关的隐私问题。
认证加密:认证加密已经成为各种应用和协议中日益广泛使用的加密工具。第21章新增了有关认证描述的讨论,并描述了一个重要的认证加密算法—分支编码本(Offset CodeBook,OCB)模式。
背景
近年来,在高等教育中对计算机安全及相关主题的关注程度与日俱增。导致这一状况的因素很多,以下是其中两个突出的因素:
1)随着信息系统、数据库和基于Internet的分布式系统与通信广泛应用于商业领域,再加上各种与安全相关的攻击愈演愈烈,各类组织机构开始意识到必须拥有一个全面的信息安全策略。这个策略包括使用特定的软硬件和培训专业人员等。
2)计算机安全教育,也就是通常所说的信息安全教育(Information Security Education)或者信息保障教育(Information Assurance Education),由于与国防和国土安全密切相关,在美国和其他许多国家已经成为一个国家目标。NSA/DHS信息保障/网络防御国家卓越学术中心以政府的身份负责计算机安全教育标准的制定。
由此可预见,关于计算机安全的课程在大学、社区学院和其他与计算机安全及相关领域相关的教育机构中会越来越多。
目标
本书的目标是概览计算机安全领域的最新发展状况。计算机安全设计者和安全管理者关注的问题主要包括:定义计算机和网络系统面临的威胁,评估这些威胁可能导致的风险,以及制定应对这些威胁的恰当的、便于使用的策略。
本书将就以下主题进行讨论:
原理:虽然本书涉及的范围很广,但有一些基本原理会重复出现在一些领域中,比如有关认证和访问控制的原理。本书重点介绍了这些原理并且探讨了这些原理在计算机安全的一些特殊领域中的应用。
. 设计方法:本书探讨了多种满足某一方面的计算机安全需求的方法。
标准:在计算机安全领域,标准将越来越重要,甚至会处于主导地位。要想对某项技术当前的状况和未来的发展趋势有正确的认识,需要充分理解与该项技术相关的标准。
实例:书中的许多章中都包含一节来展示相关原理在真实环境中的应用情况。
对ACM/IEEE计算机科学课程2013的支持
本书是为学术研究人员和专业技术人员编写的。作为教科书,它面向的对象主要是计算机科学、计算机工程和电子工程专业的本科生,授课时间可以是一或两个学期。本书第4版的设计目标是支持ACM/IEEE计算机科学课程2013(CS2013)推荐的内容。CS2013课程推荐的内容首次包含了信息保障和安全(IAS),将其作为知识领域列入计算机科学知识体系之中。CS2013将所有需要讲授的课程内容分为三类:核心1级(所有的主题都应涵盖在课程体系中),核心2级(全部或大部分主题应当包含在课程体系中),选修内容(具有一定广度和深度的选修主题)。在IAS领域中,CS2013包含3个核心1级的主题、5个核心2级的主题和许多选修主题,每一个主题都包含一些子主题。本书包含CS2013的核心1级和核心2级的全部内容,同时也包含了CS2013的许多选修主题。表P-1列出了本书包含的关于IAS知识领域的内容。
表P-1本书包含的CS2013 IAS知识领域的内容
IAS知识单元 主题 本书覆盖情况
安全的基本概念(1级) CIA(机密性、完整性和可用性)
风险、威胁、脆弱点和攻击向量
认证与授权,访问控制(强制的与自主的)
信任和可信度
道德(责任公开) 第1、3、4、19章
安全设计原则(1级) 最小特权和隔离
安全缺省设置
开放式设计
端到端安全
深度防御
设计安全
安全和其他设计目标的权衡 第1章
安全设计原则(2级) 绝对中介
被审核的安全组件的使用
经济机制(减少可信计算基,最小化攻击面)
可用安全
安全组合性
防御、检测和威慑 第1章
防御性程序设计(1级) 输入检验和数据清洗
选择编程语言和类型安全语言
输入检验和数据清洗错误案例(缓冲区溢出、整数错误、SQL注入和XSS漏洞)
竞态条件
正确处理异常和非预期行为 第11章
防御性程序设计(2级) 第三方组件的正确使用
有效进行安全更新 第11、12章
威胁和攻击(2级) 攻击者的目标、能力和动机
恶意软件
拒绝服务和分布式拒绝服务
社会工程学 第6、7章
网络安全(2级) 网络特定威胁和攻击类型
使用密码学保证数据和网络安全
安全网络架构
防御机制和对策
无线网络、蜂窝式网络安全 第8、9章以及
第五部分
密码学(2级) 基本密码学术语
密码种类
数学基础概述
公钥基础设施 第2章以及
第四部分
覆盖CISSP科目领域情况
本书涵盖了CISSP(注册信息系统安全师)认证所规定的所有科目领域。国际信息系统安全认证协会(简称(ISC)2)所设立的CISSP认证被认为是信息安全领域认证中的“黄金准则”。CISSP认证是安全产业唯一一个被广泛认可的认证,包括美国国防部和许多金融机构在内的组织机构,时下都要求其网络安全部门的人员具有CISSP认证资格。2004年,CISSP成为首个获取ISO/IEC 17024(《General Requirements for Bodies Operating Certification of Persons》)官方认证的信息技术项目。
CISSP考试基于公共知识体系(CBK),信息安全实践大纲由国际信息系统安全认证协会开发和维护,这是一个非营利组织。CBK制定了组成CISSP认证要求的知识体系的8个领域。
这8个领域均包含在本书中,具体如下:
安全和风险管理:机密性、完整性和可用性概念;安全管理原则;风险管理;合规性;法律和法规问题;职业道德;安全策略、标准、规程和指南。(第14章)
资产安全:信息和资产分类;所有权(如数据所有者、系统所有者);隐私保护;适当存留;数据安全控制;处置要求(如标记、标注和存储)。(第5、15、16、19章)
安全工程:使用安全设计原则的工程过程;安全模型;安全评估模型;信息系统安全功能;安全架构、设计和解决方案元素漏洞;基于Web的系统漏洞;移动系统漏洞;嵌入式设备和信息物理系统漏洞;密码学;场地和设施设计的安全原则;物理安全。(第1、2、13、15、16章)
通信和网络安全:安全网络架构设计(例如,IP和非IP协议、分段);安全网络组件;安全通信信道;网络攻击。(第五部分)
身份和访问管理:物理和逻辑资产控制;人和设备的身份识别和认证;身份即服务(例如,云身份);第三方身份服务(例如,本地服务);访问控制攻击;身份和访问配置生命周期(例如,配置审查)。(第3、4、8、9章)
安全评估与测试:评估与测试策略;安全过程数据(例如,管理和运行控制);安全控制测试;测试输出(例如,自动化方式、手工方式);安全架构漏洞。(第14、15、18章)
安全运营:调查支持和需求;日志和监视活动;资源配置;基本安全操作概念;资源保护技术;事故管理;预防法;补丁和漏洞管理;变更管理过程;恢复策略;灾难恢复过程和计划;业务连续性计划和演练;物理安全;个人安全问题。(第11、12、15、16、17章)
软件开发安全:软件开发生命周期中的安全;开发环境安全控制;软件安全有效性;获取软件安全影响。(第二部分)
支持NSA/DHS认证
美国国家安全局(NSA)和美国国土安全部(DHS)联合创建了信息保障/网络防御国家卓越学术中心(The National Centers of Academic Excellence in Information Assurance/Cyber Defense(IA/CD))。创建这个中心的目标是,通过促进IA领域内高等教育和科研的发展,以及培养一批在各个学科中具有IA专门知识的专业人员,尽量减少本国信息基础设施所存在的缺陷。为了实现这个目标,美国国家安全局/国土安全部为一些两年制和四年制的机构定义了一组知识单元,这些知识单元必须包含在课程体系中,这样可以将它们纳入IA/CD中的NSA/DHS的国家卓越学术中心项目。每一个知识单元都由要求涵盖的最基本的一些主题及一个或多个学习目标构成。是否纳入项目取决于其是否具有一定数量的核心和可选知识单元。
在计算机安全领域,2014年的知识单元(Knowledge Unit)文件列举了以下核心单元:
网络防御:包括访问控制、密码学、防火墙、入侵检测系统、恶意活动检测及其应对措施、信任关系以及深度防御。
网络威胁:包括攻击类型、法律问题、攻击面、攻击树、内部人员问题以及威胁信息源。
基本安全设计原则:共包含12条原则,这些原则将在本书的1.4节中阐述。
信息保障基本原理:包括威胁与脆弱性、入侵检测与防御系统、密码学、访问控制模型、身份识别/认证、审计。
密码学导论:包括对称密码学、公钥密码学、散列函数、数字签名。
数据库:包括数据库概述、数据库访问控制以及推理的安全问题。
本书广泛地涵盖了以上这些领域。此外,本书还涉及部分可选知识单元。
本书内容
本书分为五个部分:
计算机安全技术与原理
软件和系统安全
管理问题
密码编码算法
网络安全
本书还配有一些在线章节和附录,介绍一些选定的主题。
本书附有常用的缩略语表和参考文献。此外,每章均包括习题、复习题和关键术语。
教学辅助材料
本书的主要目标是尽可能地为令人兴奋的、高速发展的信息安全学科提供一个有效的教学工具。这一目标不仅体现在本书的组织结构上,也体现在教学辅助材料上。本书提供了以下补充资料,以便教师组织教学工作。
项目手册:项目手册包括文档和便于使用的软件,以及后续列出的为每类项目推荐的项目任务。
解决方案手册:每章章末的复习题和习题的答案或解决方案。
PPT 幻灯片:涵盖本书所有章节的幻灯片,适合在教学中使用。
PDF 文件:本书中所有的图片和表格。
练习库:每章都有一组用于练习的问题。
教学大纲样例:本书包含的内容超出了一学期所能讲授的内容。为此,本书提供了一些教学大纲样例,目的是为教师在有限时间内使用本书提供建议,这些样例都是基于教授使用本书以前版本的真实教学经历给出的。
所有教辅材料都可以在本书的教师资源中心(Instructor Resource Center, IRC)获得,可以通过出版商网站www.pearsonhighered.com/stallings或者点击本书的网站WilliamStallings.com/ComputerSecurity中的Pearson Resources for Instructors链接获得。
另外,本书的Web站点WilliamStallings.com/ComputerSecurity(点击Instructor Resources链接)还为教师提供了下列支持:
使用本书讲授其他课程的网站链接信息。
提供给使用本书的教师的Internet邮箱列表的签名信息,这使得使用本书的教师之间、教师与本书作者之间可以交换信息,交流对本书的建议,探讨其中的问题等。
学生资源
在第4版中,大量的面向学生的原始辅助材料都可以在两个网站上获取。本书的配套网站WilliamStallings.com/ComputerSecurity(点击Student Resources链接)中包括一系列按章节组织的相关链接,以及本书的勘误表。
Premium Content站点包含了如下资料:
在线章节:为了控制本书的内容量和销售价格,本书有三章内容以PDF文件的形式提供。这些章节已在本书的目录中列出。
在线附录:本书教学辅助资料中引用了大量有趣的主题,但在印刷版中没有详细地展开。为此,我们为感兴趣的学生提供了有关这些主题的10个附录,这些附录也在本书的目录中列出。
课后习题及答案:提供了一组独立的课后习题并配有答案,便于学生检查自己对课本内容的理解情况。
项目和其他学生练习
对许多教师来说,计算机安全课程的一个重要组成部分是一个项目或一组项目。通过这些可以自己动手实践的项目,学生可以更好地理解课本中的概念。本书对项目的组件提供了不同程度的支持。教学辅助材料不仅包括如何构思和指定这些项目,而且还包含不同项目类型及作业的用户手册。这些都是专门为本书设计的。教师可以按照以下分类布置作业:
黑客练习:有两个项目可以帮助学生理解入侵检测和入侵防御。
实验室练习:一系列涉及编程和书中概念的训练项目。
安全教育项目:一系列动手练习或实验,涵盖了安全领域广泛的主题。
研究项目:一系列研究型作业,引导学生就Internet的某个特定主题进行研究并撰写一份报告。
编程项目:涵盖广泛主题的一系列编程项目。这些项目都可以用任何语言在任何平台上实现。
实用安全评估:一组分析当前基础设施和现有机构安全性的实践活动。
防火墙项目:提供了一个可移植的网络防火墙可视化模拟程序,以及防火墙原理教学的相关练习。
案例学习:一系列现实生活中的案例,包括学习目标、案例简介和一系列案例研讨问题。
阅读/报告作业:一组论文清单,可以分配给学生阅读,要求学生阅读后写出相应的报告,此外还有与教师布置作业相关的内容。
写作作业:一系列写作方面的练习,用于加强对书中内容的理解。
计算机安全教学网络广播:为强化课程,提供了网络广播地址目录。使用该目录的高效方法是选取或者允许学生选取一个或几个视频观看,然后写一篇关于该视频的报告或分析。
这一整套不同的项目和其他学生练习,不仅是本书的丰富多彩的学习体验的一部分,而且从这些项目和练习出发,还可以方便地根据实际情况制定不同的教学计划,以满足不同教师和学生的特殊需求。更为详细的内容请参见附录A。
致谢
本书第4版受益于很多人的评论,他们付出了大量的时间和精力。以下是审阅本书全部或者大部分原稿的教授和教师:Bernardo Palazzi(布朗大学)、Jean Mayo(密歇根科技大学)、Scott Kerlin(北达科他大学)、Philip Campbell(俄亥俄大学)、Scott Burgess(洪堡州立大学)、Stanley Wine(纽约市立大学亨特学院)和E. Mauricio Angee(佛罗里达国际大学)。
还要感谢那些审阅本书的一章或几章的技术细节的人,他们是:Umair Manzoor(UmZ)、Adewumi Olatunji (FAGOSI Systems, Nigeria)、Rob Meijer、Robin Goodchil、Greg Barnes(Inviolate Security有限责任公司)、Arturo Busleiman(Buanzo咨询)、Ryan M. Speers(达特茅斯学院)、Wynand van Staden(南非大学计算机学院)、Oh Sieng Chye、Michael Gromek、Samuel Weisberger、Brian Smithson(理光美洲公司,CISSP)、Josef B.Weiss(CISSP)、Robbert-Frank Ludwig(Veenendaal, ActStamp信息安全公司)、William Perry、Daniela Zamfiroiu(CISSP)、Rodrigo Ristow Branco、George Chetcuti(技术编辑,TechGenix)、Thomas Johnson(一家位于芝加哥的银行控股公司的信息安全主管,CISSP)、Robert Yanus (CISSP)、Rajiv Dasmohapatra(Wipro有限公司)、Dirk Kotze、Ya抋kov Yehudi和Stanley Wine(巴鲁克学院杰克林商学院计算机信息系统部门客座教师)。
Lawrie Brown博士首先感谢Stallings,感谢在一起写作的过程中他所带来的快乐。也想感谢澳大利亚国防大学工程与信息技术学院的同事们,感谢他们的鼓励和支持。特别是,感谢Gideon Creech、Edward Lewis和Ben Whitham对部分章节内容的评审。
最后,我们也想感谢那些负责本书出版的人们,他们的工作都很完美。这些人包括培生出版公司的员工,特别是编辑Tracy Dunkelberger、编辑助理Kristy Alaura和出版经理Bob Engelhardt。同时感谢培生出版公司的市场营销人员,没有他们的努力,这本书不可能这么快到达读者手中。