猜你喜欢
Linux内核安全模块深入剖析

Linux内核安全模块深入剖析

书籍作者:李志 ISBN:9787111549055
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:9091
创建日期:2021-02-14 发布日期:2021-02-14
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介
《Linux内核安全模块深入剖析》对Linux内核安全子系统做了系统而深入的分析,内容包括Linux内核的自主访问控制、强制访问控制、完整性保护、审计日志、密钥管理与密钥使用等。
  《Linux内核安全模块深入剖析》可供希望深入了解Linux安全的读者参考,也可供计算机安全专业的学生和计算机安全领域的从业人员阅读,还可用作计算机安全高级课程的教材。
作者简介
李志,毕业于中国科学院计算技术研究所,先后任职于联想集团联想研究院、朗讯科技贝尔实验室、凝思科技有限公司和华为技术有限公司中央研究院。近几年专注于Linux内核安全的开发与研究。参与设计并开发了凝思磐石安全操作系统,另有安全相关专利若干。
前言
在很多数人眼中,操作系统内核是神秘的,安全是说不清的,内核安全则是子虚乌有的。如果说内核是一座险峻的高山,内核安全则是隐藏在高山之中的一个深不可测的洞窟。
  即使对内核开发人员,内核安全也是陌生的。Linux的创始人Linus Torvalds就曾说他不懂安全。内核开发人员不了解安全的原因主要有两个:其一,内核安全涉及领域太多了,Linux是庞大的,很少有人能对所有领域都了解;其二,如Linus Torvalds所说,安全是“软”科学,没有一个简单的量化的指标去衡量安全,开发人员自然是重视实实在在的功能,而轻视“虚无缥缈”的安全。
  我十二岁的儿子看到我整日为内核安全而忙碌,就问我什么是内核,什么是安全。经过我的解释,他对内核的印象就是隐藏在网络中的一个坚硬的“蛋”,内核安全就是“蛋”里面隐藏的“武林高手”。当不怀好意的攻击者攻击系统时,“蛋”中隐藏的“武林高手”就会跳出来保卫系统。基于这种理解,他画出了下面这幅画:
  上面这幅童真的绘画表达了三个意思。其一是网络,在万物互联的今天,安全越来越难以忽视。其二是内核,处于底层的内核为上层的用户态应用提供支持和保障,其中也包含安全保障。其三是内核安全,今天的Linux内核已经拥有相当多的安全机制来应对各种安全威胁。但是Linux内核安全十分复杂,不易掌握。至本书成稿时,国内外还没有一本系统、全面地介绍Linux内核安全的书。
  屈指算来,我从事内核安全相关工作已是第八个年头。当年的一个面试邀请电话让我在一个仲春的清晨伴着蒙蒙细雨步入了Linux内核安全领域。几年后,就在我对内核安全有了一点点理解,并沾沾自喜时,我亲耳聆听了Linux内核安全领域负责人James Morris的演讲。我突然发现他讲的大部分东西我都听不懂。好吧,不懂可以学。本书的提纲可以说是James Morris提供的。我将他演讲中提到的内核安全相关内容研究了一遍,呈现在这里。
  本书的内容有相当一部分出自我对Linux内核源代码代码的分析。很多内核安全模块缺少文档,读代码是了解它们最直接、最准确的方式。代码面前,了无秘密。但是为了不让读者因为陷入代码的细节之中,而失去对软件框架的掌握,本书尽量避免简单罗列源代码,所列代码一般是关键代码,用省略号表示略去的不重要的部分。本书也列出了一些用户态工具的用例,讲解用户态工具的使用不是本书的目的,列出工具的用例是为了让读者对内核安全有些感性认识。
目录
前言

第1章 导言
1.1 什么是安全
1.2 计算机系统安全的历史
1.3 计算机系统安全的现状
1.4 Linux内核安全概貌

第一部分 自主访问控制
第2章 主体标记与进程凭证
2.1 进程凭证
2.2 详述
2.2.1 lud和gid
2.2.2 系统调用
2.3 proc文件接口
2.4 参考资料
习题
第3章 客体标记与文件属性
3.1 文件的标记
3.2 文件属性
3.3 系统调用
3.4 其他客体
3.5 其他客体的系统调用
习题
第4章 操作与操作许可
4.1 操作
4.2 操作许可与操作分类
4.3 允许位
4,4设置位
4.4.1 文件
4.4.2 目录
4.5 其他操作的许可
4.6 系统调用
习题
第5章 访问控制列表
5.1 简介
5.2 扩展属性
5.3 结构
5.4 操作许可
5.5 两种ACL
5.6 与允许位的关系
5.7 系统调用
5.8 参考资料
习题
第6章 能力(capabilities)
6.1 什么是能力
6.2 能力列举
6.2.1 文件
6.2.2 进程
6.2.3 网络
6.2.4 ipc
6.2.5 系统
6.2.6 设备
6.2.7 审计
6.2.8 强制访问控制(MAC)
6.3 UNIX的特权机制
6.4 Linux的能力集合和能力机制
6.4.1 能力集合
6.4.2 能力机制
6.5 向后兼容
6.6 打破向后兼容
6.7 总结
6.8 参考资料
习题
……

第二部分 强制访问控制
第三部分 完整性保护
第四部分 审计和日志
第五部分 加密
第六部分 其他
标签
kernel,计算机,安全,Linux内核,Linux