|
|
本课程属于JavaScipt防护与逆向进阶课程。JavaScript混淆与还原,是当下反爬虫与爬虫对抗的重要手段。本课程从JavaScript混淆原理开始,紧接着介绍Babel库提供的相关API。有了这俩基础,就可以开始着手自动化混淆和还原Java Script了,最后本课程还介绍了AST在实际案例中的应用,以帮助大家更好的融会贯通前面所学的内容。
/ Q' k' f% f2 A6 r4 m7 m课程内容:3 d! ^" I& @: I5 A
00.课程介绍% ?) @. [3 | T
01.环境配置. Q' l8 V5 e0 u0 R/ @1 m- _
02.对象属性的访问方式/ W0 u4 r6 H. Y- H: S% p
04.unicode字符串
$ X: Z. M$ J4 G8 J$ x; R/ D7 b05.字符串ASCII码混淆0 P3 Z; ^3 R& }7 Z4 x
06.字符串常量加密
& u# G& |2 Q& @; C" a1 E07.数值常量加密
9 M1 J6 S. A5 {4 W; N9 w08.数组混淆
' O( C6 l( Z. }0 e/ l5 k! @: V+ I09.数组乱序
6 f+ J9 J. @# k% m10.增加JS逆向工作量(花指令); U, p0 L4 P ^2 E) m$ E. W
11.jsfuck
8 }3 h) c7 i) }12.流程平坦化
& s& e% L* R7 C, x# c- [; e13.逗号表达式混淆1
8 z* ?8 Y4 w/ }14.逗号表达式混淆2* w* T( F0 k1 Y- b% X
15.eval加密
5 e6 _+ H2 Q" m- m/ O16.内存爆破
# W. G+ X: ]5 j7 X) S% @17.检测代码是否格式化' h2 S4 g" f+ X. C" E( I
18.AST的基本结构
/ M4 ^# u( M* D R19.代码的基本结构/ z6 }6 ]7 K& L" _& {, n
20.parser与generator
3 `4 _' Z5 X- b% r& o21.traverse与visitor- Z- d: L9 ~( S/ W# [) Q
22.types
) i0 \$ I a3 c4 v0 A3 R& v% a23.Path对象详解(Path与Node的区别)
8 t' @: j! s3 J% c% \% X8 B24.Path对象详解(Path中的方法) ~3 E& C: d' C
25.Path对象详解(父级Path)
5 D8 Q8 U* y9 c( a26.Path对象详解(同级Path)6 [4 I6 G1 s3 z" Z
27.scope详解(作用域)
" d) h& O' ~5 u1 @- G28.scope详解(Binding)' G4 ^6 ?* _3 u4 j' i
29.scope详解(referencePaths与constantViolations)1 f, S" ]" U5 ~$ U
3.十六进制字符串
0 @; @* s8 \* D30.scope详解(遍历作用域): p+ y; d# c" Z" i0 @5 v4 F
31.scope详解(标识符重命名)
* ?- y; ~# B$ {7 T32.scope详解(scope的其他方法)! i& g1 p. b0 I, n
33.改变对象属性的访问方式
' w- L6 n1 Y$ J0 F9 L) L f34.JS标准内置对象的处理8 N7 Y! f7 c% m! ]6 t8 Z
35.实现数值常量加密
( x6 T8 r0 N& I* @) S9 T' y$ C36.实现字符串常量加密1 A0 B" _- b% v, i/ t5 k1 c# t3 t+ ?
37.实现数组混淆6 m- S) a! @0 ~- G4 N: c7 j& b' d
38.实现数组乱序
5 W1 X6 E; Z1 I) \0 N39.实现十六进制与unicode字符串
9 S* q! N# _3 e+ I, B* O; v40.实现标识符混淆8 z0 m% B% N# G% g
41.标识符的随机生成
4 M. Q7 M& u% j+ V0 @/ Y4 \42.二项式转函数花指令" @0 T4 P+ ~" y7 F. ]
43.代码的逐行加密% d Y+ Y: S) {
44.代码的逐行ASCII码混淆
. {$ N5 ?- m# G8 a45.完整的代码与处理后的效果
2 D/ K7 d: m o* B# m: v46.实现流程平坦化混淆1
6 x4 C5 j3 v- I6 W8 w R47.实现流程平坦化混淆2" l! j3 z4 a- o( o2 z
48.实现逗号表达式混淆1+ B. [5 y4 j q) L; x% F* x
49.实现逗号表达式混淆2, P* s5 k* |4 v0 |% ^" ^
50.分析网站使用的混淆手段& U7 ?. ]. T' n$ {
51.还原代码中的常量
% n4 G h s/ S' C" R52.花指令剔除思路/ n7 N% ~ J. z' A; Z
53.字符串花指令的剔除
* q; \& [8 J1 O" ^5 X0 B4 ?4 q2 b54.函数花指令的剔除
' b* v" A' X" h# A% j* o4 V55.还原流程平坦化. o I3 t$ @' r/ B. S+ F
. Q, T: A4 h% G- X! J* ^
|
|