天书夜读:从汇编语言到Windows内核编程PDF电子书下载
- 电子书积分:11 积分如何计算积分?
- 作 者:谭文,邵坚磊著
- 出 版 社:北京:电子工业出版社
- 出版年份:2008
- ISBN:9787121073397
- 页数:270 页
入手篇 熟悉汇编 2
第1章 汇编指令与C语言 2
1.1上机建立第一个工程 4
1.1.1用Visual Studio创建工程 4
1.1.2用Visual Studio查看汇编代码 5
1.2简要复习常用的汇编指令 6
1.2.1堆栈相关指令 6
1.2.2数据传送指令 7
1.2.3跳转与比较指令 8
1.3 C函数的参数传递过程 9
第2章 C语言的流程和处理 14
2.1 C语言的循环反汇编 15
2.1.1 for循环 15
2.1.2 do循环 16
2.1.3 while循环 17
2.2 C语言判断与分支的反汇编 18
2.2.1 if-else判断分支 18
2.2.2 switch-case判断分支 19
2.3 C语言的数组与结构 22
2.4 C语言的共用体和枚举类型 24
第3章 练习反汇编C语言程序 26
3.1算法的反汇编 27
3.1.1算法反汇编代码分析 27
3.1.2算法反汇编阅读技巧 28
3.2发行版的反汇编 29
3.3汇编反C语言练习 33
基础篇 内核编程 38
第4章 内核字符串与内存 38
4.1字符串的处理 39
4.1.1使用字符串结构 39
4.1.2字符串的初始化 41
4.1.3字符串的拷贝 42
4.1.4字符串的连接 42
4.1.5字符串的打印 43
4.2内存与链表 45
4.2.1内存的分配与释放 45
4.2.2使用LIST_ENTRY 46
4.2.3使用长长整型数据 49
4.2.4使用自旋锁 50
第5章 文件与注册表操作 52
5.1文件操作 53
5.1.1使用OBJECT_ATTRIBUTES 53
5.1.2打开和关闭文件 54
5.1.3文件读/写操作 58
5.2注册表操作 60
5.2.1注册表键的打开 60
5.2.2注册表值的读 62
5.2.3注册表值的写 65
第6章 时间与线程 67
6.1时间与定时器 68
6.1.1获得当前滴答数 68
6.1.2获得当前系统时间 69
6.1.3使用定时器 70
6.2线程与事件 73
6.2.1使用系统线程 73
6.2.2在线程中睡眠 75
6.2.3使用同步事件 76
第7章 驱动、设备与请求 79
7.1驱动与设备 80
7.1.1驱动入口与驱动对象 80
7.1.2分发函数和卸载函数 80
7.1.3设备与符号链接 82
7.1.4设备的安全创建 83
7.1.5设备与符号链接的用户相关性 85
7.2请求处理 86
7.2.1 IRP与IO_STACK_LOCATION 86
7.2.2打开与关闭请求的处理 88
7.2.3应用层信息传入 89
7.2.4驱动层信息传出 91
探索篇 研究内核 96
第8章 进入Windows内核 96
8.1开始Windows内核编程 97
8.1.1内核编程的环境准备 97
8.1.2用C语言写一个内核程序 99
8.2学习用WinDbg进行调试 102
8.2.1软件的准备 102
8.2.2设置Windows XP调试执行 103
8.2.3设置VMWare虚拟机调试 104
8.2.4设置被调试机为Vista的情况 105
8.2.5设置Windows内核符号表 106
8.2.6调试例子diskperf 106
8.3认识内核代码函数调用方式 107
8.4尝试反写C内核代码 111
8.5如何在代码中寻找需要的信息 113
第9章 用C++编写的内核程序 117
9.1用C++开发内核程序 118
9.1.1建立一个C++的内核工程 118
9.1.2使用C接口标准声明 119
9.1.3使用类静态成员函数 120
9.1.4实现new操作符 121
9.2开始阅读一个反汇编的类 122
9.2.1 new操作符的实现 122
9.2.2构造函数的实现 124
9.3了解更多的C++特性 126
第10章 继续探索Windows内核 131
10.1探索Windows已有内核调用 132
10.2自己实现XP的新调用 135
10.2.1对照调试结果和数据结构 135
10.2.2写出C语言的对应代码 137
10.3没有符号表的情况 138
10.4 64位操作系统下的情况 141
10.4.1分析64位操作系统的调用 143
10.4.2深入了解64位内核调用参数传递 145
深入篇 修改内核 150
第11章 机器码与反汇编引擎 150
11.1了解Intel的机器码 151
11.1.1可执行指令与数据 151
11.1.2单条指令的组成 152
11.1.3 MOD-REG-R/M的组成 155
11.1.4其他的组成部分 157
11.2反汇编引擎XDE32基本数据结构 159
11.3反汇编引擎XDE32具体实现 162
第12章 CPU权限级与分页机制 166
12.1 Ring0和Ring3权限级 167
12.2保护模式下的分页内存保护 169
12.3分页内存不可执行保护 172
12.3.1不可执行保护原理 172
12.3.2不可执行保护的漏洞 173
12.4权限级别的切换 177
12.4.1调用门及其漏洞 178
12.4.2 sysenter和sysexit指令 181
第13章 开发Windows内核Hook 186
13.1 XP下Hook系统调用IoCallDriver 187
13.2 Vista下IofCallDriver的跟踪 189
13.3 Vista下inline hook 193
13.3.1写入跳转指令并拷贝代码 193
13.3.2实现中继函数 196
实战篇 实际开发 200
第14章 反病毒、木马实例开发 200
14.1反病毒、木马的设想 201
14.2开发内核驱动 204
14.2.1在内核中检查可执行文件 204
14.2.2在内核中生成设备接口 208
14.2.3在内核中等待监控进程的响应 210
14.3开发监控进程 216
14.4本软件进一步展望 218
第15章 Rootkit与HIPS 220
15.1 Rootkit为何很重要 222
15.2 Rootkit如何逃过检测 224
15.3 HIPS如何检测Rootkit 234
第16章 手写指令保护代码 237
16.1混淆字符串 238
16.2隐藏内核函数 244
16.3混淆流程与数据操作 251
16.3.1混淆函数出口 251
16.3.2插入有意义的花指令 253
第17章 用VMProtect保护代码 258
17.1安装VMProtect 259
17.2使用VMProtect 261
17.3查看VMProtect效果 267
参考文献 270
- 《莼江曲谱 2 中国昆曲博物馆藏稀见昆剧手抄曲谱汇编之一》郭腊梅主编;孙伊婷副主编;孙文明,孙伊婷编委;中国昆曲博物馆编 2018
- 《莼江曲谱 1 中国昆曲博物馆藏稀见昆剧手抄曲谱汇编之一》郭腊梅主编;孙伊婷副主编;孙文明,孙伊婷编委;中国昆曲博物馆编 2018
- 《近代体育游戏教育史料汇编 第1辑 1》王强主编 2016
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《近代体育游戏教育史料汇编 第2辑 2》王强主编 2016
- 《幼儿园课程资源丛书 幼儿园语言教育资源》周兢编 2015
- 《高等学校“十三五”规划教材 C语言程序设计》翟玉峰责任编辑;(中国)李聪,曾志华,江伟 2019
- 《近代体育游戏教育史料汇编 第1辑 6》王强主编 2016
- 《音乐语言的根基》张艺编著 2019
- 《全国职业院校工业机器人技术专业规划教材 工业机器人现场编程》(中国)项万明 2019
- 《电子测量与仪器》人力资源和社会保障部教材办公室组织编写 2009
- 《少儿电子琴入门教程 双色图解版》灌木文化 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《通信电子电路原理及仿真设计》叶建芳 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《电子应用技术项目教程 第3版》王彰云 2019
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017