|
|
本课程属于JavaScipt防护与逆向进阶课程。JavaScript混淆与还原,是当下反爬虫与爬虫对抗的重要手段。本课程从JavaScript混淆原理开始,紧接着介绍Babel库提供的相关API。有了这俩基础,就可以开始着手自动化混淆和还原Java Script了,最后本课程还介绍了AST在实际案例中的应用,以帮助大家更好的融会贯通前面所学的内容。
; t7 P5 E) K8 s1 |课程内容:$ `9 e2 Y: ^5 K' E
00.课程介绍0 X$ }$ n" H+ x) W H- y" I
01.环境配置
}) ` ]# s$ d' i: r02.对象属性的访问方式: n2 Y4 d" z0 K
04.unicode字符串$ T! o% o$ k& E% f( c b D1 I8 r: \
05.字符串ASCII码混淆& K) }% ?/ }; \
06.字符串常量加密
+ ]( L# z3 o5 P% U' A; w07.数值常量加密. T. G, G1 |4 R
08.数组混淆' @2 g6 M" n4 e4 b
09.数组乱序. ]6 [' L: [/ E& ^/ B8 S
10.增加JS逆向工作量(花指令)
/ c0 F" F. H7 a: q/ L11.jsfuck
- _5 \# H, c8 F1 H6 s$ u9 k! _12.流程平坦化
/ T }* v( D; c% {) k I* C13.逗号表达式混淆1- k: j; X3 R: o4 Q( p
14.逗号表达式混淆2
- n* H6 Q P7 D* B( |15.eval加密
3 c+ j: T6 E& U- A16.内存爆破
1 s" R% t# i/ b- s; B( q) c17.检测代码是否格式化1 F9 P6 D( t) e! \) Y
18.AST的基本结构
d: J2 R; C8 g7 g; S! x- ?; n0 j19.代码的基本结构
; p3 n! u! Y( U3 R; u- b5 N20.parser与generator
5 W( h/ r* f) b21.traverse与visitor
% R* l9 @3 `, {22.types! Q) H; i0 J$ U
23.Path对象详解(Path与Node的区别)3 G3 E: m5 v1 j+ Q
24.Path对象详解(Path中的方法)
3 R% T1 k$ F" j25.Path对象详解(父级Path)
4 i: Q7 E* F4 ]26.Path对象详解(同级Path)
; b* n" R C' m6 E27.scope详解(作用域)
0 W$ F2 X) U) ?28.scope详解(Binding)
+ m$ Z0 r) M' T- f& N! X29.scope详解(referencePaths与constantViolations)
- k( P6 ~* ~' Y9 O9 X+ f3.十六进制字符串
* V: y. I" L2 M$ U; H5 W U, `# Q3 V30.scope详解(遍历作用域)- Z! H9 {# P8 e" }& Z# \
31.scope详解(标识符重命名)
+ ~* J' R% A8 q32.scope详解(scope的其他方法)* x0 W7 h, }7 k
33.改变对象属性的访问方式
/ p/ ^! d) z. b' |34.JS标准内置对象的处理2 N9 w# C7 l3 J
35.实现数值常量加密
! s! Z3 l& z# s36.实现字符串常量加密
[/ H. I* E5 x d- y! k9 D) i37.实现数组混淆
# `1 e2 r) o+ {( r38.实现数组乱序) e' e2 b1 |6 M" |
39.实现十六进制与unicode字符串* B! g; _% G3 O3 E! b8 F2 }
40.实现标识符混淆
: D& [& g6 K/ e$ I41.标识符的随机生成6 g2 g% u% o/ B; @4 d6 I
42.二项式转函数花指令0 C7 \% b+ f5 r5 U- a
43.代码的逐行加密
( K8 u3 X' D6 t+ ?, y+ C* z44.代码的逐行ASCII码混淆/ u/ c' h! u. r3 k+ f# W* `
45.完整的代码与处理后的效果7 f* B& K$ y9 J& ]) T2 D/ t a
46.实现流程平坦化混淆17 {- ~" f4 d! X5 A" f% f4 n j
47.实现流程平坦化混淆2 c( G% `6 I: e% e3 L ]; u
48.实现逗号表达式混淆1& I1 D+ }/ H" H* R5 y2 p% f: e
49.实现逗号表达式混淆2
+ _3 t# s1 v# K( i' _6 w50.分析网站使用的混淆手段
1 l8 v9 z f& ?- @$ }; w$ i. l51.还原代码中的常量' a% z, V, @0 C H, m; M
52.花指令剔除思路$ \! S* R7 ]1 z( @# `
53.字符串花指令的剔除5 l, u% ?( f4 W! O, k: p
54.函数花指令的剔除2 y7 J! ~% d2 R7 D1 X9 v
55.还原流程平坦化% w" K' P o# S0 i1 r: g$ B" |
& l1 `# @3 m, j* @) O- Z
|
|