带你走进Linux内核安全新世界
什么是安全?“1500多年前,由从梵文译成汉文的《百喻经·愿为王剃须喻》中讲述了亲信救王的故事。故事中写道:“昔者有王,有一亲信,于军阵中,殁命救王,使得安全。”这里的安全是指一种状态,在这种状态下,某种对象或者对象的某种属性是不受威胁的。”...............
更多内核安全、eBPF分析和实践文章,请关注博客和公众号:
CSDN博客:内核功守道
公众号: 内核功守道
知识背景
什么是安全?“1500多年前,由从梵文译成汉文的《百喻经·愿为王剃须喻》中讲述了亲信救王的故事。故事中写道:“昔者有王,有一亲信,于军阵中,殁命救王,使得安全。”这里的安全是指一种状态,在这种状态下,某种对象或者对象的某种属性是不受威胁的。”–胥峰(《Linux系统安全》作者)。
Linux内核安全是个非常复杂的话题,防御机制、加固配置、漏洞利用等等挑战性的技术。在进行加固防御的过程中,又会产生性能或者系统稳定性相关的影响,所以Linux内核的安全性是全局、牵一发而动全身的问题。
具体介绍
接下来会从内核安全相关的书籍、技术网站Blog、以及顶会论坛资料的角度,来带领大家走入内核安全领域的世界。大家可以通过学习这些书籍、网站、会议等资料,并结合内核代码来分析消化内核安全相关知识点,这样会对Linux内核机制有更深入的理解,对内核安全产生兴趣,而兴趣,就是最好的老师。
一、书籍
1、《内核漏洞的利用与防范》
作者: Enrico Perla/Massimiliano Oldani
出版社: 机械工业出版社
系统地讲解内核级别漏洞利用所需的理论技术和方法,共分为4个部分:
- 第一部分介绍漏洞利用的目标、内核以及理论基础;
- 第二部分深入介绍了目前主流操作系统的细节,并针对不同错误类别分别编写了漏洞利用程序;
- 第三部分将关注点从本地场景转移到远程利用的情景;
- 第四部分介绍未来内核的攻防模式。
系统地讲解内核级别漏洞利用所需的理论技术和方法,并将其应用于Linux内核。内容详实,实例丰富,可操作性强,涉及系统内核漏洞利用的各个方面,包括底层系统编程、底层系统攻击、漏洞利用和漏洞利用对策,非常值得内核开发工程师、内核安全和系统安全工程师查阅学习。
2、《Linux内核安全模块深入剖析》
作者: 李志
出版社: 机械工业出版社
对Linux内核安全子系统做了系统而深入的分析,内容包括:
- 自主访问控制
- 强制访问控制
- 完整性保护
- 审计日志
- 密钥管理与密钥使用
填补了国内外关于Linux内核安全的一个空白,全书采用源码剖析与用户态工具使用相结合的方式,对Linux内核安全模块进行了讲解,既避免了冗长的代码罗列,也消除了读者的“隔靴搔痒”之感。
3、《Linux安全技术内幕》
作者: 李洋
出版社: 清华大学出版社
早期Linux安全书籍,全面、深入,和系统的分析,内容包括黑客攻击的基本技术、Linux面临的安全威胁、Linux安装与启动、Linux系统安全管理、Linux网络服务安全管理、Linux核心安全技术、Linux优秀开源安全工具等。
4、Mastering Linux Security and Hardening
作者: Donald A. Tevault
出版社: Packt出版社
从Linux系统环境的角度,防止攻击者破坏系统,构建一个更安全的Linux环境。通过分析各种Linux安全技术,如加密文件系统、保护用户帐户、身份验证过程、高级Linux权限、访问控制、特殊模式等方面的实际操作技能,并创新性的讲解了安全部署和异常问题的解决方案。
5、Linux系统安全:纵深防御、安全扫描与入侵检测
作者: 胥峰
出版社: 机械工业出版社
这是一部从技术原理、工程实践两个方面系统、深入讲解Linux系统安全的著作,从纵深防御、安全扫描、入侵检测3个维度细致讲解了如何构建一个如铜墙铁壁般的Linux防护体系。
以上五本书从各个角度对Linux内核安全以及内核系统进行了深入的剖析,下面整理总结下涉及到内核安全的网站、Blog等。
二、技术网站Blog
1、Pax/Grsecurity—https://grsecurity.net/
这里着重介绍一下在内核安全领域开创一个时代的团队:Pax/Grsecurity。为Linux内核乃至操作系统的安全做出的创新性贡献,也是史诗级别。过去的N年里 Pax/Grsecurity为 Linux 内核安全做出了巨大贡献,但时至今日Linux内核社区都不愿意接受(What F**k !!!)。传统意义上的GNU/Linux 的安全性可能只对脚本小子会有些防御效果,对于很多高级内核攻击手段,只能看天意。什么?你说SELinux…,建议去了解下NSA是如何推动SELinux作为LSM初始成员,再看看现在Five-Eyes国家用的是什么,你就会明白一切。
传统的内核安全机制LSM (AppArmor SELinux Smack TOMOYO Landlock),基本上是对权限以及信息流的控制,而Pax/Grsecurity通过安全改进大幅度增强了内核的安全防御边界。在操作系统级别的安全防御领域,甚至对Windows以及 BSD以及CPU处理器厂家产生了深远的影响。
目前Pax/Grsecurity主要在领域做Linux Kernel Hardening,分别如下:
a.Memory Corruption Defenses
b.Filesystem Hardening
c.Miscellaneous Protections
d.RBAC
e.GCC Plugins
以上内容只是Pax/Grsecurity的冰山一角,后续会专门写一期自从“方舟之役”后,关于Pax/Grsecurity和KSPP (Kernel Self Protection Project)之间的“爱恨情仇”,以及目前的发展状况。
2、HardenedVault—https://hardenedvault.net/
一群由老派黑客,密码朋克和固执的工程师组成的团队。最早成立于 2017 年末的一个安全研究研讨会,其重点领域是基础设施安全。过去做了一些有趣的工作,特别是在密码通信协议、固件安全、Linux内核加固和硬件安全方面。
VED (Vault Exploit Defense): Linux内核威胁检测与防护系统,在解决以下类型Linux内核漏洞问题和防护加固方面走在了业界领先地位。更适合部署在车联网、云原生基础架构环境下,作为Linux内核安全加固防御方案。
漏洞类型:
- 缓冲区溢出(堆/栈/静态数据)
- 堆对象错误行为(double-free, use-after-free, etc)
- 整数溢出(向下越界分配,缓冲区溢出,引用计数,etc)
- 竞争条件
- 信息泄漏
漏洞利用方法:
- 执行注入的shellcode,比如ret2usr
- 执行现有的代码构建ROP/JOP链条
- 任意读,利用信息泄漏
- 任意写,污染关键数据结构
目前HardenedVault已经将VED开源:https://github.com/hardenedvault/ved
3、安全内参—https://www.secrss.com/
4、安全客—https://www.anquanke.com/
5、Freebuf—https://www.freebuf.com/
6、嘶吼—https://www.4hou.com/
7、http://securityaffairs.co/wordpress/
8、Linux Kernel CVE Details—https://www.cvedetails.com/product/47/Linux-Linux-Kernel.html?vendor_id=33
9、https://www.blackhat.com/
10、https://www.efficios.com/
11、https://redcanary.com/blog/
12、https://blog.cloudflare.com/
13、https://www.kicksecure.com/
14、https://www.memorysafety.org/blog/
15、https://www.cnxct.com/
三、顶会论坛
在世界范围内的安全领域有四大顶会,分别为:
- USENIX Security(USENIX Security Symposium)
- Oakland S&P(IEEE Symposium on Security & Privacy)
- NDSS(Network and Distributed System Security Symposium)
- CCS(ACM Conference on Computer and Communications Security)
作为Linux内核开发者,我们也需要知道在Linux Foundation旗下的内核Security会议论坛以及LKML邮件列表信息,在2020年前都是线下论坛,2020-2021大多为只有线上会议,从今年开始,逐渐恢复了线下举办活动,并同时增加线上会议,使受众面更加广泛。
1、Linux Security Summit (LSS)
每年两次,分为北美(North America,每年5-6月份期间)和欧洲(Europe,每年8-9月份期间)。
2、Open Source Summit(OSS)
内核开源大会,也会有Security专场,今年是9月份在爱尔兰举办。
3、LKML–LSM(Linux Security Modules)
http://www.spinics.net/linux/fedora/linux-security-module/
4、https://open-security-summit.org/
5、其他安全领域会议参考这个网站列表:https://sec-deadlines.github.io/
更多推荐
所有评论(0)