|
|
本课程属于JavaScipt防护与逆向进阶课程。JavaScript混淆与还原,是当下反爬虫与爬虫对抗的重要手段。本课程从JavaScript混淆原理开始,紧接着介绍Babel库提供的相关API。有了这俩基础,就可以开始着手自动化混淆和还原Java Script了,最后本课程还介绍了AST在实际案例中的应用,以帮助大家更好的融会贯通前面所学的内容。
9 X* u% Z) J% {) r4 K课程内容:
. J9 H1 E* s$ v* f1 t00.课程介绍
9 g) f0 V( B0 q1 Z$ ]01.环境配置
" \! g+ _8 f; c) H4 w4 W, e02.对象属性的访问方式9 J( [* L) l+ R: C- d
04.unicode字符串
9 F9 n. ?5 r) d2 \9 h" P05.字符串ASCII码混淆* v* r8 L1 [! j" X
06.字符串常量加密
! l' r; {6 b1 L$ F# q9 @" H07.数值常量加密' v5 Y& [$ R7 L# w
08.数组混淆
8 N5 N9 N1 S5 C% A f3 Q09.数组乱序
# R+ G! G1 I; c$ O9 r1 J10.增加JS逆向工作量(花指令)4 U ~: o8 T" ~6 \; [0 C' l0 Y
11.jsfuck
+ ^* p# W+ h& i0 n1 O d12.流程平坦化8 p: u4 K4 @, O3 m+ z! a
13.逗号表达式混淆14 \: {3 f/ s. e* O7 k
14.逗号表达式混淆26 x" Y* X" M) T
15.eval加密
; Q g0 j( a4 Y2 R# y16.内存爆破/ G; o5 X5 k3 { C
17.检测代码是否格式化
$ t( a- E" N: z: O1 h( x0 n8 ^18.AST的基本结构- K# T2 Q0 a, U& w3 h
19.代码的基本结构0 p: D* v N9 E
20.parser与generator
. y. W+ v! y% r21.traverse与visitor; N( W: J1 h" F( S4 D
22.types
( u0 U) t$ [1 G% t23.Path对象详解(Path与Node的区别)
+ W+ V* l2 h% a' _3 T, E24.Path对象详解(Path中的方法)
) B* p4 E8 b/ l5 E$ N) m: h25.Path对象详解(父级Path)9 V) C* y0 @! u2 c$ H% w
26.Path对象详解(同级Path)
2 p }1 p" V9 L0 e27.scope详解(作用域)
! g$ i, C: V q% n+ r6 e28.scope详解(Binding)
@' x6 p Y/ r# h( `) |29.scope详解(referencePaths与constantViolations)6 f. T/ P9 T! Y. [$ [
3.十六进制字符串 z2 ~9 \( z* y4 z. ~2 J0 i
30.scope详解(遍历作用域)
/ q0 u" g/ r8 B( G! |8 Q; T) q31.scope详解(标识符重命名)+ Q7 o2 ^, K- t; U& |. I
32.scope详解(scope的其他方法)+ E; L% `8 V; C
33.改变对象属性的访问方式' W( X, Q9 z3 U) p" C( E
34.JS标准内置对象的处理
3 `1 @! \/ m+ p1 ]35.实现数值常量加密0 s- B( w0 t8 K3 h, f. J: a
36.实现字符串常量加密" r, l0 n$ k7 M: {+ `6 U5 T
37.实现数组混淆8 C' k; p8 i" c6 | c, r2 V* W
38.实现数组乱序
& ^# m E! m% x! W39.实现十六进制与unicode字符串
9 W" U4 u, W. }- [40.实现标识符混淆
?, J# s: O- C; S! F41.标识符的随机生成
+ h5 s, e) G: S4 @42.二项式转函数花指令+ H s4 v1 e3 O! n4 l
43.代码的逐行加密/ t& u6 S6 h) @! j, Y, u4 ]1 h
44.代码的逐行ASCII码混淆
$ j$ b. o1 s+ [: v5 l3 a2 n45.完整的代码与处理后的效果
) I9 W3 C3 W; i! ]3 |46.实现流程平坦化混淆1# x3 m" f( R" R4 ^1 ^: i
47.实现流程平坦化混淆24 V6 R( k0 n$ Q- s& c
48.实现逗号表达式混淆1/ W, E9 A7 h: y+ b! I. }+ N! m. i
49.实现逗号表达式混淆26 D+ T: W8 R6 s0 i2 _! G1 {
50.分析网站使用的混淆手段2 n: l5 Y j6 ?# G; u
51.还原代码中的常量
1 {4 \& P4 a5 l, Z: L9 N52.花指令剔除思路# m) G+ } A3 J5 T
53.字符串花指令的剔除& Y' e; R6 k# Z) T; k6 W
54.函数花指令的剔除
" f* B" y( D7 B. Q; P55.还原流程平坦化: R4 ]2 J+ c1 G: u* ]- j8 D5 V
! ]/ p, E2 |% O0 v$ Y$ o; J
|
|