|
本课程属于JavaScipt防护与逆向进阶课程。JavaScript混淆与还原,是当下反爬虫与爬虫对抗的重要手段。本课程从JavaScript混淆原理开始,紧接着介绍Babel库提供的相关API。有了这俩基础,就可以开始着手自动化混淆和还原Java Script了,最后本课程还介绍了AST在实际案例中的应用,以帮助大家更好的融会贯通前面所学的内容。8 C+ e+ x) A8 Z4 {
课程内容:
# w. d7 a1 O" c- c8 }# T9 { r00.课程介绍8 ]/ [/ `* a2 R( M$ q
01.环境配置( u8 P2 W( k( [
02.对象属性的访问方式
' @9 \2 C8 O6 f O" w04.unicode字符串
1 L+ r" d) G2 J$ L05.字符串ASCII码混淆4 F/ I( | F0 \, Q0 f
06.字符串常量加密
5 ]. }4 a. f- `# s07.数值常量加密/ }& i! k( a# h. h8 g
08.数组混淆* u; `- J$ i* O4 _* [( v
09.数组乱序7 x4 j8 {1 k0 ]- B' {& \9 Y
10.增加JS逆向工作量(花指令)' O$ p* t5 Y I! N! u [6 |0 g7 p! ^
11.jsfuck
0 p) e5 O( W$ `% ~! l5 {12.流程平坦化
5 I: b" e/ @! ~0 E* u/ u/ N13.逗号表达式混淆1) A" U1 q& ^0 `
14.逗号表达式混淆2
$ e, P9 w* M" h6 ]! v# i15.eval加密# ^, T5 ^2 @( c. s! [1 u
16.内存爆破" P* a2 d* l, f; p H- z E
17.检测代码是否格式化
+ }+ F; e5 _ e2 y4 m) o- }6 _18.AST的基本结构. x1 k% ~: D: w# ^8 r( B+ |
19.代码的基本结构
! J: w7 |( z6 o# E" s+ }20.parser与generator
1 x. M. P% ?3 {. g3 |21.traverse与visitor$ Y& q& h, b8 S5 Z, W1 g
22.types
' N8 `, {0 Y( X- |" ~23.Path对象详解(Path与Node的区别)- U8 k9 o: \, p) r
24.Path对象详解(Path中的方法)
8 F2 n) }/ o2 S; Z25.Path对象详解(父级Path)1 T* w' J. G* S; g
26.Path对象详解(同级Path)
( E- Z/ O' [& I' K! w4 s27.scope详解(作用域)9 \8 V/ X. O$ J( O3 Y) A. B
28.scope详解(Binding)2 h0 d: z- n% h( D
29.scope详解(referencePaths与constantViolations)
% K3 I- U. M$ Q# D, }3.十六进制字符串0 N7 F8 v" A* S
30.scope详解(遍历作用域)' Z' X7 S7 a2 g G+ X
31.scope详解(标识符重命名)8 R( F4 O9 N$ C! b
32.scope详解(scope的其他方法)
7 m2 `# x2 U% f5 S33.改变对象属性的访问方式) d, t/ G/ U w
34.JS标准内置对象的处理
6 x8 Q/ ]$ ]) w! u3 T+ Z9 z35.实现数值常量加密( p) e6 Y/ P! Z- J/ h, W
36.实现字符串常量加密4 G8 Y% K# ] p& E4 m- _2 j6 ~7 C
37.实现数组混淆0 u& B' M3 d! R1 [
38.实现数组乱序2 ^5 S2 d" O+ W" X9 Z- P" V
39.实现十六进制与unicode字符串
% W7 u' Q$ t# g ^; o: a! h40.实现标识符混淆
9 I& ~# ]2 Z9 m: `, F/ x/ k/ r41.标识符的随机生成% w) ^4 ]$ @; M: O
42.二项式转函数花指令& y3 }3 R/ z/ z7 ^( O# J
43.代码的逐行加密
; @' H! x4 Z1 z4 g1 R) j44.代码的逐行ASCII码混淆- p, v8 k; u- m3 c( F8 P
45.完整的代码与处理后的效果
) `+ U* K7 W1 ^& k" D- b! C- L0 q46.实现流程平坦化混淆18 O3 D5 s$ N! J
47.实现流程平坦化混淆2
) D+ k3 O; R; [( a48.实现逗号表达式混淆17 `$ ]1 A! O4 Y1 R
49.实现逗号表达式混淆2
( h- P) |+ I: c" c50.分析网站使用的混淆手段
1 h6 B$ U1 ]% Y o$ w( C, V/ {51.还原代码中的常量
0 b8 Y9 x$ ~( N( Y5 P7 F6 N" y/ u52.花指令剔除思路$ I& ^, i# O' o. v: a# F
53.字符串花指令的剔除
; v: A U& Y) V6 e* b8 F54.函数花指令的剔除; l3 e4 S( i" V. I- y
55.还原流程平坦化
# \3 M' w& a; T; d
2 g) d$ F1 ~$ M- H: Y
|
|