这是一本挺有意思的书,因为所涉及的题材十分敏感,因此作者在文中反复强调写作的目的:抵御攻击而非制造混乱,善意提醒而非恶意破坏。其实对于普通读者而言,恶意搞破坏者很少,需要抵御进攻的机会也不多,更加普遍的是需要通过这样的题材来学习技术,完善技能,增加对计算机网络、编程及操作系统的理解,这样就达到了阅读此书的目的。
书中将黑客分为三种颜色:黑帽、白帽和灰帽。黑帽黑客更接近于传统意义上的骇客(Cracker),即没有底线地搞攻击破坏,为了私人的快感或金钱等方面的利益;白帽黑客对系统也会进行攻击,只不过这种攻击是一种模拟行为,意在找出系统漏洞,维护系统安全,这类人一般是重视信息安全技术的公司聘请的专业人士;灰帽黑客是文中拿来说明的对象,通常认为是无害的,但也绝非像白帽黑客那样地有针对性,而是比较自由,最接近于传统意义上的黑客(Hacker)。试读部分仅仅是书中的第1章,定义了正义黑客的道德规范,不过这远远不是全书内容的概括,下面就着目录简要说说书中的主要内容。
前2章是全书的第Ⅰ部分,对黑客的正当行为作出了一般的界定。全书的第Ⅱ部分介绍了渗透测试及工具,从第3章一直延续到第8章。其中3、4两章从非技术角度介绍了一些攻击方法,而第5章介绍的内部攻击则是从技术角度而言的。第6~8章介绍了重要的渗透测试的相关内容,其中6、7两章是关于两种测试工具BackTrack和Metasploit的,而第8章是对渗透测试的全方位介绍与总结。第Ⅲ部分包括第9~18章,是全书的核心内容,关于漏洞攻击,想必也是读者最感兴趣的内容。不过任何炫目的技术都依赖于最基础的知识,第9章介绍了一些基本编程的理论,应该引起我们足够的重视。需知任何高水平的黑客对计算机底层的理解都是相当精深的,这些包括对内存结构、汇编语言、调试工具等的完美掌握。第10~13章详细介绍了针对Linux操作系统的漏洞攻击方法。与此相对应的第14章则是针对Windows操作系统的分析。这两部分我个人认为读者应该多花些时间去品读,理解攻击方法得以成立的内在原因,如缓冲区溢出、绕开内存保护等,这样方能做到“知其所以然”。第15章以PDF为例介绍了文件格式攻击,16~18章则介绍了网络攻击。整体而言,第Ⅲ部分介绍了不同类别、不同介质及不同操作系统下不同的攻击方法,这些自然得益于不同的安全漏洞。书中第Ⅳ部分主要讲述了对漏洞的分析,包括第19~26章。这里面的分析也包括了多种技术,如源代码分析和二进制分析(第19章)以及反汇编静态分析等(第20章)。第21章继续介绍逆向工程的话题,只不过引入了模糊测试的概念。第22和23章将话题重新引回到利用漏洞进行攻击的方法,对象分别是客户端浏览器和Windows 访问控制。第24章沿着21章的结尾继续介绍模糊测试,这一次介绍的内容是一种名为Sulley的智能模糊测试框架。作为本部分的最后两章,第25~26章分别介绍了对漏洞的利用和关闭漏洞的方法。全书的最后一部分——第Ⅴ部分主要针对恶意软件进行了阐述,内容包括分析恶意软件和破解恶意软件。这一部分相当于从应用层的角度来对漏洞进行分析并加以解决。
整本书的信息量相当大,体现了作者在该领域不凡的造诣;我想读者如果能对其中的某些章节(强烈推荐第Ⅲ部分,即第9~18章)进行仔细阅读,必能对相应技术有更加深刻的理解。也许我们的技术水平远远达不到黑客的要求,同时限于道德要求也不想当一名黑客,但逐步了解并掌握黑客的技术却绝非遥不可及,一点一滴的积累定能成为我们未来技术生涯的宝贵财富。