逆向某口腔医院app 写抢号的小程序 记录一下具体流程

整个小项目下来,涉及了app反编译,http协议,JavaScript,fiddler等等的基础小知识

在接到这个任务之后,我首先熟悉了一下流程.发现他是http协议的

马上就打开fiddler打开端口用模拟器监测一下

一波操作之后发现他的登录完全没有加密,直接输入账号密码 POST一下就可以登录进去返回账号临时ID

以为项目就此大功告成

在获取抢号数据的时候发现不是这样

每个请求都带着不规律的 noticeStr,sign在cookie中

timestamp一看就知道是时间戳

其他访问也没有返回这两个参数,是忽然有的

然后就想到会不会是APP内部有加密函数

这时候打开了androidkiller找到了访问的接口链接,但是无论如何也搜不到noticeStr,sign这些关键字,我甚至换了个反编译工具,升级了版本,也无济于事

后来我看回来fiddler,发现在每次点击之前,都会打开一个html,里面有一段js

明明白白地写到了这两个参数生成的具体流程(参数拆分->随机生成关键字->排序->再来个他们自己写的MD5)..是我把他想得太复杂了

这时候就有两个方法,一个是直接用自己的语言里面选个js解析库解析,我用的是python,试过js2py之类的库,解析就要按秒算,这样不划算,那就要把js转换到py语言,这时候py有个库我要推荐一下,jiphy点进去有使用教程.

转换之后大概修改了一下.期间遇到的坑就不说了(js跟py位运算有一点不一样)

搞定之后就可以自己生成签名了,置入cookie,获取成功

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值