|
|
本课程属于JavaScipt防护与逆向进阶课程。JavaScript混淆与还原,是当下反爬虫与爬虫对抗的重要手段。本课程从JavaScript混淆原理开始,紧接着介绍Babel库提供的相关API。有了这俩基础,就可以开始着手自动化混淆和还原Java Script了,最后本课程还介绍了AST在实际案例中的应用,以帮助大家更好的融会贯通前面所学的内容。1 b2 `. M( S; c7 G) n9 N# A/ S
课程内容:& t7 @. q& s3 F" m1 ~& n6 u- J% [- [- l
00.课程介绍
1 Z' v+ R+ |) z2 v! ~' A: A$ g01.环境配置( J$ X+ I; T6 X" L6 f, ]
02.对象属性的访问方式" {: ?& ~8 s! j( c& H/ {
04.unicode字符串
9 k c. Y- |- V05.字符串ASCII码混淆- P3 r& C# A: ]' ]' G& Y
06.字符串常量加密
1 a% E" A% T: Y* `07.数值常量加密+ o3 y2 P4 _' d' O- r8 [; M
08.数组混淆
, p; O( x+ y$ k0 z09.数组乱序( d% E6 j1 G. q- j
10.增加JS逆向工作量(花指令)6 D. G: S, n! s" g3 D
11.jsfuck. U4 n- q4 E/ D$ W( x+ m/ B
12.流程平坦化
0 e: x; h5 T1 x* j13.逗号表达式混淆14 }8 n) j) Q" `! F1 N6 l7 c, @
14.逗号表达式混淆2
$ p; Y5 M ~+ | u! C15.eval加密# v; `0 q0 ^+ l1 [
16.内存爆破
: \ R u5 k( \* ]# W17.检测代码是否格式化1 u: x4 J* e z
18.AST的基本结构9 ^& r R# U8 d7 r. x
19.代码的基本结构% K' |" c! b2 \( U2 l
20.parser与generator
9 q) J" ?8 T6 V7 n21.traverse与visitor
# r8 b8 E2 U4 _! x6 w$ [7 D1 d22.types1 U4 b) h8 }; L
23.Path对象详解(Path与Node的区别)8 X, t9 b# I \/ p2 H6 }, _; g
24.Path对象详解(Path中的方法)
7 |% a" u: @% o3 ^9 c25.Path对象详解(父级Path), E) V( F1 N3 [+ v3 [$ N
26.Path对象详解(同级Path); @) ?+ x8 C' H$ G$ k6 h# W
27.scope详解(作用域)% T4 _2 ~4 l% _, p8 d/ a/ t7 ~
28.scope详解(Binding)
, l& B6 W$ C2 F' I/ c! y29.scope详解(referencePaths与constantViolations)
, t& B1 M2 _, d7 K, ?3.十六进制字符串
) U% {* l: }& H8 a+ H1 H30.scope详解(遍历作用域)
; S3 W$ {& {5 k31.scope详解(标识符重命名)
: k& c2 ~9 R" c4 ?32.scope详解(scope的其他方法)
9 W; \9 ?# W0 o" s% T7 j# b33.改变对象属性的访问方式
: K0 F) Y. m2 |34.JS标准内置对象的处理7 B/ m! F: d4 `6 f7 a! [
35.实现数值常量加密1 Z8 |+ W4 k2 H; i5 P5 S
36.实现字符串常量加密
) L8 G3 l1 }7 R w H, G0 ?37.实现数组混淆- q+ A# {' I2 m; n' G" J; k
38.实现数组乱序. j" f/ Q' f, E" w
39.实现十六进制与unicode字符串
9 {. J& M" c9 e40.实现标识符混淆8 i. |0 g( h% K7 I$ f9 a9 z
41.标识符的随机生成8 ?% f- `- m0 {5 }+ E
42.二项式转函数花指令3 g: \" g+ `: C
43.代码的逐行加密
0 s$ a7 ?( n) Z7 N2 h4 E% j44.代码的逐行ASCII码混淆
7 Q7 t! G! i7 d4 s* l45.完整的代码与处理后的效果1 y+ S! Q7 x- C9 I
46.实现流程平坦化混淆1* Z# i4 [; y' P0 e
47.实现流程平坦化混淆2) P- g( W0 ?2 B
48.实现逗号表达式混淆14 K& L* @" ?8 ~/ |
49.实现逗号表达式混淆2, I% h; Q# u Q) R. h5 Z$ E; t" ^
50.分析网站使用的混淆手段
: H6 b/ x- Z. \4 \. ^51.还原代码中的常量: {% R! ?! o; E1 t! Q! N% `* k
52.花指令剔除思路% z! z' i3 g9 p; J. u( u, u# D
53.字符串花指令的剔除% [- R* S: D3 H1 ]4 I
54.函数花指令的剔除0 u4 h: v: m* F( q1 @
55.还原流程平坦化
' v6 E, U2 k( K+ k; a. W; j' ? S& a/ B; N& A2 K0 _
|
|