鱼C论坛

 找回密码
 立即注册
查看: 9533|回复: 2

[软件安全] 【进阶】《IDA Pro权威指南》(第2版)

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

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

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

x
22595398-1_u_1.jpg

( E+ x0 x, ~; v( _( [
: c, v: r7 i( Q& ^3 v书名:《IDA Pro权威指南》(第2版)
0 c; k. j% N  b) T作者:Chris Eagle
# L7 c) \$ Z1 J' @* u译者:石华耀,段桂菊! a; ?9 D# K4 Q5 u) N' R
出版社:人民邮电出版社' _' n4 t7 C; l* T# G5 \
出版年:2012年2月1日(第2版)
3 j# f0 a- [+ B6 ]' Q定价:89.00元
6 H# u* H+ c, y装帧:平装- T+ ]% c+ W) T7 I9 ^4 y
ISBN:9787115273680) E: R9 Z% I0 `1 B" G

3 K/ q* \* d" x& k& B, L9 C- D购买链接:9 B8 h) E( |# q9 b

# Z) d3 V% C9 ?
/ x# m- e  s  t2 P
亚马逊(Kindle)-> 传送门
% `. [) Z9 _1 p7 J9 e& h* j+ q  }9 D2 F& q! w
当当网 -> 传送门6 e) U; v; h5 u: G: O2 Q0 ?8 P
: a. r1 u! Z. ]; h$ T2 r
京东 -> 传送门! _* Q8 u1 l! y' m
& |3 G! G9 O, n; q8 Y
天猫 -> 传送门
* z& ]. Y( J3 F# b% e' E& Z& c4 z! X! G8 x

" f3 A6 m/ U1 T2 ^1 L+ G4 x% r  d内容简介:. Z9 _  c- \8 R* d
/ r: @9 Y1 }# _% S


  h$ O, \$ f' b9 U7 ~5 v2 R《IDA Pro权威指南》(第2版)共分为六部分,首先介绍了反汇编与逆向工程的基本信息和 IDA Pro 的背景知识,接着讨论了 IDA Pro 的基本用法和高级用法,然后讲解了其高扩展性及其在安全领域的实际应用,最后介绍了 IDA 的内置调试器(包括 Bochs 调试器),一方面让用户对 IDA Pro 有全面深入的了解,另一方面让读者掌握 IDA Pro 在现实中的应用。相比上一版,这一版以 IDA6.0 为基础,介绍了它的新的、基于 Qt 的图形用户界面,以及 IDAPython 插件。《IDA Pro权威指南》(第2版)适合 IT 领域的所有安全工作者阅读。
0 |/ y8 z+ O* ~  b9 D) `. n
* Q; h2 j( h" I7 Q  A! R; f
" T8 U7 f- `$ R5 b9 s2 r3 H' o' U目录:
2 ~% t6 k/ Q8 }& [( Y" k6 a1 {* I3 ~  R) K) {5 i

6 ?3 I+ U5 Y) z( M# \( \: C5 S/ r! w
第一部分 IDA简介
/ @4 i; Y/ z5 f# v' E" a8 @/ S* b" Z
第1章 反汇编简介
4 D8 f$ S- o1 K  I5 ]
: ?* m/ J3 C8 b* g1.1反汇编理论
$ q4 F7 s. O7 r" m$ R1.2何为反汇编& h" c! K# J6 F6 a/ o7 _
1.3为何反汇编
6 x4 ^5 {: b7 P2 E1 C7 _1.3.1分析恶意软件
4 o$ ]5 J3 m0 N8 Y" N) b1.3.2漏洞分析! p7 h) K5 \  A; F
1.3.3软件互操作性/ g  J, X  j$ s- ^4 I. B- w; L* J
1.3.4编译器验证* c1 A3 Q9 k! V9 |
1.3.5显示调试信息) ~) \% J8 B0 @7 \/ j
1.4如何反汇编$ L' U  m  X- y  T
1.4.1基本的反汇编算法
$ v8 M5 l) O' L3 K8 }/ ~1.4.2线性扫描反汇编
3 Y; `0 L; d$ H- q) G8 l5 P1.4.3递归下降反汇编
% w1 j. K# B: B" ?  K: n3 ~8 A$ I9 [1.5小结
3 F9 k3 z- y& j6 z" Z* }6 v3 t$ `, ]6 I7 K' l/ ~
第2章 逆向与反汇编工具 ! Q, c- L5 |$ N( Y& l; `; m/ Y* \
- S' p/ y1 v: Q# D: T
2.1分类工具
8 z. ]# i! _* ^! ^# e, Q2.1.1file4 b  t6 T; O; f* k/ B
2.1.2PE Tools* n$ q6 Z9 J0 q  Z* @, S1 E/ I# ^
2.1.3PEiD# E  ]. R8 h* e+ m
2.2摘要工具4 K& {2 J4 W1 j& R1 X0 J
2.2.1nm
# A2 ~+ p. R. \; D2 \2.2.2ldd
- b1 B' n, W* ~: j$ K: a2.2.3objdump
- T8 d+ M  u7 @9 e2.2.4otool
6 P9 e3 k# C: s, M. n' p2.2.5dumpbin
" G/ `# `: b* F5 i9 `5 _# y2.2.6c++filt
; B7 J! o) Q5 E. F! B# g2.3深度检测工具
9 e: q# B2 G! h# `7 G- A1 F2.3.1strings  i( ^6 Q3 P: e5 [7 {! R, g6 _
2.3.2反汇编器# \$ a& K4 r% S+ N
2.4小结
  ]6 F; v4 H! q' g# O4 }0 w: I# E! p. W  X: K( w2 L- Y2 Q9 B
第3章 IDA Pro背景知识& r8 o* }, V9 P- P& q7 B0 \4 p

& q( A' w1 R; P) p* p6 Z3 \3.1Hex-Rays公司的反盗版策略
& I1 F# L" {6 e, B8 Q# |( F3.2获取IDA Pro
8 ~7 l3 H! V: b: p3.2.1IDA版本
' y  r  y; ]  ?% T( d3.2.2IDA许可证
+ k  ?' h! G, j0 [( N0 E1 c. d% X3.2.3购买IDA  m8 G# l5 W' F6 _- p
3.2.4升级IDA
9 o9 [3 ?$ m6 \3.3IDA支持资源
; ^6 A1 M* W/ Y$ V2 f& h, t/ B% k3.4安装IDA
: s1 z! @4 L: ]7 G3.4.1Windows安装6 \8 s8 O: Q4 D$ }5 L. q! F
3.4.2OS X和Linux安装
9 g& A. P+ T# s: W3.4.3IDA与SELinux
. r2 N0 J6 I8 K" h$ e+ s3.4.432位IDA与64位IDA
4 \5 z! s, g1 M( G, F, \3.4.5IDA目录的结构. r" f( z9 d" _
3.5IDA用户界面+ T( q8 Z% V( P- @0 s, O2 X+ Y; o- d$ n  Y
3.6小结7 A7 a+ `* N% K8 e, w
. Z: a+ R% `) a7 Z# B; t
第二部分 IDA基本用法
2 E# J; z2 ^9 a7 Z2 T9 @. E' M
/ u: O& I) |, c0 T" s1 u" r& l6 Q% j第4章 IDA入门% K. V- ~, K3 A/ U

+ A, c: M( B( ^5 H2 w4.1启动IDA
7 T. D9 E) Z) Q0 @, H0 M# `4.1.1IDA文件加载, ]# {( l- \: g1 n$ m
4.1.2使用二进制文件加载器: B# V2 `: o# O- ]
4.2IDA数据库文件
7 O2 N# _6 d/ i& ^6 @& N4.2.1创建IDA数据库! _7 G4 \! }, n0 }6 o
4.2.2关闭IDA数据库. \6 V5 h) y" r1 A2 _
4.2.3重新打开数据库3 j7 S! k9 H3 i& Y  V; x6 S# i7 S
4.3IDA桌面简介& v+ t* k" k5 V+ z% f/ Z& y2 }
4.4初始分析时的桌面行为
# |) }; G2 _# s! [% V# p8 G4.5IDA桌面提示和技巧& F$ W/ M4 w$ Z
4.6报告bug& Y% T4 J% Q$ Q7 ]
4.7小结
& ~. I& N- \% y; `) H/ h0 A  P" R) P; Y1 N
第5章 IDA数据显示窗口5 @' P3 Y8 X1 `
( V; B7 D) }% M2 j/ E
5.1IDA主要的数据显示窗口8 x' C# u  N2 z- v
5.1.1反汇编窗口3 l1 Q& V, c& S; h6 g6 M, [& z9 m
5.1.2函数窗口! E- A3 |1 z5 |1 }  t
5.1.3输出窗口0 W7 F  W- i6 I  O: @
5.2次要的IDA显示窗口- @2 O) a/ l6 j8 \5 z$ d! s, X
5.2.1十六进制窗口
0 a( F% l' N1 Z: `! D/ G5.2.2导出窗口
; h4 r7 Z& @& P2 T* ~5 J5.2.3导入窗口5 X, x& a$ ?5 O6 v) c5 l
5.2.4结构体窗口; S5 w5 ~* p- f
5.2.5枚举窗口
/ D+ a! A9 O0 ^" |5.3其他IDA显示窗口
0 I$ r" V) e! r9 L- l" H5.3.1Strings 窗口
/ p: M) U$ g+ |5.3.2Names 窗口
: K" \$ U5 J) W1 c5.3.3段窗口2 E& }7 h2 q# f9 m. P$ s+ F
5.3.4签名窗口) |! e2 I$ H. ]% p
5.3.5类型库窗口( b$ Y7 g1 ?0 \# a* h
5.3.6函数调用窗口1 D0 a6 z3 m* \1 R
5.3.7问题窗口" k* ?  j0 G/ |: c0 y
5.4小结
# `2 ~$ C. g- E/ f0 Z  ]
# G+ T# E9 H. G$ R第6章 反汇编导航" |9 g+ K' j! N

. U" s4 z% W5 u3 C) p: D# i( O6.1基本IDA导航
7 E* q& M' ~& f" ?5 r6.1.1双击导航
2 _: ]# Z) Z2 Y& k6.1.2跳转到地址
* O) |: S0 L9 H/ ?6.1.3导航历史记录
( a' z' W; B9 `# `1 O3 Z6.2栈帧
% @  I/ ^0 W' l& C4 q% @3 V$ k& a6.2.1调用约定
$ U+ Y3 F0 Q' U6 q6.2.2局部变量布局9 A3 R# l& e: }! E8 n. S: t0 x: {
6.2.3栈帧示例
& O6 e- m' n: b8 v& W9 C6.2.4IDA栈视图
& r% o/ m) q# h% X6.3搜索数据库- |3 q" |3 ]& K' V! y2 o3 k
6.3.1文本搜索
' b9 Z* f& O  _4 N, }9 I! e6.3.2二进制搜索4 j$ x$ e" W: x7 l" G$ `, I+ ^
6.4小结6 E' `9 M: B% ~5 a

/ x2 b6 s% a; G  [. ~第7章 反汇编操作8 ~* w! O/ ^) m: _+ o2 @

- a; Q4 _$ I0 f4 X- l7.1名称与命名
$ R  z; k5 D# C5 O4 W4 f" o7.1.1参数和局部变量( c/ ?: J* g( T5 [5 m
7.1.2已命名的位置
8 w5 P' b. `; J* s3 y% Y! O7.1.3寄存器名称  r- B: x' f1 ^5 q6 D
7.2IDA中的注释
0 t) `! c+ @. R7.2.1常规注释
9 T) ?' ~4 b% w7.2.2可重复注释3 ~( C# x6 \, J8 [7 J
7.2.3在前注释和在后注释) Q) X% ?9 L% |0 e
7.2.4函数注释& T" Z8 d! S2 |
7.3基本代码转换/ S9 k" d: Z% T/ Y7 v
7.3.1代码显示选项7 h5 K( G! h' ~% H  _! E
7.3.2格式化指令操作数
3 W/ h* M. k, U# J9 P( s. X( M' _7.3.3操纵函数* p% x" U* o! J. E4 Q0 V
7.3.4数据与代码互相转换
; K4 h0 y/ c$ s9 t, C& A7.4基本数据转换
. ]3 \: ^. J6 L/ P, k1 T# J. I7.4.1指定数据大小" T8 y0 ~+ ^) l3 ]
7.4.2处理字符串
" ~) i9 Y- ?" g7.4.3指定数组1 m2 y( q1 ?; ^6 j1 u
7.5小结& s  {+ o3 j/ N; m$ G- Q- Y9 ?
+ W8 b* x7 d" h2 X" l
第8章 数据类型与数据结构& j2 n. }+ N6 Q; R) v6 u% m
2 i, U* r2 l5 E  l
8.1识别数据结构的用法
) _5 ]- Z$ ~6 N8.1.1数组成员访问
. b( R+ F1 ~8 y( v8.1.2结构体成员访问: A; f7 G( Q+ f; @& w6 i
8.2创建IDA结构体
. Y9 b- j7 m' u2 [1 X6 }' m# |8.2.1创建一个新的结构体(或联合)% v' u0 P4 S) J4 l- H$ r4 c
8.2.2编辑结构体成员3 F  A! {# R7 R7 ]
8.2.3用栈帧作为专用结构体/ W( T" Q2 ~1 C$ `
8.3使用结构体模板  b3 h, ~( [/ z' l1 }1 U
8.4导入新的结构体
( c8 P# _) j  a8.4.1解析C结构体声明. _: d; [/ ]' D' Y. h
8.4.2解析C头文件- V: m4 V6 g$ B/ I) W& z
8.5使用标准结构体6 v0 {& s$ D  [( S/ m3 l/ @4 U
8.6IDA TIL文件
7 [, V* @$ i" h9 v8.6.1加载新的TIL文件
! X$ ~9 Y! j0 a8 W8.6.2共享TIL文件; g3 a/ [) a8 ]% }- L% f
8.7C++逆向工程基础
4 _( C: m3 t' _9 L+ _8.7.1this指针
3 [3 Y6 j2 M; p" k8.7.2虚函数和虚表1 _/ g( B, I( {2 |) v' {
8.7.3对象生命周期
  R7 t. m/ w: ^8.7.4名称改编/ W) `9 N  ?. H; p0 o
8.7.5运行时类型识别  k0 k* s1 \" M! H( l- V
8.7.6继承关系' e, x, l- p6 q- s6 |) H7 ]: g
8.7.7C++逆向工程参考文献) y' e, O- s) C$ z1 `  k
8.8小结; w7 ~7 [2 b1 U2 V# L7 g0 C

* P. X' b% q8 H; J5 G/ J第9章 交叉引用与绘图功能
& y: Q3 Q, {) F; w1 K% d
# x6 x2 B, X0 e8 a( Z9.1交叉引用
2 d0 _) Z- W" P/ V2 o5 F9.1.1代码交叉引用; J4 `3 D' b' W  g1 P! ?# W
9.1.2数据交叉引用
% T. y+ K$ d: a) K7 s3 D9.1.3交叉引用列表9 l' h% _$ T( C
9.1.4函数调用
1 x# H; {, f0 f* a3 a4 d6 f9.2IDA绘图
6 ^. n1 }) V3 n. g# K9.2.1IDA外部(第三方)图形; }; d  m) x. u! ~0 X* _! \. s  Z
9.2.2IDA的集成绘图视图. \8 J% D4 o0 o9 s) s) u
9.3小结
* Z1 \- Y  X+ t9 r- E# c" i; g4 `) E5 Y) {) c6 l- i! O3 e
第10章 IDA的多种面孔
+ M) e" G& A) l
+ ~8 W+ k5 F5 r) R( {10.1控制台模式IDA4 G5 b9 u; r: G" h% M
10.1.1控制台模式的共同特性
8 V$ k( w0 W7 v10.1.2Windows控制台6 N$ v3 F6 N# _, P1 {
10.1.3Linux控制台
: X  L+ `6 D5 t- ~8 J10.1.4OS X控制台
5 p9 _3 i6 }% o. `, o10.2使用IDA的批量模式
2 \- ~' b3 J5 n1 m10.3小结
9 r' s$ J( a2 _# B
6 P8 c# Z% c; O" B- W5 _# a* v7 b第三部分 IDA高级应用
+ R! p: o# P! h7 w; t! d
5 m8 `+ f  V9 X9 u+ G# i3 T第11章 定制IDA& l, x5 G# s% f$ b7 h* ^0 z3 r

) m3 i4 ]5 C( w8 P4 L11.1配置文件
! B9 f9 {+ W0 `; C/ o11.1.1主配置文件:ida.cfg- r/ l5 j3 G: b! Y
11.1.2GUI配置文件:idagui.cfg/ h) p5 B; f3 \# V) V( O& j* `% R: D
11.1.3控制台配置文件:idatui.cfg$ j- W  n# U; ^+ Q
11.2其他IDA配置选项- Q. ?5 x2 J: p1 i3 i! U
11.2.1IDA颜色
! M! ~. s; h9 r11.2.2定制IDA工具栏
9 {0 [# ~) D4 D, [9 I" [/ t11.3小结7 z; Z, p0 r) ?. N+ T+ T6 d: Q

2 N/ I" J" q5 @1 C, F5 S第12章 使用FLIRT签名来识别库
$ _4 y3 y+ t7 I% G* W0 c9 K' D( X- C! s3 k
12.1快速库识别和鉴定技术
! D1 V. o7 `+ d; I8 U12.2应用FLIRT签名* d' R1 l( r/ E1 B
12.3创建FLIRT签名文件$ I( b/ K9 {2 A$ D- q1 U
12.3.1创建签名概述
  j3 c" D- q2 w8 ?3 i" J12.3.2识别和获取静态库
' Y1 C! L5 }- d12.3.3创建模式文件4 N+ l8 o. j; L! k5 V/ u; j
12.3.4创建签名文件
; m; h0 s, T: E) s3 O) B12.3.5启动签名
9 b3 R9 \4 Q/ X5 R3 b' e12.4小结7 Q6 P. }9 i4 Y# a

- K3 h# r3 o. ^% x第13章 扩展IDA的知识) j, o8 u' j3 i* o
0 ?* }  T9 d' d" {
13.1扩充函数信息1 Q, H) t* {6 S! [
13.1.1IDS文件5 u# w# \" Y2 X2 r% ^  i6 P
13.1.2创建IDS文件
  J0 R, n. P8 K/ j13.2使用loadint扩充预定义注释1 H9 K& G. j5 k# k
13.3小结4 E2 m! w. d+ @5 w3 P
% E" m2 G* ~/ y( |' Y0 p
第14章 修补二进制文件及其他IDA限制  r4 S1 _/ g! w
& [5 p, W4 {" Z' V. ?1 i/ y. ^
14.1隐藏的补丁程序菜单
7 [2 p. ]9 [7 A  _7 e14.1.1更改数据库字节
7 P0 \9 Q1 x! t, ?' x4 c3 ^) |" A3 q( ~14.1.2更改数据库中的字0 M! E: A9 `1 A# O* e: ~
14.1.3使用汇编对话框2 E" W/ \& x; Y8 D: P* y
14.2IDA输出文件与补丁生成- w8 Y$ E2 d* a
14.2.1IDA生成的MAP文件
# q- K0 i2 m9 D/ F14.2.2IDA生成的ASM文件
. m1 M' p% f) a, a14.2.3IDA生成的INC文件
* [0 j: Q7 ~0 i14.2.4IDA生成的LST文件2 j. q! J5 p; c
14.2.5IDA生成的EXE文件
7 y7 B& U0 N! }14.2.6IDA生成的DIF文件
- {4 S0 `7 h- C6 {14.2.7IDA生成的HTML文件7 i$ I' x7 N2 g' q+ U! N
14.3小结
  A, J, x5 x- F5 m/ J; r6 Z; ^
  N" V% S" J* n第四部分 扩展IDA的功能# u; L7 q+ U) N- }/ t
8 e* t" ]5 t5 z2 H8 b; ~- i6 J
第15章 编写IDA脚本
5 U& ^5 S$ t4 m  k0 ^* M3 T) n/ C7 _% F! u) w9 \5 @
15.1执行脚本的基础知识
: W1 A# J2 P; {; A/ ^% x7 t15.2IDC语言
9 p8 I; v/ S: M15.2.1IDC变量* G, a6 F" \$ ~; N5 i" w
15.2.2IDC表达式2 V2 [# `+ g/ d7 {9 Y+ t
15.2.3IDC语句+ x+ u4 `% }8 e1 \# a3 Y' U
15.2.4IDC函数4 n: a3 J8 C3 W$ l7 ]& y! R
15.2.5IDC对象# d5 L9 o' B9 ]/ X  w+ y% M5 z
15.2.6IDC程序  K- p' E- J  z! @9 Z0 J& o* {9 g8 h
15.2.7IDC错误处理8 v8 o. o4 h. w: r& v
15.2.8IDC永久数据存储2 [4 R' d) g+ u- e4 ^9 i5 z% U! ^/ y
15.3关联IDC脚本与热键
4 ~& U) x# c: g15.4有用的IDC函数
8 N; |9 T, X2 ^0 l% n8 ~4 w; b15.4.1读取和修改数据的函数
2 n6 E8 f/ r1 Y6 d! K- T15.4.2用户交互函数& M+ ?! Y5 l' w, E& ~$ P& n
15.4.3字符串操纵函数) t+ c* \8 @- W# r( p% G
15.4.4文件输入/输出函数: h. u7 ?. u3 W# M; z: ?
15.4.5操纵数据库名称7 k5 f2 C$ ]% \. v8 B$ q, i
15.4.6处理函数的函数
0 E1 z$ N+ X6 [# A15.4.7代码交叉引用函数
! e5 M& x4 Z% l15.4.8数据交叉引用函数8 T  B% A6 L* B+ d" x
15.4.9数据库操纵函数
: u* R# }) l0 L+ E' N7 S+ C; O" k15.4.10数据库搜索函数% Y% y  J& @# U+ K( l
15.4.11反汇编行组件
5 V8 p+ ?6 m5 b+ x+ B15.5IDC脚本示例
. C( e( k6 S! M; H3 ~' m15.5.1枚举函数
% C8 E2 E3 R: L+ q2 \8 _& [15.5.2枚举指令2 q, s6 e$ {/ s9 v
15.5.3枚举交叉引用
7 p" [* [3 `2 c3 n15.5.4枚举导出的函数5 s6 l" B7 s, x$ ~' o" _+ y6 g
15.5.5查找和标记函数参数9 {) C9 ]3 R, w2 L
15.5.6模拟汇编语言行为6 O; D1 g/ q7 }- L3 R2 B
15.6IDAPython: ~- ?% s5 h3 e; r/ N) J0 I1 u
15.7IDAPython脚本示例
* i) h1 U/ f1 j7 x$ j) G2 n7 A15.7.1枚举函数% o6 a: _9 r% j. \" z  M
15.7.2枚举指令
4 v- _3 h' }- Z8 q: h15.7.3枚举交叉引用
& P! n1 v" O# z! J/ N) b2 S15.7.4枚举导出的函数
' S6 C& o2 \5 c$ ]2 F15.8小结1 x* A- H+ @9 W* ]5 u

6 |5 [4 V% o! R9 @; X, a3 U9 L第16章 IDA软件开发工具包8 Y5 v6 ~# _' s. ]/ ?; K  V
2 C4 V5 g# E1 u; l/ Q" u
16.1SDK简介. l+ X" L1 U8 j/ W% @9 M
16.1.1安装SDK) i2 U% n2 m; }7 P! w$ [
16.1.2SDK的布局
- Z4 x( w7 S6 t& G9 b/ y" _+ a" m7 J7 J16.1.3配置构建环境
. \$ t' O3 N) Y* U& ]16.2IDA应用编程接口
) K. d. y# M4 v! q; J16.2.1头文件概述& g$ \( q# p/ H' m& b" G7 }
16.2.2网络节点
# R( h: n' ]' H& }. D$ N% @6 `16.2.3有用的SDK数据类型5 E- _- q8 a" \9 ~) M- p
16.2.4常用的SDK函数0 R+ N. \: ?* D: ~' f
16.2.5IDA API迭代技巧
' N5 S+ b3 h) f16.3小结8 k. X" d9 r* x- P2 B' f6 E) J. v
4 O1 ~. I  e9 v; C+ _) ~: p& X
第17章 IDA插件体系结构
' k$ h- M/ z2 |& M$ e" o2 A3 F" c
  e1 g$ D5 P: ]" s( @0 ^# n4 }; T. S4 V17.1编写插件
4 _0 I5 b. S4 _3 T# y- ^17.1.1插件生命周期: G+ ~$ o- e' h: U+ A; r# D9 g/ j
17.1.2插件初始化) A! `6 @" V: {  j5 R# B( j
17.1.3事件通知
2 k6 `7 ]8 f$ `: Y& }  n17.1.4插件执行
. C+ B+ r( V8 L: L17.2构建插件6 V  q- f" D$ ^( {! g: Z3 f( }
17.3插件安装
2 D0 H% G) u% n/ ~17.4插件配置
6 v, D* p6 k3 J0 N17.5扩展IDC0 M; I3 H; k- K& r
17.6插件用户界面选项
9 B# V7 g' g' v) ~. Y17.6.1使用SDK的“选择器”对话框3 Q7 ^$ d% C5 v6 e' u
17.6.2使用SDK创建自定义表单
' ~0 q; ]* w) a1 @7 }& V& ^17.6.3仅用于Windows的用户界面生成技巧
$ _0 M1 e2 f, N! |3 R/ X17.6.4使用Qt生成用户界面! ]5 [2 \* h* C; D4 K- f# K
17.7脚本化插件, M$ P% e6 e0 d, A9 r. @; a& O
17.8小结$ k7 z/ D8 X0 S. ~" s5 c- p. P
& U6 }, G; |2 W& I+ [  m$ H
第18章 二进制文件与IDA加载器模块
1 T1 Y7 F1 G5 ~$ k8 Q1 T+ I9 Y% ]. Q; D, Q8 X8 N* R  K( ^* r
18.1未知文件分析
1 E/ l+ x0 V1 q, w18.2手动加载一个Windows PE文件
& O. O# e$ T- d18.3IDA加载器模块7 R* Y& z. u. z
18.4使用SDK编写IDA加载器
' t: E# E+ h; E7 q* e. j; Z- S18.4.1“傻瓜式”加载器8 o- T. O- p4 _) D$ E
18.4.2构建IDA加载器模块
6 r- P5 Q+ S; ^; [+ q' E18.4.3IDA pcap加载器
2 f5 j* \6 A0 a4 y5 \18.5其他加载器策略* b1 X: [2 [4 F# w( t7 j
18.6编写脚本化加载器
9 `9 _9 j- b8 k18.7小结' g- R. M/ B6 I* L

' |: l* P  {: }. e0 I; F第19章 IDA处理器模块2 r; H, q6 X3 |. }" z. m
6 p9 F: b" r5 m' ~- t
19.1Python字节码7 X5 T0 F' P  g8 x  ^, i+ i
19.2Python解释器' s5 t$ `% H6 k$ v" Q4 P5 A' X4 z# m2 ^
19.3使用SDK编写处理器模块, a8 ^' j4 C- C3 \5 s/ ^- H
19.3.1processor_t结构体) c7 F9 P( m! I* T" p+ @/ ^* N6 H
19.3.2LPH 结构体的基本初始化8 ^6 o; l9 q1 Y
19.3.3分析器
3 ~3 j9 `! D, z& k19.3.4模拟器
! b" v* J. r) S( A' j' |3 L2 U19.3.5输出器
. f9 r* M' [- R# t5 h1 P8 N19.3.6处理器通知
9 c$ Y8 b( P' k: c# O: |6 ?7 o19.3.7其他processor_t成员6 H* V8 d: z( ?1 `+ n% J" ]4 ^2 K
19.4构建处理器模块$ ^7 K# U# q4 @4 |' S! R
19.5定制现有的处理器( T/ E5 j+ b5 [
19.6处理器模块体系结构3 `4 Y% w1 {% n
19.7编写处理器模块
% ], k$ Q& ^6 |19.8小结$ Y( }, i6 d' ~! h' p
- B  C6 X- \0 w/ \- l
第五部分 实际应用
3 B( S& E( z4 c' s. o& j
2 o) E6 Z! Q4 A' ~' X8 f第20章 编译器变体
/ a5 G# q9 {) ~2 D" L5 d7 p
2 k  y/ g" x4 j( M# k9 D4 }$ T20.1跳转表与分支语句
6 ?2 I, t- Z- Z/ L20.2RTTI实现
( q* f. k# p- N5 p( @7 l20.3定位main函数
& o" K$ B* H  w/ i. ~8 v" S7 A20.4调试版与发行版二进制文件( Y" \2 y, _) A; M2 i
20.5其他调用约定9 P5 H; t% g3 B# z. u2 d$ }
20.6小结
$ I; p$ x$ k! R; D" k& D5 L( g, V; F3 p& q- E, C* v: B
第21章 模糊代码分析
+ O: f) |4 @& ~: D8 P+ r' }* z8 i" x6 [
21.1反静态分析技巧
3 b2 |, o. j5 r, b+ p7 v" _- k8 H: o21.1.1反汇编去同步' @8 v/ {1 }0 Q2 w3 `' `
21.1.2动态计算目标地址
4 e1 U1 X/ j% Z6 C$ j$ N8 S21.1.3导入的函数模糊% |/ P; g& \# @' x$ m0 k0 C
21.1.4有针对性地攻击分析工具
$ K8 m4 z9 M0 T1 u: @$ d5 ]* p3 j21.2反动态分析技巧( v( Q, e! R% W4 X4 _
21.2.1检测虚拟化
7 ?% u, c% v3 r$ |$ {6 L( N) h$ P# Q21.2.2检测“检测工具”7 B% L3 `  n4 Y4 r7 U' e
21.2.3检测调试器
/ Y: Y8 r2 n8 v: e21.2.4防止调试# U7 Y  f6 ]! A7 F
21.3使用IDA对二进制文件进行“静态去模糊”1 w# W$ N- w/ F. K) L: R
21.3.1面向脚本的去模糊% \+ _/ ]. w+ D! `
21.3.2面向模拟的去模糊
, l5 L! `6 T" ]8 ]7 e* ^21.4基于虚拟机的模糊  v3 e. y$ v  I2 E- ^5 D9 Q% w
21.5小结0 Z( F) ]8 z9 G6 j
+ b- R& h8 u5 E" g
第22章 漏洞分析
5 i) U7 V+ Z$ D: D4 C; u) e4 @1 b4 U6 R! a- Y5 S* c
22.1使用IDA发现新的漏洞6 q+ v0 Q0 _+ a4 E
22.2使用IDA在事后发现漏洞1 R! D9 h7 F, P* \% f+ }( |
22.3IDA与破解程序开发过程4 G: c3 Q; k7 k
22.3.1栈帧细目
7 i4 @9 E5 p7 t* A22.3.2定位指令序列
; `4 A3 K+ A6 l+ O7 h) ^" ^/ e22.3.3查找有用的虚拟地址1 u5 N, ]+ a* I) A. [+ m7 i
22.4分析shellcode* M, Y) d7 R/ A) W& D* j
22.5小结, k& e  s& l# n, U
8 o) B  W' N% q! Y' j, J
第23章 实用IDA插件
' W! C* z' q/ C  |7 Q1 U* t
$ g0 t  X: [  U3 S$ P9 P4 T23.1Hex-Rays1 ]+ E8 x, O- A# p& |" M' K, B4 A  W
23.2IDAPython
3 n; H* H! M: Q7 i23.3collabREate7 a+ y% K4 N  p. q- @0 _
23.4ida-x86emu
+ y6 ~7 W; H& ~! e" l+ }  ?$ O0 |9 M23.5Class Informer
$ S' @9 c8 l; \2 N" L+ o23.6MyNav
1 V& [! H1 L/ M, l+ m) c. B) z; V23.7IdaPdf
. F( _/ l" F! }3 L% ?' g23.8小结
$ x4 L" P% W! y- }/ z; m7 J. E8 N  v( X% l1 T7 L
第六部分 IDA调试器) J3 q+ o  q& @9 K$ \; b

, q' V+ Y7 Z% L, y2 T% o第24章 IDA调试器
' w# R( C8 B9 ?
3 Z( @, {& N" b0 X3 a( G0 G! ^: L24.1启动调试器
* h; V. v; y. i; R! |4 s24.2调试器的基本显示; e# |; Y& [6 I7 J) t
24.3进程控制8 i5 {- B% ]0 ^2 D) @
24.3.1断点
7 p; `: H+ S1 e. l24.3.2跟踪: x1 O0 Q  V. p; l2 {3 M
24.3.3栈跟踪( _- {; y1 f+ L& ]- r8 D
24.3.4监视- _) y7 C3 G+ [7 s3 w
24.4调试器任务自动化$ n8 `: ]% ]& e- D
24.4.1为调试器操作编写脚本
# s5 s( t1 }/ @' i& \24.4.2使用IDA插件实现调试器操作自动化4 F9 o; Q/ w7 y, w1 h. \
24.5小结. @3 r# o- |2 B9 P+ P/ A/ S3 t
! Z; O& b0 }7 o7 @- C; \
第25章 反汇编器/调试器集成
0 l% t! b) b$ O; ?- g# H* z7 |
' D$ n: l) v% G' `25.1背景知识# a. x% H% q% ?+ l; `# q& K
25.2IDA数据库与IDA调试器4 l1 N' k: N1 j
25.3调试模糊代码
0 o7 J0 {' M: H: ]5 C25.3.1启动进程/ o! U: a! G# l5 `) z( ]0 f0 v
25.3.2简单的解密和解压循环* Z# r! x1 ?2 B+ u* Y+ Z; D
25.3.3导入表重建3 E* x8 R  a! c4 @! d
25.3.4隐藏调试器( R) T  _& `0 ^' T- ?- _# ^
25.4IDAStealth9 q" ^- G4 k! @( [9 r
25.5处理异常
& F+ f1 ~  {3 g6 x: b  d7 Q25.6小结3 q: X" k& k6 P* P% a0 ~8 q
" z8 O* t- }4 d7 X. ^
第26章 其他调试功能
& r! Y2 Q1 Q3 L- z1 t7 g( E: ^) m" N$ K0 e0 W
26.1使用IDA进行远程调试( g" O7 `0 Z" u% f9 ?7 \8 k7 m
26.1.1使用Hex-Rays调试服务器! A- v8 ^. t& I6 E  z
26.1.2连接到远程进程; j$ ^" y3 A, N: B& L7 u
26.1.3远程调试期间的异常处理
$ M9 F) T" k# Y26.1.4在远程调试过程中使用脚本和插件8 k2 c4 ~$ q2 ?9 g. s
26.2使用Bochs进行调试3 l" ]! }+ x6 V
26.2.1Bochs IDB模式+ V/ p- ~; _5 w  u
26.2.2Bochs PE模式+ o1 U9 b# m. t: q2 x; m
26.2.3Bochs磁盘映像模式
, N1 z6 C7 ?* F  R26.3Appcall' l  W' M+ `2 l  y* i3 Q4 V5 @3 t
26.4小结
+ ~$ }  P% F8 q7 j* G
# D" ?, D) j- J, F$ i4 P% z4 J附录A使用IDA免费版本5.0
1 S5 V; L# F' X, Y
7 }* {: |. l" a& g7 }附录BIDC/SDK交叉引用
2 q+ H5 `# l! y3 @; `
- [$ ]9 _5 P7 J6 T
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

使用道具 举报

发表于 2018-5-27 09:36:21 | 显示全部楼层
感谢分享,能下载吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-4 16:34

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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