|
|
C++逆向基础教程6 K1 M. d+ u; Y( Q& `
课程暂定32个课时,后面可能根据课程的需要会进行相应的修改,课程中用到的工具主要有三个:Microsoft Visual C++ 6.0,Ollydbg(OD)和IDA。 7 f* _+ W. I8 ^5 A/ i' v
0 u6 V& e7 |$ P* f5 H! w: D+ C/ _ R: h一、动态调式工具及静态分析工具IDA的介绍级基本使用
3 j" Z# b4 R; E% s9 P& ~(1)动态调式工具
9 ~" \+ ^- J1 t7 M; p9 ] a、Microsoft Visual C++ 6.0
. _- [2 d# ?- p2 }2 D7 R7 }+ e b、Ollydbg(简称OD)3 T1 W# A4 T$ L' S& }5 {! ~
c、实战
5 ~0 G+ f0 l# _5 S+ u(2)静态分析工具
: w6 ?0 P2 z4 ~' M a、IDA基本使用1 w% d& o9 e, B$ _" d
b、实战* T# n8 _( ~( [: Y# ^0 `0 H
二、汇编基础知识学习4 [0 o1 {" z/ t% y' e# n
三、通过一个简单的程序讲解VC6.0调式器" x R9 O2 H4 g' \0 P% j
四、C++中基础数据类型在内存的表现形式
( w8 O1 K4 g6 S5 W3 g' ^五、了解C++ 启动函数及OD中定位main函数/ U0 n6 g( c7 V C
六、VC6.0编译器优化技巧' j# J( }) ^5 s5 u; j! e7 Z7 A6 i
七、基本表达式的识别与优化原理 # f- k) ?" j, g1 Q$ H# c
八、模运算的识别与优化原理6 ~2 C( a9 Y' Z! f
九、反汇编中识别if-else, U* J$ ~2 e: u, K
十、反汇编中识别switch-case语句: U2 a; x( q$ R' ?1 }# ~; @
十一、识别复杂的switch-case语句+ \! j& X9 D7 M& Y0 f# `: A
十二、反汇编中识别C++循环语句: H2 }" d$ ^9 Q) E! i
十三、VC6.0编译器对循环结构的优化
i* J# ?/ c7 h# N& K十四、函数调用方式讲解+ r! l! u' d0 v
十五、使用ESP或EBP寻址0 ?2 Z+ A5 F9 U* u I
十六、函数参数传递
6 i% z- Y+ Y, r6 Y& w% c$ t十七、通过反汇编清楚传值、地址、引用的实现
6 }- O3 \; @5 @0 P# `十八、函数返回值
" A4 P2 s3 `1 B1 ~ g3 G$ q4 k8 w: ^十九、初程序员在函数调用中常犯的错误及函数调用总结及
+ U5 U+ j% t! a! t. s# z* s- _: z十二、变量在内存中的位置
" J" E' o* b2 s/ U$ C二十一、数组级指针形址: p( p/ U) } X
二十二、结构体和类. `0 D" V; u3 [( y( j$ h
二十三、C++对象内存布局
4 V' F! Q, T$ n二十四、内存对齐
; O) X! e$ F! [# B" {# B二十五、在反汇编中识别C++类3 b2 u0 F P$ n' `& O- F( V
二十六、利用RTTI识别类+ o8 o- ~5 L. h" k' _
二十七、构造函数和析构函数识别3 [* u$ v+ K6 r" {1 S4 A* i/ k
二十八、通过反汇编了解虚函数实现原理
& p; Z" w6 u* c1 ]# `' E* e0 h二十九、从内存角度学习继承和多重继承
! e! n* E9 O2 a8 E三十、异常处理。
4 j, D4 _' k% ~% Q2 }0 B三十一、CreakME算法分析。
3 e# b G; |" q5 M4 A( l5 S, z# m O4 y! K: y6 x/ Q
; a0 n5 v0 g C3 q( K- j链接:https://pan.baidu.com/s/1jU-tE-onAjOZeOB80wXgRQ 9 q$ I( `, m8 }' z" i$ P6 }
提取码:
5 ]* i6 Y" z& M, ^, ^复制这段内容后打开百度网盘手机App,操作更方便哦
) |$ v5 ?/ Z7 r: [( Q) p; l) C' H4 U1 A
|
|