嘟嘟社区

全球抓包论坛


我想抓一个手机app,发现这app每次发送post请求的时候都会带上一个参数,里面应该是一个一次性的密钥,因为我把抓到的这个参数放到python去模拟请求的时候会返回一个“密钥已失效”的结果,这个密钥应该是app本地生成的,我想问他这个值是怎么生成的?第一次抓app,有啥思路提供下吗?或者提供个关键字我去搜索一下例子也行
这是不是52PJ论坛更专业些?
JEB 附加调试
不懂,,

stingeo 发表于 2022-3-28 19:00
这是不是52PJ论坛更专业些?

先在loc问问,毕竟卧虎藏龙,搞不定再去52发帖。哈哈

其实有过接入支付宝支付、微信支付接口经验的话,就会知道有一个参数签名的过程
参数签名往往会有一个在app内的字符串(叫公钥?)参与,但是这个公钥是不会再附带在网络请求中的,因为服务器也会有一个对应的私钥作为验证
只要你不修改抓到的网络请求中的任何参数,大多数是可以重复请求的
通常只有支付级接口才会有防重放攻击的机制
你现在的情况是除非你能反编译app拿到app内的公钥才可以自己构造网络请求的参数并对参数签名,否则大多数情况也就只能重复发送已抓到的请求
哦抱歉,你现在的情况是遇到了防回放(也可以叫重放、重复)攻击机制,基本无解。

gzlock 发表于 2022-3-28 19:14
哦抱歉,你现在的情况是遇到了防回放(也可以叫重放、重复)攻击机制,基本无解。 …

不应该啊,这只是一个色色的app,而且这条请求仅仅是请求图片而已,请求头只附带下面这个值,你看下

jdsignature:1648389359.lpw6vgqzsp.901469d1b02511b3659dad11de656f99

深海空间 发表于 2022-3-28 19:20
不应该啊,这只是一个色色的app,而且这条请求仅仅是请求图片而已,请求头只附带下面这个值,你看下

也有可能是参数中附带了时间参数,而你再次发送请求时,超过服务器设置的时限了,例如5秒10秒1分钟