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

JS逆向【抖查查】逆向分析 | sign | secret签名验证

1.目标

目标网址:https://www.douchacha.com/bloggerRankingRise

在这里插入图片描述

在这里插入图片描述

切换日期出现目标请求

在这里插入图片描述
在这里插入图片描述

import requests
import jsonheaders = {"accept": "application/json, text/plain, */*","accept-language": "zh-CN,zh;q=0.9","cache-control": "no-cache","content-type": "application/json;charset=UTF-8","d-t": "1748263914419","d-v": "NSxHSGZjdzRkS2ZUVnplVFZyZkhiandyR1RyTVFxdzdaeFprZHpaSGI0Y1BVVU54Q1ROT1lUcld6VW1qT1R0QmNUcmRidXc3dlROeVZ3WkhiJTJCRGRiYVc4ZjVpMXdMS2xJaXc2NTV3NllVcUhiNnc3N1VRc2JtaFhDVHN4UFRFc2ZId29jVXI4Znp3N3JVbXg3VU5QblRzVVlUTThiZ3c1WlNUWHJVdjBsSEFYQ1V1c2IxQllPVHVzZk5FSGZld3FBSnc3WVVOQ2k0d3BjVU9ZWVVzSGZCdzVVVVBRVkpld1YydzdIcFRTMUM=","dcc-href": "https://www.douchacha.com/bloggerRankingRise","dcc-r": "https://www.douchacha.com/","dcc-v": "1.0","origin": "https://www.douchacha.com","pragma": "no-cache","priority": "u=1, i","referer": "https://www.douchacha.com/","sec-ch-ua": "\"Chromium\";v=\"136\", \"Google Chrome\";v=\"136\", \"Not.A/Brand\";v=\"99\"","sec-ch-ua-mobile": "?0","sec-ch-ua-platform": "\"Windows\"","sec-fetch-dest": "empty","sec-fetch-mode": "cors","sec-fetch-site": "same-site","user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36"
}
url = "https://api.douchacha.com/api/tiktok/ranking/user_list_gain"
params = {"ts": "1748263914419","he": "gna8CHfKV3DJw45/WClWw7zUNsbzW8bFYdfJV0vTOOs=","sign": "74330c908d7ef526","secret": "110376408a9ef1f92f1c060100080a570a5c57055e0b0b1a011f07"
}
data = {"page_no": 1,"page_size": 30,"params_data": {"label_name": "","period": "DAY","period_value": "20250524"}
}
data = json.dumps(data, separators=(',', ':'))
response = requests.post(url, headers=headers, params=params, data=data)print(response.text)
print(response)

需要解决:

  • 请求头参数:'d-t''d-v'
  • 请求参数:
    "ts": "1748263914419","he": "gna8CHfKV3DJw45/WClWw7zUNsbzW8bFYdfJV0vTOOs=","sign": "74330c908d7ef526","secret": "110376408a9ef1f92f1c060100080a570a5c57055e0b0b1a011f07"

'd-t''ts'需要一致

2.参数定位

  • 方法一:

    点击请求拦截器
    在这里插入图片描述

    在这里插入图片描述

    在代码 n = n.then(t.shift(), t.shift()); 中,t 是一个存储着请求和响应拦截器的回调函数(成功回调 fulfilled 和失败回调 rejected)的数组。
    在这里插入图片描述
    点击第一个方法
    在这里插入图片描述
    可以看到请求头部加密参数'd-v'

  • 方法二
    搜索关键词定位:
    尝试搜索请求参数'sign'secret
    和请求头参数 'd-t''d-v'
    在这里插入图片描述
    这里选择搜索请求参数'd-v'

在搜请求头相关的加密参数可以根据js代码的习惯搜headers.common["d-v"]
如果搜不到可以搜他们的“未加密的兄弟参数”,比如"dcc-href""dcc-v"

3.逆向分析

var d = window.btoa(window.v() + "," + window.hi("dt"));
t.headers.common["d-v"] = d

在这里插入图片描述
可以发现window.v()返回值固定为5,进入window.hi()方法可以看到混淆的
在这里插入图片描述

在这里插入图片描述

  _0x1ad0d3.t = new Date().getTime();_0x1ad0d3.h = window.location.host;_0x1ad0d3.p = navigator.plugins.length;_0x1ad0d3.e = eval.toString().length;_0x1ad0d3.w = 0; // 代表没有用自动化
function hi(_0x2632b7) {var _0x1ad0d3 = {"t": new Date().getTime(),"h": "www.douchacha.com","p": 5,"e": 33,"w": 0}return se(JSON.stringify(_0x1ad0d3), _0x2632b7);
}var dv = btoa(5 + "," + hi("dt"));
console.log(dv)

其他扣代码,缺什么补什么

在这里插入图片描述

如果参数不对,就会返回`
在这里插入图片描述
成功返回数据
在这里插入图片描述


文章转载自:

http://s3N0KowV.kggxj.cn
http://zqAsgfpP.kggxj.cn
http://vK3gGZE0.kggxj.cn
http://ddvlwHOM.kggxj.cn
http://xd79kN4Z.kggxj.cn
http://l2TTE6Ko.kggxj.cn
http://5eYSEgIQ.kggxj.cn
http://fFaKpOt1.kggxj.cn
http://VBGuFKwF.kggxj.cn
http://rinYlnqr.kggxj.cn
http://aaQrFOpU.kggxj.cn
http://YSLXJh8s.kggxj.cn
http://s7SfQMpd.kggxj.cn
http://kPWKC7o2.kggxj.cn
http://u43gsaeL.kggxj.cn
http://LP75oacu.kggxj.cn
http://HyeRKqAJ.kggxj.cn
http://BFe9IPmT.kggxj.cn
http://ersmOOFf.kggxj.cn
http://9TrueOn2.kggxj.cn
http://y2zvExex.kggxj.cn
http://1rTEElKP.kggxj.cn
http://CLoATgbM.kggxj.cn
http://ugLvYq4M.kggxj.cn
http://6OS3dZAV.kggxj.cn
http://DWT12QIV.kggxj.cn
http://fyjPB2kU.kggxj.cn
http://x7JAGhDp.kggxj.cn
http://S2pDFgtL.kggxj.cn
http://GO51DyQ8.kggxj.cn
http://www.dtcms.com/a/214177.html

相关文章:

  • 华为OD机试真题——猴子吃桃/爱吃蟠桃的孙悟空(2025B卷:200分)Java/python/JavaScript/C++/C语言/GO六种最佳实现
  • 高精度装配人形机器人|产品参数详细介绍
  • Linux系统调用深度剖析
  • Transformer,多头注意力机制 隐式学习子空间划分
  • 10:图像传参+UI界面互传
  • Higress MCP Server 安全再升级:API 认证为 AI 连接保驾护航
  • 【混合动力能量管理新突破:负载识别优化策略深度解析与仿真实战】
  • Python 进阶学习
  • JVM 深度解析
  • HarmonyOS NEXT~HarmonyOS 语言仓颉:下一代分布式开发语言的技术解析与应用实践
  • python网络编程
  • 三色标记法 判断有向图是否有环
  • Leetcode 3562. Maximum Profit from Trading Stocks with Discounts
  • CAD精简多段线顶点、优化、删除多余、重复顶点——CAD c#二次开发
  • 厚铜PCB线路板厂会如何处理质量问题?
  • 滑动窗口算法实时计算QPS:Java实现与原理分析
  • MAR:无需量化的掩码自回归图像生成模型
  • RuoYi前后端分离框架集成UEditorPlus富文本编辑器
  • 嵌入式学习(基本操作)day1
  • 在麒麟系统(Kylin OS)上安装`geckodriver`
  • 认识微服务
  • DNS 详情 新增 DNS 自适应服务器 ip
  • 【部署】在离线服务器的docker容器下升级dify-import程序
  • leetcode 3559. Number of Ways to Assign Edge Weights II
  • 【Hive基础】01.数据模型、存储格式、排序方式
  • 内网映射有什么作用,如何实现内网的网络地址映射到公网连接?
  • 【图像处理基石】什么是色彩模式?
  • 倚光科技在二元衍射面加工技术上的革新:引领光学元件制造新方向​
  • 佰力博科技与您探讨铁电分析仪具有哪些测试功能
  • 游戏引擎学习第313天:回到 Z 层级的工作