|
windows驱动开发课程
* E: S6 g$ Y$ U2 e* p2 y├──第0章
8 }9 S2 @. x$ A7 d' @9 u0 k| ├──0-1 VKD两分钟建立双机调试.mp4 92.28M
3 ?' Y# V M+ j4 X. u| ├──0-2 Windbg双机调试基础操作.mp4 85.55M6 c6 `7 u: q7 R4 d7 p( W6 K
| ├──0-3 WDK按照和第一个驱动编写.mp4 72.90M
1 g: ^8 _, Y- L' Q4 d! ?| ├──0-4 Windows进程的概念.mp4 96.49M% ^& o0 F$ K4 B3 i: V9 `" B
| ├──0-5 Windows线程和KPCR的概念.mp4 65.58M
& F3 v7 S0 Z; B* t& l8 u| └──0-6 句柄和内核对象以及Windows系统构架.mp4 145.59M
) D# u4 P k+ C' O1 J+ }, K├──第八章 9 v, {% B4 s# D F
| ├──[Lab]8-1 PUBG自建调试测试.flv 20.75M2 Y# D$ c9 s0 {6 p- I4 M1 q
| ├──[Lab]8-2 最精简调试体系重构原理讲解.flv 90.50M
) Y1 _5 ]- j9 I| ├──[Lab]8-2 最精简调试体系重构原理讲解.mp4 93.32M
9 c/ X- i- I" S+ q| ├──[Lab]8-3EzPdb符号文件解析免去特征码搜索.mp4 144.66M8 r2 L$ V$ |% E; ]( M7 R
| ├──[Lab]8-4 调试自建utils、ptehook、hideprocess、bypass回调模块源码讲解.flv 123.96M( G7 S" ^% s9 U$ ?0 x
| ├──[Lab]8-5 重写调试函数的思路以及DebugPort放置问题.flv 159.38M- s% \1 q- S+ |& c1 R, [' V
| └──[Lab]8-6 Hook函数CET机制以及通信和重构调试通道的优缺点以及展望.mp4 227.77M
8 t; E0 Q, _5 ?├──第二章
6 F3 T6 A9 O. f. P( ^( h| ├──实验 * X# X* |1 ?9 P6 {5 b6 X0 B
| | ├──[Lab]2-1 本章实验成品演示.mp4 79.79M
; F$ G2 i5 E0 G| | ├──[Lab]2-2 驱动中设置InstCallBack.mp4 150.91M4 S; u$ U6 t( q- {) b( W6 [
| | ├──[Lab]2-3 PE结构和内存注入的原理.mp4 102.57M1 c, l) v% {0 \" Z
| | ├──[Lab]2-4 PE节区拉伸.mp4 160.95M
& D) ~, V' I& r+ J+ ~* c g$ ^4 w| | ├──[Lab]2-5 如何无痕地执行ShellCode.mp4 50.03M
" g* G2 p5 ~! t# `3 t; {| | ├──[Lab]2-6 ShellCode重定位IAT TSL.mp4 78.62M" ^- j2 l, B6 m1 j
| | └──[Lab]2-7 注入成品代码阅读以及容易踩坑的地方.mp4 85.01M
' b& u! k z5 X# y3 n* W| ├──2-1 第二章概述.mp4 23.42M
6 N) A* N2 Z0 i9 v1 }; k' J* S| ├──2-2 线程内核栈布局以及Ktrap_frame.mp4 240.04M
: _" E* a7 w, C* Y0 [| ├──2-3 Ktrap_frame的作用以及nt!Zw和nt!Nt的区别.mp4 246.58M
* I( a5 b0 Y) F0 j& ]| ├──2-4 SSDT表函数寻找以及过滤表和GUI线程的转换.mp4 229.08M( J6 s6 v5 O3 e- @% Q
| ├──2-5 系统调用参数的复制并浅谈ETWHook.mp4 115.63M
) Y+ a' ~4 M0 ^* g: q* l3 o| ├──2-6 Apc派遣和InstCall回调.mp4 159.72M
# ~# E6 ?$ w& ~| └──2-7 PCIDE和KPTI.mp4 134.56M4 p, H" g5 c8 x: C
├──第六章
7 ^0 E2 g0 M/ t; f| ├──6-1 异常和中断的区别.mp4 62.99M1 o( m/ B: F7 a! N2 W
| ├──6-10 VEH简介与使用.mp4 127.03M( a' L* L+ A+ Y) o+ @0 f
| ├──6-11 VEH派遣过程逆向.mp4 335.08M
. f& |. t5 |6 G| ├──6-2 处理器APIC架构和中断的类型.mp4 63.70M
8 t1 n7 A: Y, ^: r" ^| ├──6-3 异常的分类和#DF触发.mp4 122.85M
B" T& \% B4 Z7 N! K# x8 u) O" k| ├──6-4 中断向量号和描述符.mp4 124.32M
0 N9 h: F) O+ h| ├──6-5 中断优先权和IRQL.mp4 137.55M
% j: z! O6 e* P+ D" r ~| ├──6-6 IRQL深入解析以及实验验证.mp4 291.59M& I* J/ e: A' k5 H& V* [
| ├──6-7 从IDT函数到KiDispatchException的分析.mp4 106.48M
# C8 c5 }3 V$ m$ |& n! {/ Q& T" m8 `| ├──6-8 内核模式异常派遣流程.mp4 133.85M$ }. g& L" p- E) `+ }( j3 K
| ├──6-9-1 用户模式的异常派遣流程分析.mp4 106.68M
+ C4 K+ r5 K `3 r6 ?| ├──6-9-2 用户派遣异常的堆栈提升.mp4 10.40M
; U3 c1 e. F9 T V0 H: ?4 v| ├──[Lab6-1]超级VEH演示.mp4 96.97M
3 h& K' Z! k) z" l; [% f! c| ├──[Lab6-2]超级VEH的原理.mp4 42.13M5 v4 b; i J* h- S) d
| ├──[Lab6-3]shellcode编写.mp4 148.61M
* Y1 }% _8 {' E, @ a) v! \| ├──[Lab6-4]设置超级VEH代码编写.mp4 158.34M8 _" X6 n# Q1 G
| └──[Lab6-5]超级VEH先于普通VEH接管测试.mp4 257.23M4 @( J4 v5 O9 y! F t, i, l
├──第七章
+ ?6 F3 h, t& y4 g8 ^8 ]| ├──7-10 异常调试的过程以及线程逃逸的原理.mp4 137.94M
8 R: H9 H8 F1 b% F9 a5 \| ├──7-11 调试原理.mp4 60.93M
" Q0 Z" S9 L4 ^. ?; Q) Y: _4 `| ├──7-1Windows下调试器和被调试进程是如何工作的.mp4 121.63M% J! K: D0 t7 M5 Q' C
| ├──7-2 调试器附加和 创建调试对象逆向.mp4 203.31M
3 t" }* ?" m: c' `, h% Z. m| ├──7-3 NtDebugActiveProcess调试对象挂入被调试进程过程逆向.mp4 153.23M
4 o3 x& f* b S9 K| ├──7-4 DbgkpPostFakeProcessCreateMessages 发送假消息的逆向.mp4 228.29M+ G% }" ? K6 ~. h c1 a
| ├──7-5 DbgkpQueueMessage逆向以及等待体系.mp4 292.68M6 D+ e3 a( q$ m; E
| ├──7-6 DbgkpSetProcessDebugObject干了什么.mp4 100.81M
& z* g; K8 m' \ Z `1 T# h" O| ├──7-7 调试器等待R3层逆向.mp4 131.84M3 v* C, n4 T% o* e. k$ z- t
| ├──7-8 调试器等待R0逆向.mp4 190.79M: f$ U) O4 j! R: l) O `+ Q
| └──7-9 调试器事件处理和被调试进程恢复.mp4 142.88M
" N4 ?& I, w: B4 `* P7 [/ E0 ?( o├──第三章
+ H9 R, h, f9 H| ├──3-1 句柄概念,R3通过句柄找到内核对象地址.mp4 130.36M
+ W- X" M9 R3 d| ├──3-2 私有句柄表.mp4 207.99M
0 d: i1 B! d3 }) J: d' @9 K/ B) J, U| ├──3-3 全局句柄表.mp4 106.32M
9 b4 ?7 i* H( L e' Y' H$ N2 k3 G| ├──3-4逆向ObRefObject 内核句柄的判断.mp4 186.28M6 I9 L9 @1 _) z
| ├──3-5 逆向ObRefObject 句柄权限 三级指针由来.mp4 267.97M2 i6 Y, K7 o9 u9 c- {1 o3 g" X* z
| ├──3-6 ObTypeIndexTable和Index解密.mp4 147.65M! l. }3 I5 n4 B% Q1 a! D
| ├──3-7 句柄回调和简单破除方法.mp4 226.11M5 ]( z7 x( ]7 T3 {1 d
| ├──ren.bat 0.02kb+ y; @6 G( L' }! {; L
| ├──[Lab-1]3-1 过ObRegCallBack回调不被检测的原理的演示.mp4 101.59M" `' c( |9 q/ l9 @8 H7 V! B0 F
| ├──[Lab-1]3-2 Hook函数选择和版本判断.mp4 167.99M7 d9 m; d2 A Z. s$ S
| ├──[Lab-1]3-3 Hook完成并测试.mp4 297.41M" y% I4 {+ q! n8 y4 \+ A6 x
| ├──[Lab-2]3-10 隐藏进程完成.mp4 154.42M
' {! T; `" `/ A. z| ├──[lab-2]3-11 演示.mp4 13.32M! k. d; F' M2 D0 |) S& r: m/ B
| ├──[Lab-2]3-4第三章实验一 不PG的断链隐藏展示.mp4 51.93M, B: h5 V) Z5 x/ U4 a
| ├──[Lab-2]3-5 PG检测断链机理猜测和断链不PG的原理.mp4 142.31M/ ~+ U: f- C: K* \7 p; v4 a
| ├──[Lab-2]3-6 PROCESS结构偏移寻找.mp4 265.36M0 x! P0 e" b( G' `" d
| ├──[Lab-2]3-7 PROCESS断链兼容全系统完成.mp4 110.81M
* v, k! _; ]9 x| ├──[Lab-2]3-8 PspCidTable ExDestroy寻找和HandleList断链.mp4 283.46M
- |+ s+ T* b N5 V% n| └──[Lab-2]3-9 模式搜索寻找兼容全系统.mp4 225.48M6 M2 J' S9 ~. D2 N8 ~
├──第四章 / j% [# C8 X- {$ c# t7 I
| ├──4-1 本章概论.mp4 28.21M
3 M; P3 k+ W, X( o3 r| ├──4-2 系统内存空间管理以及为什么在高IRQL不要用分页内存.mp4 173.04M
+ D- C4 ~+ d3 C| ├──4-3 用户内存空间管理 CpoyOnWrite未解决.mp4 469.04M
) p' g9 V" N7 z/ c- U' o5 m| ├──4-4 物理空间的管理和MmGetVirtualForPhysical逆向.mp4 329.36M
: {8 P9 }: K6 Y4 y& v| ├──4-5 共享内存的原型Pte.mp4 183.03M
2 l& P' H# {7 ?6 f* W1 a| ├──4-6 CopyOnWrite问题补充和破除COW.mp4 275.27M
; [/ ^% c( _. w| ├──4-7 隐藏内存原理.mp4 49.74M
- K4 o/ F6 v) h o/ P| ├──[Lab-1]4-1 隐藏内存的MmPfnDataBase兼容寻找.mp4 272.20M0 ?3 |" V, v. l) g* e L6 l8 Y
| ├──[Lab-1]4-2 隐藏内存完成.mp4 169.82M3 r) A! z" _* H$ ^: F% b( Q) O
| ├──[Lab-1]4-3 绕过PUBG内存隐藏演示.mp4 78.11M
$ s a* u! M: o* M3 {, d' Q- q| ├──[Lab-2]4-4 读写分类.mp4 180.62M; T# `6 D. N$ ?9 T5 T! O
| ├──[Lab-2]4-5 PhysicalMemory使用.mp4 143.95M5 i, o1 n2 F, p5 e
| ├──[Lab-2]4-6 不附加读写完善.mp4 235.46M
5 f$ c. B9 o, Z! Y( L| └──[Lab-2]4-7 BUG修复和不附加的验证.mp4 62.75M% k* P8 z$ ]# I& f8 D
├──第五章
9 v: R2 A# U5 t| ├──5-1 APC的概念及其应用.mp4 60.38M
1 b/ w3 h, z+ @3 a& g& \3 Y| ├──5-2 APC相关结构.mp4 209.89M
2 B- y# Q G, A5 [| ├──5-3 KeInitializeApc的逆向.mp4 43.86M, I7 B# y$ U5 Q$ y; H+ T1 B, }* F
| ├──5-4 KeInsertQueueApc逆向.flv 91.64M
/ D% P+ U: u g3 ^# @. N| ├──5-4 KeInsertQueueApc逆向.mp4 91.43M
& Q+ S* X$ `7 T# t* |( e| ├──5-5 逆向不同属性的APC头尾插法.mp4 146.80M
$ e2 @9 H! a0 b2 C& t| ├──5-6 APC派遣过程上.mp4 383.24M
( l5 j- y$ W% C) c0 D* m' ^1 `| ├──5-7 用户APC和派遣的完美闭环.mp4 215.21M
+ B( @1 z. s' p1 q$ C5 D; I9 E) o| ├──5-8 附加的逆向和查询附加的原理.mp4 149.39M. ^! r7 {3 ]% j( p
| ├──ren.bat 0.02kb
! J. U. `( t1 g* }$ t| ├──[Lab-1]5-1 内核APC注入过APEX演示.mp4 41.06M6 L/ m2 E* U& T+ i6 i! G. }
| ├──[Lab-1]5-2 内核特殊APC的插入.mp4 193.37M
5 I1 F' E1 O G( r| ├──[Lab-1]5-3 如何找KTRAP_FRAME执行ShellCode.mp4 198.11M, Z. Z3 G- H/ k- Q a) K
| ├──[Lab-1]5-4 Ktrap_Frame修改测试.mp4 15.26M' |$ _$ z6 F, B. E
| ├──[Lab-1]5-5 申请内存和驱动读Dll文件的实现.mp4 152.74M2 _; \1 }" c0 k9 N; [5 z
| ├──[Lab-1]5-6 ShellCode编写K_routine修改实验完成并测试.mp4 275.01M
0 h6 E0 k4 |- [: b1 B1 y0 m1 a- h0 Z| ├──[Lab-2]5-10 读写测试.mp4 117.64M' l& R o' d5 E, K
| ├──[lab-2]5-7 无驱无附加读写过PUBG实验演示.mp4 54.09M" ?# v2 z% I1 q, B, E" V% ^3 a2 N
| ├──[lab-2]5-8 无驱无附加读写过PUBG实验演示.mp4 95.28M
8 }8 Y7 ^+ X# c, E+ R& `| └──[lab-2]5-9 不附加读写的完成.mp4 173.11M
3 i3 d# J; r6 q. ] Z* g├──第一章
7 G+ t1 m( W+ E- E/ Q9 g) x| ├──实验
( ?& X1 j0 o% Q0 `/ K| | ├──Lab1-1-x64Hook框架.mp4 35.43M1 V1 r8 u: w0 M0 h) C
| | ├──Lab1-2 x64Hook框架编写完成.mp4 275.62M# y: x2 f% {8 K/ z3 \. C" |
| | ├──Lab1-3 Pte Hook的原理.mp4 56.97M! t& l0 \# q4 [! c* T' A
| | ├──Lab1-4-1 PteHook编写.mp4 232.28M
2 e- y) D* q; ^3 k/ Z| | ├──Lab1-4-2PteHook的编写.mp4 184.95M, T. t& m; G5 J* _( J3 K
| | ├──Lab1-4-3 PteHook验证.mp4 72.40M
7 v7 x3 \ C# H2 C P) t- E: a| | ├──Lab1-4-4-1 完美PteHook 实战虚拟机物理机过PG .mp4 287.03M1 p5 i# h* i* c/ O
| | └──Lab1-4-4-2 完美PteHook 实战虚拟机物理机过PG.mp4 54.07M7 k9 ^$ ?( }8 ~: F/ ]
| └──视频
7 h- F) T; h* Q% r. f| | ├──1-10页表自映射.mp4 172.84M" U: r, I' D" l
| | ├──1-11-1实现Windbg!Pte功能.mp4 98.44M8 Q/ @% G2 [& g
| | ├──1-11-2实现Windbg!Pte功能.mp4 106.23M5 f. a( h& M% X% S; w E
| | ├──1-1x64通用寄存器差别.mp4 81.63M
3 M4 p6 L& k* ~( k5 M) U9 ~ X| | ├──1-2x64线性地址规范和全局变量寻址.mp4 67.40M
( {3 U2 _+ T1 p) ~| | ├──1-3x64调用约定.mp4 219.76M
3 ?; {1 _9 G0 T8 F| | ├──1-4 x64Vs使用内联汇编.mp4 27.40M* Z% {6 R/ I3 Z- c
| | ├──1-5-1保护模式的段保护.mp4 483.46M
% }2 c/ \) P1 c/ g* K| | ├──1-5-2系统描述符.mp4 330.53M
: Z% H; H: n8 k, o1 h| | ├──1-6控制寄存器.mp4 513.94M
! [5 m2 R& h6 R) _9 _0 [ T$ P% g| | ├──1-7MSR寄存器对syscall和sysret的支持.mp4 167.05M
3 p$ K2 J! z' v* D% h2 }| | ├──1-8MSR寄存器对Swapgs的支持并进行实验验证.mp4 331.08M
& _$ F6 `5 V: _| | └──1-9IA32E分页本质.mp4 422.66M
5 c. R. Z' J" v& j0 Z) L+ y└──番外篇
+ p( R# H0 d( q9 j; c. t| ├──傀儡句柄读写
9 d; \0 C+ S- P7 p3 S/ N" E5 || | ├──[ext]1-1 常见稳定读写方式以及傀儡句柄读写原理.mp4 118.52M- z) d: U: d: m( X. p/ X& M
| | ├──[ext]1-10 修改缺陷完美读写获取模块.mp4 215.18M
$ A9 |; c1 V5 |0 I" \, O; k| | ├──[ext]1-2 框架构建和驱动OpenProcess完成 -.mp4 105.76M
+ E1 V1 |' X! H# O8 w% i| | ├──[ext]1-2 框架构建和驱动OpenProcess完成.mp4 125.05M1 I: j) ?5 w4 e7 V4 L8 t
| | ├──[ext]1-3 为什么找找到合适的TypeIndex.mp4 139.43M
! g1 J5 k% y9 A4 C4 U, k+ K1 m- A }4 u| | ├──[ext]1-4 如何获取正确的TypeIndex.mp4 42.31M1 R# @+ z) e1 |+ r o
| | ├──[ext]1-5 copyProcess编写.mp4 237.85M1 n& h; B2 I7 H7 z- K- V& _/ h
| | ├──[ext]1-6 基于filter端口通信编写-驱动层.mp4 230.89M
# D" D# O' g: g4 U% E/ s% W| | ├──[ext]1-8 基于filter端口通信编写完成.mp4 89.00M
3 h: V$ T( R$ M0 G| | └──[ext]1-9 读写测试以及缺陷显露.mp4 209.65M6 F9 @( i8 i _3 r
| └──傀儡模块无痕hook 3 O9 `/ W4 y: A% d! t
| | ├──[ext]2-1 傀儡模块无痕HOOK驱动演示.mp4 62.01M3 z" p* d- F, ?+ E9 z3 a- z& d
| | ├──[ext]2-2 Hook原理解析以及为什么x86不需要重定位.mp4 171.08M" {) x v; k4 b/ |
| | ├──[ext]2-3 为什么x64不需要重定位.mp4 112.10M) b- @0 e; ]0 x# r
| | ├──[ext]2-4 无痕hook框架构建.mp4 112.16M& k( @% p, z: E( k4 v6 ]8 g* k
| | ├──[ext]2-5 无痕HOOK编写完成.mp4 175.83M
' y9 D8 L* E6 H" c& D+ G/ n. _+ ]| | ├──[ext]2-6 找BUG测试成品.mp4 266.49M- ~ _" V& K- _) }8 o5 S& d1 T
| | └──[ext]2-7 R3层傀儡模块HOOK的缺陷以及驱动解决方法.mp4 83.73M
; z7 B) ^) o+ a6 ~$ h" j% U% N
* m2 T* v: {5 {) J# E$ o, B% @1 H6 }3 N. ]3 y
% q. x A, B( e' c3 _7 ^ F# y$ W7 b
- H' U/ `! k& A/ W; T" M资源下载地址和密码(百度云盘): [/hide] 百度网盘信息回帖可见
; o# p' y; j5 J' {1 }/ t, l
8 r5 A; c2 W4 e ~# E e* i$ Z/ T% L |; Y( Z, b
4 J+ E6 b' d/ F; n J本资源由Java自学网收集整理【www.javazx.com】 |
|