JS逆向解密秀动app(网页接口)实现抢票python异步请求

Posted NorthGo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS逆向解密秀动app(网页接口)实现抢票python异步请求相关的知识,希望对你有一定的参考价值。

   HI,上一期我出了js逆向解析五邑大学的AES加密实现模拟登录,后台不少人想让我去解析一下秀动app,去实现抢票。我看因此本文就是介绍如何去实现js逆向解析秀动网页端口实现抢票。

(本文拿最近的场:广州姜云升2022巡演)

一.逆向分析过程

首先,我们想要进入下单的页面也就是构造我们的下单url,我们只有构造好网页下单的url才可以进行网页下单操作:

                                                                       图1

构造好的url如上图1所示,因此,我们进行下单页面的分析:

1.当我们购票时,我们先必须要登陆,你不登陆,系统怎么知道谁在买票,所以我们先要登陆

我的解决方案:(直接用cookie登录)这样方便快捷,但是你要先登录网站。避免抢票时候还要请求登录接口,或者读取你的curst登录信息文件。当然这里仅针对个人抢票。

2.我们登录之后,该做啥呢,那肯定是找到我们的票的信息。这里为什么要请求票品的接口,原因是:后面请求买票接口会涉及到参数。(提前透露一下:sessionid)

3.点击登录之后如何获取参数,我们知道当发起请求肯定要携带参数(post请求),这个不用多解释。

确定好语言:python+js(后续会用性能较好的go,R语言重构)

二.开始实战

实战一:构造url参数,下单页面

   如果我们不会使用http请求的方式,在这里我教给小白一种方法去获取参数:sequence+ticketed:

好了,现在我把模板给大家,去构造url:

https://wap.showstart.com/pages/order/activity/confirm/confirm?sequence=&ticketId=

自己尝试着拼接吧!

实战二: 开始请求购买接口

根据上述的实战一,我们可以直接进入到下单页面,然后进行后续的页面分析:

为了方便演示(因为姜云升的已经被抢光了,所以不能够点击购买按钮,触发接口,因此我们换一个来进行抓包演示)

我选择了这个具有观演参数的票(小编之前因为这个有一次发现这个实名制的,出现了错误。)

 实战二点一: 开始请求购买接口

我们先人工模拟点击立即支付按钮,看看抓到什么包

重点来了:看到没,加密的携带参数出来了,所以经过分析,我们知道:

 

秀动抢购主要有以下几点:

                                  请求1.先进入到下单页面

                                   请求2:请求支付1接口

                                   请求3:请求支付2接口

 实战三:js逆向及开始撸代码:

直接搜关键字: encrypt,为什么,因为他是js加密阿哈哈哈哈哈

看到了他的加密方式,开始打断点:

这不就出来了嘛,断点一打,加密必出。好了,至于js加密的内容,可以和我沟通(平台限制)

 分析结束,开始撸代码:

1.js逆向,主要涉及两种加密:

经过个人分析:

                           data参数:AES加密

                           sign参数:md5加密

我将其进行js封装,在python中直接调用

直接使用原生加密状态,将其封装为一个函数,进行调用,最后得到加密结果。

最后进行python异步加载请求。

通过三次异步请求之后,我们可以发现其购票返回的数据:

这些都是抢票时候,我们会返回的数据,据此我们可以得到最终的结果:

好了,大功告成。

有任何问题可联系我,(以上代码及分析均为本人原创) 

 

 

 

 

 

 

有道翻译js逆向更新了

参考技术A 更新了。有道翻译js逆向更新了,道高一尺,魔高一丈,网页开发会对API接口请求参数进行加密,来增加爬虫抓取的门槛。为此可以通过js逆向来分析破解加密方式,模拟浏览器发送请求获取接口数据。

以上是关于JS逆向解密秀动app(网页接口)实现抢票python异步请求的主要内容,如果未能解决你的问题,请参考以下文章

IOS 解密APP(逆向工程完整详解)

安卓逆向之某省回头车App最新版vartmp加解密算法

爬取12306车次信息

有道翻译js逆向更新了

解密阿里巴巴加密技术: 爬虫JS逆向实践-1688 JS混淆加密解析

2022-01-11JS逆向之拉钩登入(上)