鱼C论坛

 找回密码
 立即注册
查看: 6547|回复: 3

[软件安全] 【进阶】《C++反汇编与逆向分析技术揭秘》

[复制链接]
发表于 2016-11-19 16:12:53 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
T1CacgXhXXXXXXXXXX_!!0-item_pic.jpg_430x430q90.jpg

. s9 X8 O$ x  q3 C3 i
7 d6 X, q" d# d( X书名:《C++反汇编与逆向分析技术揭秘》
2 v, l" @) c' ~) I( f8 O" U作者:钱林松,赵海旭
! ^- \8 O. U# g3 ^, r# }7 Z出版社:机械工业出版社* U: |; H$ ?8 S0 t6 ?
出版年:2011年10月1日(第1版)
0 H, N1 ]6 j$ a: p6 `! |# v3 G! A$ p定价:69.00元
  O5 w- c% p2 R) I装帧:平装
& g- f( W9 x4 O) T2 z) J& ?9 v/ }0 IISBN:9787111356332
4 w- G7 E6 h8 k  j  Y* r
2 S! p) W8 `; Q# ]8 o$ D购买链接:2 x9 ]: K, z' i/ h9 u6 E/ X- N9 Y
8 Y; x2 p7 Q2 n

8 _$ S( ]8 j' J# Z- Z
亚马逊(Kindle)-> 传送门5 W7 `7 Z# C) f: `, q+ d1 j' n% H

! T& B2 ~4 j3 |亚马逊 -> 传送门
( y4 E' W" J4 C, ]' V# D5 x6 f4 y7 d0 ]+ Z$ ?" V
当当网 -> 传送门9 I, I" b: H8 R8 n
5 M5 ~$ ?8 }" c3 J3 K# i; y/ j
京东 -> 传送门
9 ^  L0 T$ _/ A, U2 K& z: e1 `! t" N+ U8 T1 I
天猫 -> 传送门
: u2 x  W+ u- V# |' S
& A/ ~5 N1 i+ {9 T+ o! Y
1 H/ f4 X1 ~* ?) p' ~/ T内容简介:4 c' r9 Y% x& W& Y: Q
7 U2 W6 l: V  W) }  L


& `2 }: x( M# P/ E8 \9 c《C++反汇编与逆向分析技术揭秘》从介绍调试工具开始,到语言特性的分析,反汇编代码的重建等,再到逆向分析技术应用,内容逐步深入。软件分析技术重在方法,所以《C++反汇编与逆向分析技术揭秘》以启发方法为导向,逐步培养读者的分析和推理能力。全书共分为三个部分:第一部分 准备工作;第二部分 C++ 反汇编揭秘;第三部分 逆向分析技术应用,逐步引导读者,结合具体的应用掌握逆向分析的关键技术。; }- @( ?" ^( w! v
2 f+ r" R! S7 {; l
《C++反汇编与逆向分析技术揭秘》对所有软件安全领域工作者, 想了解 C++ 内部机制的中高级 C++ 程序员以及 对 Windows 底层技术感兴趣的技术人员来说,是一本很好的学习 C++ 反汇编与逆向分析技术的参考书。
5 q5 Z3 }, j! H7 Q3 j! X& F- k1 A! e
目录:
9 E/ }& R' t$ [0 o, m  t; \7 M3 b  q6 K6 l- p0 \& F9 C! U$ j" v


8 E! K6 D  d& h  }: F, [: h前言
7 W! r  v* j3 F9 s4 n1 J8 }
  _, {; H# b) F5 O) d2 M) ]第一部分 准备工作6 o0 N/ S9 I. R7 m. L) i

! Q* X' M- R& `, i第1章 熟悉工作环境和相关工具 / 2
0 O0 S' [. h- h# |, K$ I: T6 M% z2 _! j" H6 B) ^
1.1 调试工具Microsoft Visual C++ 6.0和OllyDBG / 2
# `& j# A5 L) w. [! H8 d- N1.2 反汇编静态分析工具IDA / 5$ w1 u2 A9 ?1 J7 @3 C
1.3 反汇编引擎的工作原理 / 11( ?! B. F$ t- x  Z" ^/ D2 V, G
1.4 本章小结 / 16
' _. H' S- \8 y% q# x
: D2 c& m  h( C6 @第二部分 C++反汇编揭秘
) b) W/ Z/ h+ `8 x+ Z5 ?4 W/ A: b, g1 G5 g
第2章 基本数据类型的表现形式 / 18
" q$ |) Q+ S1 F6 i3 k1 D, j7 W; h- \4 y9 F1 L3 H
2.1 整数类型 / 18
$ l# k0 J# \  e1 r  N* V2.1.1 无符号整数 / 18
* o' D) O; e5 @) y" k1 t' {: q2.1.2 有符号整数 / 18
1 r3 f- D: N2 q0 |% v& M2 E& i2.2 浮点数类型 / 20
& ~$ ]- c6 e) {# o2.2.1 浮点数的编码方式 / 214 m/ J$ L: U) @9 |1 Y
2.2.2 基本的浮点数指令 / 23
3 @, ^9 m+ T& D2.3 字符和字符串 / 26
  N2 r* d) l& Y( c2.3.1 字符的编码 / 27
) B7 i, j- K. |) m6 j6 L* k5 X) w2.3.2 字符串的存储方式 / 286 j6 J# @6 d' M, f) E7 x
2.4 布尔类型 / 29! |" v6 R" N. M: ?
2.5 地址、指针和引用 / 29- |0 F( f( K( j% ?' w  M
2.5.1 指针和地址的区别 / 30
+ |- K4 K, p' k  e- n1 O5 h2.5.2 各类型指针的工作方式 / 310 d% P" T7 ?6 n$ V" ]: v
2.5.3 引用 / 34% B% v! ]% S5 k% K' S# `' T
2.6 常量 / 35
5 z2 ~" u  R: x: H" E2.6.1 常量的定义 / 369 {2 V3 _! m$ c; b& i/ b- x0 i
2.6.2 #define和const的区别 / 374 j$ O3 s+ w" @: M: _
2.7 本章小结 / 38
7 P3 P) g1 s4 B
. Y: k5 }3 S& p第3章 认识启动函数,找到用户入口 / 40
# i8 v- i2 F! z9 v3 B
2 F& |7 U' V+ x
3.1 程序的真正入口 / 40
$ D$ _0 h  S2 F, r3.2 了解VC++ 6.0的启动函数 / 40: w7 R! v' H& V3 ~# X5 ?( `
3.3 main函数的识别 / 442 c9 p" }  B- m' |
3.4 本章小结 / 46$ H9 T" N" U  l  O& H
% A2 {4 I4 B# c
第4章 观察各种表达式的求值过程 / 47
- m  x2 q$ O7 L! @' D' [" v0 O7 w+ K+ Q. Q
4.1 算术运算和赋值 / 47. ]" B7 J& N! y# V
4.1.1 各种算术运算的工作形式 / 47' v9 b" h7 |& c" m! R* c4 G4 h
4.1.2 算术结果溢出 / 82) S) j1 |5 E# [1 b$ h
4.1.3 自增和自减 / 839 b/ |0 g6 y  X/ F, L7 O( ^! w. y
4.2 关系运算和逻辑运算 / 85+ L8 S* A; s2 z' {, W
4.2.1 关系运算和条件跳转的对应 / 858 L5 C6 j. n' h5 T
4.2.2 表达式短路 / 86
/ ]- S* K" x! w) u$ F2 O4.2.3 条件表达式 / 88
$ J# v7 p2 B7 `2 ~3 R" l4.3 位运算 / 92
; Z+ w: u( n$ Y; V; K0 M! @( [. H4.4 编译器使用的优化技巧 / 94
- b. F: Y! G: y5 q6 |! e4.4.1 流水线优化规则 / 97
3 P$ `3 @' Z: X; \4.4.2 分支优化规则 / 101' D# Y1 ], A  y) u9 Z
4.4.3 高速缓存(cache)优化规则 / 101
6 v/ ]: O$ z  U3 l. ]7 m2 \) X6 k! W4.5 一次算法逆向之旅 / 102) _* }5 L( ~0 D/ Y
4.6 本章小结 / 109
. Y! t1 w9 y: e1 Z1 ]' H, I/ V, l$ f8 K( x' w2 K
第5章 流程控制语句的识别 / 110
6 g% W9 V* e) p/ [
& {: m% ~6 W0 a$ d6 C. W# I7 I  j5.1 if语句 / 110$ G7 P" Z! f. }4 b/ K: |1 U* q3 ^
5.2 if…else…语句 / 112# a, H' V4 _4 V; f$ n# \9 [6 i
5.3 用if构成的多分支流程 / 115
( n# K  W' ^9 ~1 s8 S  e5.4 switch的真相 / 119
# P  w3 N6 ?8 I" R. t+ T$ G5.5 难以构成跳转表的switch / 1285 i5 [+ A* A% R3 W1 ^: N  o
5.6 降低判定树的高度 / 133; F. K& |# k5 a- Z3 [8 \
5.7 do/while/for的比较 / 137
0 ?$ i) ?: K1 D9 J' [7 l& P; R5.8 编译器对循环结构的优化 / 143
6 c) Y* }1 n7 i) q5.9 本章小结 / 1480 d) M  K) H, b3 v) a
# V4 ?) R$ W! V& x% W5 [0 l* I
第6章 函数的工作原理 / 149
; S# C% e! d) U! B* D1 p
1 M( {- }9 |4 I5 M: k) Q6.1 栈帧的形成和关闭 / 149; v5 U, s# g8 x# f6 g( ^! T2 U
6.2 各种调用方式的考察 / 1526 V. H7 T; ]0 h5 _
6.3 使用ebp或esp寻址 / 155/ V) }/ Z, l: a# |1 G6 X
6.4 函数的参数 / 158& V" h; c* c! d
6.5 函数的返回值 / 160
2 m! `/ k' h6 G/ {6.6 回顾 / 163. i1 B% l3 i7 [2 P$ ^
6.7 本章小结 / 165+ p* e# t: @) a/ N; I8 o, _
! ]3 L; z( O/ U5 e9 k1 K8 V
第7章 变量在内存中的位置和访问方式 / 166* W8 W. K! L$ `4 d
7 t6 d2 R2 G& v  ?/ c" ^# F
7.1 全局变量和局部变量的区别 / 166
$ r; H  t! m, e" ~" F7.2 局部静态变量的工作方式 / 169
: Q5 }" _2 g1 Y! \  p% p: L2 U7.3 堆变量 / 173% K6 a' i# Y: N; y( k
7.4 本章小结 / 177
% d7 P7 E4 w. S* ^/ H8 h+ I/ C* y9 r: |, N
第8章 数组和指针的寻址 / 178/ f2 U$ n; z  R5 M
  R) t" Q% Z. G
8.1 数组在函数内 / 178
6 I/ G+ i; X. a- @5 T/ }' P8.2 数组作为参数 / 181" q: o& x& O) _. M! e; Y& v1 O9 p
8.3 数组作为返回值 / 185
1 G1 Q: l1 O" D. R' |* I* r2 D8.4 下标寻址和指针寻址 / 189; u) d7 V. R0 w. M1 f  S
8.5 多维数组 / 193
; c' f% Y: y/ V9 ~: }) p" j) u8.6 存放指针类型数据的数组 / 199
$ \. ]+ Y) D* _* ]8.7 指向数组的指针变量 / 201
' K3 w$ ?4 T4 U. z0 H& J: v) e8.8 函数指针 / 2046 Z$ R2 j4 W9 Z1 o: j4 A
8.9 本章小结 / 2064 ^: y* r1 _* Z1 [% k; ?( z

6 T3 w0 |0 a  G1 Y$ x第9章 结构体和类 / 207) T* l8 j; c. _7 T) O" b0 M+ ]) A6 n

4 S$ W# f0 l* U# f* P- X* x9.1 对象的内存布局 / 2079 a  v+ E& D( |7 I
9.2 this指针 / 212
* [* a9 ^; W. o+ y5 H! a7 I/ v9.3 静态数据成员 / 217, U7 G, u( ]) }. k& S
9.4 对象作为函数参数 / 219
3 a( {1 F! Q- @4 l  H9.5 对象作为返回值 / 226
$ P9 u3 H. m% l9.6 本章小结 / 2315 w( Z/ U- w4 \$ h" W

1 b# L5 ^5 @5 a  E" {# b! {; o# t第10章 关于构造函数和析构函数 / 2334 n2 W+ ^3 T( B/ v. P% f+ |3 g

. s" ?* y9 F) r" R+ l  {10.1 构造函数的出现时机 / 233% m0 B" s  _" A  Y
10.2 每个对象都有默认的构造函数吗 / 243
! _. d: s, R8 k5 I* L* T10.3 析构函数的出现时机 / 245
4 t# l* [/ A9 i& z: i9 ~10.4 本章小结 / 254
0 g/ R% w9 B6 F$ y  m+ w" x2 I6 u
第11章 关于虚函数 / 256" O* l/ _0 J: ]+ N. a

! M" n" T) @: M; M7 C* W9 w11.1 虚函数的机制 / 256: e* p6 N- @: ?0 F
11.2 虚函数的识别 / 261" |% W+ b: j' _) Q4 w5 v* L3 K
11.3 本章小结 / 268
% e" u  X3 k. c: a. H: M# L/ L$ W! G  q/ o1 G7 E8 b
第12章 从内存角度看继承和多重继承 / 269
3 Q9 @* v# D. U+ _
7 _3 G: A$ T$ q$ B  k12.1 识别类和类之间的关系 / 270: B; B' G% a4 A/ t
12.2 多重继承 / 292
2 H1 c6 v. h4 j: c; A$ J3 z12.3 虚基类 / 298# o; p, H+ u& s3 k8 |! a0 f& m
12.4 菱形继承 / 2998 Z3 r! {# t9 W) P; r
12.5 本章小结 / 307" W8 e4 G3 O% @$ G' Q6 T

# R3 t! R& d" I% g, f" p第13章 异常处理 / 308
4 Y; J1 v) I3 g7 l, {) ^
' H) \% F( D5 U# \13.1 异常处理的相关知识 / 308
' D8 K/ z; S3 K/ E13.2 异常类型为基本数据类型的处理流程 / 314
! u% I1 _% w, m8 H3 m) |13.3 异常类型为对象的处理流程 / 323) v" x% `/ C( a  e9 S5 Z% N
13.4 识别异常处理 / 329
1 `2 w$ g3 m  |: ~" v& H* |9 Y13.5 本章小结 / 341
5 K1 n* X7 U. x# ?7 M5 G
, i2 F9 `2 m4 f* T: M5 }" z" ?第三部分 逆向分析技术应用
2 Q  H' t; q3 B2 {- [/ F: ^+ R5 R
第14章 PEiD的工作原理分析 / 344
$ F/ b4 S$ x% _  p1 U+ X1 F' [: E: K$ d( ~: _
14.1 开发环境的识别 / 344
% G4 g- W( E! q. w3 B7 ~% y14.2 开发环境的伪造 / 353- \* D( R0 L0 }2 X* u3 b; b
14.3 本章小结 / 356$ R' d3 O! K9 X3 o$ q; _' v! e
5 J9 q0 J4 f$ @% ]  z' n
第15章 “熊猫烧香”病毒逆向分析 / 3575 v% ~4 `# t: r0 t% T; P8 E
; Q) l' r' ^/ Q/ q0 j0 b0 G! d2 P; W* `$ W
15.1 调试环境配置 / 3571 n: d8 Z- M. k  h5 L3 r  s
15.2 病毒程序初步分析 / 358
6 t* b  ?, s9 I8 n15.3“熊猫烧香”的启动过程分析 / 360
$ V8 n' B1 u* E; A/ |5 [5 ?* E15.4“熊猫烧香”的自我保护分析 / 366
+ |+ H1 b0 i7 [; Q. R( @  @. v15.5“熊猫烧香”的感染过程分析 / 369
% L' q0 M) f% |' L- g! X15.6 本章小结 / 3796 [! u! L" Q6 \! R6 Y
1 x9 j" M* C; u/ x
第16章 调试器OllyDBG的工作原理分析 / 380
& P5 @( P* Y  ]! Y! J: ?! @9 v0 n5 y& b
16.1 INT3断点 / 380
. c# B6 Y5 ]+ }16.2 内存断点 / 3851 _5 m9 z. R# b; m- e* p
16.3 硬件断点 / 390
4 m/ t: q& b8 L& q16.4 异常处理机制 / 396' w+ m% }* B4 c/ p  ?1 \, f
16.5 加载调试程序 / 402
" U, }1 l2 w/ h4 i! b4 Y16.6 本章小结 / 4061 K; u! Q$ w& N- W

' x: s. y# k  P8 l+ j第17章 反汇编代码的重建与编译 / 407# X* e; C+ E1 a) C6 B% X8 D- q+ S
9 @8 {/ H& S  c2 p# r
17.1 重建反汇编代码 / 407
3 n/ Z2 |& C/ b; D0 ?4 x. j' L17.2 编译重建后的反汇编代码 / 4105 T, G! Z' S7 S9 \' d8 W! i
17.3 本章小结 / 411
; {( A7 x9 z1 h( V: V1 X% |; ^" I/ @
参考文献 / 412* F. Z1 r9 l1 m7 }( _8 Q, n9 h, h
3 x& X+ {; M5 o  c! w$ X, @
) f. J( `* @! a1 y: t+ _; S: N2 [
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-6-15 14:59:55 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-10-26 18:28:05 From FishC Mobile | 显示全部楼层
汇编也分各种语言版本的嘛?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-10-31 00:22:16 | 显示全部楼层
挺久没推荐好书了啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-27 09:34

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表