当前位置: 首页 > news >正文

抖音 Web 请求签名机制分析:a_bogus 参数的逆向研究与 Python 实现探索(附源码)

从 Web 安全角度分析 a_bogus 签名生成流程:纯 Python 实现实践

你发个请求,返回 {"status_code": 10111, "status_msg": "invalid a_bogus"}——额……签名不对,直接拒绝。

市面上主流的方案是两种:

  1. execjs + JS 文件:每次算签名起一个 Node.js 子进程,慢,还要装运行时
  2. Selenium 补环境:跑一个完整浏览器,几百兆内存起步,容易被检测

我想要的很简单:纯 Python,不装 Node.js,不跑浏览器,依赖尽可能少。

果断网上搜了一圈,很贵!!!。那就自己搞。

二、过程

第一步:定位生成函数

抖音的 JS 经过 webpack + 混淆,变量名全是 teno。找生成函数就是顺着调用链往前追:从 axios.get(url, { params: { a_bogus: o() } }) 找到 o,再从 o 找到它里面调用的加密函数。Chrome DevTools 的 “Go to definition” 在 Source Map 不可用时不好使,更多是靠手动搜索函数体特征——比如找那一排硬编码的 256 长度的数组,那是 RC4 key scheduling 的标志。

找到目标函数后,复制出来格式化,逐行拆解。

第二步:逐块还原算法

1. SM3 哈希——算两次,但第二次的输入不是 hex 字符串

抖音没有用 MD5 或 SHA,用了国密 SM3。这个门槛直接过滤了一批只会 import hashlib 的人。

关键细节:算两次。

第一次:对 urlencode(params) + "cus" 做 SM3,输出 32 字节。

第二次:把第一次输出的 32 个裸字节(不是 hex 字符串,不是 ASCII 文本)再算一次 SM3。

我一开始理解错了第二次的输入形式,以为喂的是 hex 字符串(64 个 ASCII 字符),结果每字节都对不上。卡了两小时才在 JS 里打日志发现套的是 SM3(bytes.fromhex(h1))

参数要算一次(params + “cus”),HTTP 方法也要算一次(method + “cus”)。"c

http://www.jsqmd.com/news/1167753/

相关文章:

  • 2026年7月最新长春雷达官方售后服务网点地址及客服电话一览 - 亨得利钟表维修中心
  • Marp CLI 架构深度解析:从 Markdown 到专业演示文稿的技术实现
  • 2026严选乌鲁木齐名表名包奢侈品回收欧米茄帝舵万国爱马仕迪奥圣罗兰推荐实力门店排行高价回收隐私保障 - 谊识预商务
  • Ai产品经理学习
  • 自有抖店爆款批量衍生新款,抖掌柜 AI 商品裂变拓展流量池 - 抖掌柜
  • 2026年语音转换文字的软件实测对比:适合办公族,谁才是王者
  • doctorjs社区生态:贡献指南、问题解决和最佳实践分享
  • 抖音下载神器终极指南:如何一键保存无水印高清视频和完整直播
  • 3步将Windows电脑变成苹果设备专属投屏接收器:airplay2-win完全指南
  • 侦查阶段律师会见律所推荐:如何选择侦查阶段律师会见律师事务所? - 品牌深度评测
  • 3步掌握Python游戏开发:用FlapPyBird从零打造你的第一款2D游戏
  • 北京万国中国官方售后服务中心|全新维修地址及客服电话权威公示(2026年7月最新) - 万国中国服务中心
  • 2026年7月市场服务好的保温桶机构推荐,智能桶/格瓦斯桶/鲜啤桶/啤酒桶/灌装机/保鲜桶/清洗机,保温桶生产厂家哪个好 - 品牌推荐师
  • 终极防撤回解决方案:3步快速恢复微信QQ消息撤回功能
  • 跨境集运仓储管理系统架构设计:基于Redis分布式锁的库存超卖解决方案
  • 2026严选信阳名表名包奢侈品回收劳力士卡地亚积家香奈儿迪奥普拉达推荐口碑门店甄选高价回收服务贴心 - 谊识预商务
  • Kimi LeetCode 3534. 针对图的路径存在性查询 II Rust实现
  • 直流负载管理中继电器与微控制器的优化方案
  • 2026年7月最新常州积家官方售后联系电话与客户服务中心网点地址 - 积家官方售后服务中心
  • gift-book电子礼簿系统安全解析:完全离线环境下的数据保护方案
  • 2026年青岛空调维修回收出租行业靠谱服务商介绍:空调维修、移机加氟、回收出租服务商选择指南 - 海棠依旧大
  • 深入解析微信小程序反编译技术:使用unveilr探索小程序内部架构
  • 2026年7月最新南通芝柏官方售后联系电话与客户服务中心网点地址 - 亨得利官方服务中心
  • 163MusicLyrics技术深度解析:如何用开源工具破解音乐平台歌词获取难题
  • 3个秘籍免费解锁缠论分析:通达信ChanlunX插件实战指南
  • 钢都闲置黄金处置市场观察|2026 鞍山黄金回收行业乱象与正规渠道筛选科普 - 不晚生活号
  • 如何用免费神器轻松提取游戏文本:3个你不得不知的秘密
  • 2026严选伊犁名表名包奢侈品回收浪琴萧邦朗格爱马仕路易威登LV圣罗兰严选口碑门店排行零隐形费用安心交易 - 谊识预商务
  • 基于TPS61170与PIC32MZ的高效DC-DC升压转换设计
  • 嵌入式电源管理:MAX77654与STM32F334的高效方案