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

某麦网抢票协议算法

最近演唱会增多,总是抢不到票,所以想从回流票入手,做一个某麦网的演唱会回流票的监控。

最简单的方向就是从网页端入手。

在演唱会页面看到网页端不支持购买,不慌,咱只是看看有没有票不购买,直接抓包随便一个音乐节的票量接口。

经过抓包得到以下两个链接,分别是

场次接口:

https://mtop.damai.cn/h5/mtop.alibaba.damai.detail.getdetail/1.2/?jsv=2.7.2&appKey=12574478&t=1696836862157&sign=8f6f6d430ae53782832c28c208c9c246&api=mtop.alibaba.damai.detail.getdetail&v=1.2&H5Request=true&type=originaljson&timeout=10000&dataType=json&valueType=original&forceAntiCreep=true&AntiCreep=true&useH5=true&data=%7B%22itemId%22%3A739853478245%2C%22platform%22%3A%228%22%2C%22comboChannel%22%3A%222%22%2C%22dmChannel%22%3A%22damai%40damaih5_h5%22%7D

座次接口:

https://mtop.damai.cn/h5/mtop.alibaba.detail.subpage.getdetail/2.0/?jsv=2.7.2&appKey=12574478&t=1696837077937&sign=2000a8d025a2b8ff407be20a671b5e48&api=mtop.alibaba.detail.subpage.getdetail&v=2.0&H5Request=true&type=originaljson&timeout=10000&dataType=json&valueType=original&forceAntiCreep=true&AntiCreep=true&useH5=true&data=%7B%22itemId%22%3A%22739853478245%22%2C%22bizCode%22%3A%22ali.china.damai%22%2C%22scenario%22%3A%22itemsku%22%2C%22exParams%22%3A%22%7B%5C%22dataType%5C%22%3A2%2C%5C%22dataId%5C%22%3A%5C%22211839138%5C%22%2C%5C%22privilegeActId%5C%22%3A%5C%22%5C%22%7D%22%2C%22platform%22%3A%228%22%2C%22comboChannel%22%3A%222%22%2C%22dmChannel%22%3A%22damai%40damaih5_h5%22%7D

经过验证headers是统一的不会变也没有加密参数,cookie也是一致的但有未知参数**_m_h5_tk**、_m_h5_tk_enc

而这两个接口里的参数大同小异,分别如下

场次接口:

座次接口:

可以看到其中关键参数就是t、sign、data,其他参数都是固定的。

其中data显而易见,场次接口的itemId就是这个演出的id,其他参数固定;座次接口的itemId是演出id,dataId就是当前场次的id(例如10.21场),其他参数固定。

接着我们可以打断点看一下这个t和sign是如何生成的。F12调出控制台,下一个xhr断点,可以直接打到"sign"上,也可以打到对应链接上。

刷新一下页面触发断点,找到对应的请求发起js文件。

在这个文件里简单调试下很容易就能找到加密函数

可以看到这个函数就是将token、c、s、data,以&进行分隔拼接,然后再进行加密得到sign。

其中token暂时未知,c就是url参数中的t时间戳,s就是url参数中的appKey固定值,data就是url参数中的data的json字符串,简单拼接就行。

所以现在就剩token未知,在函数上打个断点看看:

发现这个token很眼熟,回头看看我们请求所需的cookie,这个token就是cookie中**_m_h5_tk的前半部分,直接拿过来用就可以。

我们拿相同的参数去网上的在线md5加密一下,发现加密结果一致,即这个加密函数就是简单的md5加密。

现在所需要知道的就是_m_h5_tk是如何产生的,直接回到首页,删除cookie缓存重新抓包,找到set-cookie的那一条请求就行。

可以发现只要在token失效之后,随便发起一条请求携带过期的sign,就会返回新的_m_h5_tk**,这下大功告成了。

最后再加上VX推送提示,或者其他通知app接口,就完成了回流监控。

http://www.cnnetsun.cn/news/53544.html

相关文章:

  • 新一代空间感知驱动的军工仓库与硐室透明化管控技术研究
  • Sketch MeaXure插件:设计师必备的智能标注工具
  • 强化学习Q-learning求最优策略
  • 你对电脑上的【Fn】熟悉多少
  • 计及N-k安全约束的含光热电站电力系统优化调度模型【IEEE14节点、118节点】附Matlab代码
  • 计及需求响应的粒子群算法求解风能、光伏、柴油机、储能容量优化配置附Matlab代码
  • conda使用详细指南
  • 豆包与DeepSeek底层大模型的深度解析:技术架构、设计理念与生态分野
  • Linux系统中的socket激活:先创建监听端口,后启动程序
  • 从零解决pyproject.toml构建失败的实战指南
  • Redis Lua脚本入门:从零写出你的第一个原子操作
  • 旧机转手不再慌!电子产品信息清除新国标落地,核心技术逻辑全解析
  • 安全体验馆好用供应商
  • 第二章——数据分析场景之Python数据可视化:用Matplotlib与Seaborn绘制洞察之图
  • 【Java毕设全套源码+文档】基于springboot的高校毕业生离校管理系统小程序设计与实现(丰富项目+远程调试+讲解+定制)
  • 如何用AI工具jstat优化Java应用性能分析
  • 【Java毕设全套源码+文档】基于springboot的高校毕业生信息管理系统的设计与实现(丰富项目+远程调试+讲解+定制)
  • Day 38 GPU训练及类的call方法
  • 【Python实战】火爆全网的“隔空手势画板”是如何实现的?教你用OpenCV+MediaPipe复刻钢铁侠黑科技!
  • 【学习笔记】如果打造可复现、可评测、可迭代的AI技术体系
  • 【论文自动阅读】See Once, Then Act: Vision-Language-Action Model with Task Learning from One-Shot Video Demo
  • 利用齐次坐标系证明各种几何定理【射影几何】
  • 小程序基于springboot的乡镇普法知识科普宣传系统 律师预约系统设计与实现_qf4cwws6(java毕业设计项目源码)
  • 面向对象编程三大特性:封装、继承、多态的核心要义
  • leetcode 2147. 分隔长廊的方案数 困难
  • 学生党必备!这款桌面课表工具太省心了
  • 深度学习实验14代码
  • 优化及性能-–-behaviac
  • 练题100天——DAY26:汇总区间+丢失的数字+数组交集
  • 当AI芯片不再性感:博通的高增长,为何成了催命符?