猿人学 第一题 js混淆-源码乱码
题目地址 https://match.yuanrenxue.cn/match/1
打开F12发现有无限debugger,右键选择Never pause here
查看请求发现m被加密
点进去下断点
发现window.match1就是m
把断点改到window.match1赋值的位置,再查看堆栈向上找
进入了VM,并且观察可知,m由window.f + 时间戳进行计算得到
看似oo0O0函数啥也没干,其实window.f就是在oo0O0函数里赋的值
进入函数发现看不懂,好多乱码,直接把script里全扣下来
window.c = $(‘script’).length - 11;直接把这个值定死为5
少window.a,就去上面把window.a也扣下来
这个题还有一个特别坑人的地方m中间的分割线不是 | ,好像是个汉字,肉眼根本无法区分,硬控我半小时
整体代码如下
https://github.com/A-pipi/yrx_spider