图书介绍
逆向工程权威指南 下【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

- (乌克兰)丹尼斯著;ARCHER,安天安全研究与应急处理中心译 著
- 出版社: 北京:人民邮电出版社
- ISBN:7115434456
- 出版时间:2017
- 标注页数:954页
- 文件大小:49MB
- 文件页数:479页
- 主题词:
PDF下载
下载说明
逆向工程权威指南 下PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第47章 字符串剪切485
47.1 x64下的MSVC 2013优化486
47.2 x64下采用编辑器GCC 4.9.1进行非优化操作487
47.3 x64下的GCC 4.9.1优化488
47.4 ARM64:非优化的GCC(Linaro)4.9489
47.5 ARM64:优化GCC(Linaro)4.9490
47.6 ARM:Keil 6/2013优化(ARM模式)491
47.7 ARM:Keil 6/2013(Thumb模式)优化492
47.8 MIPS493
第48章 toupper()函数495
48.1 x64495
48.1.1 两个比较操作495
48.1.2 一个比较操作496
48.2 ARM497
48.2.1 ARM64下的GCC497
48.3 总结498
第49章 不正确的反汇编代码499
49.1 x86环境下的从一开始错误的反汇编499
49.2 随机噪音,怎么看起来像反汇编指令?500
第50章 混淆技术505
50.1 字符串变换505
50.2 可执行代码506
50.2.1 插入垃圾代码506
50.2.2 用多个指令组合代替原来的一个指令506
50.2.3 始终执行或者从来不会执行的代码506
50.2.4 把指令序列搞乱507
50.2.5 使用间接指针507
50.3 虚拟机以及伪代码507
50.4 一些其他的事情507
50.5 练习题508
50.5.1 练习1508
第51章 C++509
51.1 类509
51.1.1 一个简单的例子509
51.1.2 类继承515
51.1.3 封装518
51.1.4 多重继承520
51.1.5 虚拟方法523
51.2 ostream输出流526
51.3 引用527
51.4 STL/标准模板库(Standard Template Library)528
51.4.1 std::string(字符串)528
51.4.2 std::list535
51.4.3 std::vector标准向量545
51.4.4 std::map()和std::set()552
第52章 数组与负数索引563
第53章 16位的Windows程序566
53.1 例子#1566
53.2 例子#2566
53.3 例子#3567
53.4 例子#4568
53.5 例子#5571
53.6 例子#6574
53.6.1 全局变量576
第四部分 Java581
第54章 Java581
54.1 简介581
54.2 返回一个值581
54.3 简单的计算函数586
54.4 JVM的内存模型588
54.5 简单的函数调用588
54.6 调用函数beep()(蜂鸣器)590
54.7 线性同余随机数产生器(PRNG)591
54.8 条件转移592
54.9 传递参数594
54.10 位操作595
54.11 循环596
54.12 switch()语句598
54.13 数组599
54.13.1 简单的例子599
54.13.2 数组元素求和601
54.13.3 输入变量为数组的主函数main()601
54.13.4 预设初始值的的数组602
54.13.5 可变参数函数604
54.13.6 二维数组606
54.13.7 三维数组606
54.13.8 小结607
54.14 字符串607
54.14.1 第一个例子607
54.14.2 第二个例子608
54.15 异常处理609
54.16 类612
54.17 简单的补丁614
54.17.1 第一个例子614
54.17.2 第二个例子616
54.18 总结618
第五部分 在代码中发现重要而有趣的内容621
第55章 编译器产生的文件特征621
55.1 Microsoft Visual C++621
55.1.1 命名规则621
55.2 GCC编译器621
55.2.1 命名规则621
55.2.2 Cygwin621
55.2.3 MinGW621
55.3 Intel FORTRAN621
55.4 Watcom以及OpenWatcom622
55.4.1 命名规则622
55.5 Borland编译器622
55.5.1 Dephi编程语言622
55.6 其他的已知DLL文件623
第56章 Win32环境下与外部通信624
56.1 在WindowsAPI中最经常使用的函数624
56.2 tracer:解析指定模块的所有函数624
第57章 字符串626
57.1 字符串626
57.1.1 C/C++中的字符串626
57.1.2 Borland Delphi626
57.1.3 Unicode编码626
57.1.4 Base64628
57.2 错误/调试信息629
57.3 可疑的魔数字符串629
第58章 调用宏assert()(中文称为断言)630
第59章 常数631
59.1 魔数631
59.1.1 动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)632
59.2 寻找常数632
第60章 检索关键指令633
第61章 可疑的代码模型635
61.1 XOR异或指令635
61.2 手写汇编代码635
第62章 魔数与程序调试637
第63章 其他的事情638
63.1 总则638
63.2 C++638
63.3 部分二进制文件的特征638
63.4 内存“快照”对比638
63.4.1 Windows注册表639
63.4.2 瞬变比较器Blink-comparator639
第六部分 操作系统相关643
第64章 参数的传递方法(调用规范)643
64.1 cdecl[C Declaration的缩写]643
64.2 stdcall[Standard Call的缩写]643
64.2.1 带有可变参数的函数644
64.3 fastcall644
64.3.1 GCC regparm645
64.3.2 Watcom/OpenWatcom645
64.4 thiscall645
64.5 64位下的x86646
64.5.1 Windows x64646
64.5.2 64位下的Linux648
64.6 单/双精度数型返回值649
64.7 修改参数649
64.8 指针型函数参数649
第65章 线程本地存储TLS652
65.1 线性同余发生器(改)652
65.1.1 Win32系统652
65.1.2 Linux系统656
第66章 系统调用(syscall-s)658
66.1 Linux658
66.2 Windows659
第67章 Linux660
67.1 位置无关的代码660
67.1.1 Windows662
67.2 在Linux下的LD_PRELOAD662
第68章 Windows NT666
68.1 CRT(Win32)666
68.2 Win32 PE文件669
68.2.1 术语670
68.2.2 基地址670
68.2.3 子系统670
68.2.4 操作系统版本670
68.2.5 段671
68.2.6 重定向段Relocations(relocs)672
68.2.7 导出段和导入段672
68.2.8 资源段674
68.2.9 .NET675
68.2.10 TLS段675
68.2.11 工具675
68.2.12 更进一步675
68.3 Windows SEH675
68.3.1 让我们暂时把MSVC放在一边675
68.3.2 让我们重新回到MSVC680
68.3.3 Windows x64693
68.3.4 关于SEH的更多信息697
68.4 Windows NT:临界区段697
第七部分 常用工具703
第69章 反汇编工具703
69.1 IDA703
第70章 调试工具704
70.1 tracer704
70 2 OllyDbg704
70.3 GDB704
第71章 系统调用的跟踪工具705
71.1 strace/dtruss705
第72章 反编译工具706
第73章 其他工具707
第八部分 更多范例711
第74章 修改任务管理器(Vista)711
74.1 使用LEA指令赋值713
第75章 修改彩球游戏715
第76章 扫雷(Windows XP)717
76.1 练习题721
第77章 人工反编译与Z3 SMT求解法722
77.1 人工反编译722
77.2 Z3 SMT求解法725
第78章 加密狗730
78.1 例1:PowerPC平台的MacOS Classic程序730
78.2 例2:SCO OpenServer737
解密错误信息745
78.3 例3:MS-DOS747
第79章 “QR9”:魔方态加密模型753
第80章 SAP782
80.1 关闭客户端的网络数据包压缩功能782
80.2 SAP 6.0的密码验证函数793
第81章 Oracle RDBMS797
81.1 V$VERSION表797
81.2 X$KSMLRU表805
81.3 V$TIMER表806
第82章 汇编指令与屏显字符811
82.1 EICAR811
第83章 实例演示813
83.1 10PRINT CHR$(205.5 +RND(1));:GOTO 10813
83.1.1 Trixter的42字节程序813
83.1.2 笔者对Trixter算法的改进:27字节814
83.1.3 从随机地址读取随机数814
83.1.4 其他815
83.2 曼德博集合815
83.2.1 理论816
83.2.2 demo程序820
83.2.3 笔者的改进版822
第九部分 文件分析827
第84章 基于XOR的文件加密827
84.1 Norton Guide:单字节XOR加密实例827
信息熵828
84.2 4字节XOR加密实例828
84.3 练习题830
第85章 Millenium游戏的存档文件831
第86章 Oracle的.SYM文件835
第87章 Oracle的.MSDB文件842
总结845
第十部分 其他849
第88章 npad849
第89章 修改可执行文件851
89.1 文本字符串851
89.2 x86指令851
第90章 编译器内部函数852
第91章 编译器的智能短板853
第92章 OpenMP854
92.1 MSVC856
92.2 GCC858
第93章 安腾指令860
第94章 8086的寻址方式863
第95章 基本块重排864
95.1 PGO的优化方式864
第十一部分 推荐阅读869
第96章 参考书籍869
96.1 Windows869
96.2 C/C++869
96.3 x86/x86-64869
96.4 ARM869
96.5 加密学869
第97章 博客870
97.1 Windows平台870
第98章 其他内容871
第十二部分 练习题875
第99章 初等难度练习题875
99.1 练习题1.4875
第100章 中等难度练习题876
100.1 练习题2.1876
100.1.1 Optimizing MSVC 2010 x86876
100.1.2 Optimizing MSVC 2012 x64877
100.2 练习题2.4877
100.2.1 Optimizing MSVC 2010877
100.2.2 GCC 4.4.1878
100.2.3 Optimizing Keil(ARM mode)879
100.2.4 Optimizing Keil(Thumb mode)880
100.2.5 Optimizing GCC 4.9.1(ARM64)880
100.2.6 Optimizing GCC 4.4.5(MIPS)881
100.3 练习题2.6882
100.3.1 Optimizing MSVC 2010882
100.3.2 Optimizing Keil(ARM mode)883
100.3.3 Optimizing Keil(Thumb mode)884
100.3.4 Optimizing GCC 4.9.1(ARM64)884
100.3.5 Optimizing GCC 4.4.5(MIPS)885
100.4 练习题2.1 3885
100.4.1 Optimizing MSVC 2012886
100.4.2 Keil(ARM mode)886
100.4.3 Keil(Thumb mode)886
100.4.4 Optimizing GCC 4.9.1(ARM64)886
100.4.5 Optimizing GCC 4.4.5(MIPS)887
100.5 练习题2.1 4887
100.5.1 MSVC 2012887
100.5.2 Keil(ARM mode)888
100.5.3 GCC 4.6.3 for Raspberry Pi(ARM mode)888
100.5.4 Optimizing GCC 4.9.1(ARM64)889
100.5.5 Optimizing GCC 4.4.5(MIPS)890
100.6 练习题2.1 5891
100.6.1 Optimizing MSVC 2012 x64892
100.6.2 Optimizing GCC 4.4.6x64894
100.6.3 Optimizing GCC 4.8.1 x86895
100.6.4 Keil(ARM模式):面向Cortex-R4F CPU的代码896
100.6.5 Optimizing GCC 4.9.1(ARM64)897
100.6.6 Optimizing GCC 4.4.5(MIPS)898
100.7 练习题2.1 6899
100.7.1 Optimizing MSVC 2012x64899
100.7.2 Optimizing Keil(ARM mode)899
100.7.3 Optimizing Keil(Thumb mode)900
100.7.4 Non-optimizing GCC 4.9.1(ARM64)900
100.7.5 Optimizing GCC 4.9.1(ARM64)901
100.7.6 Non-optimizing GCC 4.4.5(MIPS)904
100.8 练习题2.17905
100.9 练习题2.18905
100.10 练习题2.19905
100.11 练习题2.20905
第101章 高难度练习题906
101.1 练习题3.2906
101.2 练习题3.3906
101.3 练习题3.4906
101.4 练习题3.5906
101.5 练习题3.6907
101.6 练习题3.8907
第102章 Crackme/Keygenme908
附录A x86909
A.1 数据类型909
A.2 通用寄存器909
A.2.1 RAX/EAX/AX/AL909
A.2.2 RBX/EBX/BX/BL910
A.2.3 RCX/ECX/CX/CL910
A.2.4 RDX/EDX/DX/DL910
A.2.5 RSI/ESI/SI/SIL910
A.2.6 RDI/EDI/DI/DIL910
A.2.7 R8/R8D/R8W/R8L911
A.2.8 R9/R9D/R9W/R9L911
A.2.9 R10/R10D/R10W/R10L911
A.2.10 R11/R11D/R11W/R11L911
A.2.11 R12/R12D/R12W/R12L911
A.2.12 R13/R13D/R13W/R13L911
A.2.13 R14/R14D/R14W/R14L912
A.2.14 R15/R15D/R15W/R15L912
A.2.15 RSP/ESP/SP/SPL912
A.2.16 RBP/EBP/BP/BPL912
A.2.17 RIP/EIP/IP912
A.2.18 段地址寄存器CS/DS/ES/SS/FS/GS913
A.2.19 标识寄存器913
A.3 FPU寄存器913
A.3.1 控制字寄存器(16位)914
A.3.2 状态字寄存器(16位)914
A.3.3 标记字寄存器(16位)915
A.4 SIMD寄存器915
A.4.1 MMX寄存器915
A.4.2 SSE与AVX寄存器915
A.5 FPU调试寄存器915
A.5.1 DR6规格916
A.5.2 DR7规格916
A.6 指令917
A.6.1 指令前缀917
A.6.2 常见指令917
A.6.3 不常用的汇编指令922
A.6.4 FPU指令927
A.6.5 可屏显的汇编指令(32位)928
附录B ARM931
B.1 术语931
B.2 版本差异931
B.3 32位ARM(AArch32)931
B.3.1 通用寄存器931
B.3.2 程序状态寄存器/CPSR931
B.3.3 VFP(浮点)和NEON寄存器932
B.4 64位ARM(AArch64)932
通用寄存器932
B.5 指令933
Conditional codes速查表933
附录C MIPS934
C.1 寄存器934
C.1.1 通用寄存器GPR934
C.1.2 浮点寄存器FPR934
C.2 指令934
转移指令935
附录D 部分GCC库函数936
附录E 部分MSVC库函数937
附录F 速查表938
F.1 IDA938
F.2 OllyDbg939
F.3 MSVC选项939
F.4 GCC939
F.5 GDB940
附录G 练习题答案941
G.1 各章练习941
第3章941
第5章941
第7章941
第13章942
第14章942
第15章942
第16章942
第17章943
第18章943
第19章944
第21章945
第41章946
第50章946
G.2 初级练习题947
G2.1 练习题1.1947
G2.2 练习题1.4947
G.3 中级练习题947
G3.1 练习题2.1947
G3.2 练习题2.4948
G3.3 练习题2.6949
G3.4 练习题2.13949
G3.5 练习题2.14949
G3.6 练习题2.15949
G3.7 练习题2.16950
G3.8 练习题2.17950
G3.9 练习题2.18950
G3.10 练习题2.19950
G3.11 练习题2.20950
G.4 高难度练习题950
G4.1 练习题3.2950
G4.2 练习题3.3950
G4.3 练习题3.4950
G4.4 练习题3.5950
G4.5 练习题3.6951
G4.6 练习题3.8951
G.5 其他练习题951
G5.1 “扫雷(Windows XP)”951
参考文献952
热门推荐
- 2683818.html
- 725744.html
- 475140.html
- 3327773.html
- 1507814.html
- 233458.html
- 3912000.html
- 3590364.html
- 1842813.html
- 2879413.html
- http://www.ickdjs.cc/book_3629866.html
- http://www.ickdjs.cc/book_3101404.html
- http://www.ickdjs.cc/book_3641288.html
- http://www.ickdjs.cc/book_3294230.html
- http://www.ickdjs.cc/book_1474439.html
- http://www.ickdjs.cc/book_69571.html
- http://www.ickdjs.cc/book_2147806.html
- http://www.ickdjs.cc/book_585271.html
- http://www.ickdjs.cc/book_3065313.html
- http://www.ickdjs.cc/book_1921635.html