|
|
本课程属于JavaScipt防护与逆向进阶课程。JavaScript混淆与还原,是当下反爬虫与爬虫对抗的重要手段。本课程从JavaScript混淆原理开始,紧接着介绍Babel库提供的相关API。有了这俩基础,就可以开始着手自动化混淆和还原Java Script了,最后本课程还介绍了AST在实际案例中的应用,以帮助大家更好的融会贯通前面所学的内容。& f/ C7 ~# Q" y9 ]; F. N
课程内容:9 r: p/ l; n# N1 I. X8 R
00.课程介绍& n, B% g! U P
01.环境配置
. s6 h9 I( }5 q* m: \02.对象属性的访问方式
0 c0 o" y+ y7 o6 K5 ^04.unicode字符串* `1 b* d% J, s. f
05.字符串ASCII码混淆1 q |( y6 U' z! f: B, K9 x( W
06.字符串常量加密$ Z0 D2 A: N( l2 U2 H, G6 c
07.数值常量加密# F8 j; T$ R' _0 c
08.数组混淆2 k I6 ]: V4 z3 [- |
09.数组乱序
+ ~8 X# M0 d& x- K \10.增加JS逆向工作量(花指令)
, N6 A' z& A# J2 T3 V3 ~11.jsfuck
% C0 F i j. F2 t12.流程平坦化- s/ y# z- J. w2 F* J, ^' B, W
13.逗号表达式混淆1
/ Q% b7 D7 K3 c14.逗号表达式混淆2# i$ [9 O7 H3 X. u+ H4 j1 N
15.eval加密
1 i8 ~# d' m3 _! x4 \- e16.内存爆破
, S: O4 E4 b" S: ~" w! p' `17.检测代码是否格式化' ^/ j6 T# G8 y7 h1 z
18.AST的基本结构2 N" ^! @( e. K& f- E
19.代码的基本结构
8 i- ~$ j& Q. F9 F3 X20.parser与generator" W" A- c s* P
21.traverse与visitor
9 E0 F) I" Z& Q& T22.types
+ s+ T) Q c# K+ P5 X23.Path对象详解(Path与Node的区别)4 L" \* V9 C, @2 I9 F/ G5 k& j
24.Path对象详解(Path中的方法); F) i( J6 V9 ?, |0 F3 H
25.Path对象详解(父级Path)9 b; Q6 N& I% _
26.Path对象详解(同级Path)4 F7 R: F# i; F
27.scope详解(作用域)$ [$ W6 t& o; c
28.scope详解(Binding). n6 m, O0 t- P/ C- h, ]# c# q2 [
29.scope详解(referencePaths与constantViolations)
, P. V6 S/ ], n6 x/ U3.十六进制字符串
* W# n3 |4 n& j30.scope详解(遍历作用域)/ m2 c' c! G) F5 o
31.scope详解(标识符重命名)
7 k" [$ z) Q4 Y( c32.scope详解(scope的其他方法)
* o% H5 f8 s+ R33.改变对象属性的访问方式4 w; P$ ? g4 t" ]
34.JS标准内置对象的处理8 ~2 |2 {$ s8 Q& b" [
35.实现数值常量加密
3 X9 V* X! K6 t" x B' I36.实现字符串常量加密
% T8 J8 |' S) g37.实现数组混淆8 ?- Q1 g \8 c, Z7 }
38.实现数组乱序
4 ?, @) H# w: G( u& e7 N$ V39.实现十六进制与unicode字符串
# i2 u% `" ?1 H6 ?40.实现标识符混淆' |& p& o8 M1 ~7 b* e8 h7 \
41.标识符的随机生成
) Z. K2 D$ k. C& c42.二项式转函数花指令
6 \0 ?: \5 g6 g43.代码的逐行加密
7 W5 }7 T- D4 D1 o+ N44.代码的逐行ASCII码混淆
) _9 U* F/ t" x3 t' P5 l+ ^45.完整的代码与处理后的效果
1 U! x6 r- w+ ~3 E: s46.实现流程平坦化混淆1
+ \4 i* f A' @) I, m" d- x# F& J47.实现流程平坦化混淆2) |. a* S( a4 \! L8 K* N& V! I" p/ [
48.实现逗号表达式混淆1( b! v0 Z3 g# n \7 W
49.实现逗号表达式混淆2
1 _% t2 L+ g z5 D2 A" R/ K50.分析网站使用的混淆手段/ W$ F( w8 y2 P: E! c3 p
51.还原代码中的常量6 h6 e1 i; J7 U
52.花指令剔除思路
. n$ a. T8 Q; L6 [' S53.字符串花指令的剔除# z: r( t4 l; Y9 u2 Y5 T6 X! R
54.函数花指令的剔除7 J- u2 u8 p x: J# }8 I
55.还原流程平坦化
. a; z; E* B1 `5 o0 ?# P 2 H9 ?( F$ r( H1 t- F! E
|
|