|
|
现在的网络在线教学会教你写驱动、写应用层代码、写界面、还会教你玩逆向、以及一些调试技巧。但在安全软件开发领域,却没有教程会教你从实际的项目角度去切入,如何灵活的应用这些知识,最终打造一款安全产品出来。它涵盖了通过对安全趋势感受选择方向,确定后分析威胁(分析大部分样本)归纳其共性后,进而推导出防御思路,单调的防御思路还不足以形成产品,此时需要思考还需添加哪些功能才能使其足够成熟,能够满足基本产品级要求。再对所有功能进行归纳划分,最后产生成熟的架构。再根据架构开始进行驱动、应用层、界面的代码编写,这中间踩过的坑,遇到的坎,都将为大家呈现。看到这里,估计你的心中也有点了然了。
~$ y! z4 A' d) W6 A) ?" c4 Y' G课程内容:
+ l6 |: X( R" |, o* t1.1 课程简介
/ d) j: A, z2 o; w/ n1.2 预备知识与学习方法
+ h& O( g: K c4 t+ N5 H- t1.3 勒索病毒流行原因分析/ k9 u- p/ L. V4 Q A! E
1.4 我的防勒索演进过程! n$ C; O4 b9 @8 n; M6 s
2.1 功能的添加、细化与补充! |( n8 P$ Z& F( }
2.2 细化功能的归类与整合! d, A) v3 o9 K1 o* G+ U! |) M" x
2.3 最终架构与核心流程- g A. O) P- R+ N8 |8 v; u+ Z
2.4 终结者源码编译:
% J1 ]+ v6 g v6 _6 r& V3.1 Windows服务程序标准框架讲解
) y$ E. N" w! b: D3.10 服务与界面通讯的初始化流程
G. M1 B, x. s( b1 f' D3.11 通讯建立及配置更改流程讲解; j- `; f" B+ y$ g& a/ V
3.12 威胁与无响应消息回调流程* q+ u! U' Q e! \4 \* K! p
3.13 心跳消息流程与关键点回顾: y3 F4 c; C% H/ h0 P
3.14 诱饵文件与清除接口源码讲解+ M' h/ ?% U2 L4 [6 J! c
3.15 驱动接口与杂项源码讲解% S9 E- C, D( ?0 E5 `, C. Y" }* a% j
3.16 缺点分析与重构建议9 e! P7 _9 r# E: ]/ P0 r
3.2 Windows服务程序排错技巧# W# _$ f. @$ ~4 [) ~ x# @9 B
3.3 安全产品DLL导出表处理
; |) [9 d# ~: v6 T! h3.4 终结者接口、开发与阅读流程
; v, y' m# @1 {% V/ i# I3.5 服务主线程与三种启动流程
( {; Y1 P. E% L2 j8 o3.6 配置文件的处理
+ }" z6 }% T8 {0 V$ Y/ Y0 ^0 {3.7 核心配置文件类的源码解读
" r4 P. Y* Z# b+ |3.8 服务创建进程之逆向工程
- X) [- C7 J$ g$ M, q& l" c' `$ T3.9 服务创建进程之扒后处理
1 @8 l0 S+ i3 j( `- X+ m# K+ v3 @4.1 驱动接口模块的初始化流程 A# z6 L! k) ~1 q4 D
4.2 驱动握手算法与接口讲解
| N1 S6 \5 g5 p4.3 回调流程与接口说明
8 x) D. X4 m' }5.1 驱动开发环境的选择与搭建
' j9 R0 d0 M# I* e: H' Z% l5.10 如何安全的进行HOOK卸载: m- ~9 z) q: o0 I; I
5.11快速理解SFilter框架
/ w2 q: v. B m2 E8 Z5.12 终结者驱动框架与功能概述! [1 Q" A3 f& M" D2 J4 U) V: r/ B
5.13 RWTBase框架与例程处理 ?) a; H" f6 A t0 F* w
5.14 MBR保护与函数导出
/ x$ D" r& g6 d% `8 E5.15 RWTKrl驱动入口点执行流程% B3 P) m6 ], i) n
5.16 系统重启时RWTKrl保护配置的读取流程
" w& B0 A! ]) m0 l2 h3 h5.17 规则的数据结构及其运作方式. a8 l- |% s4 P4 W0 W
5.18 GenericTable在驱动中的使用( V; e$ f( U k1 E' J. l3 G
5.19 威胁回调消息的运作流程+ {* ?6 B: r% ]# y- \
5.2 WinDbg内核调试初步
" X7 X" C; H. G v; t2 @5.20 _ExInterlocked_XX_List在项目中的使用
1 }5 M/ b7 U b4 V* V3 E5.21 自我保护的运作流程# w( B6 t! z+ z: p9 v' Y: ?
5.22 Create分发函数的处理流程
) }) y6 b. ]( u6 N& k% j9 h5.23 SetInformation分发函数的处理流程' `; I3 a; |0 S; r1 ^* ^) D
5.24 其它分发函数的处理流程9 N0 [- c+ Z# n) B- G2 T
5.25 备份的核心逻辑与初始化. S5 I7 T7 Q! V( G1 U
5.26 备份核心逻辑的具体实现; g2 f) ^1 p A9 b; [' S) D( }
5.27 获取备份信息的具体实现
& E8 y, N5 w" D& W. `5.28 备份接口与其它杂项说明
( b9 V5 _+ [( z+ ]+ y; R2 x5.29 驱动部分的课后作业
; W! G8 g) X& o. E4 ?+ V% x: T5.3 WinDbg内核调试实践0 w3 U; P0 B/ r; J
5.4编写Windbg脚本来达成调试目的& y7 o- v& U7 l6 q
5.5 使用Verifier验证驱动稳定性. X) u3 K( y8 @6 ]& L( ^
5.6经典HOOK与异常捕获+ a7 ?% F/ Z4 ~) d! ?' @) c" Y
5.7 安装HOOK的注意事项( ~$ y# _7 K6 E; W% H
5.8 InlineHook的各种大法(一)9 F( G' f& h4 d3 x( r
5.9 InlineHook的各种大法(二)9 D4 Q* p, x2 a" H
6.1 清除模块的初始化与还原点/ U4 n/ ~% E @3 T1 L" g
6.2 还原清除的运作流程7 v0 J }& \$ S! v8 a
6.3 清除模块其它功能梳理与课后作业
( Y; Q f. O4 d6 s' O& m3 k( u6.4 守护模块的运作流程与课后作业
/ t# s) j/ S+ P7 T9 }; S5 P7 }+ M7.1 界面进程的几种启动流程0 a$ z3 U, w" I/ e7 ]
7.10 界面的整体框架梳理
( y7 G! H: U! G; _. u( m; Z3 {7.11 左边树形控件的布局与源码剖析. P5 N8 B o$ q* R& _1 g
7.12 摘要页的布局与源码剖析8 }& J( k# F1 j; a( z
7.13 陷阱设置页的布局与源码剖析6 I" o, m- C* T* m* I
7.14 备份设置与类型管理页的源码剖析
9 a" x8 b4 W7 D7.15 文件保护管理页的布局与源码剖析2 }, t9 o( G( z
7.16 备份文件导出页的布局与源码剖析- J) z% X3 G. \" c" `( P
7.17 手动清除页的布局与源码剖析" j+ ? K6 |, C; e+ H
7.18 清除日志页的布局与源码剖析
~/ o X5 P, r& \5 M. L7.19 威胁警报页的布局与源码剖析
4 Z" o/ X f3 V7 A3 V7.2 SOUI生成的框架代码剖析. \/ r7 i8 \/ ~
7.20 文件保护回调页的布局与源码剖析) D8 F/ e/ \$ [8 @
7.21 其它页面的布局与课后作业
9 ` ?2 y J U7.3 SOUI中图片资源与对话框的使用方法
, {5 ~2 A9 I- m7.4 SOUI的锚点布局与TabCtrl控件
& u& ?. A' w" B$ l1 b+ t7.5 SOUI中编写自定义控件
( h- ^% b0 a: P7.6 保护密码引导页的布局与源码剖析
; T$ Y5 d- U1 C7.7 备份磁盘选择引导页的布局与源码剖析`8 m( i5 o7 c8 G' Q/ d# _1 k) P
7.8 备份文件上限引导页的布局与源码剖析: G" }+ I; s0 t0 y
7.9 其它引导页与第一次正式启动流程
0 \) W$ [5 G$ Y9 C- Z8.1 卸载程序的运作流程!
0 e2 V! b& V0 k8 q! d8.2 安装包的页面布局与杂项说明
. m/ v& H( Z9 V( S1 D0 R: o* Y8.3 安装包的运行流程与源码剖析
/ Y& v0 f g& h+ H- \& B5 ]8.4 遗留问题与课程最后的话* z+ [$ x# w2 G ~
! L1 W# c9 k6 K! o
|
|