第一章 进制、寄存器与汇编指令(汇编与C语言相结合) 3000元 _ +A$6l
学习汇编能做什么(逆向,游戏安全,加固/脱壳,反病毒,漏洞挖掘等等必备基础) "aeKrMgc6V
1.1 计算机的基本构造及其运行原理 ,:"c"
1.2 不同进制的书写方法 KPs
@v@5M
1.3 为什么计算机要用二进制 )\,hc$<=m
1.4 不同进制间如何运算1 _@ @"'
1.5 不同进制间如何运算2 KS(Ms*k;'
1.6 为什么要用十六进制 Zj2tQ}N
1.7 什么是逻辑运算 4L[-[{2
1.8 计算机的计数与数学计数的区别 0+"P1/
1.9 谁能告诉我计算机有多少通用寄存器 \}NZ]l
1.10 安装VC2012/VC6,写简单的汇编 DqlspT
1.11 怎么操作汇编指令 yy$
7{9!
1.12 什么是内存 [:-o;K\.-a
1.13 寄存器与内存有什么区别 *(]@T@yN
1.14 怎么把[ ]里面的值变成地址 wvg>SfV,e
1.15 堆栈的作用。 ($:JI3e[;
1.16 函数的调用过程1 d)jX%Z$LC
1.17 函数的调用过程2 +0FmeM&`h_
1.18 汇编指令运算过程中,出现进位借位,或者溢出该怎么办 8:
4`q9
1.19 对寄存器ESI或者EDI操作的指令有哪些 px.]
m-
1.20 指令和内存有什么联系 ' $X}' u
1.21 如何用汇编写程序 ?c#v'c^=h
1.22 逆向的起源。什么是内存框架 4p_@f^v~QH
1.23 用汇编怎么调用函数 b:(*C
1.24 不用CALL指令,如何调用函数 Cr%6c3aQ
考试:用汇编写一个程序 "Kt[jV;6
[:C!g#o
第二章 C语言(软件开发必备) 2500元 ^tFgkzXm
2.1 C语言有哪些规则,如何赋值 `PvGfmYOl
2.2 什么是C语言表达式 Wy,Tf*[
2.3 “如果”代表C语言的哪条语句 ?u /i8
2.4 “如果明天下雨,我不去逛街”该如何用C语言表达 {
w:9w
2.5 假设(a*4)怎么用移位表达,a向哪边移,移多少 _K|513I
2.6 C语言有哪些循环语句 n{r_Xa
2.7 C语言for 语句该如何使用 0P6< 4
2.8 什么是C语言变量 jRzQ`*KC#
2.9 “现在有相同类型的100个变量”,怎么用一条C语句实现 B=J/HiwV)
2.10 什么是二维数组,二维数组跟一维数组有本质上的区别吗 OL)M`eVQ'
2.11 C语言结构体是什么 b-,]21
2.12 怎样合理的运用C语言结构体 &y=~:1&f
2.13 C语言变参函数有什么作用 -YP>mwSN?
2.14 深刻理解switch 语句1 ~`x<;Ts
2.15 深刻理解switch 语句2 a]|k w4
2.16 C语言宏定义有什么好处 9:jZ3U
2.17 什么是C语言指针, 指针是怎么赋值的 cE0Kvqe`
2.18 C语言指针和数组有什么区别 $2\k| @)s
2.19 C语言指针是有符号的,还是无符号的 WXC}Ie
2.20 “void a ;” 这样定义可以吗?什么是空指针 } ~#^FFe
2.21 指针数组和数组指针分别代表什么 rJl'+Ae9N|
2.22 指针数组和数组指针的区别在哪里 Gn%gSH/
2.23 怎样定义C语言函数指针 haMt2S2_B:
2.24 C语言函数指针有什么作用 B#;yko
2.25 数据结构之单链表 _fQBXG2
2.26 数据结构之双链表 eA(c{
2.27 数据结构之数组 w/m~#`a
2.28 数据结构之队列 DV!) n 6
2.29 数据结构之二叉树 7A[`%.!F6
项目:学生管理系统或者贪吃蛇小游戏 Bn_@R`
r)Sw
V!b
+R?d6IjH
;qT7BUh(%
-KG3_k E
第三章 C++与MFC/逆向练习 4000元 $di
8#O*
3.1 结构体与类有什么区别 S\O6B1<:
3.2 封装之this指针的本质 z!6:Dt6^
3.3 构造函数和析构函数 l+1GA0'JP
3.4 继承有什么好处 |J#mgA}(
3.5 多继承与菱形继承 7`
f',ZK%
3.6 纯虚函数和虚函数 y-c2tF@'v
3.7 多态与虚函数有什么联系 @7aSq-(_l*
3.8 虚继承以及析构调用虚函数 L
E>A|M$X
3.9 函数重载的妙用 ~
-hH#5
3.10 什么是运算符重载 N2^B
3.11 模板是怎么运用的 ;{Kx$Yt+
3.12 类模板以及命名空间 0jN?5j
3.13 容器之string &u/T,jy`
3.14容器之vector bqDHLoB\1
3.15 容器之deque "m:4e`_dz
3.16 容器之list o-jF?9m
3.17 迭代器的用法 tgbr/eCoU
3.18 输入流和文件流 zbDM+;
3.19set map I5J9,j
3.20 stl之 元素计数以及最小值 p KF>_\
3.21 函数对象和一元谓词 7!E?(3$#"
3.22stl之 查找 删除 9}2E+
3.23 C++异常 X4R+Frt8
3.24 一个Win32程序的执行过程(消息机制的本质) /hMD
Me
3.25 win32之创建显示窗口 s) vHLf4 T
3.26 win32之消息派发流程 ,,>b=r_r&
3.27 win32之消息循环及消息函数 V5{^R+_)Ya
3.28 win32 对话框消息流程 Lh5d2
}tcO
3.29 MFC与Win32程序的关系 ;9hi2_luV
3.30 MFC类层次结构以及消息流程 P]G`Y>#$r
3.31 操纵控件的几种方法 DEw_dOJ(
3.32 MFC之对话框 NN9`jP2
3.33 MFC之菜单 H `V3oS~}
3.34 MFC之画图 ^3L6mOoA
3.35 MFC之文本操作 ?][2J
3.36MFC之单文档和多文档 93npzpge
3.37 C++版本超市管理系统 uII:Y{G
bvMa|;f1
bNG;`VZ%
zU'\r~c
![BQ;X
数据库:(新增) [J|)DUjt
1. 数据库的基础 @{Q[M3l
2. 关系数据库的基础 r%g?.4o*b
3. 表的管理和数据类型
ui:
4. 基础查询 ^c{,QS{
5. 创建表,添加和删除 kgvB80$4
6. 数据库设计 &ns !\!
7. 创建数据库 89@e &h*
8. 存储过程 *
|RQ
)
9. 触发器 )k8=< =s
10. 事务 *$Df)iI6
11. 锁 t1)b26;
12. 数据备份和恢复 [~ sXjaL8
13. 数据库的安全性 :_q
<z*SO
a
SOCKET编程:(新增) w$cic
1. 什么是 socket ?N,'1I
2. Internet 套接字的两种类型 Uk02VuS
3. 网络理论 n#G
I& U
4. 结构体 ^ )Lh5
5. 本机转换 o AkF
6. IP 地址和如何处理它们 l0 H,TT~2
7. socket()函数 D/w4u;E@
8. bind()函数 (c<Krc
h
9. connect()程序 J2`b:
%[
10. listen()函数 XLK#=YTI
11. accept()函数 >Udb*76
D
12. send() and recv()函数 ~R]E=/ m|
13. sendto() 和 recvfrom()函数 Ne<"o]_M
14. close()和shutdown()函数 QJ`#&QRp
15. getpeername()函数 an 3"y6.8
16. gethostname()函数 e'oM%G[
17. 域名服务(DNS) :4"SJ
18. 客户-服务器背景知识 28;D>6c
19. 简单的服务器 pHFh7-vj
20. 简单的客户程序 >o=3RB=Fh
21. 数据包 Sockets .-;K$'YG
22. 阻塞 oVsj
Q
23. select()–多路同步 I/O bUC-}
zv]-(<B
0}Y
R=
-~A7o3k35
X3DXEeBEL
逆向练习: .F0V
1. OD和IDA的基本用法 *Rv eR?kO
2. C语言全部语法逆向 /vl
]Oa&U
3. C++全部语法逆向 {R7>-Y[4)2
4. 按钮以及其他控件的入口方法 sD$
\!7:b
5. 逆向窗口程序的通杀方法 I)E
+
练习:SOFTICE核心文件逆向 ^A^,/3
r3l}I6
aXyu%<@k
EOrWax@k$}
fv!l {
第四章 汇编编码 3000元 ~pn9x;N%H
学习硬编码的好处:(HOOK函数,系统HOOK, 代码变形,VM还原,TMD还原,解释器,调试器必备基础,这就是杀毒软件可以横行的法宝) 6u3DxFiTm
机器码,简称汇编编码,俗称硬编码 `)F lb|da
4.0 寄存器 (32位汇编;64位汇编) w|x=^
4.01 汇编指令 H(ht{.sjI
4.02 堆栈 )EYsqj
4.03 逆向框架 JEX{jf
4.04 函数内部运行机制 "aN<3b
4.1 定长编码 (0x40-0x4f 0x50-0x5f 0x70-0x7f 0x0f 0x80 – 0x0f 0x8f) ^lT$D8
4.2 定长编码(0x04-0x07 0x0c-0x0f 0x14-0x17 0x1c-0x1d 0x24-0x27 0x2c-0x2d 0x34-0x37 0x3c-0x3d.) aW7{T6.,
4.3 定长编码 (0x60 0x61 0x90-0x97 0xa8 0xa9 0xb0-0xbf 0xc2 0xc3 0xcc 0xcd 0xd4 0xd5 0xe0-0xe3 0xe8 0xe90 0xf8-0xfd等等) (}fbs/8\p
4.4 硬编码4 (写程序把定长编码打印出来) ch<Fi%)
4.5 硬编码5 (写程序把定长编码打印出来) v.)'be*u
4.6 变长编码 (0x88 0x89 0x8a 0x8b) mD:d,,~
4.7 变长编码 (0x88 0x89 0x8a 0x8b) Jp
.Sow
4.8 变长编码 (0x00-0x03 0x08-0x0b 0x10-0x13 0x18-0x1b 0x20-0x23 0x2b-0x2b 0x30-0x33 0x38-0x3b ) />XfK,c-
4.9 变长编码 (0x84-0x87 0x8c-0x8e 等等) "_ b
Sy
4.10 写程序把变长编码打印出来 v#.FK:u}
4.11 写程序把变长编码打印出来 36JVnW;
4.12 写程序把变长编码打印出来 WIXzxI<)
4.13 前缀 (0x26 0x2e 0x36 0x3e 0x66 0x67 0xf0 0xf2 0xf3) y6'Fi(2yw
4.14 写程序处理前缀 l^ni"X
4.15 写程序处理前缀 GBvB0kC) c
4.16 组编码 (0x80-83 0xc6-0xc7 0xd0-0xd3 等等) =YBwO. !%
4.17 写程序处理硬编码 UM7Ft"
4.18 0F开头两个字节的编码 !arcQ:T@G
4.19 编写反汇编引擎 l!\C"f1o,
4.20 VMP的核心解释器基本原理 $"T1W=;j9
EA2BN}
tnbaU%;|J
项目:反汇编引擎,解释器框架 L1`^~m|
6g!#"=ls;
|v8 >22y
9Ps:]Kp!vN
!&TbE@Xk
第五章 Win32 API (只要是项目,都会调用API) 2500元
U KF/v
5.1 文件操作 :Tw3Oo_~S
5.2 内存管理 qFW-
~T
5.3 进程线程 h[3N/yP
5.4 线程同步 =/J4(#Xb
5.5 进程间通信 YL&$cT]1
5.6 网络通信 ;)[RG\
5.7 未公开API的使用 VG+Yhm<SL
C/e`O|G
BD,JBu]
jHBn^Nly
7|T<dfQk
第六章 PE 3500元 =2bW"gs
I
学习PE的好处(加密解密,写壳,脱壳,注入,重载操作系统) JGSeu =)
6.1 PE有哪些结构1 uJMF\G=nb
6.2 PE有哪些结构2 ~R/7J{Sg
6.3 为什么要有节表,节表有什么好处 <"/Y`/
6.4 PE 磁盘拷贝到内存 (写程序) AynWs5|z=
6.5 PE 内存拷贝到拷贝磁盘,存盘(写程序) Eszwg
6.6 怎么给PE添加一个节 8[,,Kr)-
6.7 PE扩大节有什么好处 bOux8OHt*
6.8 PE合并节有什么作用 Q
<zL;AJ
6.9 PE 输入表 (写程序打印输入表) fu9
y3`
6.10 PE 输入表 (写程序打印输入表) BgD;"GD*W
6.11 PE 输出表 (写程序打印输出表) GC H= X
6.12 PE 输出表 (写程序打印输出表) .txgb
6.13 PE 重定位表 4r-jpVN~
6.14 修改OEP 弹出MessageBox jt
tlzCDn
6.15 添加节,拷贝一段函数进去 OnF+
6.16 病毒的框架 ('W#r"
6.17 病毒是如何在函数入口植入的 eg)=^b
6.18 病毒是如何写入PE的 6 -gx ba
6.19 DLL应用及书写方式 {O#=%o[
6.20 UPX壳的源码及其运用 B+ GPTQSTb
6.21 加密壳原理和方式 WW@/q`h
项目: 手写PE分析工具LoadPe E@"+w,x)
<!K2xb-d^
进阶篇
b`E0tZcJ
先复习 前面的基础篇的知识,然后写一个解释器完整版(20天) ZP*Hx
%U
v*QobI
{ LJwW*?
第七章 保护模式(段寄存器)(2个多月) 5000元 6<NaME
7.1 段寄存器构成 W$N_GR'4
7.2 保护模式 GDTR IDTR X.,SXNS+B
7.3 GDTR,IDTR均为48bit结构体 5bv(J
T
7.4 超线程与多核 Uk-^n~y
7.5 保护模式 获取段寄存器的值 H0
km*5Sn
7.6 保护模式 GDTR.ATTRIBUTES qD
hz|a#
7.7 保护模式之修改段寄存器 1;SW%\M
7.8 保护模式 调用门 5h+g^{BE
7.9 保护模式 中断门 陷阱门 M\,0<{
7.10 保护模式 CS:EIP 5)V J
7.11 保护模式 RETF,IRETD )& %X
AW{
7.12 保护模式 门Dword Count =]\,I'
7.13 保护模式 任务门 :cG_aOkid
7.14 保护模式 3环进1环 sqei(OXy
7.15 保护模式 10-10-12 分页 nWbe=z&y8[
7.16 保护模式 PDT PTE 0Apdhwk~
7.17 保护模式 页的特点 ~y_TT5+3
7.18 保护模式 TLB m}]"TFzoVM
7.19 保护模式 异常与保护 =bZ>>-<
7.20 保护模式 2-9-9-12 k x6%5%
7.21 保护模式 CR0~CR4 `BMg\2Ud*
7.22 10-10-12和2-9-9-12分页转换 @8|- C
7.23-7.30 编写CE与内存搜索工具(VT引擎) W )q^@6[d
c_O|?1
第八章 操作系统 (本阶段较枯燥,将通过录播+直播答疑的方式进行) 5000元 ;yY>SaQ
本章主要讲解及应用于:驱动保护,系统保护,游戏保护,底层开发,系统架构,架构师,引擎开发等… <y6M@(b
8.1 操作系统 模拟线程切换 ;QW6Tgt11
8.2 操作系统 进程线程结构 v(FO8*5DZ
8.3 操作系统 进程线程链表 ep3_G\m
8.4 操作系统 TEB PEB N|z-s
8.5 操作系统 kpcr 结构 odny{ePAf
8.6 操作系统 TrapFrame 结构体 eek5Xm
8.7 操作系统 SSDT 表 rgB`<[:b
8.8 操作系统 驱动详解 5IBe;o
8.9 操作系统 swapcontext函数 xRP#}i:m
8.10 操作系统 SwapContext函数 /t%IU
8.11操作系统 ntReadVirtualMemory ??aOr*%
8.12操作系统 kiSwapThread '_g8fz
3
8.13操作系统 kiWaitListHead jbn{5af
8.14操作系统 对象句柄及线程等待快 #_QvnQ?I
8.15操作系统 线程等待机制 engql;
8.16操作系统 等待块及SetEvent 函数 {_ww1'|A
8.17操作系统 keWaitSingleObject函数 WHvN6
8.18操作系统 APC机制 so8isDC'9
8.19操作系统 kiDeliveApc @YU}0&