|
现在的网络在线教学会教你写驱动、写应用层代码、写界面、还会教你玩逆向、以及一些调试技巧。但在安全软件开发领域,却没有教程会教你从实际的项目角度去切入,如何灵活的应用这些知识,最终打造一款安全产品出来。它涵盖了通过对安全趋势感受选择方向,确定后分析威胁(分析大部分样本)归纳其共性后,进而推导出防御思路,单调的防御思路还不足以形成产品,此时需要思考还需添加哪些功能才能使其足够成熟,能够满足基本产品级要求。再对所有功能进行归纳划分,最后产生成熟的架构。再根据架构开始进行驱动、应用层、界面的代码编写,这中间踩过的坑,遇到的坎,都将为大家呈现。看到这里,估计你的心中也有点了然了。
; p! A% M* J# k5 @. C) U0 L0 k0 M课程内容:
# |- \* Z& K0 A$ ~$ D7 g1.1 课程简介
4 G: S3 f; D) z1.2 预备知识与学习方法
* r( s4 L8 J7 z! k1.3 勒索病毒流行原因分析0 G n, M% l) R* ~" E4 N
1.4 我的防勒索演进过程
' i( N# O" `- [* D2.1 功能的添加、细化与补充& b, Z! w2 V( x; h. w4 d- b2 t
2.2 细化功能的归类与整合
3 f% m6 ]4 i7 s4 `) F2.3 最终架构与核心流程6 X: b0 \& c6 B9 S' b
2.4 终结者源码编译:
9 [# ]5 M8 t& v' [1 @6 b3.1 Windows服务程序标准框架讲解; f6 n0 |4 _4 m
3.10 服务与界面通讯的初始化流程
# y5 _7 t; G) Q3.11 通讯建立及配置更改流程讲解
! R [! s2 `; [ A# B: R1 q3.12 威胁与无响应消息回调流程
- H+ @- s' R9 o/ X! ^3.13 心跳消息流程与关键点回顾4 z& Q& q, H' z/ W& I
3.14 诱饵文件与清除接口源码讲解, g- j& J' [9 V3 b
3.15 驱动接口与杂项源码讲解
( y0 q3 |+ @' L% a$ l( k3.16 缺点分析与重构建议, B& H0 v7 I' I9 j! h
3.2 Windows服务程序排错技巧7 C6 e1 Y U" C9 ^: W) n
3.3 安全产品DLL导出表处理' R: n; Q0 [) P$ W9 j5 }+ K$ o% F% m
3.4 终结者接口、开发与阅读流程
$ M8 R# L0 M+ z, o6 X2 S$ ]3.5 服务主线程与三种启动流程4 U* N0 i4 }- n( g |; X7 ?9 o
3.6 配置文件的处理
* `. a* S! U! N9 d }( r3.7 核心配置文件类的源码解读, s }7 V6 k7 V$ A5 v+ ~2 `
3.8 服务创建进程之逆向工程
/ t2 m4 D1 D( g) m3.9 服务创建进程之扒后处理8 y0 K: v6 k' |3 ?
4.1 驱动接口模块的初始化流程8 E& x) |8 w: d2 ^' z1 w* [) ~
4.2 驱动握手算法与接口讲解+ I( f0 s+ Q1 D7 F: \ r
4.3 回调流程与接口说明! q: A& g. z, m( s x$ t
5.1 驱动开发环境的选择与搭建- i) R/ b4 U- l* B
5.10 如何安全的进行HOOK卸载% K* }" Z* w0 b& j- c* E
5.11快速理解SFilter框架
- h8 M8 { M! N9 F5.12 终结者驱动框架与功能概述' T8 z& }. t8 s" h r. j: K
5.13 RWTBase框架与例程处理1 f! B; _7 J* {) {, J# q+ N
5.14 MBR保护与函数导出
& Y$ ?: x7 @) { A5.15 RWTKrl驱动入口点执行流程
- U, J8 h6 P* S/ [! Y5.16 系统重启时RWTKrl保护配置的读取流程$ c, m3 `1 n" }& e, N
5.17 规则的数据结构及其运作方式
6 e3 k7 Q% \6 U5.18 GenericTable在驱动中的使用* c9 F6 ^" g/ x7 Z+ F1 T4 v
5.19 威胁回调消息的运作流程9 ~& V1 q6 [/ \7 \
5.2 WinDbg内核调试初步# z' r* M/ y2 T
5.20 _ExInterlocked_XX_List在项目中的使用
9 w; C4 z5 C g% \* F, Y9 i! Q# v7 u5.21 自我保护的运作流程9 Y4 F" G% i5 x8 H
5.22 Create分发函数的处理流程
& U* ]: K G# a/ `0 c. c5.23 SetInformation分发函数的处理流程# s4 F H$ x8 R) V6 P( o
5.24 其它分发函数的处理流程
- r9 x& h6 g4 R8 V' N/ s3 r; ?5.25 备份的核心逻辑与初始化
$ b5 e2 G E$ c+ q+ ]2 R% _5.26 备份核心逻辑的具体实现& Z) Q5 R3 a) P% Z/ M9 ?
5.27 获取备份信息的具体实现
" j3 [4 w4 E; z5.28 备份接口与其它杂项说明
8 N1 B V" W, c- n+ u5.29 驱动部分的课后作业) Y7 c1 ~" _- x+ s$ G p
5.3 WinDbg内核调试实践- s3 b) i. F/ s- A- Q2 K" Y
5.4编写Windbg脚本来达成调试目的
- \. b, {2 f$ o# w; X5.5 使用Verifier验证驱动稳定性
) h! c( _# W6 a' l- e5 U5.6经典HOOK与异常捕获3 w- ~. o) L H' @( {: I' w, W' {
5.7 安装HOOK的注意事项
6 M/ W5 r1 n0 h$ [5.8 InlineHook的各种大法(一)% m8 t, d$ F" }( q% i5 r
5.9 InlineHook的各种大法(二)
7 B) ]8 N( F; ?4 H, A: I4 T6.1 清除模块的初始化与还原点4 ~# q' r p, x# ^$ Q7 f
6.2 还原清除的运作流程+ z' D, `- n" o7 ]
6.3 清除模块其它功能梳理与课后作业
2 C8 v g+ \/ M) V: x, Z6.4 守护模块的运作流程与课后作业
- [ E( B" a+ ]5 v y7.1 界面进程的几种启动流程
* N6 `4 a1 F y8 _7.10 界面的整体框架梳理/ a X- x/ T& f' f. }
7.11 左边树形控件的布局与源码剖析
" a/ H, d0 \/ }. g7.12 摘要页的布局与源码剖析! \1 ~! a1 h1 f. @7 j6 k, Z
7.13 陷阱设置页的布局与源码剖析
% N- I: x }: P7.14 备份设置与类型管理页的源码剖析
* x! S# i1 j% S* U7.15 文件保护管理页的布局与源码剖析9 r3 y+ }3 i& ?6 ]7 X# J
7.16 备份文件导出页的布局与源码剖析
4 r. Z4 ~, g6 S+ {! O; ]) k6 j# U7.17 手动清除页的布局与源码剖析
5 f3 S2 A! G. p( T( i$ S$ e7.18 清除日志页的布局与源码剖析
$ V: ~' B1 F5 n5 B6 N* X7.19 威胁警报页的布局与源码剖析
( @% e) u- C1 {$ K& i7.2 SOUI生成的框架代码剖析3 n) X. \6 E( v1 Y
7.20 文件保护回调页的布局与源码剖析4 k) o6 }- @. Y, z* }
7.21 其它页面的布局与课后作业, | c: m- b' |& E/ `' v8 A
7.3 SOUI中图片资源与对话框的使用方法9 `! c7 A- c9 c/ { s
7.4 SOUI的锚点布局与TabCtrl控件
, J$ e1 E; Y7 D S% \: [0 ~7.5 SOUI中编写自定义控件
# C! l0 m( d0 r, U+ g7.6 保护密码引导页的布局与源码剖析# ^* ?4 |1 @+ v- e/ Q5 i: l& ]
7.7 备份磁盘选择引导页的布局与源码剖析`9 T+ X$ _& V4 s5 z) d/ W# F
7.8 备份文件上限引导页的布局与源码剖析$ M5 X! K* f; H: P3 j( k) _
7.9 其它引导页与第一次正式启动流程
1 N* U, D+ C0 H/ ]* e' h3 a1 K8.1 卸载程序的运作流程!) r8 b2 e7 K$ q1 o8 |0 V
8.2 安装包的页面布局与杂项说明
1 ^* s8 E# V: \9 E; w: H' Q8.3 安装包的运行流程与源码剖析
* ~, d% z2 c _- R3 O8.4 遗留问题与课程最后的话 ~& J2 p# T0 f% `, m0 r" g
9 U* ^6 R/ G! Y( J" X5 y$ M
|
|