书籍详情

计算机安全导论:深度实践

计算机安全导论:深度实践

作者:杜文亮 著

出版社:高等教育出版社

出版时间:2020-04-01

ISBN:9787040538823

定价:¥49.00

购买这本书可以去
内容简介
  《计算机安全导论:深度实践》是作者结合18年来在计算机安全教育和研发方面的经验编写而成的。《计算机安全导论:深度实践》涵盖计算机和网络空间安全的基础知识,包括软件安全、Web安全和网络安全。《计算机安全导论:深度实践》旨在帮助读者了解各种各样的攻击和防御的思想与原理。通过《计算机安全导论:深度实践》,读者可以养成良好的安全思维习惯,正确评估计算机和网络所面临的风险,提升发现和攻破软件及系统安全漏洞的能力,并提高设计实现软件的能力及系统防御能力。《计算机安全导论:深度实践》的特点是理论与实践相结合。对于每个涉及的理论,《计算机安全导论:深度实践》都使用一系列实验帮助读者加深对理论的理解,目的是让读者得到亲身体验。这些实验是作者花费16年心血精心设计的,它们已经在世界各地被广泛使用。《计算机安全导论:深度实践》适用于学生、计算机科学家、计算机工程师、程序员、软件开发人员、网络和系统管理员以及其他对计算机安全感兴趣的读者,可作为本科和研究生的计算机安全教材,也可作为自学者提高计算机安全技能的学习材料。《计算机安全导论:深度实践》特色:理论与实践相结合。既讲解攻击原理,又介绍攻击过程,提供完整的实验环境,每章都有对应的SEED实验,使读者身临其境体验攻击及防御过程。注重构建计算机安全知识体系。深入挖掘知识点的内在关联,深刻阐释攻击发生的共性原因及防御措施的本质特点,帮助读者建立扎实的计算机安全知识体系。深入细节、讲解透彻。从基础知识点入手,由浅入深、循序渐进地剖析攻击及防御的完整过程,直击重点难点,帮助读者快速提升实践能力。
作者简介
  杜文亮,1993年从中国科学技术大学获得学士学位(软件专业),1996年从佛罗里达国际大学获得硕士学位。1996-2001年在普渡大学计算机系攻读博士,并于2001年获得博士学位(计算机安全方向)。毕业后,成为雪城大学(Syracuse University)的助理教授。目前是该校电气工程与计算机科学系教授(终身教授),同时也是浙江大学客座教授。2001年开始一直为本科生和研究生讲授计算机安全和网络安全课程。为了让学生获得动手实践的机会,从2002年起开始研发动手实验,目前已开发30多个名为SEED的动手实验。这些实验目前广为人知,全球有1000多所学校正在使用或已经使用过这些实验。2010年,美国国家科学基金会在递交给国会的报告中把SEED项目作为一个模范项目。该报告名为《新挑战,新战略:在本科STEM教育中追求卓越》,它挑选了“在全国STEM教育中尖端的具有创造力的17个项目”。2017年,由于SEED实验的影响力,获得第21届信息系统安全教育大会颁发的“学术领导”奖。2019年,被雪城大学授予Meredith教授名誉。这是一个终身的名誉,是雪城大学教学奖。在计算机和网络安全领域的研究兴趣主要集中在系统安全方面。研究成果曾10次获得美国国家科学基金会奖,也曾获得一次Google公司的研究奖。先后发表100多篇论文。截至2019年10月,论文总被引用数超过14600次(基于GoogleScholar)。2003年在ACM-CCS学术会议上发表的一篇论文于2013年获得该会议颁发的时间测试奖(Test-of-TimeAward)。该奖项颁发给10年前在该会议上发表的有影响力的文章。目前的研究重点是智能手机安全性,在Android(安卓)的设计和实现中发现了许多操作系统内部存在的安全问题,并开发了新的机制来增强智能手机的系统安全性。
目录
第1部分 软件安全
第1章 Set-UID特权程序原理及攻击方法
1.1 特权程序存在的必要性
1.1.1 密码困境
1.1.2 不同类型的特权程序
1.2 Set-UID机制
1.2.1 超人的故事
1.2.2 特权程序的工作原理
1.2.3 一个Set-UID程序的例子
1.2.4 Set-UID机制的安全性
1.2.5 Set-GID机制
1.3 可能出现的问题:超人的遭遇
j.4 Set-UID程序的攻击面
1.4.1 用户输入:显式输入
1.4.2 系统输入
1.4.3 环境变量:隐藏的输入
1.4.4 权限泄露
1.5 调用其他程序
1.5.1 不安全的方式:使用system()
1.5.2 安全的方式:使用execve()
1.5.3 用其他语言调用外部命令
1.5.4 经验教训:隔离的原则
1.6 最小特权原则
1.7 总结
动手实验
习题
第2章 通过环境变量实现攻击
2.1 环境变量
2.1.1 如何访问环境变量
2.1.2 进程获取环境变量的方式
2.1.3 环境变量在内存中的位置
2.1.4 shell变量和环境变量
2.2 环境变量带来的攻击面
2.3 通过动态链接器的攻击
2.3.1 静态和动态链接
2.3.2 案例分析:LD_PRELOAD和LD_LIBRARY_PATH
2.3.3 案例分析:OSX动态链接器
2.4 通过外部程序进行攻击
2.4.1 两种调用外部程序的典型方式
2.4.2 案例分析:PATH环境变量
2.4.3 减小攻击面
2.5 通过程序库攻击
案例分析:UNIX中的Locale程序
2.6 通过程序本身的代码进行攻击
案例分析:在应用代码中使用getenv()函数
2.7 Set-UID机制和服务机制的比较
2.8 总结
动手实验
习题
第3章 Shellshock攻击
3.1 背景知识:shell函数
3.2 Shellshock漏洞
3.2.1 Shellshock漏洞
3.2.2 Bash源代码中的错误
3.2.3 Shellshock漏洞的利用
3.3 利用Shellshock攻击Set-UID程序
3.4 利用Shellshock攻击CGI程序
3.4.1 实验环境准备
3.4.2 Web服务器调用CGI程序
3.4.3 攻击者向Bash发送数据
3.4.4 实施Shellshock攻击
3.4.5 创建反向shell
3.5 针对PHP的远程攻击
3.6 总结
动手实验
习题
……
第4章 缓冲区溢出攻击
第2部分 Web安全
第3部分 网络安全
参考文献
猜您喜欢

读书导航