Ftrace训练营火热报名中:Ftrace训练营:站在设计者的角度来理解ftrace(限50人)。训练营第一期报名已圆满成功,好评如潮。第二期课程正在进行中,第三期报名正在火爆进行中(咨询小月微信:linuxer2016)。
ARM安全架构训练营2期火热报名中:阅码场训练营:ARM安全架构之Trustzone-TEE实战。报名咨询客服(小月微信:linuxer2016)。
ARM架构与调优调试训练营火热报名中:阅码场训练营:ARM架构与调试调优。报名咨询客服(小月微信:linuxer2016)。
作者简介
许庆伟,Linux Kernel Security Researcher & Performance Developer
背景分析
随着云网边端的急速发展,越来越多的智能设备被人们所使用,平时生活中变得无法离开它们。伴随而来的数据泄密、服务器攻击、钓鱼邮件等各种黑客攻击行为,也随之大幅度增加。我们知道,不管是用Windows还是Linux系统,基座都在于内核Kernel,而内核的安全也就是系统中安全体系的核心,也是重中之重。
Linux Kernel Defence Map
Linux内核安全是个很复杂的话题,接下来的内容主要聚焦在以下几点:
1.漏洞类型
2.漏洞利用技术
3.攻击检测机制
4.防御机制
首先祭出经典的Linux Kernel Defence Map,高清图可扫码进文末群中领取。
话不多说,下面从脚本编写、漏洞利用、Debugging技巧、二进制分析以及内核安全体系这六个角度,直接分享书单以及相关分析,来看看研究内核安全领域必读的10本书。
1、《Linux命令行与shell脚本编程大全》作者:Ricahard Blum
虽然我们很多时候戏称安全工程师,尤其是攻击团队为脚本小子,但是从学习Linux内核,尤其是内核安全的角度,熟练掌握Shell脚本尤为重要。本书可以作为初学者入门的一本书,从理论到实践,对Linux命令行和Shell脚本编程进行了详细且全方位的讲解和分析。
2、《Linux Shell脚本攻略》作者:Clif Flynt等
作为第一本书脚本编程和利用的进阶实用书籍,会教你如何使用寥寥几行脚本就可以实现高级复杂的功能,如数据处理、文件分析、任务自动化等等功能。这些功能不仅会大幅度提升开发工作效率,也会对构建安全防御系统(渗透、嗅探、识别、告警等)有很大的帮助。
Debugging Skills
1、《Debug Hacks》【日】吉冈弘隆等
掌握了编译脚本编程,在实际内核安全攻防机制设计时还会存在大量的代码调试工作,调试代码的能力,也决定了程序的品质。这本书深入浅出地讲解了Linux下应用程序和内核的调试技巧,汇聚了Miracle Linux的创始人多年从事内核开发的经验积累。从调试器的基本使用方法、汇编的基础知识开始,到内核错误信息捕捉、应用程序调试、内核调试,非常实用。
2、《软件调试》张银奎
在围绕如何实现高效调试这一主题,深入的分析了各种软件调试技术。从软件调试的原理、步骤,到代码自身的可调试性,再到方法和技巧,通过各种实例,详实的讲解了各个步骤,可以解决在Linux内核开发、性能优化的实际工作中的相关问题,探索更多方向。
漏洞利用
1、《内核漏洞的利用与防范》作者: Enrico Perla/Massimiliano Oldani
系统地讲解内核级别漏洞利用所需的理论技术和方法,共分为4个部分:
1.漏洞利用的目标、内核以及理论基础;
2.深入介绍了目前主流操作系统的细节,并针对不同错误类别分别编写了漏洞利用程序;
3.关注点从本地场景转移到远程利用的情景;
4.未来内核的攻防模式;
系统地讲解内核级别漏洞利用所需的理论技术和方法,并将其应用于Linux内核。内容详实,实例丰富,可操作性强,涉及系统内核漏洞利用的各个方面,包括底层系统编程、底层系统攻击、漏洞利用和漏洞利用对策,非常值得内核开发工程师、内核安全和系统安全工程师查阅学习。
2、《漏洞战争:软件漏洞分析精要》 作者:林桠泉
系统地讲解软件漏洞分析与利用所需的各类工具、理论技术和实战方法。根据不同的软件漏洞类型划分,比如堆栈溢出、沙盒逃逸、类型混淆、UAF、内核漏洞等,同时又针对当前流行的移动安全。以精心挑选的经典漏洞为例,以分享漏洞的分析技巧和工具为主,对这些漏洞的成因、利用及修复方法进行详细讲解,旨在"授之以渔"。最大的特点是以各种类型的经典漏洞作为实战讲解,摒弃空头理论,几乎是"一本用调试器写出来的书"。
二进制分析
1、《Linux二进制分析》作者: Ryan O’Neill
深入刨析Linux ELF二进制文件的工作机制,从ELF二进制格式、Linux进程追踪、ELF病毒技术、Linux二进制保护、ELF二进制取证分析、进程内存取证分析、扩展核心文件快照技术、Linux/proc/kcore分析等角度,通过利用可执行的机器代码(二进制)来分析应用程序的控制结构和运行方式,有助于信息安全从业人员更好地分析各种漏洞、病毒以及恶意软件,从而找到相应的解决方案。
2、《Practical Binary Analysis》作者: Dennis Andriesse
专家级别工程书!!!通过使用数据流分析技术,如程序跟踪、切片、使用寄生代码注入和十六进制编辑、修改ELF二进制文件、使用工具构建自定义反汇编工具以及使用二进制工具规避恶意软件等等高级分析手段,将读者从理解二进制基本的组装到执行,一系列最复杂的二进制分析。通过这些实用的二进制分析手段,给大家提供了有效使用二进制程序所需的知识,以理解它们真正做什么,而不是我们认为它们应该做什么。
内核安全体系
1、《Linux内核安全模块深入剖析》作者: 李志
对Linux内核安全子系统做了系统而深入的分析,内容包括:
1.自主访问控制
2.强制访问控制
3.完整性保护
4.审计日志
5.密钥管理与密钥使用
填补了国内外关于Linux内核安全的一个空白,全书采用源码剖析与用户态工具使用相结合的方式,对Linux内核安全模块以及LSM机制进行了讲解,既避免了冗长的代码罗列,也消除了读者的“隔靴搔痒”之感。
2、《Linux系统安全:纵深防御、安全扫描与入侵检测》》作者: 胥峰
这是一部从技术原理、工程实践两个方面系统、深入讲解Linux系统安全的著作,从纵深防御、安全扫描、入侵检测3个维度细致讲解了如何构建一个如铜墙铁壁般的Linux防护体系
总结
Linux内核的安全世界浩瀚无垠,通过对上述书籍资料的学习积累,相信会对大家在工作学习中有所帮助,如对以上资源和信息有疑问或者需要进一步讨论的朋友,可以加群和大家分享或深入分析Linux Kernel Security各方面的技术细节,持续推动国内Linux内核安全领域的发展!
开源、分享、安全、信任
精华文章:【精华】Linux阅码场原创精华文章汇总
阅码场付费会员专业交流群
会员招募:各专业群会员费为88元/季度,权益包含群内提问,线下活动8折,全年不定期群技术分享(普通用户直播免费,分享后每次点播价为19元/次),有意加入请私信客服小月(小月微信号:linuxer2016)
专业群介绍:
甄建勇-性能优化与体系结构
本群定位Perf、cache和CPU架构技术交流,覆盖云/网/车/机/芯领域资深用户,由阅码场资深讲师甄建勇主持。
李春良-Xenomai与实时优化
本群定位Xenomai与实时优化技术交流,覆盖云/网/车/机/芯领域资深用户,由阅码场资深讲师李春良和彭伟林共同主持。
周贺贺-Tee和ARM架构
本群定位Tee和ARM架构技术交流,覆盖云/网/车/机/芯领域资深用户,由阅码场资深讲师周贺贺主持。
谢欢-Linux tracers
本群定位Linux tracers技术交流,覆盖云/网/车/机/芯领域资深用户,由阅码场资深讲师谢欢主持。
✦
✦