抖音-python|抖音新版signature分析

因为老策略一直能用,一直没有看新版signature。本文做一下分析记录。

文章目录

    • 断点调试
    • 流程分析
    • 流程总结
    • 个人汇总专栏

断点调试 堆栈进来之后,url中signature已经有了
抖音-python|抖音新版signature分析
文章图片

shift+f11 往前找,找到了还没signature的位置,然后断点
抖音-python|抖音新版signature分析
文章图片

重新触发请求
抖音-python|抖音新版signature分析
文章图片

这里目前是没有signature的
抖音-python|抖音新版signature分析
文章图片

F9 F11都行,单步往下走
抖音-python|抖音新版signature分析
文章图片

过了一会儿能看到g.send(d)
抖音-python|抖音新版signature分析
文章图片

这里是XMLHttpRequest 的 send 请求。
抖音-python|抖音新版signature分析
文章图片

send下一步到_0x2856c7方法
这里进行处理之后再返回到 XMLHttpRequest.prototype.send ,此时有了signature
抖音-python|抖音新版signature分析
文章图片

流程分析 经过仔细调试,定位点可在 8988.384447be.js 中的v(n)方法处,更方便协助分析。
抖音-python|抖音新版signature分析
文章图片

从这F11能看到具体逻辑
抖音-python|抖音新版signature分析
文章图片

抖音-python|抖音新版signature分析
文章图片

d(t)处理完之后到 38413: function(e) 这里
抖音-python|抖音新版signature分析
文章图片

然后继续走,到request
抖音-python|抖音新版signature分析
文章图片

经过调试,可以看出在request中对请求的method、url的params、headers的user-agent和cookie进行了处理。
然后到ob混淆的webmssdk中进行计算
抖音-python|抖音新版signature分析
文章图片

各种处理后,再返回到 XMLHttpRequest.prototype.send中的 nativeXMLHttpRequestSend,此时已经有了signature。
流程总结 所以最终的流程是XMLHttpRequest触发请求,此时走了自定义的send,到f.request中先处理下参数,然后到webmssdk计算,最后返回到XMLHttpRequestSend完成正常Http请求。
还原的话,大家可以按照流程进行分析,webmssdk可以解混淆一下放到控制台调试,自行补全参数调用。
个人汇总专栏 专栏以教学为基准,提供的可操作性不得用于任何商业用途和违法违规场景。
网络爬虫基础 : 适合有python语法基础的同学
web逆向基础 : Js逆向案例,有爬虫经验即可
爬虫案例合集 :工作中的案例总结,持续更新
安卓逆向基础 :工具介绍、逆向记录、案例分享
签名逆向合集 :安卓逆向,签名案例,持续更新
【抖音-python|抖音新版signature分析】Github代码库:lxSpider

    推荐阅读