1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > JS逆向 -8-16 网易云音乐 params encSecKey参数

JS逆向 -8-16 网易云音乐 params encSecKey参数

时间:2023-10-02 06:28:47

相关推荐

JS逆向 -8-16 网易云音乐 params encSecKey参数

声明:文章仅供学习,禁止非法用途,侵权请告知删除

文章目录

前言一、网页分析二、参数获取1.参数定位2.参数解密 三、部分代码结尾

前言

地址:aHR0cHM6Ly9tdXNpYy4xNjMuY29tLyMvc29uZz9pZD0yNTcwNjI4Mg==


一、网页分析

选择xhr面板,多翻几页,多抓几次包,下面是评论参数的接口,记住这个部分:weapi/comment/resource/comments/get

POST请求,表单数据需要提交 params 和 encSecKey 都是动态的


二、参数获取

1.参数定位

快捷键 Ctrl+Shift+F 全局搜索 encSecKey 参数,因为搜索 params 的参数搜出来的比较多

可疑的地方打上断点进行翻页操作,用来定位参数加密位置,可以取消断点,去xhr面板里面验证加密参数是否与这边加密的一致

2.参数解密

上面可以看到 params 和 encSecKey 使用了 bUG7z 对象里面属性值,而bUG7z是由下面的代码生成的,window.asrsea是一个函数

var bUG7z = window.asrsea(JSON.stringify(i9b), bsB3x(["流泪", "强"]), bsB3x(WU8M.md), bsB3x(["爱心", "女孩", "惊恐", "大笑"]));

调试多次发现,可以确定,这三个传入的参数都是常量

所以翻页是跟 JSON.stringify(i9b) 这个有关

这边有一个需要注意的地方,在调试的时候,window.asrsea会执行多次

需要时刻注意右边Scope面板中的Y9P的值是否是评论的接口

进入window.asrsea 这个函数,可以看到下面的这段关键的代码

可以看到是 AES 和 RSA 加密,可以自行判断一下是否是标准库加密的,可以去在线的网站测试一下,这边帮大家试过了,是标准库加密,所以有两种方法解决:1是用python的加密库重写加密的逻辑、2是直接抠js代码

博主采用的是第二种方式,缺啥补啥


三、部分代码


结尾

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。