在用 fiddler 抓包一个 app 时,发现 headers 里包含了 Authorization。
但我并没有找到具体的认证方式,app 是以游客身份使用的,也没POST /login之类的方法。
1
0ZXYDDu796nVCFxq 2017 年 5 月 16 日
通常 HTTP 认证采用 Authorization 请求头,格式 Authorization: Basic xxx
对 xxx 进行 base64 解码,如果是 HTTP Basic Auth, xxx 是 user:password 使用 base64 编码的字符串 如果 base64 无法解码或者格式不符合,可能是采用 OAuth 认证,这个只能清空 App 数据,然后抓认证过程的网络请求才能确定了 另外,虽然 Web server(nginx, Apache, IIS etc.)支持 base 认证,但这层认证是可以移到网站代码里实现的,所以服务器如何处理和识别这个 token 是非常灵活的。 |
2
johnlui 2017 年 5 月 16 日
基础认证嘛,把用户名密码拼成特定格式加到 header 里就行了
|
3
lemmony 2017 年 5 月 16 日
首先你得找到 token 是怎么来的,肯定有由来的
|
6
0ZXYDDu796nVCFxq 2017 年 5 月 16 日
@Morriaty 应该是在 App 第一次启动时到某些入口获取,然后保存到本地,保存时间看服务器和客户端的代码是怎么写的。
这也可以用来识别用户,把这个 token 和设备、IMEI 等可能能获取到的信息绑在一起,定位用户。 |
7
fiht 2017 年 5 月 16 日
app 的包,app 和服务器端协商好编解码方式就好了。
具体认证只能逆向开 app 看 |
8
sensui7 2017 年 5 月 16 日
jwt, Authorization 那是一段服务器签名过的 token, 你解不出来的,
|
10
mingyun 2017 年 5 月 17 日
一楼正解,如果是 jwt,没有秘钥没法解的
|