|
|
本课程属于JavaScipt防护与逆向进阶课程。JavaScript混淆与还原,是当下反爬虫与爬虫对抗的重要手段。本课程从JavaScript混淆原理开始,紧接着介绍Babel库提供的相关API。有了这俩基础,就可以开始着手自动化混淆和还原Java Script了,最后本课程还介绍了AST在实际案例中的应用,以帮助大家更好的融会贯通前面所学的内容。
; C$ w- h% I5 ]8 Z课程内容:
, p4 X1 z& E2 W0 G2 F00.课程介绍
' e1 h2 G- p S& T& |+ X% m01.环境配置
8 H- T& P) a* s- S$ ~02.对象属性的访问方式2 l h6 v- R& K* G2 w; K
04.unicode字符串
$ g7 b/ t1 X9 F; h05.字符串ASCII码混淆. j$ F# h' B; H; s+ J
06.字符串常量加密1 w3 |, d: s ^
07.数值常量加密$ Q% @' |; Z5 e" ]; K+ { ?
08.数组混淆
7 ?9 [' N8 ]* L1 S: `; E! N09.数组乱序
Y& H1 v+ r2 X, `: C) o3 w" w1 I% @10.增加JS逆向工作量(花指令)
N3 j; m2 t4 [# l) Y: b11.jsfuck
6 C# b3 |. n' |; O' e- m12.流程平坦化
/ i \7 L4 z a0 L4 D8 a13.逗号表达式混淆1' r6 E$ J ?" ^0 `% n" R/ k/ k7 O
14.逗号表达式混淆2
; k2 K, g7 e g8 D$ {15.eval加密
+ R6 Y# |) C9 b3 K6 C7 L16.内存爆破
) f& E% G# b0 C17.检测代码是否格式化
1 t% {+ X$ P( F6 x0 v) b/ d18.AST的基本结构 ~ v3 o+ Z4 M _3 ?# D
19.代码的基本结构/ s8 @. k9 z: @; f* M& d
20.parser与generator* g# Y0 d# f. m
21.traverse与visitor
; H0 J( ` F) \2 N22.types
$ s7 n6 }* I! H4 m/ N, y23.Path对象详解(Path与Node的区别)% E* \4 d0 u( c% s2 S
24.Path对象详解(Path中的方法)
; W6 C' r! j) O" L h25.Path对象详解(父级Path) N' s4 x0 E4 c: X# J
26.Path对象详解(同级Path)
% g4 J5 P; `1 q: T- Y$ m27.scope详解(作用域)
! }: v2 g* |9 @. X28.scope详解(Binding)
9 l$ R6 D# Z1 \; @6 S; Z29.scope详解(referencePaths与constantViolations)' n7 C9 X. g2 z; v4 [3 ]
3.十六进制字符串
8 Z K1 t# [' a, O) Y; I30.scope详解(遍历作用域)8 t6 J9 L6 `2 t- k$ n8 p
31.scope详解(标识符重命名)
# W" \8 J$ N7 `+ s1 r+ \32.scope详解(scope的其他方法)
; Y" s& d' x: y7 a" m33.改变对象属性的访问方式7 E* P( m" u2 w- d
34.JS标准内置对象的处理
0 k0 J+ X$ H5 o/ w35.实现数值常量加密
6 _9 g* j( B3 m) ]! _/ c36.实现字符串常量加密/ X, K# a% C' t. S* o& W
37.实现数组混淆
) L% O7 K' _; a& W$ m38.实现数组乱序
- U" [: {' F4 z# w. m( a39.实现十六进制与unicode字符串0 e9 ~ n/ X& `/ z) P3 @
40.实现标识符混淆
6 G- l& {6 l" h& K4 c) }& R41.标识符的随机生成
5 I) o' J4 n& j42.二项式转函数花指令
- F" u2 }( A- q: v4 _8 @1 I5 e43.代码的逐行加密
; ~; `( _4 j V3 I& }. G8 ^44.代码的逐行ASCII码混淆) s- m5 |0 W3 G- Z4 O# ?% E. B/ G0 \$ `
45.完整的代码与处理后的效果) T" O- _ h# w$ C7 V9 }
46.实现流程平坦化混淆1
$ q2 C6 x# h' W3 E) G/ I' D/ X: t% S47.实现流程平坦化混淆2$ ~4 W8 A! y8 F- ?) q. y
48.实现逗号表达式混淆1) o8 V6 r3 r1 s" d
49.实现逗号表达式混淆2
/ X+ j$ a1 }# {+ n, z50.分析网站使用的混淆手段
; `9 | b' F; D51.还原代码中的常量3 w/ e+ r" X$ n) [
52.花指令剔除思路1 m, }# y% F8 x$ t+ g/ a- ?
53.字符串花指令的剔除8 C8 B: ^' i3 b
54.函数花指令的剔除
4 |+ e; v0 ^% `, o- Y, v: D55.还原流程平坦化
3 g$ ~7 q5 @" A% ?; f1 V. | 3 w, A/ C6 _: I" P
|
|