欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 创投人物 > 猿人学js逆向比赛第一届第九题

猿人学js逆向比赛第一届第九题

2025/6/21 14:24:00 来源:https://blog.csdn.net/m0_62945506/article/details/148800993  浏览:    关键词:猿人学js逆向比赛第一届第九题

首先遇到了udc文件中的无限debugger,这里利用ast进行代码还原,处理后有下面两个监测点,进行手动删除。

在这里插入图片描述

在这里插入图片描述

看到页面中的js也被混淆了,这里将页面中的js也处理一下再替换到原始页面中。同时要注意删除处理后代码中的一些格式化检测。如下面这样。

在这里插入图片描述

经过手动删除无效代码后得到了下面的js

在这里插入图片描述

那么这就很明显了,这是循环3次调用 decrypt函数然后得到最后一次的结果并加了m和r得到cookie

在这里插入图片描述

通过进入decrypt函数中可以看到这应该是一个rsa算法。这里首先按照标准算法尝试。

因为传入的参数看着像时间戳,可以判断出这个参数应该是动态的,所以这里要从页面中动态取出。

t = re.search(r'decrypt,\'(\d+)\'', response.text)
if t:t = t.group(1)print(t)

通过正则表达式可以从页面中取出这个时间戳。

在这里插入图片描述

经过手动拼接后更新cookie再次访问,可以看到已经能正常访问到页面数据了。虽然可以正确拿到页面数据了,但是访问api是被拒绝的。

在这里插入图片描述

这里还是怀疑m生产的不对,所以这里重新比较了m重新还原了一次页面的代码。

在这里插入图片描述

可以看到这里的m循环次数不再是3次了,那么重新从页面中匹配出循环次数再试一下。重新设置完之后还是无法拿到页面数据。这里尝试从原js代码中抠取加密函数。可以看到没有问题了。

在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词