鱼C论坛

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

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

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

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

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

x
22595398-1_u_1.jpg

) d2 _1 |: O! c8 E" |2 q4 p
( ]* t  i" V, s+ N7 q, \7 u书名:《IDA Pro权威指南》(第2版)
" r; j% u. n5 p作者:Chris Eagle! ?/ M; U' p2 w* Q1 `
译者:石华耀,段桂菊
- F; G) u! c3 x; C' m2 v出版社:人民邮电出版社/ b: i- q4 X. E3 k
出版年:2012年2月1日(第2版)' j  T5 G: _# l( i4 h
定价:89.00元% D5 x! o1 c2 t* r$ E/ U
装帧:平装
6 R) J" f. y, X. M, }+ K& t+ L  p" W- WISBN:9787115273680
8 i( w5 p# [; U7 W
# h! A; J8 y/ [6 a购买链接:
# U/ d: S6 X/ [+ H- Y2 |
0 g8 L5 ~, L+ d7 l* k. R4 l
- C9 ?4 b+ f% h( k  i$ Q
亚马逊(Kindle)-> 传送门
, C1 X) @9 y  w" E1 d9 q3 r% M; d2 H, i# j2 q
当当网 -> 传送门+ S/ P( Q" n2 g- o' x) e1 W
2 b% \" r" K0 O4 U8 x4 {: {* s
京东 -> 传送门
: ?+ S6 Q4 w2 R$ A: ^  j
9 Q% e* P$ i: k" ]4 ~天猫 -> 传送门
) k/ k6 D4 f2 I$ ?1 o: x+ {9 o) g& p
+ [3 |- q* e1 e+ o5 E. g
内容简介:
2 l7 _: h' i# i( n+ U/ K7 H3 ^; U8 r# ^6 M0 `  l. ?& j


/ Y5 E1 F. P. l3 r( n, B《IDA Pro权威指南》(第2版)共分为六部分,首先介绍了反汇编与逆向工程的基本信息和 IDA Pro 的背景知识,接着讨论了 IDA Pro 的基本用法和高级用法,然后讲解了其高扩展性及其在安全领域的实际应用,最后介绍了 IDA 的内置调试器(包括 Bochs 调试器),一方面让用户对 IDA Pro 有全面深入的了解,另一方面让读者掌握 IDA Pro 在现实中的应用。相比上一版,这一版以 IDA6.0 为基础,介绍了它的新的、基于 Qt 的图形用户界面,以及 IDAPython 插件。《IDA Pro权威指南》(第2版)适合 IT 领域的所有安全工作者阅读。) _8 {! H! T' m) N' A

8 W) s( _# Q4 T, ~
8 ~( p3 [/ [+ I% l+ C8 z$ f0 q目录:
. \3 S1 S* e  E" e3 K, |( s, _& M( {1 P' N" |


/ v+ M9 K* R8 A& J4 W8 ]第一部分 IDA简介
. m7 J' [, U- N2 V
( i# G' ]! d2 F( G$ n8 |第1章 反汇编简介
6 [8 {. P& o; B  h- Z5 X: z7 \. B
1.1反汇编理论
! f/ l% |. a2 Y# c1.2何为反汇编
" z. k1 {! V2 z2 b2 e4 }" A1.3为何反汇编( S$ W; e' k" i: D( b) h1 x
1.3.1分析恶意软件
3 ~4 `" k) V3 Y' B4 W1.3.2漏洞分析
0 [! v. z" ~1 b1 v8 A1.3.3软件互操作性' Y3 D5 Q7 i  c  Q  i% g& D
1.3.4编译器验证4 \) P, x. L# ^, Z* x
1.3.5显示调试信息( n# V$ @2 U6 P: z8 e3 @
1.4如何反汇编5 X0 V$ w( B. F% `/ p! i
1.4.1基本的反汇编算法# @$ M& u% h7 c6 A1 Q
1.4.2线性扫描反汇编
$ P' z- W) Z: [$ a" f2 M2 w4 l1.4.3递归下降反汇编
/ i% h0 p8 O$ C' b1.5小结
! l% H+ J0 a5 M$ _& [
( u8 a- P9 n. @: Q% ?" H第2章 逆向与反汇编工具 8 g  Y  V. j. l# k
/ a5 j! q) y+ Y; ?0 Y6 a8 {2 ^
2.1分类工具
' `& k+ m* H2 z. }2.1.1file* J% W; g, K) q9 E' R  E/ d7 ?
2.1.2PE Tools1 N  K" C  a# A5 y4 W
2.1.3PEiD
- h" w9 j# i7 h4 c/ X- F2.2摘要工具
6 u7 A% [% W! O4 T2.2.1nm
: ]0 W+ r' s5 U* b8 b7 V$ }" _, s2.2.2ldd. g* v  M4 N+ Z# x* ^. g9 k. v' q
2.2.3objdump5 h+ r0 n% ?8 E) j+ G, Y8 B
2.2.4otool! m1 a5 p& D$ b; y
2.2.5dumpbin  R- i. y' X' G: J# Y
2.2.6c++filt$ I; y% Y& L9 Y4 k8 {
2.3深度检测工具7 e" l2 ~) A& |7 M9 l4 d) d
2.3.1strings
( T# u2 G) d: I6 d2.3.2反汇编器
$ c; s* @: m7 u$ P5 P* R9 o# h( K2.4小结
6 m& j# B8 {/ `2 U6 ~( C( M8 U- f+ b9 B  m, Z
第3章 IDA Pro背景知识, C  A+ Z" h  x: z0 u! u2 g9 r
" p: N2 |9 j0 W: f
3.1Hex-Rays公司的反盗版策略
3 I" [' V# u" Q* N5 K$ i3.2获取IDA Pro1 o- n5 P5 F0 m8 H! [( `
3.2.1IDA版本
4 w6 `( p! g( p0 p( J3.2.2IDA许可证
( O6 O/ m! V' f" A- n: d3 @2 T3.2.3购买IDA
& r  f. J5 e6 D$ y9 G' p& f3.2.4升级IDA
# Q$ n4 C' r% v$ Q' I$ e9 p3.3IDA支持资源
1 l2 P, D& g' }0 K6 _( t' q3.4安装IDA6 u$ G. _* x8 P7 i1 a1 l( Q% I5 J
3.4.1Windows安装
. e" q4 z  Y; ?3.4.2OS X和Linux安装$ E( A1 o' o' b
3.4.3IDA与SELinux$ y) [/ q5 t8 F' ]
3.4.432位IDA与64位IDA- g6 a* D" m- T
3.4.5IDA目录的结构+ {7 A/ R3 u  v' e& q3 v
3.5IDA用户界面& L; u7 y+ H! Y. W8 P
3.6小结
4 S' o) L4 b& n" P" F  {
# ?. e; ?+ P8 U第二部分 IDA基本用法9 j1 k, ^5 [. J$ B& Y% ~! z4 N
. P; o+ {0 i. z( \5 {
第4章 IDA入门
8 F$ F  a1 {. E. l+ \2 l1 H+ I6 z  w+ `$ T+ h" y, L4 c) {' Q5 V
4.1启动IDA/ C$ t  j7 `# |3 Y# _
4.1.1IDA文件加载
+ e& Z' s- a3 a& u4.1.2使用二进制文件加载器
8 E- b. X3 S) L2 V9 E, [4.2IDA数据库文件
- ~! T# [4 S4 w4 e+ t- q4.2.1创建IDA数据库+ u0 r9 W- L! A8 e1 r9 F
4.2.2关闭IDA数据库, W, p- J: T1 b( j% f- e
4.2.3重新打开数据库! ]1 L# ]3 A$ X5 `7 f0 M
4.3IDA桌面简介. `' s) F1 P2 N7 ?5 V
4.4初始分析时的桌面行为+ a# n% W8 H: w
4.5IDA桌面提示和技巧
! P; M" ]6 N) |, i. k4.6报告bug/ q2 _) \, @' B3 n6 f5 j
4.7小结
9 T5 G! d' f* G8 s9 u/ z
) V. @8 K: m1 ?第5章 IDA数据显示窗口6 o4 a# [# Y% b) n! Y

7 r: ?0 h* j* d# k7 W$ n% R5.1IDA主要的数据显示窗口' k8 c: D! j( N8 R" s  J
5.1.1反汇编窗口
8 }8 c" O# G8 m: W% B/ o5.1.2函数窗口
( x$ x6 p2 A- Z( D6 g& J+ Z! t5.1.3输出窗口; d1 L/ P4 m  Q2 I4 q( P
5.2次要的IDA显示窗口3 l0 N) C9 N& f( B$ U) v' }
5.2.1十六进制窗口$ I) P# W5 M. j; q; p
5.2.2导出窗口" u/ _9 U  D7 Y3 R4 n
5.2.3导入窗口3 d* W( C( M9 ?" O0 K* F5 L
5.2.4结构体窗口
, |' G7 R- M8 [8 w* d2 I* s5.2.5枚举窗口# E) @% G- T& d* E+ Z+ ^
5.3其他IDA显示窗口$ O2 @- ^3 h& H( W# f
5.3.1Strings 窗口5 M7 P. k. e  @0 b$ t
5.3.2Names 窗口1 X. C4 L! j" o! v- X& D5 \$ D
5.3.3段窗口5 E0 ?) ~: Y9 {
5.3.4签名窗口
+ L7 _0 {2 t% K5.3.5类型库窗口
1 Q5 x$ T! q: \. l3 Q4 }5.3.6函数调用窗口
: o  R& i9 {6 P5.3.7问题窗口
: x8 c+ `( h: e5.4小结; Y4 e- H* g: J4 ?8 n7 ^
, _# Q/ e9 |% {3 n4 z$ Z( S! V$ j8 L
第6章 反汇编导航) m9 @# s1 i# s

7 G3 s- N' n* |6.1基本IDA导航  v: G" J/ n- H. N. H6 Y$ [
6.1.1双击导航
! p( X0 U+ a- }% F' H2 x% j& z$ r, H6.1.2跳转到地址
% E7 y8 E9 \- c1 \, b2 B6.1.3导航历史记录- M' x5 v7 u) O  D. S& {+ c( {) O
6.2栈帧
  m3 {  c9 Y- O, I5 m6.2.1调用约定
5 E1 P7 z9 D; p* |! [6.2.2局部变量布局4 {  P# m" Q8 m3 k- m+ F+ c
6.2.3栈帧示例
$ j" `, D7 ~! t/ r- Z! U6.2.4IDA栈视图
' Z! J5 V/ L! {0 `; }6.3搜索数据库5 W4 M$ f! l; q; n7 O4 t9 m) w$ b
6.3.1文本搜索" D) b0 m( S& d% y, R
6.3.2二进制搜索' y6 N, z% P  D0 A$ S" r
6.4小结
. y" X. y9 c% s. c. D. r8 r! f
+ N" n4 n4 V2 |) Q/ R第7章 反汇编操作, B( j% W! K6 q* `

. o2 U7 H+ s& x2 @. }7.1名称与命名
! w! M% V' F8 T- [) F+ Z- A2 {( U+ }7.1.1参数和局部变量) V# i  ]0 s7 d  ^0 _" W
7.1.2已命名的位置
8 B0 q8 m7 J, I7 S- l" W+ ~3 [7.1.3寄存器名称' X; M/ t3 O$ \  h9 e* @9 i9 `
7.2IDA中的注释) N/ t- }0 l" p* R; U( N
7.2.1常规注释* A* i# T, J* r' Q/ U" o  E
7.2.2可重复注释' d  ~8 F$ ]6 a6 N( Y: t  L
7.2.3在前注释和在后注释
0 p9 s0 L4 @( X& T7.2.4函数注释
; ?: X7 G2 \: e- n; b7.3基本代码转换
6 J  M0 k% p( {' z' J7.3.1代码显示选项
0 c4 z4 P* U8 |; p  M7.3.2格式化指令操作数
. d& o, b- B8 }. b( K- {7.3.3操纵函数
: Q$ Y5 I1 X4 q: u4 o7 {# V7.3.4数据与代码互相转换4 B6 [9 P/ v. x( o0 N
7.4基本数据转换& S/ L: g$ L# }& @& z# Y/ ?
7.4.1指定数据大小
8 O9 m6 Y- |/ e9 ]  M0 X* }! ~7.4.2处理字符串0 f* e' b* }1 X! p( U) q
7.4.3指定数组
( T  O, W% P, G1 M- y8 `7.5小结
  p7 w8 J+ K8 s- X" A
7 J( w* N& Q9 }; n- k: S第8章 数据类型与数据结构3 _8 v( I, ~$ D1 D1 x+ ]

9 T! n- H# z* n; l/ e. Z8.1识别数据结构的用法- k# d7 {" }2 `  W: {) W5 L
8.1.1数组成员访问
* @$ u; P$ v& ]8.1.2结构体成员访问
4 ~5 F  x' n7 Q8.2创建IDA结构体
% X4 w$ n2 h: p; O& q; m7 V1 R0 Q8.2.1创建一个新的结构体(或联合)4 u4 W; i+ a+ ~  a5 a8 X# V
8.2.2编辑结构体成员: }7 I% i& S$ I) b" w& L: p  T
8.2.3用栈帧作为专用结构体
$ T( T1 ?* s3 I& f4 c, ~8.3使用结构体模板
5 W* |+ R9 A  ]# ?& q& R8.4导入新的结构体4 n6 X% F. d: v- ^& f/ k
8.4.1解析C结构体声明
* ?; `  D1 _. O! J6 S4 w8.4.2解析C头文件
1 f, o) u" y+ Z% @" @8.5使用标准结构体% D3 y9 `2 g0 a4 D* U6 D& _" Q
8.6IDA TIL文件) F6 ]# d9 f8 t& `9 B( ]/ O
8.6.1加载新的TIL文件
# ^7 }$ W7 u) d! j, U, X8.6.2共享TIL文件
& s1 ~# b, q* H- t4 m# d3 D2 E9 B8 |8.7C++逆向工程基础; t! i" I5 R# T( c* \
8.7.1this指针
* Z) e) P; s& u3 {8.7.2虚函数和虚表6 s7 b, ^6 v; Q& f: X3 S8 b2 {
8.7.3对象生命周期' C. @7 G7 t  X9 P: r
8.7.4名称改编
) ], A. @4 M6 N8 V/ u8.7.5运行时类型识别7 L: y+ e5 H# \/ e8 E: G
8.7.6继承关系6 O% J+ D1 P& a' j
8.7.7C++逆向工程参考文献% W, @) V* ~/ _, l) U+ \6 Z  L3 X. ?
8.8小结- r+ T& D* o) K2 [& t, i/ L

, P+ b4 ]/ e4 M4 w. u* |9 Q第9章 交叉引用与绘图功能
5 o4 w4 d/ ^' s) V
! r; x2 O. L+ s" i+ W$ E) J9.1交叉引用
0 Z- ]! D: ?; C/ d! X9.1.1代码交叉引用
& q) ]; [1 n) h  U9.1.2数据交叉引用2 `3 b2 Z8 r7 s1 J  J
9.1.3交叉引用列表
  S" s6 m- S! l1 C: \9.1.4函数调用0 S' M3 V; d" q: h
9.2IDA绘图$ F8 U( d( X8 }) O' D) w
9.2.1IDA外部(第三方)图形+ |- Y( ^! Z  h$ _5 M
9.2.2IDA的集成绘图视图
: @; w! o, C! k6 L( Q, w$ q8 ?9.3小结
5 p4 e. ~  q* B$ y+ P: N
1 t6 [; ?" v/ H" O4 H) `) i第10章 IDA的多种面孔
) S5 z$ Y8 T9 s6 _
8 c( ^  e: L. E( t4 [9 j$ ~10.1控制台模式IDA
) M' T) c+ R0 B0 f10.1.1控制台模式的共同特性7 ^* ]. k$ y+ {; b0 N
10.1.2Windows控制台+ V! C+ N8 [4 V# q4 L
10.1.3Linux控制台; }( r' E. y1 Y( c+ q4 W
10.1.4OS X控制台9 C5 O7 S+ q, e
10.2使用IDA的批量模式
7 U$ H/ @; m) _2 m! a10.3小结4 ~  `4 |. L+ a7 g6 q

& M  w' V5 G! d# [. ]( L& g9 w. h第三部分 IDA高级应用8 v: ~4 K9 w( K) v& [) r

" d4 `# }: X8 e' _3 Z* U第11章 定制IDA
6 e8 W2 c& S7 e* D9 B0 ^2 @
+ C0 ]! y$ A) ^0 o* {11.1配置文件
: k$ P4 M9 h! l% I' m3 i5 i11.1.1主配置文件:ida.cfg  I2 ~5 y6 k) c- h0 y" x$ L
11.1.2GUI配置文件:idagui.cfg
$ R( A, `# ]1 P7 R- }5 r" J11.1.3控制台配置文件:idatui.cfg7 `0 F% Z9 N- L! H9 a. ^( W! ]
11.2其他IDA配置选项" A! r' g& [- Z! {
11.2.1IDA颜色& ~) ~5 ]+ k$ K+ y! K9 E3 V5 k
11.2.2定制IDA工具栏
  M* ?* l: ?) |+ z11.3小结& R' i- f4 L. r1 d
3 q" u; [7 j" E2 L9 u) x
第12章 使用FLIRT签名来识别库; V9 Z, O5 V5 ~3 j) y

' j7 C8 A( B" I/ v! v2 f12.1快速库识别和鉴定技术
# }, y) O& b5 z  A) E& K12.2应用FLIRT签名
, V) E: f5 R: n- v# L  y. H12.3创建FLIRT签名文件# m/ r$ z8 s7 _
12.3.1创建签名概述0 y- p2 L+ P3 t0 F! |8 Z. x
12.3.2识别和获取静态库
3 }* C* o9 `- t; X; P12.3.3创建模式文件8 ^+ \8 Q& [; w' h- i
12.3.4创建签名文件
; b8 u2 C) D6 j, K12.3.5启动签名2 e0 C; \# k" @" H5 F( n. D1 s
12.4小结. U4 K" o& L3 C- j
2 z, E3 M4 h; v- M9 [" V' ^
第13章 扩展IDA的知识+ E  U! a1 ^7 ~( L- y; D  O! c# e$ M

& b$ R4 t  x; g6 V13.1扩充函数信息2 u2 |; F; J) ~2 `  R; ]6 v7 T. \
13.1.1IDS文件
+ g) ^6 J3 S4 [5 ]13.1.2创建IDS文件( a( L3 M& n% p6 D5 Z
13.2使用loadint扩充预定义注释8 @$ |( T3 a! l2 o
13.3小结1 @: r0 r7 r- L& c. M

0 l* E- M' p: E; r5 p第14章 修补二进制文件及其他IDA限制" Z" {. v1 c; }7 {" L4 G

5 X$ @% Y. y8 L7 c/ B14.1隐藏的补丁程序菜单  `8 ?& o) m" c" @) ]( g
14.1.1更改数据库字节
$ B) O8 p, i3 a. |14.1.2更改数据库中的字
5 K" h2 m' S$ ?$ t* u1 b1 a1 w. J14.1.3使用汇编对话框: Y! |: v6 J* _% M6 T$ o
14.2IDA输出文件与补丁生成4 r- T3 \/ x& k
14.2.1IDA生成的MAP文件. {, W7 x4 J, }( C
14.2.2IDA生成的ASM文件
. \1 [( U5 R; e' q, z2 T14.2.3IDA生成的INC文件$ o% _2 u  C% B1 s# l
14.2.4IDA生成的LST文件
* q$ i0 i+ V) v9 V, A14.2.5IDA生成的EXE文件* q" W/ r* a; \9 }" ?. @4 x+ @/ ~
14.2.6IDA生成的DIF文件
5 a1 v. U% I& f7 ?& i5 f5 j14.2.7IDA生成的HTML文件
  G" E! D  u3 P2 ~14.3小结1 [- P* s5 k. H/ A2 ~. _: f

  g% ^6 ]% e, J3 _第四部分 扩展IDA的功能
  u. q2 m$ U, Q4 ]( s/ Z; k4 m
; N2 e) Y' ^1 w- ?5 p第15章 编写IDA脚本5 q$ \# _1 W+ J3 Z3 P( I6 W5 H1 p
( [) p  F7 \8 Z2 ^1 U! |
15.1执行脚本的基础知识& p( u' u1 J7 g, z) s- Q, L$ \
15.2IDC语言
/ d) d' j' n" y+ D) ~/ f2 F; I1 j15.2.1IDC变量
8 c8 A& {3 E+ M. _1 j  P8 N15.2.2IDC表达式3 v! N$ ?: @- r6 _/ |# a& g/ y
15.2.3IDC语句( A9 E/ n. t! Q* T- r+ v' \
15.2.4IDC函数6 |/ x- Y# C9 D
15.2.5IDC对象
. M+ m8 b! T: }2 N) _7 [! T" s4 A' l15.2.6IDC程序
. O4 P* z# P  d5 R' x15.2.7IDC错误处理
8 W; _. Q2 `$ \+ [: F15.2.8IDC永久数据存储) ?7 l  ]! t" R8 t7 X1 M5 s5 t: z
15.3关联IDC脚本与热键& w4 i# g7 M) Z* E9 p
15.4有用的IDC函数& u) s$ t9 `( y8 [: H" Z) s! |
15.4.1读取和修改数据的函数# u0 f& z/ \5 e3 J3 O+ |1 J
15.4.2用户交互函数
, c# \( D# n8 a- u15.4.3字符串操纵函数& P  L. _* m% R, A
15.4.4文件输入/输出函数
! z3 R2 m& m  ~15.4.5操纵数据库名称
, n$ L, s! Y$ f( o5 q15.4.6处理函数的函数
" u+ G! K" _, ~+ n+ T# r15.4.7代码交叉引用函数# A5 U- ]' z( V3 Y
15.4.8数据交叉引用函数
: w) `  s; x4 K  f15.4.9数据库操纵函数
  l) A* R! X# h6 H8 G* L) T) d15.4.10数据库搜索函数
) _/ f5 ~% e0 g& I4 J1 p( f" ]15.4.11反汇编行组件
7 K, r5 }3 {+ |- Y6 e3 r6 Y15.5IDC脚本示例
# ~# N2 V0 _# M4 e2 i5 `15.5.1枚举函数% ]$ L* w3 B. Z4 o  L
15.5.2枚举指令4 [3 P% b# s+ C0 B. _$ b" C
15.5.3枚举交叉引用% v! ]' L. f* @# q, u$ l1 Q4 c% [4 S
15.5.4枚举导出的函数) u2 O" p* u# m% D/ V; i" ]
15.5.5查找和标记函数参数
' W  L7 }9 V/ V5 F% b. f15.5.6模拟汇编语言行为
" g5 l2 R6 l  R1 Y15.6IDAPython/ H1 t) b: E$ s
15.7IDAPython脚本示例7 O" V" d# c3 o. X* t- m! q0 h7 o
15.7.1枚举函数
5 Y7 H4 {. c" h# z( \1 A15.7.2枚举指令
4 O( g5 f& N' Q! E15.7.3枚举交叉引用! {# V3 F: E9 R; S+ N
15.7.4枚举导出的函数+ t' K" I% w# p* D3 \7 g# L" F& R6 u
15.8小结% x5 y# z% l+ a

% Q) i& b  Z' I; I' t0 U第16章 IDA软件开发工具包
% E2 k, o* R( f! t" R
" H. Q( s# I$ g- i1 [/ s. }! E6 M6 [16.1SDK简介
! U! U5 X) V% j% T7 O: t  k  i+ k; }16.1.1安装SDK, W- U, `3 T( L0 B/ R& J! L2 U
16.1.2SDK的布局
1 A6 d' b$ \$ E% r9 ~16.1.3配置构建环境
* ~4 ]9 M) C: \% e7 j9 W16.2IDA应用编程接口
* W- V, o+ R1 c  W16.2.1头文件概述
' x) \2 U% {6 {" S: T/ Z- Q% \; ^9 L16.2.2网络节点
) A4 N2 S4 g  G' ]/ {) }2 y16.2.3有用的SDK数据类型
! g3 q" Z% ^/ |" S6 R6 v9 z16.2.4常用的SDK函数/ }3 {) }' n  T  y
16.2.5IDA API迭代技巧, C+ M. F" v: q' u2 I% `
16.3小结! d$ V& E5 c2 U. S8 E7 c$ z
: d" _# W/ O% r( r
第17章 IDA插件体系结构
- `0 w; }, Q' `- C) [* Y
4 m, i( {& |7 _5 l- Q! y17.1编写插件
) ~* @# S! N" I( }4 U* m! R17.1.1插件生命周期) D+ {% p. D8 X+ A6 o% Y" y
17.1.2插件初始化
: k' _) e8 ~, w" Q7 h, }17.1.3事件通知( S3 T. D+ l: \# ~9 q7 p+ G
17.1.4插件执行3 @( |: f  s7 F# ~
17.2构建插件
% H0 }" P; h% y+ x, A17.3插件安装
' W& g0 P1 P, @+ O% d17.4插件配置6 l7 m. K- q1 H8 n2 ^1 k1 k
17.5扩展IDC; x3 g8 F0 @+ \% h  R  x, N, U
17.6插件用户界面选项
/ X4 H# n9 m7 g- g* r+ B17.6.1使用SDK的“选择器”对话框
# |- ?. H8 u0 o9 y3 Q, Q17.6.2使用SDK创建自定义表单7 p3 Y' p; @/ d$ j+ ^5 X* h
17.6.3仅用于Windows的用户界面生成技巧& M) a! H' m8 `5 z! p
17.6.4使用Qt生成用户界面
( S4 H+ ^% N( C# y, O/ a4 e( c  C" \17.7脚本化插件
: P8 `; n/ N. ~9 x3 E17.8小结. a+ v1 ?. t/ h- Q; V8 r$ h

& a9 y9 S" _) M: k9 X, H第18章 二进制文件与IDA加载器模块! z: P8 H6 n" c# ^

' z) n( {! J9 M) i0 {* u18.1未知文件分析
0 r* v- H; |4 A3 [' O; G* R18.2手动加载一个Windows PE文件! s- F, Q0 _8 R4 t
18.3IDA加载器模块
2 B, n" ^2 R" }8 r4 k18.4使用SDK编写IDA加载器. s' y6 k6 S: P3 k
18.4.1“傻瓜式”加载器& P  O7 K& _! t$ Y) d
18.4.2构建IDA加载器模块
% V9 R% C- v8 X18.4.3IDA pcap加载器3 v' H) {+ r) F  G% d. v
18.5其他加载器策略+ Z( k# i) U; B; C( ^; n6 e' i
18.6编写脚本化加载器, R- L( W! k& U% i/ j5 w' f
18.7小结4 ]7 y5 r+ p# |( m. ?6 h& ~# J, n) S

/ j4 m1 b3 a& f& A3 T+ h第19章 IDA处理器模块
* g3 w1 l9 E4 g$ c3 z: ]7 V. b% t" Z9 b/ r- i; F$ Z% A
19.1Python字节码0 n8 H5 x0 b8 Y' R6 ~% R' Q
19.2Python解释器9 W4 n: S5 `$ O
19.3使用SDK编写处理器模块. d: P9 z) r( f# ?4 T
19.3.1processor_t结构体
1 g, E( ]$ C, S& ]$ W7 T7 Q# r+ R19.3.2LPH 结构体的基本初始化
- Y+ s$ `' A( U  m: O# S# s6 [19.3.3分析器5 ^& j  N( `, y2 b; |. e0 w" ~: C2 d
19.3.4模拟器, x$ w/ _) Q) L; N0 k
19.3.5输出器
% i- W  U& Z/ R2 X2 s19.3.6处理器通知+ {6 [+ C  h% `! I4 V. P; b
19.3.7其他processor_t成员
! ]% V' m& i1 U( i19.4构建处理器模块/ T/ ~( @) c, S  |$ k, R* ^
19.5定制现有的处理器
9 k: `4 K( H0 T' G" X- g) n19.6处理器模块体系结构8 v* ?/ ?1 a! @
19.7编写处理器模块1 v' L9 I' \4 z0 E0 S% _
19.8小结6 e/ ^, R7 I5 V! w, M+ D& \7 Y

8 M8 A3 |: j* j1 r' [第五部分 实际应用
3 V3 p1 \& X" p0 p  Q
  N, n6 k+ R  o" k' v9 K9 S第20章 编译器变体
# n: w5 g& j* n! q6 {0 O
9 G) D  o) |" t/ |8 D/ D" z% _20.1跳转表与分支语句; _. u! o* X% M
20.2RTTI实现& ~0 C! }- m! n) z' d: }. z( Z
20.3定位main函数
( c0 e: d2 k8 [& B" V20.4调试版与发行版二进制文件$ R+ r, D9 m" ~! b3 e1 t
20.5其他调用约定, \: X" |. P- h- |( b8 Q0 O# ]8 N* H
20.6小结
2 q6 z8 _+ e0 @7 N- M
) M' b7 J) u; V6 p0 X  }第21章 模糊代码分析
% P% @0 c, h6 n5 X
6 n7 W; F6 `; a3 @' e21.1反静态分析技巧" d( u$ S8 O. |
21.1.1反汇编去同步! ?; @2 g7 `3 ~
21.1.2动态计算目标地址0 M! k. Z6 M, J: h$ Q3 o
21.1.3导入的函数模糊
- w/ k! ]; s: S3 i$ i21.1.4有针对性地攻击分析工具
) ~' y/ U4 q% t21.2反动态分析技巧
; |. R. r% L6 u. X21.2.1检测虚拟化; u* s/ d+ x# `( r% D. G
21.2.2检测“检测工具”! k  a" F! E; ^4 D
21.2.3检测调试器1 Q4 U/ H9 P+ J% j: U( X
21.2.4防止调试! R8 E" Z. r8 I4 i+ o6 F1 c6 @
21.3使用IDA对二进制文件进行“静态去模糊”, [1 Q0 z3 x: u9 B
21.3.1面向脚本的去模糊' b  m0 K" S" N. ~  |
21.3.2面向模拟的去模糊
3 ]# C' }! A: \. C) a( G5 x21.4基于虚拟机的模糊8 T, X  C% s! e
21.5小结
5 r1 b4 g' ?: S' t/ m9 ?2 L/ d/ w( r/ Z( m
第22章 漏洞分析5 H" d! w" F2 ?, G. s* E9 s* U
( H( K: b! d4 ~( _' x
22.1使用IDA发现新的漏洞
6 b& F% f- ^: i$ R. j* Y- I22.2使用IDA在事后发现漏洞
) T3 E. l4 n, @$ n6 M, a22.3IDA与破解程序开发过程
9 O' V9 Q! d7 J& B) _+ z22.3.1栈帧细目# P3 N; {2 c! Y  B$ i& m/ f, T
22.3.2定位指令序列
' u2 T- J% o$ }" ]  g" j. V# b22.3.3查找有用的虚拟地址. p! Y& t. E1 d7 \" J; U! D7 d
22.4分析shellcode! f( n# j8 y; a) H' b
22.5小结
, G1 a& L+ M, t. f, v3 S0 T2 t+ k4 T. K. Z0 p
第23章 实用IDA插件6 n+ a4 o5 Q0 b% z0 {& v

2 l, E- y3 @# h$ z/ f23.1Hex-Rays& J2 W8 L* E5 ^9 ?9 @# K8 l* V
23.2IDAPython
2 |6 g7 V" M" d; g  I+ B& m; I23.3collabREate
9 c4 N! M3 `9 \% p" ^1 X23.4ida-x86emu- D) C% ?5 x! J+ h8 G: A4 C
23.5Class Informer
% N) G3 z- ?, |! Y8 e! N1 ]23.6MyNav
7 b/ N2 U# t) K; K) L% v23.7IdaPdf
  N* _" s& |; I  m2 V23.8小结( t% T. f, a& y) n

9 l) X, F! L! ~2 N. S第六部分 IDA调试器
! |3 }+ `9 |  z/ e# K
; Z) {/ d( y6 ^# H& ^第24章 IDA调试器) U- T4 x' G& s  z  g

5 y1 ?; a0 C/ D, J1 h24.1启动调试器4 E+ X$ d! s9 d/ I2 H
24.2调试器的基本显示
. v" F. A! R( E2 @8 w  l24.3进程控制! k" X% {2 j. x1 Q' i, A
24.3.1断点
8 }  S; r6 X' v7 c; X24.3.2跟踪, r% S/ E3 s1 C4 y- A2 h% V" M1 Q9 x
24.3.3栈跟踪# m2 t4 b( e5 e  b
24.3.4监视
, L, m5 u2 v! N  R0 R8 `# V24.4调试器任务自动化
8 ^% P6 Q7 q" D( c24.4.1为调试器操作编写脚本
7 h0 V: V# q: J. v% v' t$ r( @( G24.4.2使用IDA插件实现调试器操作自动化
0 i2 Q; h# p) b* Z. @) a24.5小结
/ {  c, L# }" O* V( N' c% N5 {  z8 G1 K* @( A
第25章 反汇编器/调试器集成
' ~3 v2 v* i- E0 j8 L
. X: F, Q# J: K& ~8 m25.1背景知识# h; v8 p  u2 H
25.2IDA数据库与IDA调试器
+ f0 y( g6 K0 f$ D2 Z2 H8 F25.3调试模糊代码2 s' g: k  P/ {% z0 _" q
25.3.1启动进程
! K5 ~# _6 N( Y: Y: J: i/ s( m25.3.2简单的解密和解压循环
- g, d" E2 m6 A7 P25.3.3导入表重建
7 N" Z1 e" |+ I1 p5 j4 X8 W/ a5 J5 r25.3.4隐藏调试器
0 O4 o+ O" C) u7 [4 g* K25.4IDAStealth
4 ]. k0 a: G9 {$ k, e: L25.5处理异常
0 I: h3 ?% m( K. X1 g- ~1 h3 a/ {25.6小结/ r! C( E' I' ~7 e

5 y; P4 x+ ?/ ^第26章 其他调试功能8 X, ^8 m" B  J& F

3 A2 a* _! @% A( \  B26.1使用IDA进行远程调试7 F" ~5 c; G! f2 g& g) n7 ~" L
26.1.1使用Hex-Rays调试服务器6 ?; q2 d; d7 r: W9 Z: `: ?
26.1.2连接到远程进程( G4 G% n" `7 m
26.1.3远程调试期间的异常处理
  _& F# l5 D& {( S4 x26.1.4在远程调试过程中使用脚本和插件! ~) z/ P& j" G, @9 A# k& o
26.2使用Bochs进行调试1 q! r2 E! U. l$ o: K1 o
26.2.1Bochs IDB模式- G5 l; p/ T5 Y7 @
26.2.2Bochs PE模式
& {( E% `9 L; D) o. F26.2.3Bochs磁盘映像模式
# z( {0 Z  h" w5 z; g, m5 z2 I26.3Appcall. v8 E; X( ?) B- k  u- ^# t' R
26.4小结
6 A! J6 f% C; l% H
) t) Q" Z6 V; p; C6 Q) p附录A使用IDA免费版本5.0
2 {$ M8 O3 f7 u1 [2 v
1 \! S8 G$ ~3 n附录BIDC/SDK交叉引用
) R& N( k& @, b) B7 ^& p  b0 j! W7 S' u9 B  d
想知道小甲鱼最近在做啥?请访问 -> 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-5-4 07:46

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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