图书介绍
图灵程序设计丛书 有趣的二进制 软件安全与逆向分析2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

- (日)爱甲健二著;周自恒译 著
- 出版社: 北京:人民邮电出版社
- ISBN:9787115403995
- 出版时间:2015
- 标注页数:256页
- 文件大小:27MB
- 文件页数:273页
- 主题词:二进制运算;软件开发-安全技术
PDF下载
下载说明
图灵程序设计丛书 有趣的二进制 软件安全与逆向分析PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 通过逆向工程学习如何读懂二进制代码1
1.1先来实际体验一下软件分析吧3
1.1.1通过Process Monitor的日志来确认程序的行为4
1.1.2从注册表访问中能发现些什么6
1.1.3什么是逆向工程9
专栏:逆向工程技术大赛10
1.2尝试静态分析11
1.2.1静态分析与动态分析11
专栏:Stirling与BZ Editor的区别12
1.2.2用二进制编辑器查看文件内容13
1.2.3看不懂汇编语言也可以进行分析14
1.2.4在没有源代码的情况下搞清楚程序的行为16
1.2.5确认程序的源代码18
1.3尝试动态分析20
1.3.1设置Process Monitor的过滤规则20
1.3.2调试器是干什么用的23
1.3.3用OIIyDbg洞察程序的详细逻辑24
1.3.4对反汇编代码进行分析26
专栏:什么是寄存器28
1.3.5将分析结果与源代码进行比较29
专栏:选择自己喜欢的调试器30
1.4学习最基础的汇编指令32
1.4.1没必要记住所有的汇编指令32
1.4.2汇编语言是如何实现条件分支的33
1.4.3参数存放在栈中35
1.4.4从汇编代码联想到C语言源代码37
1.5通过汇编指令洞察程序行为40
1.5.1给函数设置断点40
1.5.2反汇编并观察重要逻辑42
专栏:学习编写汇编代码47
第2章 在射击游戏中防止玩家作弊51
2.1解读内存转储53
2.1.1射击游戏的规则53
2.1.2修改4个字节就能得高分54
2.1.3获取内存转储58
2.1.4从进程异常终止瞬间的状态查找崩溃的原因63
2.1.5有效运用实时调试66
2.1.6通过转储文件寻找出错原因68
专栏:除了个人电脑,在其他计算机设备上运行的程序也可以进行分析吗74
专栏:分析Java编写的应用程序74
2.2如何防止软件被别人分析76
2.2.1反调试技术76
专栏:检测调试器的各种方法77
2.2.2通过代码混淆来防止分析79
专栏:代码混淆的相关话题80
2.2.3将可执行文件进行压缩81
2.2.4将压缩过的可执行文件解压缩:解包86
2.2.5通过手动解包UPX来理解其工作原理87
2.2.6用硬件断点对ASPack进行解包91
专栏:如何分析.NET编写的应用程序95
第3章 利用软件的漏洞进行攻击97
3.1利用缓冲区溢出来执行任意代码99
3.1.1引发缓冲区溢出的示例程序99
3.1.2让普通用户用管理员权限运行程序100
3.1.3权限是如何被夺取的102
3.1.4栈是如何使用内存空间的104
3.1.5攻击者如何执行任意代码107
3.1.6用gdb查看程序运行时的情况110
3.1.7攻击代码示例113
3.1.8生成可用作shellcode的机器语言代码116
3.1.9对0x00的改进121
专栏:printf类函数的字符串格式化bug125
3.2防御攻击的技术127
3.2.1地址随机化:AS LR127
3.2.2除存放可执行代码的内存空间以外,对其余内存空间尽量禁用执行权限:Exec-Shield130
3.2.3在编译时插入检测栈数据完整性的代码:StackGuard131
3.3绕开安全机制的技术134
3.3.1使用libc中的函数来进行攻击:Return-into-libc134
3.3.2利用未随机化的模块内部的汇编代码进行攻击:ROP136
专栏:计算机安全为什么会变成猫鼠游戏137
第4章 自由控制程序运行方式的编程技巧139
4.1通过自制调试器来理解其原理141
4.1.1亲手做一个简单的调试器,在实践中学习141
4.1.2调试器到底是怎样工作的141
4.1.3实现反汇编功能147
4.1.4运行改良版调试器153
4.2在其他进程中运行任意代码:代码注入155
4.2.1向其他进程注入代码155
4.2.2用SetWindowsHookEx劫持系统消息155
4.2.3将DLL路径配置到注册表的Applnit DLLs项162
4.2.4通过CreateRemoteThread在其他进程中创建线程165
4.2.5注入函数170
4.3任意替换程序逻辑:API钩子174
4.3.1 API钩子的两种类型174
4.3.2用Detours实现一个简单的API钩子174
4.3.3修改消息框的标题栏177
专栏:DLL注入和API钩子是“黑客”技术的代表?178
第5章 使用工具探索更广阔的世界179
5.1用Metasploit Framework验证和调查漏洞181
5.1.1什么是Metasploit Framework181
5.1.2安全漏洞的信息从何而来181
5.1.3搭建用于测试漏洞的环境182
5.1.4利用漏洞进行攻击183
专栏:深入探索shellcode184
5.1.5一个ROP的实际例子188
5.2用EMET观察反ROP的机制192
5.2.1什么是EMET192
5.2.2 Anti-ROP的设计获得了蓝帽奖192
5.2.3如何防止攻击193
5.2.4搞清楚加载器的逻辑194
5.2.5 DLL的程序逻辑196
5.2.6 CALL-RETN检查197
5.2.7如何防止误判200
5.2.8检查栈的合法性201
5.3用REMnux分析恶意软件205
5.3.1什么是REMnux205
5.3.2更新特征数据库206
5.3.3扫描目录206
5.4用CIamAV检测恶意软件和漏洞攻击208
5.4.1 CIamAV的特征文件208
5.4.2解压缩.cvd文件209
5.4.3被检测到的文件详细信息210
5.4.4检测所使用的打包器以及疑似恶意软件的文件211
5.5用Zero Wine Tryouts分析恶意软件212
5.5.1 REMnux与Zero Wine Tryouts的区别212
5.5.2运行机制212
5.5.3显示用户界面213
5.5.4确认分析报告214
专栏:尝试开发自己的工具217
5.6尽量减少人工分析:启发式技术218
5.6.1恶意软件应对极限的到来:平均每天60000个218
5.6.2启发式技术革命218
5.6.3用两个恶意软件进行测试220
附录223
A.1安装IDA224
A.2安装OIIyDbg229
A.3安装WinDbg230
A.4安装Visual Studio 2010235
A.5安装Metasploit240
A.6分析工具248
Stirling/BZ Editor248
Process Monitor249
Process Explorer250
Sysinternals工具250
兔耳旋风251
参考文献252
后记254
热门推荐
- 1624657.html
- 662461.html
- 370923.html
- 1622275.html
- 1788758.html
- 2216190.html
- 1141344.html
- 624737.html
- 852884.html
- 3710855.html
- http://www.ickdjs.cc/book_3111920.html
- http://www.ickdjs.cc/book_3137024.html
- http://www.ickdjs.cc/book_1665409.html
- http://www.ickdjs.cc/book_1682189.html
- http://www.ickdjs.cc/book_3868295.html
- http://www.ickdjs.cc/book_3171023.html
- http://www.ickdjs.cc/book_2261265.html
- http://www.ickdjs.cc/book_2273438.html
- http://www.ickdjs.cc/book_3204671.html
- http://www.ickdjs.cc/book_2839181.html