App 下载
注册
登录
|
搜索
正在搜索中...
首页
我的书架
我的主页
我的收藏
我的书评
王清主编的《Oday安全:软件漏洞分析技术(第2版)》分为5篇33章,系统、全面地介绍了Windows平台缓冲区溢出漏洞的分析、检测与防护。第一篇为漏洞exploit的基
……
[ 展开全部 ]
础理论和初级技术,可以引领读者迅速入门;第二篇在第一篇的基础上,结合国内外相关研究者的前沿成果,对漏洞技术从攻、防两个方面进行总结;第三篇站在安全测试者的角度,讨论了几类常用软件的漏洞挖掘方法与思路;第四篇则填补了本类书籍在Windows内核安全及相关攻防知识这个神秘领域的技术空白;第五篇以大量的Oday案例分析,来帮助读者理解前四篇的各类思想方法。 《Oday安全:软件漏洞分析技术(第2版)》可作为网络安全从业人员、黑客技术发烧友的参考指南,也可作为网络安全专业的研究生或本科生的指导用书。
[ 收起 ]
作者:王清 主编
出版社:电子工业出版社
定价:85.00元
ISBN:7121133962
给个评价
做个书摘
书摘 (21 )
评价 (1 )
查看所有书摘
按目录显示书摘
只显示目录
目录
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第1篇 漏洞利用原理(初级)
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第1章 基础知识 2
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
1.1 漏洞概述 2
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
1.1.1 bug与漏洞 2
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
1.1.2 几个令人困惑的安全问题 2
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
1.1.3 漏洞挖掘、漏洞分析、漏洞利用 3
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
1.1.4 漏洞的公布与0 day响应 5
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
1.2 二进制文件概述 5
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
1.2.1 PE文件格式 5
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
1.2.2 虚拟内存 6
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
1.2.3 PE文件与虚拟内存之间的映射 7
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
1.3 必备工具 11
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
1.3.1 OllyDbg简介 11
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
1.3.2 SoftICE简介 11
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
1.3.3 WinDbg简介 16
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
1.3.4 IDA Pro简介 18
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
1.3.5 二进制编辑器 20
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
1.3.6 VMware简介 21
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
1.3.7 Python编程环境 28
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
1.4 Crack小实验 29
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第2章 栈溢出原理与实践 38
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
2.1 系统栈的工作原理 38
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
2.1.1 内存的不同用途 38
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
2.1.2 栈与系统栈 39
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
2.1.3 函数调用时发生了什么 40
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
2.1.4 寄存器与函数栈帧 43
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
2.1.5 函数调用约定与相关指令 44
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
2.2 修改邻接变量 47
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
2.2.1 修改邻接变量的原理 47
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
2.2.2 突破密码验证程序 49
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
2.3 修改函数返回地址 53
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
2.3.1 返回地址与程序流程 53
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
2.3.2 控制程序的执行流程 57
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
2.4 代码植入 62
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
2.4.1 代码植入的原理 62
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
2.4.2 向进程中植入代码 62
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第3章 开发shellcode的艺术 71
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.1 shellcode概述 71
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.1.1 shellcode与exploit 71
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.1.2 shellcode需要解决的问题 72
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.2 定位shellcode 73
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.2.1 栈帧移位与jmp esp 73
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.2.2 获取“跳板”的地址 76
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.2.3 使用“跳板”定位的exploit 78
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.3 缓冲区的组织 81
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.3.1 缓冲区的组成 81
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.3.2 抬高栈顶保护shellcode 83
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.3.3 使用其他跳转指令 83
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.3.4 不使用跳转指令 84
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.3.5 函数返回地址移位 85
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.4 开发通用的shellcode 87
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.4.1 定位API的原理 87
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.4.2 shellcode的加载与调试 88
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.4.3 动态定位API地址的shellcode 89
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.5 shellcode编码技术 98
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.5.1 为什么要对shellcode编码 98
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.5.2 会“变形”的shellcode 99
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.6 为shellcode“减肥” 103
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.6.1 shellcode瘦身大法 103
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.6.2 选择恰当的hash算法 105
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
3.6.3 191个字节的bindshell 107
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第4章 用MetaSploit开发Exploit 119
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
4.1 漏洞测试平台MSF 简介 119
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
4.2 入侵Windows系统 121
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
4.2.1 漏洞简介 121
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
4.2.2 图形界面的漏洞测试 121
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
4.2.3 console界面的漏洞测试 125
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
4.3 利用MSF制作shellcode 126
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
4.4 用MSF扫描“跳板” 128
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
4.5 Ruby语言简介 129
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
4.6 “傻瓜式”Exploit开发 134
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
4.7 用MSF发布POC 140
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第5章 堆溢出利用 144
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.1 堆的工作原理 144
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.1.1 Windows堆的历史 144
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.1.2 堆与栈的区别 145
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.1.3 堆的数据结构与管理策略 146
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.2 在堆中漫游 151
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.2.1 堆分配函数之间的调用关系 151
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.2.2 堆的调试方法 152
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.2.3 识别堆表 155
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.2.4 堆块的分配 158
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.2.5 堆块的释放 159
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.2.6 堆块的合并 159
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.2.7 快表的使用 161
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.3 堆溢出利用(上)——DWORD SHOOT 163
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.3.1 链表“拆卸”中的问题 163
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.3.2 在调试中体会“DWORD SHOOT” 165
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.4 堆溢出利用(下)——代码植入 169
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.4.1 DWORD SHOOT的利用方法 169
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.4.2 狙击P.E.B中RtlEnterCritical-Section()的函数指针 170
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
5.4.3 堆溢出利用的注意事项 175
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第6章 形形色色的内存攻击技术 178
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
6.1 狙击Windows异常处理机制 178
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
6.1.1 S.E.H概述 178
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
6.1.2 在栈溢出中利用S.E.H 180
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
6.1.3 在堆溢出中利用S.E.H 184
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
6.1.4 深入挖掘Windows异常处理 187
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
6.1.5 其他异常处理机制的利用思路 192
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
6.2 “off by one”的利用 196
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
6.3 攻击C++的虚函数 198
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
6.4 Heap Spray:堆与栈的协同攻击 201
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第7章 手机里的缓冲区溢出 204
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
7.1 Windows Mobile简介 204
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
7.1.1 Windows Mobile前世今生 204
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
7.1.2 Windows Mobile架构概述 205
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
7.1.3 Windows Mobile的内存管理 209
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
7.2 ARM简介 212
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
7.2.1 ARM是什么 212
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
7.2.2 ARM寄存器结构 212
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
7.2.3 ARM汇编指令结构 215
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
7.2.4 ARM指令寻址方式 220
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
7.2.5 ARM的函数调用与返回 222
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
7.3 Windows Mobile上的HelloWorld 223
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
7.4 远程调试工具简介 227
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
7.4.1 远程信息查看管理套件 227
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
7.4.2 手机上的调试——Microsoft Visual Studio 231
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
7.4.3 手机上的调试——IDA 233
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
7.5 手机上的exploit me 237
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第8章 其他类型的软件漏洞 243
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.1 格式化串漏洞 243
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.1.1 printf中的缺陷 243
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.1.2 用printf读取内存数据 244
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.1.3 用printf向内存写数据 245
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.1.4 格式化串漏洞的检测与防范 246
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.2 SQL注入攻击 247
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.2.1 SQL注入原理 247
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.2.2 攻击PHP+MySQL网站 248
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.2.3 攻击ASP+SQL Server网站 250
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.2.4 注入攻击的检测与防范 252
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.3 其他注入方式 253
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.3.1 Cookie注入,绕过马其诺防线 253
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.3.2 XPath注入,XML的阿喀琉斯之踵 254
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.4 XSS攻击 255
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.4.1 脚本能够“跨站”的原因 255
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.4.2 XSS Reflection攻击场景 256
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.4.3 Stored XSS攻击场景 258
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.4.4 攻击案例回顾:XSS蠕虫 258
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.4.5 XSS的检测与防范 259
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.5 路径回溯漏洞 260
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.5.1 路径回溯的基本原理 260
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
8.5.2 范式化与路径回溯 261
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第2篇 漏洞利用原理(高级)
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第9章 Windows安全机制概述 264
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第10章 栈中的守护天使:GS 267
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
10.1 GS安全编译选项的保护原理 267
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
10.2 利用未被保护的内存突破GS 271
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
10.3 覆盖虚函数突破GS 273
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
10.4 攻击异常处理突破GS 276
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
10.5 同时替换栈中和.data中的Cookie突破GS 280
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第11章 亡羊补牢:SafeSEH 284
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
11.1 SafeSEH对异常处理的保护原理 284
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
11.2 攻击返回地址绕过SafeSEH 288
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
11.3 利用虚函数绕过SafeSEH 288
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
11.4 从堆中绕过SafeSEH 288
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
11.5 利用未启用SafeSEH模块绕过SafeSEH 292
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
11.6 利用加载模块之外的地址绕过SafeSEH 299
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
11.7 利用Adobe Flash Player ActiveX控件绕过SafeSEH 305
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第12章 数据与程序的分水岭:DEP 313
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
12.1 DEP机制的保护原理 313
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
12.2 攻击未启用DEP的程序 316
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
12.3 利用Ret2Libc挑战DEP 317
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
12.3.1 Ret2Libc实战之利用ZwSetInformationProcess 318
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
12.3.2 Ret2Libc实战之利用VirtualProtect 330
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
12.3.3 Ret2Libc实战之利用VirtualAlloc 339
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
12.4 利用可执行内存挑战DEP 348
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
12.5 利用.NET挑战DEP 352
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
12.6 利用Java applet挑战DEP 359
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第13章 在内存中躲猫猫:ASLR 363
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
13.1 内存随机化保护机制的原理 363
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
13.2 攻击未启用ASLR的模块 367
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
13.3 利用部分覆盖进行定位内存地址 372
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
13.4 利用Heap spray技术定位内存地址 376
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
13.5 利用Java applet heap spray技术定位内存地址 379
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
13.6 为.NET控件禁用ASLR 382
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第14章 S.E.H终极防护:SEHOP 386
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
14.1 SEHOP的原理 386
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
14.2 攻击返回地址 388
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
14.3 攻击虚函数 388
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
14.4 利用未启用SEHOP的模块 388
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
14.5 伪造S.E.H链表 390
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第15章 重重保护下的堆 396
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
15.1 堆保护机制的原理 396
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
15.2 攻击堆中存储的变量 397
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
15.3 利用chunk重设大小攻击堆 398
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
15.4 利用Lookaside表进行堆溢出 407
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第3篇 漏洞挖掘技术
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第16章 漏洞挖掘技术简介 414
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
16.1 漏洞挖掘概述 414
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
16.2 动态测试技术 415
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
16.2.1 SPIKE简介 415
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
16.2.2 beSTORM简介 421
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
16.3 静态代码审计 429
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第17章 文件类型漏洞挖掘 与Smart Fuzz 431
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
17.1 Smart Fuzz概述 431
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
17.1.1 文件格式Fuzz的基本方法 431
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
17.1.2 Blind Fuzz和Smart Fuzz 432
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
17.2 用Peach挖掘文件漏洞 433
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
17.2.1 Peach介绍及安装 433
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
17.2.2 XML介绍 434
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
17.2.3 定义简单的 Peach Pit 436
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
17.2.4 定义数据之间的依存关系 440
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
17.2.5 用Peach Fuzz PNG文件 441
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
17.3 010脚本,复杂文件解析的瑞士军刀 446
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
17.3.1 010 Editor简介 446
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
17.3.2 010脚本编写入门 447
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
17.3.3 010脚本编写提高——PNG文件解析 449
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
17.3.4 深入解析,深入挖掘——PPT文件解析 452
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第18章 FTP的漏洞挖掘 457
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
18.1 FTP协议简介 457
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
18.2 漏洞挖掘手记1:DOS 457
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
18.3 漏洞挖掘手记2:访问权限 466
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
18.4 漏洞挖掘手记3:缓冲区溢出 468
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
18.5 漏洞挖掘手记4:Fuzz DIY 472
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第19章 E-Mail的漏洞挖掘 477
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
19.1 挖掘SMTP漏洞 477
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
19.1.1 SMTP协议简介 477
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
19.1.2 SMTP漏洞挖掘手记 478
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
19.2 挖掘POP3漏洞 480
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
19.2.1 POP3协议简介 480
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
19.2.2 POP3漏洞挖掘手记 481
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
19.3 挖掘IMAP4漏洞 489
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
19.3.1 IMAP4协议简介 489
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
19.3.2 IMAP4漏洞挖掘手记 490
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
19.4 其他E-mail漏洞 491
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
19.4.1 URL中的路径回溯 491
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
19.4.2 内存中的路径回溯 494
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
19.4.3 邮件中的XSS 500
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第20章 ActiveX控件的漏洞挖掘 502
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
20.1 ActiveX控件简介 502
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
20.1.1 浏览器与ActiveX控件的关系 502
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
20.1.2 控件的属性 503
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
20.2 手工测试ActiveX控件 504
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
20.2.1 建立测试模板 504
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
20.2.2 获取控件的接口信息 505
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
20.3 用工具测试ActiveX控件:COMRaider 509
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
20.4 挖掘ActiveX漏洞 516
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
20.4.1 ActiveX漏洞的分类 516
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
20.4.2 漏洞挖掘手记1:超星阅读器溢出 517
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
20.4.3 漏洞挖掘手记2:目录操作权限 521
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
20.4.4 漏洞挖掘手记3:文件读权限 523
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
20.4.5 漏洞挖掘手记3:文件删除权限 525
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第4篇 操作系统内核安全
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第21章 探索ring0 528
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
21.1 内核基础知识介绍 528
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
21.1.1 内核概述 528
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
21.1.2 驱动编写之Hello World 528
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
21.1.3 派遣例程与IRP结构 533
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
21.1.4 Ring3打开驱动设备 537
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
21.1.5 DeviceIoControl函数与IoControlCode 538
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
21.1.6 Ring3/Ring0的四种通信方式 539
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
21.2 内核调试入门 541
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
21.2.1 创建内核调试环境 541
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
21.2.2 蓝屏分析 549
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
21.3 内核漏洞概述 551
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
21.3.1 内核漏洞的分类 551
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
21.3.2 内核漏洞的研究过程 553
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
21.4 编写安全的驱动程序 555
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
21.4.1 输入输出检查 555
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
21.4.2 验证驱动的调用者 556
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
21.4.3 白名单机制的挑战 556
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第22章 内核漏洞利用技术 557
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
22.1 利用实验之exploitme.sys 557
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
22.2 内核漏洞利用思路 559
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
22.3 内核漏洞利用方法 560
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
22.4 内核漏洞利用实战与编程 565
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
22.5 Ring0 Shellcode的编写 570
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第23章 FUZZ驱动程序 579
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
23.1 内核FUZZ思路 579
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
23.2 内核FUZZ工具介绍 581
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
23.3 内核FUZZ工具DIY 583
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
23.3.1 Fuzz对象、Fuzz策略、Fuzz项 583
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
23.3.2 IoControl MITM Fuzz 583
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
23.3.3 IoControl Driver Fuzz 585
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
23.3.4 MyIoControl Fuzzer界面 586
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
23.4 内核漏洞挖掘实战 588
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
23.4.1 超级巡警ASTDriver.sys本地提权漏洞 588
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
23.4.2 东方微点mp110013.sys本地提权漏洞 594
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
23.4.3 瑞星HookCont.sys驱动本地拒绝服务漏洞 601
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第24章 内核漏洞案例分析 605
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
24.1 远程拒绝服务内核漏洞 605
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
24.2 本地拒绝服务内核漏洞 611
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
24.3 缓冲区溢出内核漏洞 614
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
24.4 任意地址写任意数据内核漏洞 619
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
24.5 任意地址写固定数据内核漏洞 622
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第5篇 漏洞分析案例
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第25章 漏洞分析技术概述 628
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
25.1 漏洞分析的方法 628
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
25.2运动中寻求突破:调试技术 629
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
25.2.1 断点技巧 630
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
25.2.2 回溯思路 644
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
25.3 用“白眉”在PE中漫步 647
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
25.3.1 指令追踪技术与Paimei 647
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
25.3.2 Paimei的安装 648
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
25.3.3 使用PE Stalker 649
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
25.3.4 迅速定位特定功能对应的代码 652
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
25.4 补丁比较 654
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第26章 RPC入侵:MS06-040 与MS08-067 658
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.1 RPC漏洞 658
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.1.1 RPC漏洞简介 658
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.1.2 RPC编程简介 658
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.2 MS06-040 659
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.2.1 MS06-040简介 659
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.2.2 动态调试 660
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.2.3 静态分析 667
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.2.4 实现远程exploit 670
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.3 Windows XP环境下的MS06-040 exploit 677
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.3.1 静态分析 677
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.3.2 蠕虫样本的exploit方法 682
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.3.3 实践跨平台exploit 684
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.4 MS08-067 690
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.4.1 MS08-067简介 690
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.4.2 认识Legacy Folder 693
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.4.3 “移经”测试 694
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.4.4 “移经”风险 695
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.4.5 POC的构造 696
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
26.5 魔波、Conficker与蠕虫病毒 703
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第27章 MS06-055分析:实战Heap Spray 705
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
27.1 MS06-055简介 705
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
27.1.1 矢量标记语言(VML)简介 705
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
27.1.2 0 day安全响应纪实 706
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
27.2 漏洞分析 707
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
27.3 漏洞利用 710
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第28章 MS09-032分析:一个“&”引发的血案 713
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
28.1 MS09-032简介 713
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
28.2 漏洞原理及利用分析 713
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第29章 Yahoo!Messenger栈 溢出漏洞 719
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
29.1 漏洞介绍 719
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
29.2 漏洞分析 719
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
29.3 漏洞利用 723
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第30章 CVE-2009-0927:PDF中的JS 725
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
30.1 CVE-2009-0927简介 725
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
30.2 PDF文档格式简介 725
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
30.3 漏洞原理及利用分析 727
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第31章 坝之蚁穴:超长URL溢出漏洞 731
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
31.1 漏洞简介 731
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
31.3 漏洞原理及利用分析 731
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第32章 暴风影音M3U文件解析漏洞 737
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
32.1 漏洞简介 737
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
32.2 M3U文件简介 737
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
32.3 漏洞原理及利用分析 738
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
第33章 LNK快捷方式文件漏洞 744
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
33.1 漏洞简介 744
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
33.2 漏洞原理及利用分析 744
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
附录A 已公布的内核程序漏洞列表 750
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
参考文献 753
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
导购链接
×
做书摘
文字书摘
读图识字
至少还需要输入
10
字
保存原图片为书摘
上传图片
识别
最多输入
500
个字
上传图片
重新上传
写点笔记吧
至少还需要输入
10
字
章节(选填)
目录
第1篇 漏洞利用原理(初级)
第1章 基础知识 2
1.1 漏洞概述 2
1.1.1 bug与漏洞 2
1.1.2 几个令人困惑的安全问题 2
1.1.3 漏洞挖掘、漏洞分析、漏洞利用 3
1.1.4 漏洞的公布与0 day响应 5
1.2 二进制文件概述 5
1.2.1 PE文件格式 5
1.2.2 虚拟内存 6
1.2.3 PE文件与虚拟内存之间的映射 7
1.3 必备工具 11
1.3.1 OllyDbg简介 11
1.3.2 SoftICE简介 11
1.3.3 WinDbg简介 16
1.3.4 IDA Pro简介 18
1.3.5 二进制编辑器 20
1.3.6 VMware简介 21
1.3.7 Python编程环境 28
1.4 Crack小实验 29
第2章 栈溢出原理与实践 38
2.1 系统栈的工作原理 38
2.1.1 内存的不同用途 38
2.1.2 栈与系统栈 39
2.1.3 函数调用时发生了什么 40
2.1.4 寄存器与函数栈帧 43
2.1.5 函数调用约定与相关指令 44
2.2 修改邻接变量 47
2.2.1 修改邻接变量的原理 47
2.2.2 突破密码验证程序 49
2.3 修改函数返回地址 53
2.3.1 返回地址与程序流程 53
2.3.2 控制程序的执行流程 57
2.4 代码植入 62
2.4.1 代码植入的原理 62
2.4.2 向进程中植入代码 62
第3章 开发shellcode的艺术 71
3.1 shellcode概述 71
3.1.1 shellcode与exploit 71
3.1.2 shellcode需要解决的问题 72
3.2 定位shellcode 73
3.2.1 栈帧移位与jmp esp 73
3.2.2 获取“跳板”的地址 76
3.2.3 使用“跳板”定位的exploit 78
3.3 缓冲区的组织 81
3.3.1 缓冲区的组成 81
3.3.2 抬高栈顶保护shellcode 83
3.3.3 使用其他跳转指令 83
3.3.4 不使用跳转指令 84
3.3.5 函数返回地址移位 85
3.4 开发通用的shellcode 87
3.4.1 定位API的原理 87
3.4.2 shellcode的加载与调试 88
3.4.3 动态定位API地址的shellcode 89
3.5 shellcode编码技术 98
3.5.1 为什么要对shellcode编码 98
3.5.2 会“变形”的shellcode 99
3.6 为shellcode“减肥” 103
3.6.1 shellcode瘦身大法 103
3.6.2 选择恰当的hash算法 105
3.6.3 191个字节的bindshell 107
第4章 用MetaSploit开发Exploit 119
4.1 漏洞测试平台MSF 简介 119
4.2 入侵Windows系统 121
4.2.1 漏洞简介 121
4.2.2 图形界面的漏洞测试 121
4.2.3 console界面的漏洞测试 125
4.3 利用MSF制作shellcode 126
4.4 用MSF扫描“跳板” 128
4.5 Ruby语言简介 129
4.6 “傻瓜式”Exploit开发 134
4.7 用MSF发布POC 140
第5章 堆溢出利用 144
5.1 堆的工作原理 144
5.1.1 Windows堆的历史 144
5.1.2 堆与栈的区别 145
5.1.3 堆的数据结构与管理策略 146
5.2 在堆中漫游 151
5.2.1 堆分配函数之间的调用关系 151
5.2.2 堆的调试方法 152
5.2.3 识别堆表 155
5.2.4 堆块的分配 158
5.2.5 堆块的释放 159
5.2.6 堆块的合并 159
5.2.7 快表的使用 161
5.3 堆溢出利用(上)——DWORD SHOOT 163
5.3.1 链表“拆卸”中的问题 163
5.3.2 在调试中体会“DWORD SHOOT” 165
5.4 堆溢出利用(下)——代码植入 169
5.4.1 DWORD SHOOT的利用方法 169
5.4.2 狙击P.E.B中RtlEnterCritical-Section()的函数指针 170
5.4.3 堆溢出利用的注意事项 175
第6章 形形色色的内存攻击技术 178
6.1 狙击Windows异常处理机制 178
6.1.1 S.E.H概述 178
6.1.2 在栈溢出中利用S.E.H 180
6.1.3 在堆溢出中利用S.E.H 184
6.1.4 深入挖掘Windows异常处理 187
6.1.5 其他异常处理机制的利用思路 192
6.2 “off by one”的利用 196
6.3 攻击C++的虚函数 198
6.4 Heap Spray:堆与栈的协同攻击 201
第7章 手机里的缓冲区溢出 204
7.1 Windows Mobile简介 204
7.1.1 Windows Mobile前世今生 204
7.1.2 Windows Mobile架构概述 205
7.1.3 Windows Mobile的内存管理 209
7.2 ARM简介 212
7.2.1 ARM是什么 212
7.2.2 ARM寄存器结构 212
7.2.3 ARM汇编指令结构 215
7.2.4 ARM指令寻址方式 220
7.2.5 ARM的函数调用与返回 222
7.3 Windows Mobile上的HelloWorld 223
7.4 远程调试工具简介 227
7.4.1 远程信息查看管理套件 227
7.4.2 手机上的调试——Microsoft Visual Studio 231
7.4.3 手机上的调试——IDA 233
7.5 手机上的exploit me 237
第8章 其他类型的软件漏洞 243
8.1 格式化串漏洞 243
8.1.1 printf中的缺陷 243
8.1.2 用printf读取内存数据 244
8.1.3 用printf向内存写数据 245
8.1.4 格式化串漏洞的检测与防范 246
8.2 SQL注入攻击 247
8.2.1 SQL注入原理 247
8.2.2 攻击PHP+MySQL网站 248
8.2.3 攻击ASP+SQL Server网站 250
8.2.4 注入攻击的检测与防范 252
8.3 其他注入方式 253
8.3.1 Cookie注入,绕过马其诺防线 253
8.3.2 XPath注入,XML的阿喀琉斯之踵 254
8.4 XSS攻击 255
8.4.1 脚本能够“跨站”的原因 255
8.4.2 XSS Reflection攻击场景 256
8.4.3 Stored XSS攻击场景 258
8.4.4 攻击案例回顾:XSS蠕虫 258
8.4.5 XSS的检测与防范 259
8.5 路径回溯漏洞 260
8.5.1 路径回溯的基本原理 260
8.5.2 范式化与路径回溯 261
第2篇 漏洞利用原理(高级)
第9章 Windows安全机制概述 264
第10章 栈中的守护天使:GS 267
10.1 GS安全编译选项的保护原理 267
10.2 利用未被保护的内存突破GS 271
10.3 覆盖虚函数突破GS 273
10.4 攻击异常处理突破GS 276
10.5 同时替换栈中和.data中的Cookie突破GS 280
第11章 亡羊补牢:SafeSEH 284
11.1 SafeSEH对异常处理的保护原理 284
11.2 攻击返回地址绕过SafeSEH 288
11.3 利用虚函数绕过SafeSEH 288
11.4 从堆中绕过SafeSEH 288
11.5 利用未启用SafeSEH模块绕过SafeSEH 292
11.6 利用加载模块之外的地址绕过SafeSEH 299
11.7 利用Adobe Flash Player ActiveX控件绕过SafeSEH 305
第12章 数据与程序的分水岭:DEP 313
12.1 DEP机制的保护原理 313
12.2 攻击未启用DEP的程序 316
12.3 利用Ret2Libc挑战DEP 317
12.3.1 Ret2Libc实战之利用ZwSetInformationProcess 318
12.3.2 Ret2Libc实战之利用VirtualProtect 330
12.3.3 Ret2Libc实战之利用VirtualAlloc 339
12.4 利用可执行内存挑战DEP 348
12.5 利用.NET挑战DEP 352
12.6 利用Java applet挑战DEP 359
第13章 在内存中躲猫猫:ASLR 363
13.1 内存随机化保护机制的原理 363
13.2 攻击未启用ASLR的模块 367
13.3 利用部分覆盖进行定位内存地址 372
13.4 利用Heap spray技术定位内存地址 376
13.5 利用Java applet heap spray技术定位内存地址 379
13.6 为.NET控件禁用ASLR 382
第14章 S.E.H终极防护:SEHOP 386
14.1 SEHOP的原理 386
14.2 攻击返回地址 388
14.3 攻击虚函数 388
14.4 利用未启用SEHOP的模块 388
14.5 伪造S.E.H链表 390
第15章 重重保护下的堆 396
15.1 堆保护机制的原理 396
15.2 攻击堆中存储的变量 397
15.3 利用chunk重设大小攻击堆 398
15.4 利用Lookaside表进行堆溢出 407
第3篇 漏洞挖掘技术
第16章 漏洞挖掘技术简介 414
16.1 漏洞挖掘概述 414
16.2 动态测试技术 415
16.2.1 SPIKE简介 415
16.2.2 beSTORM简介 421
16.3 静态代码审计 429
第17章 文件类型漏洞挖掘 与Smart Fuzz 431
17.1 Smart Fuzz概述 431
17.1.1 文件格式Fuzz的基本方法 431
17.1.2 Blind Fuzz和Smart Fuzz 432
17.2 用Peach挖掘文件漏洞 433
17.2.1 Peach介绍及安装 433
17.2.2 XML介绍 434
17.2.3 定义简单的 Peach Pit 436
17.2.4 定义数据之间的依存关系 440
17.2.5 用Peach Fuzz PNG文件 441
17.3 010脚本,复杂文件解析的瑞士军刀 446
17.3.1 010 Editor简介 446
17.3.2 010脚本编写入门 447
17.3.3 010脚本编写提高——PNG文件解析 449
17.3.4 深入解析,深入挖掘——PPT文件解析 452
第18章 FTP的漏洞挖掘 457
18.1 FTP协议简介 457
18.2 漏洞挖掘手记1:DOS 457
18.3 漏洞挖掘手记2:访问权限 466
18.4 漏洞挖掘手记3:缓冲区溢出 468
18.5 漏洞挖掘手记4:Fuzz DIY 472
第19章 E-Mail的漏洞挖掘 477
19.1 挖掘SMTP漏洞 477
19.1.1 SMTP协议简介 477
19.1.2 SMTP漏洞挖掘手记 478
19.2 挖掘POP3漏洞 480
19.2.1 POP3协议简介 480
19.2.2 POP3漏洞挖掘手记 481
19.3 挖掘IMAP4漏洞 489
19.3.1 IMAP4协议简介 489
19.3.2 IMAP4漏洞挖掘手记 490
19.4 其他E-mail漏洞 491
19.4.1 URL中的路径回溯 491
19.4.2 内存中的路径回溯 494
19.4.3 邮件中的XSS 500
第20章 ActiveX控件的漏洞挖掘 502
20.1 ActiveX控件简介 502
20.1.1 浏览器与ActiveX控件的关系 502
20.1.2 控件的属性 503
20.2 手工测试ActiveX控件 504
20.2.1 建立测试模板 504
20.2.2 获取控件的接口信息 505
20.3 用工具测试ActiveX控件:COMRaider 509
20.4 挖掘ActiveX漏洞 516
20.4.1 ActiveX漏洞的分类 516
20.4.2 漏洞挖掘手记1:超星阅读器溢出 517
20.4.3 漏洞挖掘手记2:目录操作权限 521
20.4.4 漏洞挖掘手记3:文件读权限 523
20.4.5 漏洞挖掘手记3:文件删除权限 525
第4篇 操作系统内核安全
第21章 探索ring0 528
21.1 内核基础知识介绍 528
21.1.1 内核概述 528
21.1.2 驱动编写之Hello World 528
21.1.3 派遣例程与IRP结构 533
21.1.4 Ring3打开驱动设备 537
21.1.5 DeviceIoControl函数与IoControlCode 538
21.1.6 Ring3/Ring0的四种通信方式 539
21.2 内核调试入门 541
21.2.1 创建内核调试环境 541
21.2.2 蓝屏分析 549
21.3 内核漏洞概述 551
21.3.1 内核漏洞的分类 551
21.3.2 内核漏洞的研究过程 553
21.4 编写安全的驱动程序 555
21.4.1 输入输出检查 555
21.4.2 验证驱动的调用者 556
21.4.3 白名单机制的挑战 556
第22章 内核漏洞利用技术 557
22.1 利用实验之exploitme.sys 557
22.2 内核漏洞利用思路 559
22.3 内核漏洞利用方法 560
22.4 内核漏洞利用实战与编程 565
22.5 Ring0 Shellcode的编写 570
第23章 FUZZ驱动程序 579
23.1 内核FUZZ思路 579
23.2 内核FUZZ工具介绍 581
23.3 内核FUZZ工具DIY 583
23.3.1 Fuzz对象、Fuzz策略、Fuzz项 583
23.3.2 IoControl MITM Fuzz 583
23.3.3 IoControl Driver Fuzz 585
23.3.4 MyIoControl Fuzzer界面 586
23.4 内核漏洞挖掘实战 588
23.4.1 超级巡警ASTDriver.sys本地提权漏洞 588
23.4.2 东方微点mp110013.sys本地提权漏洞 594
23.4.3 瑞星HookCont.sys驱动本地拒绝服务漏洞 601
第24章 内核漏洞案例分析 605
24.1 远程拒绝服务内核漏洞 605
24.2 本地拒绝服务内核漏洞 611
24.3 缓冲区溢出内核漏洞 614
24.4 任意地址写任意数据内核漏洞 619
24.5 任意地址写固定数据内核漏洞 622
第5篇 漏洞分析案例
第25章 漏洞分析技术概述 628
25.1 漏洞分析的方法 628
25.2运动中寻求突破:调试技术 629
25.2.1 断点技巧 630
25.2.2 回溯思路 644
25.3 用“白眉”在PE中漫步 647
25.3.1 指令追踪技术与Paimei 647
25.3.2 Paimei的安装 648
25.3.3 使用PE Stalker 649
25.3.4 迅速定位特定功能对应的代码 652
25.4 补丁比较 654
第26章 RPC入侵:MS06-040 与MS08-067 658
26.1 RPC漏洞 658
26.1.1 RPC漏洞简介 658
26.1.2 RPC编程简介 658
26.2 MS06-040 659
26.2.1 MS06-040简介 659
26.2.2 动态调试 660
26.2.3 静态分析 667
26.2.4 实现远程exploit 670
26.3 Windows XP环境下的MS06-040 exploit 677
26.3.1 静态分析 677
26.3.2 蠕虫样本的exploit方法 682
26.3.3 实践跨平台exploit 684
26.4 MS08-067 690
26.4.1 MS08-067简介 690
26.4.2 认识Legacy Folder 693
26.4.3 “移经”测试 694
26.4.4 “移经”风险 695
26.4.5 POC的构造 696
26.5 魔波、Conficker与蠕虫病毒 703
第27章 MS06-055分析:实战Heap Spray 705
27.1 MS06-055简介 705
27.1.1 矢量标记语言(VML)简介 705
27.1.2 0 day安全响应纪实 706
27.2 漏洞分析 707
27.3 漏洞利用 710
第28章 MS09-032分析:一个“&”引发的血案 713
28.1 MS09-032简介 713
28.2 漏洞原理及利用分析 713
第29章 Yahoo!Messenger栈 溢出漏洞 719
29.1 漏洞介绍 719
29.2 漏洞分析 719
29.3 漏洞利用 723
第30章 CVE-2009-0927:PDF中的JS 725
30.1 CVE-2009-0927简介 725
30.2 PDF文档格式简介 725
30.3 漏洞原理及利用分析 727
第31章 坝之蚁穴:超长URL溢出漏洞 731
31.1 漏洞简介 731
31.3 漏洞原理及利用分析 731
第32章 暴风影音M3U文件解析漏洞 737
32.1 漏洞简介 737
32.2 M3U文件简介 737
32.3 漏洞原理及利用分析 738
第33章 LNK快捷方式文件漏洞 744
33.1 漏洞简介 744
33.2 漏洞原理及利用分析 744
附录A 已公布的内核程序漏洞列表 750
参考文献 753
页码(选填)
这本书已经添加了这些章节,请勾选或者新建你的书摘所属的章节
add
up
down
remove
目录
第1篇 漏洞利用原理(初级)
第1章 基础知识 2
1.1 漏洞概述 2
1.1.1 bug与漏洞 2
1.1.2 几个令人困惑的安全问题 2
1.1.3 漏洞挖掘、漏洞分析、漏洞利用 3
1.1.4 漏洞的公布与0 day响应 5
1.2 二进制文件概述 5
1.2.1 PE文件格式 5
1.2.2 虚拟内存 6
1.2.3 PE文件与虚拟内存之间的映射 7
1.3 必备工具 11
1.3.1 OllyDbg简介 11
1.3.2 SoftICE简介 11
1.3.3 WinDbg简介 16
1.3.4 IDA Pro简介 18
1.3.5 二进制编辑器 20
1.3.6 VMware简介 21
1.3.7 Python编程环境 28
1.4 Crack小实验 29
第2章 栈溢出原理与实践 38
2.1 系统栈的工作原理 38
2.1.1 内存的不同用途 38
2.1.2 栈与系统栈 39
2.1.3 函数调用时发生了什么 40
2.1.4 寄存器与函数栈帧 43
2.1.5 函数调用约定与相关指令 44
2.2 修改邻接变量 47
2.2.1 修改邻接变量的原理 47
2.2.2 突破密码验证程序 49
2.3 修改函数返回地址 53
2.3.1 返回地址与程序流程 53
2.3.2 控制程序的执行流程 57
2.4 代码植入 62
2.4.1 代码植入的原理 62
2.4.2 向进程中植入代码 62
第3章 开发shellcode的艺术 71
3.1 shellcode概述 71
3.1.1 shellcode与exploit 71
3.1.2 shellcode需要解决的问题 72
3.2 定位shellcode 73
3.2.1 栈帧移位与jmp esp 73
3.2.2 获取“跳板”的地址 76
3.2.3 使用“跳板”定位的exploit 78
3.3 缓冲区的组织 81
3.3.1 缓冲区的组成 81
3.3.2 抬高栈顶保护shellcode 83
3.3.3 使用其他跳转指令 83
3.3.4 不使用跳转指令 84
3.3.5 函数返回地址移位 85
3.4 开发通用的shellcode 87
3.4.1 定位API的原理 87
3.4.2 shellcode的加载与调试 88
3.4.3 动态定位API地址的shellcode 89
3.5 shellcode编码技术 98
3.5.1 为什么要对shellcode编码 98
3.5.2 会“变形”的shellcode 99
3.6 为shellcode“减肥” 103
3.6.1 shellcode瘦身大法 103
3.6.2 选择恰当的hash算法 105
3.6.3 191个字节的bindshell 107
第4章 用MetaSploit开发Exploit 119
4.1 漏洞测试平台MSF 简介 119
4.2 入侵Windows系统 121
4.2.1 漏洞简介 121
4.2.2 图形界面的漏洞测试 121
4.2.3 console界面的漏洞测试 125
4.3 利用MSF制作shellcode 126
4.4 用MSF扫描“跳板” 128
4.5 Ruby语言简介 129
4.6 “傻瓜式”Exploit开发 134
4.7 用MSF发布POC 140
第5章 堆溢出利用 144
5.1 堆的工作原理 144
5.1.1 Windows堆的历史 144
5.1.2 堆与栈的区别 145
5.1.3 堆的数据结构与管理策略 146
5.2 在堆中漫游 151
5.2.1 堆分配函数之间的调用关系 151
5.2.2 堆的调试方法 152
5.2.3 识别堆表 155
5.2.4 堆块的分配 158
5.2.5 堆块的释放 159
5.2.6 堆块的合并 159
5.2.7 快表的使用 161
5.3 堆溢出利用(上)——DWORD SHOOT 163
5.3.1 链表“拆卸”中的问题 163
5.3.2 在调试中体会“DWORD SHOOT” 165
5.4 堆溢出利用(下)——代码植入 169
5.4.1 DWORD SHOOT的利用方法 169
5.4.2 狙击P.E.B中RtlEnterCritical-Section()的函数指针 170
5.4.3 堆溢出利用的注意事项 175
第6章 形形色色的内存攻击技术 178
6.1 狙击Windows异常处理机制 178
6.1.1 S.E.H概述 178
6.1.2 在栈溢出中利用S.E.H 180
6.1.3 在堆溢出中利用S.E.H 184
6.1.4 深入挖掘Windows异常处理 187
6.1.5 其他异常处理机制的利用思路 192
6.2 “off by one”的利用 196
6.3 攻击C++的虚函数 198
6.4 Heap Spray:堆与栈的协同攻击 201
第7章 手机里的缓冲区溢出 204
7.1 Windows Mobile简介 204
7.1.1 Windows Mobile前世今生 204
7.1.2 Windows Mobile架构概述 205
7.1.3 Windows Mobile的内存管理 209
7.2 ARM简介 212
7.2.1 ARM是什么 212
7.2.2 ARM寄存器结构 212
7.2.3 ARM汇编指令结构 215
7.2.4 ARM指令寻址方式 220
7.2.5 ARM的函数调用与返回 222
7.3 Windows Mobile上的HelloWorld 223
7.4 远程调试工具简介 227
7.4.1 远程信息查看管理套件 227
7.4.2 手机上的调试——Microsoft Visual Studio 231
7.4.3 手机上的调试——IDA 233
7.5 手机上的exploit me 237
第8章 其他类型的软件漏洞 243
8.1 格式化串漏洞 243
8.1.1 printf中的缺陷 243
8.1.2 用printf读取内存数据 244
8.1.3 用printf向内存写数据 245
8.1.4 格式化串漏洞的检测与防范 246
8.2 SQL注入攻击 247
8.2.1 SQL注入原理 247
8.2.2 攻击PHP+MySQL网站 248
8.2.3 攻击ASP+SQL Server网站 250
8.2.4 注入攻击的检测与防范 252
8.3 其他注入方式 253
8.3.1 Cookie注入,绕过马其诺防线 253
8.3.2 XPath注入,XML的阿喀琉斯之踵 254
8.4 XSS攻击 255
8.4.1 脚本能够“跨站”的原因 255
8.4.2 XSS Reflection攻击场景 256
8.4.3 Stored XSS攻击场景 258
8.4.4 攻击案例回顾:XSS蠕虫 258
8.4.5 XSS的检测与防范 259
8.5 路径回溯漏洞 260
8.5.1 路径回溯的基本原理 260
8.5.2 范式化与路径回溯 261
第2篇 漏洞利用原理(高级)
第9章 Windows安全机制概述 264
第10章 栈中的守护天使:GS 267
10.1 GS安全编译选项的保护原理 267
10.2 利用未被保护的内存突破GS 271
10.3 覆盖虚函数突破GS 273
10.4 攻击异常处理突破GS 276
10.5 同时替换栈中和.data中的Cookie突破GS 280
第11章 亡羊补牢:SafeSEH 284
11.1 SafeSEH对异常处理的保护原理 284
11.2 攻击返回地址绕过SafeSEH 288
11.3 利用虚函数绕过SafeSEH 288
11.4 从堆中绕过SafeSEH 288
11.5 利用未启用SafeSEH模块绕过SafeSEH 292
11.6 利用加载模块之外的地址绕过SafeSEH 299
11.7 利用Adobe Flash Player ActiveX控件绕过SafeSEH 305
第12章 数据与程序的分水岭:DEP 313
12.1 DEP机制的保护原理 313
12.2 攻击未启用DEP的程序 316
12.3 利用Ret2Libc挑战DEP 317
12.3.1 Ret2Libc实战之利用ZwSetInformationProcess 318
12.3.2 Ret2Libc实战之利用VirtualProtect 330
12.3.3 Ret2Libc实战之利用VirtualAlloc 339
12.4 利用可执行内存挑战DEP 348
12.5 利用.NET挑战DEP 352
12.6 利用Java applet挑战DEP 359
第13章 在内存中躲猫猫:ASLR 363
13.1 内存随机化保护机制的原理 363
13.2 攻击未启用ASLR的模块 367
13.3 利用部分覆盖进行定位内存地址 372
13.4 利用Heap spray技术定位内存地址 376
13.5 利用Java applet heap spray技术定位内存地址 379
13.6 为.NET控件禁用ASLR 382
第14章 S.E.H终极防护:SEHOP 386
14.1 SEHOP的原理 386
14.2 攻击返回地址 388
14.3 攻击虚函数 388
14.4 利用未启用SEHOP的模块 388
14.5 伪造S.E.H链表 390
第15章 重重保护下的堆 396
15.1 堆保护机制的原理 396
15.2 攻击堆中存储的变量 397
15.3 利用chunk重设大小攻击堆 398
15.4 利用Lookaside表进行堆溢出 407
第3篇 漏洞挖掘技术
第16章 漏洞挖掘技术简介 414
16.1 漏洞挖掘概述 414
16.2 动态测试技术 415
16.2.1 SPIKE简介 415
16.2.2 beSTORM简介 421
16.3 静态代码审计 429
第17章 文件类型漏洞挖掘 与Smart Fuzz 431
17.1 Smart Fuzz概述 431
17.1.1 文件格式Fuzz的基本方法 431
17.1.2 Blind Fuzz和Smart Fuzz 432
17.2 用Peach挖掘文件漏洞 433
17.2.1 Peach介绍及安装 433
17.2.2 XML介绍 434
17.2.3 定义简单的 Peach Pit 436
17.2.4 定义数据之间的依存关系 440
17.2.5 用Peach Fuzz PNG文件 441
17.3 010脚本,复杂文件解析的瑞士军刀 446
17.3.1 010 Editor简介 446
17.3.2 010脚本编写入门 447
17.3.3 010脚本编写提高——PNG文件解析 449
17.3.4 深入解析,深入挖掘——PPT文件解析 452
第18章 FTP的漏洞挖掘 457
18.1 FTP协议简介 457
18.2 漏洞挖掘手记1:DOS 457
18.3 漏洞挖掘手记2:访问权限 466
18.4 漏洞挖掘手记3:缓冲区溢出 468
18.5 漏洞挖掘手记4:Fuzz DIY 472
第19章 E-Mail的漏洞挖掘 477
19.1 挖掘SMTP漏洞 477
19.1.1 SMTP协议简介 477
19.1.2 SMTP漏洞挖掘手记 478
19.2 挖掘POP3漏洞 480
19.2.1 POP3协议简介 480
19.2.2 POP3漏洞挖掘手记 481
19.3 挖掘IMAP4漏洞 489
19.3.1 IMAP4协议简介 489
19.3.2 IMAP4漏洞挖掘手记 490
19.4 其他E-mail漏洞 491
19.4.1 URL中的路径回溯 491
19.4.2 内存中的路径回溯 494
19.4.3 邮件中的XSS 500
第20章 ActiveX控件的漏洞挖掘 502
20.1 ActiveX控件简介 502
20.1.1 浏览器与ActiveX控件的关系 502
20.1.2 控件的属性 503
20.2 手工测试ActiveX控件 504
20.2.1 建立测试模板 504
20.2.2 获取控件的接口信息 505
20.3 用工具测试ActiveX控件:COMRaider 509
20.4 挖掘ActiveX漏洞 516
20.4.1 ActiveX漏洞的分类 516
20.4.2 漏洞挖掘手记1:超星阅读器溢出 517
20.4.3 漏洞挖掘手记2:目录操作权限 521
20.4.4 漏洞挖掘手记3:文件读权限 523
20.4.5 漏洞挖掘手记3:文件删除权限 525
第4篇 操作系统内核安全
第21章 探索ring0 528
21.1 内核基础知识介绍 528
21.1.1 内核概述 528
21.1.2 驱动编写之Hello World 528
21.1.3 派遣例程与IRP结构 533
21.1.4 Ring3打开驱动设备 537
21.1.5 DeviceIoControl函数与IoControlCode 538
21.1.6 Ring3/Ring0的四种通信方式 539
21.2 内核调试入门 541
21.2.1 创建内核调试环境 541
21.2.2 蓝屏分析 549
21.3 内核漏洞概述 551
21.3.1 内核漏洞的分类 551
21.3.2 内核漏洞的研究过程 553
21.4 编写安全的驱动程序 555
21.4.1 输入输出检查 555
21.4.2 验证驱动的调用者 556
21.4.3 白名单机制的挑战 556
第22章 内核漏洞利用技术 557
22.1 利用实验之exploitme.sys 557
22.2 内核漏洞利用思路 559
22.3 内核漏洞利用方法 560
22.4 内核漏洞利用实战与编程 565
22.5 Ring0 Shellcode的编写 570
第23章 FUZZ驱动程序 579
23.1 内核FUZZ思路 579
23.2 内核FUZZ工具介绍 581
23.3 内核FUZZ工具DIY 583
23.3.1 Fuzz对象、Fuzz策略、Fuzz项 583
23.3.2 IoControl MITM Fuzz 583
23.3.3 IoControl Driver Fuzz 585
23.3.4 MyIoControl Fuzzer界面 586
23.4 内核漏洞挖掘实战 588
23.4.1 超级巡警ASTDriver.sys本地提权漏洞 588
23.4.2 东方微点mp110013.sys本地提权漏洞 594
23.4.3 瑞星HookCont.sys驱动本地拒绝服务漏洞 601
第24章 内核漏洞案例分析 605
24.1 远程拒绝服务内核漏洞 605
24.2 本地拒绝服务内核漏洞 611
24.3 缓冲区溢出内核漏洞 614
24.4 任意地址写任意数据内核漏洞 619
24.5 任意地址写固定数据内核漏洞 622
第5篇 漏洞分析案例
第25章 漏洞分析技术概述 628
25.1 漏洞分析的方法 628
25.2运动中寻求突破:调试技术 629
25.2.1 断点技巧 630
25.2.2 回溯思路 644
25.3 用“白眉”在PE中漫步 647
25.3.1 指令追踪技术与Paimei 647
25.3.2 Paimei的安装 648
25.3.3 使用PE Stalker 649
25.3.4 迅速定位特定功能对应的代码 652
25.4 补丁比较 654
第26章 RPC入侵:MS06-040 与MS08-067 658
26.1 RPC漏洞 658
26.1.1 RPC漏洞简介 658
26.1.2 RPC编程简介 658
26.2 MS06-040 659
26.2.1 MS06-040简介 659
26.2.2 动态调试 660
26.2.3 静态分析 667
26.2.4 实现远程exploit 670
26.3 Windows XP环境下的MS06-040 exploit 677
26.3.1 静态分析 677
26.3.2 蠕虫样本的exploit方法 682
26.3.3 实践跨平台exploit 684
26.4 MS08-067 690
26.4.1 MS08-067简介 690
26.4.2 认识Legacy Folder 693
26.4.3 “移经”测试 694
26.4.4 “移经”风险 695
26.4.5 POC的构造 696
26.5 魔波、Conficker与蠕虫病毒 703
第27章 MS06-055分析:实战Heap Spray 705
27.1 MS06-055简介 705
27.1.1 矢量标记语言(VML)简介 705
27.1.2 0 day安全响应纪实 706
27.2 漏洞分析 707
27.3 漏洞利用 710
第28章 MS09-032分析:一个“&”引发的血案 713
28.1 MS09-032简介 713
28.2 漏洞原理及利用分析 713
第29章 Yahoo!Messenger栈 溢出漏洞 719
29.1 漏洞介绍 719
29.2 漏洞分析 719
29.3 漏洞利用 723
第30章 CVE-2009-0927:PDF中的JS 725
30.1 CVE-2009-0927简介 725
30.2 PDF文档格式简介 725
30.3 漏洞原理及利用分析 727
第31章 坝之蚁穴:超长URL溢出漏洞 731
31.1 漏洞简介 731
31.3 漏洞原理及利用分析 731
第32章 暴风影音M3U文件解析漏洞 737
32.1 漏洞简介 737
32.2 M3U文件简介 737
32.3 漏洞原理及利用分析 738
第33章 LNK快捷方式文件漏洞 744
33.1 漏洞简介 744
33.2 漏洞原理及利用分析 744
附录A 已公布的内核程序漏洞列表 750
参考文献 753
×
添加一个书摘本
搜索创建书摘本
搜索
正在搜索...
不对,换一下
书名
作者
出版社
备注
ISBN
*
*
目录
第1篇 漏洞利用原理(初级)
第1章 基础知识 2
1.1 漏洞概述 2
1.1.1 bug与漏洞 2
1.1.2 几个令人困惑的安全问题 2
1.1.3 漏洞挖掘、漏洞分析、漏洞利用 3
1.1.4 漏洞的公布与0 day响应 5
1.2 二进制文件概述 5
1.2.1 PE文件格式 5
1.2.2 虚拟内存 6
1.2.3 PE文件与虚拟内存之间的映射 7
1.3 必备工具 11
1.3.1 OllyDbg简介 11
1.3.2 SoftICE简介 11
1.3.3 WinDbg简介 16
1.3.4 IDA Pro简介 18
1.3.5 二进制编辑器 20
1.3.6 VMware简介 21
1.3.7 Python编程环境 28
1.4 Crack小实验 29
第2章 栈溢出原理与实践 38
2.1 系统栈的工作原理 38
2.1.1 内存的不同用途 38
2.1.2 栈与系统栈 39
2.1.3 函数调用时发生了什么 40
2.1.4 寄存器与函数栈帧 43
2.1.5 函数调用约定与相关指令 44
2.2 修改邻接变量 47
2.2.1 修改邻接变量的原理 47
2.2.2 突破密码验证程序 49
2.3 修改函数返回地址 53
2.3.1 返回地址与程序流程 53
2.3.2 控制程序的执行流程 57
2.4 代码植入 62
2.4.1 代码植入的原理 62
2.4.2 向进程中植入代码 62
第3章 开发shellcode的艺术 71
3.1 shellcode概述 71
3.1.1 shellcode与exploit 71
3.1.2 shellcode需要解决的问题 72
3.2 定位shellcode 73
3.2.1 栈帧移位与jmp esp 73
3.2.2 获取“跳板”的地址 76
3.2.3 使用“跳板”定位的exploit 78
3.3 缓冲区的组织 81
3.3.1 缓冲区的组成 81
3.3.2 抬高栈顶保护shellcode 83
3.3.3 使用其他跳转指令 83
3.3.4 不使用跳转指令 84
3.3.5 函数返回地址移位 85
3.4 开发通用的shellcode 87
3.4.1 定位API的原理 87
3.4.2 shellcode的加载与调试 88
3.4.3 动态定位API地址的shellcode 89
3.5 shellcode编码技术 98
3.5.1 为什么要对shellcode编码 98
3.5.2 会“变形”的shellcode 99
3.6 为shellcode“减肥” 103
3.6.1 shellcode瘦身大法 103
3.6.2 选择恰当的hash算法 105
3.6.3 191个字节的bindshell 107
第4章 用MetaSploit开发Exploit 119
4.1 漏洞测试平台MSF 简介 119
4.2 入侵Windows系统 121
4.2.1 漏洞简介 121
4.2.2 图形界面的漏洞测试 121
4.2.3 console界面的漏洞测试 125
4.3 利用MSF制作shellcode 126
4.4 用MSF扫描“跳板” 128
4.5 Ruby语言简介 129
4.6 “傻瓜式”Exploit开发 134
4.7 用MSF发布POC 140
第5章 堆溢出利用 144
5.1 堆的工作原理 144
5.1.1 Windows堆的历史 144
5.1.2 堆与栈的区别 145
5.1.3 堆的数据结构与管理策略 146
5.2 在堆中漫游 151
5.2.1 堆分配函数之间的调用关系 151
5.2.2 堆的调试方法 152
5.2.3 识别堆表 155
5.2.4 堆块的分配 158
5.2.5 堆块的释放 159
5.2.6 堆块的合并 159
5.2.7 快表的使用 161
5.3 堆溢出利用(上)——DWORD SHOOT 163
5.3.1 链表“拆卸”中的问题 163
5.3.2 在调试中体会“DWORD SHOOT” 165
5.4 堆溢出利用(下)——代码植入 169
5.4.1 DWORD SHOOT的利用方法 169
5.4.2 狙击P.E.B中RtlEnterCritical-Section()的函数指针 170
5.4.3 堆溢出利用的注意事项 175
第6章 形形色色的内存攻击技术 178
6.1 狙击Windows异常处理机制 178
6.1.1 S.E.H概述 178
6.1.2 在栈溢出中利用S.E.H 180
6.1.3 在堆溢出中利用S.E.H 184
6.1.4 深入挖掘Windows异常处理 187
6.1.5 其他异常处理机制的利用思路 192
6.2 “off by one”的利用 196
6.3 攻击C++的虚函数 198
6.4 Heap Spray:堆与栈的协同攻击 201
第7章 手机里的缓冲区溢出 204
7.1 Windows Mobile简介 204
7.1.1 Windows Mobile前世今生 204
7.1.2 Windows Mobile架构概述 205
7.1.3 Windows Mobile的内存管理 209
7.2 ARM简介 212
7.2.1 ARM是什么 212
7.2.2 ARM寄存器结构 212
7.2.3 ARM汇编指令结构 215
7.2.4 ARM指令寻址方式 220
7.2.5 ARM的函数调用与返回 222
7.3 Windows Mobile上的HelloWorld 223
7.4 远程调试工具简介 227
7.4.1 远程信息查看管理套件 227
7.4.2 手机上的调试——Microsoft Visual Studio 231
7.4.3 手机上的调试——IDA 233
7.5 手机上的exploit me 237
第8章 其他类型的软件漏洞 243
8.1 格式化串漏洞 243
8.1.1 printf中的缺陷 243
8.1.2 用printf读取内存数据 244
8.1.3 用printf向内存写数据 245
8.1.4 格式化串漏洞的检测与防范 246
8.2 SQL注入攻击 247
8.2.1 SQL注入原理 247
8.2.2 攻击PHP+MySQL网站 248
8.2.3 攻击ASP+SQL Server网站 250
8.2.4 注入攻击的检测与防范 252
8.3 其他注入方式 253
8.3.1 Cookie注入,绕过马其诺防线 253
8.3.2 XPath注入,XML的阿喀琉斯之踵 254
8.4 XSS攻击 255
8.4.1 脚本能够“跨站”的原因 255
8.4.2 XSS Reflection攻击场景 256
8.4.3 Stored XSS攻击场景 258
8.4.4 攻击案例回顾:XSS蠕虫 258
8.4.5 XSS的检测与防范 259
8.5 路径回溯漏洞 260
8.5.1 路径回溯的基本原理 260
8.5.2 范式化与路径回溯 261
第2篇 漏洞利用原理(高级)
第9章 Windows安全机制概述 264
第10章 栈中的守护天使:GS 267
10.1 GS安全编译选项的保护原理 267
10.2 利用未被保护的内存突破GS 271
10.3 覆盖虚函数突破GS 273
10.4 攻击异常处理突破GS 276
10.5 同时替换栈中和.data中的Cookie突破GS 280
第11章 亡羊补牢:SafeSEH 284
11.1 SafeSEH对异常处理的保护原理 284
11.2 攻击返回地址绕过SafeSEH 288
11.3 利用虚函数绕过SafeSEH 288
11.4 从堆中绕过SafeSEH 288
11.5 利用未启用SafeSEH模块绕过SafeSEH 292
11.6 利用加载模块之外的地址绕过SafeSEH 299
11.7 利用Adobe Flash Player ActiveX控件绕过SafeSEH 305
第12章 数据与程序的分水岭:DEP 313
12.1 DEP机制的保护原理 313
12.2 攻击未启用DEP的程序 316
12.3 利用Ret2Libc挑战DEP 317
12.3.1 Ret2Libc实战之利用ZwSetInformationProcess 318
12.3.2 Ret2Libc实战之利用VirtualProtect 330
12.3.3 Ret2Libc实战之利用VirtualAlloc 339
12.4 利用可执行内存挑战DEP 348
12.5 利用.NET挑战DEP 352
12.6 利用Java applet挑战DEP 359
第13章 在内存中躲猫猫:ASLR 363
13.1 内存随机化保护机制的原理 363
13.2 攻击未启用ASLR的模块 367
13.3 利用部分覆盖进行定位内存地址 372
13.4 利用Heap spray技术定位内存地址 376
13.5 利用Java applet heap spray技术定位内存地址 379
13.6 为.NET控件禁用ASLR 382
第14章 S.E.H终极防护:SEHOP 386
14.1 SEHOP的原理 386
14.2 攻击返回地址 388
14.3 攻击虚函数 388
14.4 利用未启用SEHOP的模块 388
14.5 伪造S.E.H链表 390
第15章 重重保护下的堆 396
15.1 堆保护机制的原理 396
15.2 攻击堆中存储的变量 397
15.3 利用chunk重设大小攻击堆 398
15.4 利用Lookaside表进行堆溢出 407
第3篇 漏洞挖掘技术
第16章 漏洞挖掘技术简介 414
16.1 漏洞挖掘概述 414
16.2 动态测试技术 415
16.2.1 SPIKE简介 415
16.2.2 beSTORM简介 421
16.3 静态代码审计 429
第17章 文件类型漏洞挖掘 与Smart Fuzz 431
17.1 Smart Fuzz概述 431
17.1.1 文件格式Fuzz的基本方法 431
17.1.2 Blind Fuzz和Smart Fuzz 432
17.2 用Peach挖掘文件漏洞 433
17.2.1 Peach介绍及安装 433
17.2.2 XML介绍 434
17.2.3 定义简单的 Peach Pit 436
17.2.4 定义数据之间的依存关系 440
17.2.5 用Peach Fuzz PNG文件 441
17.3 010脚本,复杂文件解析的瑞士军刀 446
17.3.1 010 Editor简介 446
17.3.2 010脚本编写入门 447
17.3.3 010脚本编写提高——PNG文件解析 449
17.3.4 深入解析,深入挖掘——PPT文件解析 452
第18章 FTP的漏洞挖掘 457
18.1 FTP协议简介 457
18.2 漏洞挖掘手记1:DOS 457
18.3 漏洞挖掘手记2:访问权限 466
18.4 漏洞挖掘手记3:缓冲区溢出 468
18.5 漏洞挖掘手记4:Fuzz DIY 472
第19章 E-Mail的漏洞挖掘 477
19.1 挖掘SMTP漏洞 477
19.1.1 SMTP协议简介 477
19.1.2 SMTP漏洞挖掘手记 478
19.2 挖掘POP3漏洞 480
19.2.1 POP3协议简介 480
19.2.2 POP3漏洞挖掘手记 481
19.3 挖掘IMAP4漏洞 489
19.3.1 IMAP4协议简介 489
19.3.2 IMAP4漏洞挖掘手记 490
19.4 其他E-mail漏洞 491
19.4.1 URL中的路径回溯 491
19.4.2 内存中的路径回溯 494
19.4.3 邮件中的XSS 500
第20章 ActiveX控件的漏洞挖掘 502
20.1 ActiveX控件简介 502
20.1.1 浏览器与ActiveX控件的关系 502
20.1.2 控件的属性 503
20.2 手工测试ActiveX控件 504
20.2.1 建立测试模板 504
20.2.2 获取控件的接口信息 505
20.3 用工具测试ActiveX控件:COMRaider 509
20.4 挖掘ActiveX漏洞 516
20.4.1 ActiveX漏洞的分类 516
20.4.2 漏洞挖掘手记1:超星阅读器溢出 517
20.4.3 漏洞挖掘手记2:目录操作权限 521
20.4.4 漏洞挖掘手记3:文件读权限 523
20.4.5 漏洞挖掘手记3:文件删除权限 525
第4篇 操作系统内核安全
第21章 探索ring0 528
21.1 内核基础知识介绍 528
21.1.1 内核概述 528
21.1.2 驱动编写之Hello World 528
21.1.3 派遣例程与IRP结构 533
21.1.4 Ring3打开驱动设备 537
21.1.5 DeviceIoControl函数与IoControlCode 538
21.1.6 Ring3/Ring0的四种通信方式 539
21.2 内核调试入门 541
21.2.1 创建内核调试环境 541
21.2.2 蓝屏分析 549
21.3 内核漏洞概述 551
21.3.1 内核漏洞的分类 551
21.3.2 内核漏洞的研究过程 553
21.4 编写安全的驱动程序 555
21.4.1 输入输出检查 555
21.4.2 验证驱动的调用者 556
21.4.3 白名单机制的挑战 556
第22章 内核漏洞利用技术 557
22.1 利用实验之exploitme.sys 557
22.2 内核漏洞利用思路 559
22.3 内核漏洞利用方法 560
22.4 内核漏洞利用实战与编程 565
22.5 Ring0 Shellcode的编写 570
第23章 FUZZ驱动程序 579
23.1 内核FUZZ思路 579
23.2 内核FUZZ工具介绍 581
23.3 内核FUZZ工具DIY 583
23.3.1 Fuzz对象、Fuzz策略、Fuzz项 583
23.3.2 IoControl MITM Fuzz 583
23.3.3 IoControl Driver Fuzz 585
23.3.4 MyIoControl Fuzzer界面 586
23.4 内核漏洞挖掘实战 588
23.4.1 超级巡警ASTDriver.sys本地提权漏洞 588
23.4.2 东方微点mp110013.sys本地提权漏洞 594
23.4.3 瑞星HookCont.sys驱动本地拒绝服务漏洞 601
第24章 内核漏洞案例分析 605
24.1 远程拒绝服务内核漏洞 605
24.2 本地拒绝服务内核漏洞 611
24.3 缓冲区溢出内核漏洞 614
24.4 任意地址写任意数据内核漏洞 619
24.5 任意地址写固定数据内核漏洞 622
第5篇 漏洞分析案例
第25章 漏洞分析技术概述 628
25.1 漏洞分析的方法 628
25.2运动中寻求突破:调试技术 629
25.2.1 断点技巧 630
25.2.2 回溯思路 644
25.3 用“白眉”在PE中漫步 647
25.3.1 指令追踪技术与Paimei 647
25.3.2 Paimei的安装 648
25.3.3 使用PE Stalker 649
25.3.4 迅速定位特定功能对应的代码 652
25.4 补丁比较 654
第26章 RPC入侵:MS06-040 与MS08-067 658
26.1 RPC漏洞 658
26.1.1 RPC漏洞简介 658
26.1.2 RPC编程简介 658
26.2 MS06-040 659
26.2.1 MS06-040简介 659
26.2.2 动态调试 660
26.2.3 静态分析 667
26.2.4 实现远程exploit 670
26.3 Windows XP环境下的MS06-040 exploit 677
26.3.1 静态分析 677
26.3.2 蠕虫样本的exploit方法 682
26.3.3 实践跨平台exploit 684
26.4 MS08-067 690
26.4.1 MS08-067简介 690
26.4.2 认识Legacy Folder 693
26.4.3 “移经”测试 694
26.4.4 “移经”风险 695
26.4.5 POC的构造 696
26.5 魔波、Conficker与蠕虫病毒 703
第27章 MS06-055分析:实战Heap Spray 705
27.1 MS06-055简介 705
27.1.1 矢量标记语言(VML)简介 705
27.1.2 0 day安全响应纪实 706
27.2 漏洞分析 707
27.3 漏洞利用 710
第28章 MS09-032分析:一个“&”引发的血案 713
28.1 MS09-032简介 713
28.2 漏洞原理及利用分析 713
第29章 Yahoo!Messenger栈 溢出漏洞 719
29.1 漏洞介绍 719
29.2 漏洞分析 719
29.3 漏洞利用 723
第30章 CVE-2009-0927:PDF中的JS 725
30.1 CVE-2009-0927简介 725
30.2 PDF文档格式简介 725
30.3 漏洞原理及利用分析 727
第31章 坝之蚁穴:超长URL溢出漏洞 731
31.1 漏洞简介 731
31.3 漏洞原理及利用分析 731
第32章 暴风影音M3U文件解析漏洞 737
32.1 漏洞简介 737
32.2 M3U文件简介 737
32.3 漏洞原理及利用分析 738
第33章 LNK快捷方式文件漏洞 744
33.1 漏洞简介 744
33.2 漏洞原理及利用分析 744
附录A 已公布的内核程序漏洞列表 750
参考文献 753