推荐序
近年来,在党和国家的高度重视下,网络安全行业发展迅猛,吸引了大批年轻学子和有志青年投身其中。2015年,“网络空间安全”正式成为“工学”门类下的一级学科,与此同时,不论是在高校、还是企事业单位中,CTF等类型的信息安全竞赛也开始蓬勃发展,通过竞赛涌现出了一大批高手、能手。但是竞赛中各个模块间的发展程度却参差不齐。相对而言,Web、Misc等模块发展较快,参与的选手也较多;二进制安全相关模块,如Reverse(逆向)、Mobile(此处指移动安全)等模块的选手相对就少些,而其中的Pwn模块,则参赛选手最少。究其原因,主要是因为相对其他模块,二进制安全相关模块的学习曲线更陡峭,要求选手对系统的理解更为深入。
市面上安全相关的书籍、教程汗牛充栋,与漏洞主题相关的却屈指可数。在这些书籍中,由于作者本身都是从事漏洞发掘工作的,所以相关案例多以Windows平台下的各种软件漏洞为主,其他平台为辅。但Windows平台本身内部实现机制就比较复杂,相关文档不多,且有的软件自身还会有自己私有的内存管理方法(比如微软的Office软件),在开始学习相关技能之前,所需要掌握的相关前置背景知识就够人喝一壶了。
本书另辟蹊径,利用历届的CTF真题,以x86/x64平台下Linux系统中的Pwn样题为例,讲述漏洞利用的基本方法和技巧。由于Linux系统本身就是一个开源系统,相关文档也比较齐全,因此,在这个平台上容易把问题讲透。把基本功练扎实了,再去学习其他平台上的漏洞利用技术,必将起到事半而功倍的效果。此外,当前被广泛使用的Android等操作系统本身就是Linux系统的变种,相关技术也很容易移植到这些系统的漏洞发掘利用中去。
本书的作者是业内后起之秀。书中所用的例子贴近CTF实战,讲解详尽,思路清晰,非常有助于读者理解和学习。
本书的审校者——吴石老师率领的腾讯eee战队——曾多次斩获国内外高等级竞赛的大奖,相关经验非常丰富。
本书为广大学子和从业人员学习漏洞利用技术知识提供了有益的指导。相信有志学习者,经过认真钻研,必能早日登堂入室,为我国网络安全事业的发展添砖加瓦。
崔孝晨
《Python绝技:运用Python成为顶级黑客》、《最强Android书:架构大剖析》译者