接上节课内容

JS逆向 -- 分析某站buvid3和_uuid的加密过程

JS逆向 -- 分析某站b_lsid值加密过程

一、清除cookie信息,刷新网页,ctrl+f搜索sid,这样找到的数据是在url里或者响应信息里面,全局搜索找到的一般都是在js里面的数据,找到一个v2的数据包,里面有setcookie

二、该数据包是get请求,分析里面的请求数据

https://api.bilibili.com/x/player/wbi/v2?aid=400789390&cid=1119048652&w_rid=b18731f67c5be2da813395f8a884ccdd&wts=1683797034

1、aid和cid

刷新视频页面,ctrl+f搜索aid,发现aid和cid,还有视频阅读量,就在网页源码中,所以可以直接python代码实现

代码实现

import requests
import reheaders = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.75 Safari/537.36'
}
url = 'https://www.bilibili.com/video/BV1TW4y1x73q/?spm_id_from=333.788.recommend_more_video.11'响应数据 = requests.get(url, headers=headers).text
正则结果 = re.search('"stat":\{"aid":(?P<aid>\d+),"view":(?P<view>\d+),"danmaku', 响应数据)
aid=正则结果.group("aid")
视频播放量=正则结果.group("view")
cid=re.search('"cid":(.*?),"dimension"', 响应数据)
print(aid,cid.group(1),视频播放量)

2、w_rid

w_rid出现了三次,都不一样,我们要的是最下面的值v2里面的w_rid

在关键代码处全部下断

第一次断下

第二次断下

重新ctrl+f重新搜索w_rid,V2数据包中w_rid是第二次断下来的值

重新刷新页面,第二次断下,然后追数据,最后加密值来自于h

h = o()(p + i),p的值是:"aid=945189005&cid=892094702&wts=1684220967"

i第值是固定值:caa9ea6e1ec3e32c3efa79550f4b416a

最后的结果是32位数值,我们猜测是md5加密,经过测试,也确实是md5加密

三、重新构造数据包,实现V2的发送

import requests
import re
import execjs
import timeheaders = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.75 Safari/537.36'
}
url = 'https://www.bilibili.com/video/BV1TW4y1x73q/?spm_id_from=333.788.recommend_more_video.11'响应数据 = requests.get(url, headers=headers).text
正则结果 = re.search('"stat":\{"aid":(?P<aid>\d+),"view":(?P<view>\d+),"danmaku', 响应数据)
aid=正则结果.group("aid")
视频播放量=正则结果.group("view")
cid=re.search('"cid":(.*?),"dimension"', 响应数据)
print(aid,cid.group(1),视频播放量)def getwrid(aid,cid,r):node = execjs.get()fp = open('jiami.js', 'r', encoding='utf8')ctx = node.compile(fp.read())a="aid="+aid+"&cid="+cid+"wts="+str(r)+"caa9ea6e1ec3e32c3efa79550f4b416a"res='MD5_Encrypt("%s")'%(a)print(res)return res
url='https://api.bilibili.com/x/player/wbi/v2'
r = int(time.time() * 1000)
print(r)
w_rid=getwrid(aid,cid.group(1),r)
print(w_rid)
参数={'cid':cid.group(1),'aid':aid,'w_rid':w_rid,'wts':r
}
res=requests.get(url,params=参数,headers=headers)
sid = res.cookies.get_dict()['sid']
print(sid)

JS逆向 -- 分析某站aid、cid、w_rid和sid的加密过程相关推荐

  1. JS逆向分析新浪某站登录处RSA加密

    文章目录 前言 RSA加解密 核心思想 Pyhon实现 NoPadding 新浪网实战 JS加密分析 JS函数调试 Py调用脚本 BurCrypto爆破 插件介绍 实战案例 总结 前言 在渗透测试过程 ...

  2. QAX答题页面js逆向分析(二)

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.通过前端js解密,获取答案 二.通过Python,模拟请求完成自登录到答题的所有操作. 1.引入库 2. 程序结构 ...

  3. 轻JS逆向分析“攒经验”项目之某交易所Sign加密参数逆向分析

    最近忙着在搞大数据相关的东西,没什么太多时间去研究复杂的JS,所以给大家来几个练手的网站"攒攒经验"吧!这次出的系列是<轻JS逆向分析"攒经验"项目> ...

  4. js aes加密_某高考咨询网js逆向分析笔记

    一.某高考资讯网逆向分析 某网站的js加密分析,安全签名signsafe + HmacSHA1 + AES 一年前分析过网站数据还没有加密,最近需要获取新的数据发现原先的爬虫失效,请求和响应都经过加密 ...

  5. 秀动抢票教程,JS逆向分析与学习

    Its finally music festival ! 经济好转,又有好多演出和音乐节可以看了,无奈黄牛实在太猖狂,只能自己想想办法. 之前写过JS模拟点击下单的脚本,但是太太太慢了,模拟点击下单过 ...

  6. QQ音乐JS逆向分析参数,爬它,多图预警

    昨天看一个哥们的文章说是MD5加密,自己试了试,不知道怎么出错了,所以就老老实实JS逆向了,但真的是MD5加密 分析一下要获得的参数 这次用逆推的方式,应该好理解 1.开发者模式,媒体C40000开头 ...

  7. 国家税务总局全国增值税发票查验平台网站js逆向分析及全逆向算法还原

    本文教程针对的是2021年7月2日时国税查验平台的js分析,其中版本号为V2.0.06_009.主要分析内容为key9和flwq39以及fplx这3个参数的算法,其中key9分为获取验证码阶段和查验阶 ...

  8. js逆向分析实战之七麦数据

    1.介绍:   要分析的网站是:https://www.qimai.cn/rank   ①当你打开网站,打开控制台的时候,网站有debugger检测,会陷入一个死循环,让你无法调试,如下图:   ②在 ...

  9. 网易某歌曲参数JS逆向分析,多图预警

    之前写过一篇网易云的文章,但是一直不过审,这几天搞QQ音乐的爬虫,JS逆向不是很顺利,有点忘了怎么搞了,所以今天打断点重搞一把网易云音乐,毕竟是之前搞过的 找加密函数 最下面有个url就是歌曲mp3文 ...

最新文章

  1. vue 返回滚动条顶部组件_vue中回到顶部
  2. java的注释规范_Java代码注释规范
  3. 008 释放技能call分析
  4. 抖音之后,互联网失去创造力
  5. 【2012百度之星/资格赛】J:百度的新大厦
  6. python计算圆的面积
  7. 将堆栈异常返回前端显示
  8. 绘制完成的cad图纸文件应使用哪一款看图软件进行查看?
  9. 百度api翻译html,帮助文档首页
  10. ZigBee网络数据传递流程_基于ZigBee远程通信的水质监测系统设计
  11. 如何在安装时备份sis文件
  12. 0x03数据类型和变量
  13. Win10没有蓝牙功能怎么办 win10蓝牙图标不见了怎么办
  14. 【网络安全】应用实践题(无答案)
  15. 在高分辨率屏幕上用VMware运行ubuntu显示过小的问题
  16. CAD二次开发——通过Ribbon界面来运行程序
  17. 2022年氯化工艺考试内容及氯化工艺考试报名
  18. 用户体验五要素_新零售「盒马」的用户体验设计5要素
  19. eclipse debug 执行到断点处并没有停下,断点无效问题
  20. 筑讯材料·土|地漏小百科

热门文章

  1. 动态规划实现最优二叉树
  2. Oracle 11g 新建数据库
  3. exchange partition中including indexes命令失效
  4. 兰州市2021高考成绩怎么查询,兰州2021高考成绩排名榜单,兰州各高中高考成绩喜报...
  5. Python基础入门介绍
  6. 人车识别系统 YOLOV3 人车识别测试
  7. 利用cmd执行adb(os.popen、os.system)
  8. VirtualBox虚拟机与主机之间复制粘贴设置以及文件拖拽
  9. 决策树信息增益|信息增益比率|基尼指数实例
  10. java 非常好用的反射框架Reflections