|
|
现在的网络在线教学会教你写驱动、写应用层代码、写界面、还会教你玩逆向、以及一些调试技巧。但在安全软件开发领域,却没有教程会教你从实际的项目角度去切入,如何灵活的应用这些知识,最终打造一款安全产品出来。它涵盖了通过对安全趋势感受选择方向,确定后分析威胁(分析大部分样本)归纳其共性后,进而推导出防御思路,单调的防御思路还不足以形成产品,此时需要思考还需添加哪些功能才能使其足够成熟,能够满足基本产品级要求。再对所有功能进行归纳划分,最后产生成熟的架构。再根据架构开始进行驱动、应用层、界面的代码编写,这中间踩过的坑,遇到的坎,都将为大家呈现。看到这里,估计你的心中也有点了然了。1 u% D+ _/ Z% m4 F
课程内容:
$ B1 G+ o1 F& M4 X! O1.1 课程简介
* z2 k9 s) I* \; Y1.2 预备知识与学习方法
% }* h. `1 o4 W" {- R% m! }1.3 勒索病毒流行原因分析8 s, D9 D& _ `! [1 O, Z( v/ y6 L
1.4 我的防勒索演进过程& m+ q+ }; k2 l
2.1 功能的添加、细化与补充: u* S. [! I/ k7 q9 p4 }' m* p+ ~
2.2 细化功能的归类与整合
1 O( Y3 F7 v2 S+ o5 T1 r; h2.3 最终架构与核心流程( x5 \& b; k6 w/ g+ p/ ?
2.4 终结者源码编译:
4 p# r0 Q; r, G8 u: i* k2 ]% T# ^3.1 Windows服务程序标准框架讲解& W) g3 g) l$ M5 P0 E& A5 f9 L3 }
3.10 服务与界面通讯的初始化流程8 o. s% C7 U/ J0 u/ O. t+ e
3.11 通讯建立及配置更改流程讲解
9 g8 ]) ?% ^( P8 ^; N E) D$ V9 v3.12 威胁与无响应消息回调流程
* F/ t6 d" S: @9 K# n+ X( C% Z3.13 心跳消息流程与关键点回顾: ?# K8 p7 K' B& N
3.14 诱饵文件与清除接口源码讲解
' w& X# n" d& t: _1 S3 |1 Z5 K3.15 驱动接口与杂项源码讲解' x' l! K1 `" E9 J1 a( \7 v5 [
3.16 缺点分析与重构建议
2 J$ g' q _" } M( t t9 `/ y3.2 Windows服务程序排错技巧% g, w5 p u' P) }2 [ \. w
3.3 安全产品DLL导出表处理/ N# X4 r* [$ i' P5 i. L Q
3.4 终结者接口、开发与阅读流程' M1 C$ w- y( p: l
3.5 服务主线程与三种启动流程" D# h' U3 i+ u% {, `7 a8 Z' e
3.6 配置文件的处理
! ^& p4 `7 z' }# W! ~: u2 i3.7 核心配置文件类的源码解读6 `4 \4 d: @ O0 B9 y9 i" j
3.8 服务创建进程之逆向工程
# O" G# d, m, v3 p, b7 i$ ^9 Q3.9 服务创建进程之扒后处理
- N0 m' M* _/ f3 Z$ ~4.1 驱动接口模块的初始化流程
8 B4 N( D3 W; c0 U2 K( `- Z3 L4.2 驱动握手算法与接口讲解
* q0 L( M7 d5 Q) @2 p4.3 回调流程与接口说明
8 F, V1 L8 y; P5.1 驱动开发环境的选择与搭建* l# }6 {: u9 {8 Q1 a
5.10 如何安全的进行HOOK卸载% w% p5 `2 j# C* V% A7 m
5.11快速理解SFilter框架
! `, N$ @3 d$ I$ F" D5.12 终结者驱动框架与功能概述
$ s* \* G, d: S/ u3 S5.13 RWTBase框架与例程处理/ n! f4 m! ^% F7 m
5.14 MBR保护与函数导出% V$ _5 y P, w' O
5.15 RWTKrl驱动入口点执行流程2 L D6 v" y3 a+ x
5.16 系统重启时RWTKrl保护配置的读取流程' T% R4 E0 ?8 d/ w" e, ?4 g
5.17 规则的数据结构及其运作方式
! p u' \3 Q7 P1 o# ^; ]9 K. F5.18 GenericTable在驱动中的使用
7 b( q2 w6 n- x! I# R5.19 威胁回调消息的运作流程
: g7 v5 ^' N) J- H% }0 A) w2 Y, c5.2 WinDbg内核调试初步2 P# C$ U: j6 p3 ^1 b2 W. f8 a
5.20 _ExInterlocked_XX_List在项目中的使用
' V1 [9 G8 F( A0 `5.21 自我保护的运作流程
6 `5 `. T# S+ R; @$ m+ R, ~- I5.22 Create分发函数的处理流程
% W0 [6 s% B$ h+ y: M y5.23 SetInformation分发函数的处理流程
; S+ A6 M4 P$ Q% |7 e5.24 其它分发函数的处理流程3 X) D7 Q& l& W- c$ W# v2 \
5.25 备份的核心逻辑与初始化
# I( o) G, h7 k U0 W( s. \5.26 备份核心逻辑的具体实现
/ @8 m: U8 B& X: T, A/ l- X5.27 获取备份信息的具体实现
* i4 c1 O# p' }/ S/ t5.28 备份接口与其它杂项说明9 ~8 {* V% S# X" A* m6 L. V; c# F- m' p
5.29 驱动部分的课后作业4 O1 I! J# X! v0 N/ j
5.3 WinDbg内核调试实践( o/ i4 K: X! L6 Y
5.4编写Windbg脚本来达成调试目的0 W1 R& d) [1 H# g
5.5 使用Verifier验证驱动稳定性1 _8 t5 L- k/ e4 U& b& @ s8 L
5.6经典HOOK与异常捕获' d/ ~4 G l. {* D$ f
5.7 安装HOOK的注意事项
2 y5 D. M, y/ D3 `9 N$ o+ F5.8 InlineHook的各种大法(一)8 B, K6 D+ D9 J) o
5.9 InlineHook的各种大法(二)4 s8 y' t& H* A1 ?
6.1 清除模块的初始化与还原点; Q! s- v- b, \
6.2 还原清除的运作流程; p7 L( O0 |* {7 V* T' f- D
6.3 清除模块其它功能梳理与课后作业7 q0 ^! E# g7 r
6.4 守护模块的运作流程与课后作业
+ R% |0 n1 |' K+ L! c7.1 界面进程的几种启动流程# p8 R1 N5 }! v' R; l
7.10 界面的整体框架梳理
, z- J5 p0 C' B7.11 左边树形控件的布局与源码剖析/ V$ p9 F, m L. G
7.12 摘要页的布局与源码剖析
$ Q# Y3 ^+ ^/ f% c/ W0 ~5 K% i7.13 陷阱设置页的布局与源码剖析
' _* @, o7 G [+ ^7.14 备份设置与类型管理页的源码剖析
+ l. j0 `+ B3 o% O/ b$ h7.15 文件保护管理页的布局与源码剖析6 l% B% }/ B f I8 H6 A: z* H( j" L
7.16 备份文件导出页的布局与源码剖析
. d3 p4 V% X- b/ y+ l# f A! j/ z2 \7.17 手动清除页的布局与源码剖析
# ?* B6 x9 p/ R) F) _, F* m7.18 清除日志页的布局与源码剖析
5 i+ i& @2 `" H0 S( I7.19 威胁警报页的布局与源码剖析
1 L% z( U% S1 v2 V- `7.2 SOUI生成的框架代码剖析
0 s/ }, k- b0 l9 j! G7.20 文件保护回调页的布局与源码剖析
! R" J: i u3 R7.21 其它页面的布局与课后作业9 _/ ^; S2 y6 [8 ~0 l' I2 C4 x/ M
7.3 SOUI中图片资源与对话框的使用方法6 v) Q$ G T2 }% \0 u8 [
7.4 SOUI的锚点布局与TabCtrl控件
+ w% s6 P! U3 D9 b, X, G' x, c7.5 SOUI中编写自定义控件
8 I g; k9 ~: n" ]7.6 保护密码引导页的布局与源码剖析
1 Z$ h; W- P; L W# F1 [# D7.7 备份磁盘选择引导页的布局与源码剖析`- M0 }; n: I0 l8 |7 q
7.8 备份文件上限引导页的布局与源码剖析
6 E- h( i& m; C1 M" v' {7.9 其它引导页与第一次正式启动流程" T" f+ m) u: ^
8.1 卸载程序的运作流程!
4 R' V! p0 T- j) [/ t* e8.2 安装包的页面布局与杂项说明
4 n0 e3 [8 P3 `8.3 安装包的运行流程与源码剖析
2 S. ~# Q9 {# A4 U8.4 遗留问题与课程最后的话# t% T1 b( F1 s( U0 y4 ^, _+ N% c
& r s2 N, Y% }# [+ I
|
|