|
本课程属于JavaScipt防护与逆向进阶课程。JavaScript混淆与还原,是当下反爬虫与爬虫对抗的重要手段。本课程从JavaScript混淆原理开始,紧接着介绍Babel库提供的相关API。有了这俩基础,就可以开始着手自动化混淆和还原Java Script了,最后本课程还介绍了AST在实际案例中的应用,以帮助大家更好的融会贯通前面所学的内容。 s* A4 z: ?! V: ^' c( @- ]
课程内容:3 h, l) a( ~. t! m
00.课程介绍& ?5 I) J7 R# z% C
01.环境配置4 Y' F9 A9 }9 w
02.对象属性的访问方式
- |8 J# ~3 j# v# A04.unicode字符串3 b, z$ W4 v" J! l( [! A
05.字符串ASCII码混淆 |: x; r' H- z" ^
06.字符串常量加密+ @: N1 ~. l& ]2 u
07.数值常量加密
0 j. S4 N4 [. O08.数组混淆" W+ g& S3 }. I. |& I2 [
09.数组乱序+ k* p0 P7 \) b$ e/ x
10.增加JS逆向工作量(花指令)2 S; l% ~* S, y2 l. H: K" F1 E$ }
11.jsfuck
! K: L6 R; g! P12.流程平坦化
$ A+ i1 G) P7 [9 i9 q7 s! M13.逗号表达式混淆1
6 ?9 B5 ~ B2 X. n1 C$ R3 n( {14.逗号表达式混淆2
% k4 d7 L) e4 ?& |- I15.eval加密
8 Q8 Q8 g6 m5 {6 o. q; T; b16.内存爆破
2 J* h e3 G% F) s! s17.检测代码是否格式化
1 [9 l( i( L; I6 V$ }18.AST的基本结构0 ^- P6 u0 t# S$ ?8 \0 V; W* u
19.代码的基本结构
* m& q( Y; `' t20.parser与generator( A2 S& k" g& F. p
21.traverse与visitor) I1 k1 o, k( n
22.types
' s5 s* o4 g3 b- d. o23.Path对象详解(Path与Node的区别)* j; T. t/ R- q
24.Path对象详解(Path中的方法)
# G6 _4 R3 k# T" w( d2 N25.Path对象详解(父级Path)3 J$ ?' o2 T7 c! L& Y3 R
26.Path对象详解(同级Path)( n9 {4 x& |! Y+ q0 j
27.scope详解(作用域)
$ G: b* m7 X, P28.scope详解(Binding)
4 n+ Z; ~$ I5 O. i. K% U29.scope详解(referencePaths与constantViolations)
' o+ ^9 ~) v" {6 \+ m3.十六进制字符串
$ u9 d, _; Q' x8 h30.scope详解(遍历作用域)+ G3 H- C' b, z& w
31.scope详解(标识符重命名)
" B/ M% t+ X+ W$ I8 i. ~; r2 G32.scope详解(scope的其他方法)
' i% v _1 V6 k33.改变对象属性的访问方式
: P- C7 x: X( V5 b7 z: y, `34.JS标准内置对象的处理
& k! u5 }3 o( @: V; p# z35.实现数值常量加密
. D6 }4 R* f: k3 P+ b+ {2 ?36.实现字符串常量加密
v7 _0 d( c+ z2 y2 p, a37.实现数组混淆) }: H! U6 a8 Q" ]( J- C" A' J
38.实现数组乱序- J: l" _; w) o* G" y
39.实现十六进制与unicode字符串
8 e8 q9 d! g+ ] ?- z7 I' L. x40.实现标识符混淆+ a1 z& A& h! R r: c8 c- o' u! {
41.标识符的随机生成
+ r$ q& Z3 t- R' v( r1 p42.二项式转函数花指令# l3 b% r b0 X- `2 v; e! o8 F
43.代码的逐行加密
2 ~5 C" e" ]3 H3 [6 w( A2 d44.代码的逐行ASCII码混淆
0 `( }9 R3 W$ K; u45.完整的代码与处理后的效果
% W$ B# X" a# q46.实现流程平坦化混淆1# f( K2 o3 M$ q3 x9 V) k
47.实现流程平坦化混淆2
$ M" @6 C4 E P7 H5 O9 @( Y! N |48.实现逗号表达式混淆1
( }. a" G1 s2 T1 i1 B49.实现逗号表达式混淆2
) p. B4 t2 @- F( @# F5 |5 i50.分析网站使用的混淆手段
3 `6 c. C$ {* B$ U9 ?; E9 X( q( c51.还原代码中的常量
% h" G6 M# o/ r5 U0 W" ?3 r52.花指令剔除思路
1 e# [: J \4 u: P53.字符串花指令的剔除
. R2 e$ b/ Q! D( c% b1 H3 q) @$ R; @54.函数花指令的剔除
- a! i% f. A/ c7 b) C! O55.还原流程平坦化
7 s1 x% r) r& a6 p1 ^- C. ~ 7 _! I; R7 J1 h% f
|
|