web直播弹幕抓取分析 signature

news/2025/2/8 14:36:08 标签: java, go, python, node.js, 直播弹幕, signature

声明:
本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!
前言

最近遇到太多难点了卡了很久,魔改编译node,和直播弹幕dy/tiktok简单记录一下。进阶卡了好几天。

逆向过程

我也看了很多人开源了但是基本都是用不了的。不是417就是415补环境基本没补所以很容易被检测。我就随便照着网上开源项目改改就好了。

cp = execjs.compile(open('./abogus.js', 'r', encoding='utf8').read())
params = cp.call('getAb', roomId)
print(params)
response = requests.get('/webcast/im/fetch/', params=params, cookies=cookies,headers=headers)
response = Response().parse(response.content)
internal_ext=response.internal_ext
cursor=response.cursor
cp=execjs.compile(open('./sign.js',encoding='gbk',errors='ignore').read())
signature=cp.call('getSign',self.room_id)['X-Bogus']
wss = f'******&room_id={self.room_id}&heartbeatDuration=0&signature={signature}'

signature代理补一下

function get_enviroment(proxy_array) {
    for (var i = 0; i < proxy_array.length; i++) {
        handler = '{\n' +
            '    get: function(target, property, receiver) {\n' +
            '        console.log("方法:", "get  ", "对象:", ' +
            '"' + proxy_array[i] + '" ,' +
            '"  属性:", property, ' +
            '"  属性类型:", ' + 'typeof property, ' +
            // '"  属性值:", ' + 'target[property], ' +
            '"  属性值类型:", typeof target[property]);\n' +
            '        return target[property];\n' +
            '    },\n' +
            '    set: function(target, property, value, receiver) {\n' +
            '        console.log("方法:", "set  ", "对象:", ' +
            '"' + proxy_array[i] + '" ,' +
            '"  属性:", property, ' +
            '"  属性类型:", ' + 'typeof property, ' +
            // '"  属性值:", ' + 'target[property], ' +
            '"  属性值类型:", typeof target[property]);\n' +
            '        return Reflect.set(...arguments);\n' +
            '    }\n' +
            '}'
        eval('try{\n' + proxy_array[i] + ';\n'
            + proxy_array[i] + '=new Proxy(' + proxy_array[i] + ', ' + handler + ')}catch (e) {\n' + proxy_array[i] + '={};\n'
            + proxy_array[i] + '=new Proxy(' + proxy_array[i] + ', ' + handler + ')}')
    }
}

总结

总结

1.出于安全考虑,本章未提供完整流程,调试环节省略较多,只提供大致思路,具体细节要你自己还原,相信你也能调试出来。


http://www.niftyadmin.cn/n/5844974.html

相关文章

122,【6】buuctf web [护网杯2018] easy_tornado

进入靶场 出现了3个文件 点击看看 都点击看看 得知flag所在目录 render在 Web 开发框架中常常出现 cookie_secret 是一个用于对 Cookie 进行签名或加密的密钥。 意味着我们现在需要先找到 cookie_secret 在请求里有cookie&#xff0c;但都不显示cookie&#xff0c;反观三个…

神经网络|(八)概率论基础知识-二项分布及python仿真

【1】引言 前序已经学习了古典概型、条件概率、全概率公式和贝叶斯公式&#xff0c;它们作为基础&#xff0c;解释了事件发生及其概率的对应关系&#xff0c;相关文章链接为&#xff1a; 神经网络|(四)概率论基础知识-古典概型-CSDN博客 神经网络|(五)概率论基础知识-条件概…

在rtthread中,scons构建时,它是怎么知道是从rtconfig.h找宏定义,而不是从其他头文件找?

在rtthread源码中&#xff0c;每一个bsp芯片板级目录下都有一个 SConstruct scons构建脚本的入口&#xff0c; 在这里把rtthread tools/目录下的所有模块都添加到了系统路径中&#xff1a; 在tools下所有模块中&#xff0c;最重要的是building.py模块&#xff0c;在此脚本里面…

智慧交通:如何通过数据可视化提升城市交通效率

随着城市化进程的加速&#xff0c;交通管理面临着前所未有的挑战。为了应对日益复杂的交通状况&#xff0c;智慧交通系统应运而生&#xff0c;其中数据可视化技术成为了提升交通管理效率的关键一环。本文将探讨如何利用山海鲸可视化软件来优化交通管理&#xff0c;并展示其在智…

3.1 可视化算子编程语言

HuggingFists的VO编程语言与常见的其它编程语言有一定的区别。其语言由两种不同的语法特征构成。一部分以可视化算子作为语法基础(简称&#xff1a;VO-O)&#xff0c;辅助使用者可视化的完成数据处理/分析流程的编写&#xff1b;一部分采用表达式语法(简称&#xff1a;VO-E)&am…

python编程-类结构,lambda语法,原始字符串

一个类的基本结构包括以下部分&#xff1a; 类名&#xff1a;用来描述具有相同属性和方法的对象的集合。 属性&#xff1a;类变量或实例变量&#xff0c;用于处理类及其实例对象的相关数据。 方法&#xff1a;在类中定义的函数&#xff0c;用于执行特定操作。 构造器&#xff…

Ubuntu 下 nginx-1.24.0 源码分析 - ngx_write_stderr函数

定义 在ngx_log.h 中 static ngx_inline void ngx_write_stderr(char *text) {(void) ngx_write_fd(ngx_stderr, text, ngx_strlen(text)); } 在开发软件时&#xff0c;尤其是像 Nginx 这样复杂的服务器软件&#xff0c;开发者需要一种方法来输出调试信息或者错误信息。这段代码…

基于asr的所见即可说方案

年前写的文章对所见即可说方案进一步调研-CSDN博客&#xff0c;针对rk3568定制版&#xff0c;进行了Accessibility实现所见即可说功能的验证与调研&#xff0c;结论是不可行。 最终解决方案是&#xff1a;结合科大讯飞的AI大模型智能助手&#xff0c;使用rk3588板&#xff08;…