《捉虫日记》由克莱恩所著,《捉虫日记》从实践角度介绍安全漏洞,描述了作者在过去几年里怎样发现漏洞、怎样利用漏洞来攻击以及开发商如何修复,旨在为开发人员提醒,为漏洞研究领域的工作人员提供工作思路。
目 录
第1章 捉虫 1
1.1 兴趣还是利益 2
1.2 通用技巧 2
1.2.1 个人技术偏好 2
1.2.2 代码中潜在的漏洞 3
1.2.3 模糊测试 3
1.2.4 延伸阅读 3
1.3 内存错误 4
1.4 专用工具 4
1.4.1 调试器 4
1.4.2 反汇编工具 5
1.5 EIP = 41414141 5
1.6 结束语 6
第2章 回到90年代 7
2.1 发现漏洞 8
2.1.1 第一步:生成VLC中解复用器的清单 8
2.1.2 第二步:识别输入数据 8
2.1.3 第三步:跟踪输入数据 9
2.2 漏洞利用 11
2.2.1 第一步:找一个TiVo格式的样例电影文件 11
2.2.2 第二步:找一条代码路径执行到漏洞代码 11
2.2.3 第三步:修改这个TiVo电影文件,使VLC崩溃 14
2.2.4 第四步:修改这个TiVo电影文件,控制EIP 15
2.3 漏洞修正 16
2.4 经验和教训 20
2.5 补充 21
第3章 突破区域限制 24
3.1 发现漏洞 24
3.1.1 第一步:列出内核的IOCTL 25
3.1.2 第二步:识别输入数据 26
3.1.3 第三步:跟踪输入数据 27
3.2 漏洞利用 34
3.2.1 第一步:触发这个空指针解引用,实现拒绝服务 34
3.2.2 第二步:利用零页内存控制EIP/RIP 38
3.3 漏洞修正 47
3.4 经验和教训 48
3.5 补充 48
第4章 空指针万岁 50
4.1 发现漏洞 50
4.1.1 第一步:列出FFmpeg的解复用器 51
4.1.2 第二步:识别输入数据 51
4.1.3 第三步:跟踪输入数据 52
4.2 漏洞利用 55
4.2.1 第一步:找一个带有有效strk块的4X样例电影文件 55
4.2.2 第二步:了解这个strk块的布局 55
4.2.3 第三步:修改这个strk块以使 FFmpeg崩溃 57
4.2.4 第四步:修改这个strk块以控制EIP 60
4.3 漏洞修正 65
4.4 经验和教训 68
4.5 补充 68
第5章 浏览即遭劫持 70
5.1 探寻漏洞 70
5.1.1 第一步:列出WebEx注册的对象和导出方法 71
5.1.2 第二步:在浏览器中测试导出方法 73
5.1.3 第三步:找到二进制文件中的对象方法 74
5.1.4 第四步:找到用户控制的输入数值 76
5.1.5 第五步:逆向工程这个对象方法 78
5.2 漏洞利用 81
5.3 漏洞修正 83
5.4 经验和教训 83
5.5 补充 83
第6章 一个内核统治一切 85
6.1 发现漏洞 85
6.1.1 第一步:为内核调试准备一个VMware客户机 86
6.1.2 第二步:生成一个avast!创建的驱动和设备对象列表 86
6.1.3 第三步:检查设备的安全设置 87
6.1.4 第四步:列出IOCTL 89
6.1.5 第五步:找出用户控制的输入数据 94
6.1.6 第六步:逆向工程IOCTL处理程序 97
6.2 漏洞利用 101
6.3 漏洞修正 107
6.4 经验和教训 107
6.5 补充 108
第7章 比4.4BSD还老的BUG 110
7.1 发现漏洞 110
7.1.1 第一步:列出内核的IOCTL 111
7.1.2 第二步:识别输入数据 111
7.1.3 第三步:跟踪输入数据 113
7.2 漏洞利用 116
7.2.1 第一步:触发这个bug使系统崩溃(拒绝服务) 116
7.2.2 第二步:准备一个内核调试的环境 118
7.2.3 第三步:连接调试器和目标系统 118
7.2.4 第四步:控制EIP 120
7.3 漏洞修正 125
7.4 经验和教训 126
7.5 补充 126
第8章 铃音大屠杀 129
8.1 发现漏洞 129
8.1.1 第一步:研究iPhone的音频性能 130
8.1.2 第二步:创建一个简单的模糊测试程序对这个手机进行模糊
测试 130
8.2 崩溃分析及利用 136
8.3 漏洞修正 142
8.4 经验和教训 143
8.5 补充 143
附录A 捉虫提示 145
附录B 调试 158
附录C 缓解技术 170
JavaScript是近年来非常受瞩目的一门编程语言,它既支持面向对象编程,也支持函数式编程。本书专门介绍JavaScript函数式编程的特
MATLAB 在数学建模中的应用-(第2版) 本书特色 《matlab在数学建模中的应用》(第2版)一书是《matlab在数学建模中的应用》一书的第2版...
本书将PHP开发与MySQL应用相结合,分别对PHP和MySQL做了深入浅出的分析,不仅介绍PHP和MySQL的一般概念,而且对PHP和MySQL的Web应
《万物大历史·科学和技术是怎么发展而来的》内容简介:"大历史”概念由美国知名历史学家大卫·克里斯蒂安提出,后经比尔·盖茨大力
《深入解析MacOSX&iOS操作系统》编著者莱文。系统开发者、内核黑客和对苹果感到好奇的人们注意了!本书探讨了MacOSX系统和iOS系统
《和女儿一起长大》内容简介:★如果你也有女儿,请读读这本书。作家池莉大爱之作,深情讲述与女儿24年共同成长经历。从小生命的孕
MelGorman曾获得爱尔兰利马瑞克大学的计算机学士和硕士学位。他的研究领域广泛:从网页开发到摄影机的实时显示系统。MelGorman认
完全掌握Windows 7超级手册 本书特色 windows 7排忧解惑,告诉你微软没有讲清楚的事windows 7无线网络架设笔记本电脑使用windows 7...
kh10065 3dsmax2010从新手到高手 本书特色 《3ds Max 2010从新手到高手》的内容简单易学的建模技巧:详细介绍基本造型及修改立体对象的操...
《猎头之道:成长创业与事业长青》内容简介:本书从猎头行业解析、猎头顾问精进、猎头公司管理、猎头创业困境破解、猎头业务模式创
《Web性能实战》内容简介:在Web变得越来越复杂的时代,解决Web性能问题正当时。本书旨在帮助读者创建更加快速的网站,内容涵盖Web
单片机原理及接口技术(2版) 内容简介 书中系统地介绍了80c51系列单片机的原理及接口技术,较好地体现了应用型人才的培养要求,其特点为:着力片上资源、强化编程...
《React Native开发指南(第2版)》内容简介:本书通过丰富的示例和详细的讲解,介绍了React Native这款JavaScript框架。在React...
《我们的第一个十年》内容简介:从校园到职场,抑或到政坛、到商海,曾经朝夕相处的同窗走出了不同的人生轨迹。这里有在基层默默奋
《分配正义新论:人道与公平》内容简介:当今的分配正义理论主要是义务论的。这种义务论分配正义理论一方面或多或少受到康德伦理思
《超级面试官》内容简介:面试是人才招聘过程中的重要一环,面试官的水平直接影响到所招人员的素质高低。那么,面试官该具备哪些基
《五子连珠必胜法》经日本国虹有社授权,译自日本连珠社已故理事长新井华石九段经典著作《连珠必胜法》一书。内容阐述和介绍五子
More Exceptional C++(英文版) 内容简介 本书以英文版的形式,介绍了MoreExceptionalC,通过40个问题帮助你理解关于C软件设计...
《对称与不对称》深入浅出地说明了对称与不对称不仅在物理学中,也在艺术、文学、逻辑、数学、自然和日常生活等方面中有精彩的表
《2020年法律硕士联考重要法条释解》内容简介:本书主要内容为法律硕士联考法条类图书,针对法条涵盖的考点,分析和讲解,包含5科,