吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2887|回复: 4
收起左侧

[Android 原创] 实战分析人X的HTTP协议

[复制链接]
宸道移动安全 发表于 2020-12-14 18:20
1、抓包分析协议数据

第一次抓包:

POST http://api.m.renren.com/api/client/login HTTP/1.1
Accept-Encoding: identity
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Accept: */*
Connection: keep-alive
User-Agent: Dalvik/2.1.0 (Linux; U; Android 5.1.1; oppo R11 Plus Build/LMY47I)
Host: api.m.renren.com
Content-Length: 793
isverify=1&password=18beaa1df89d0f434fd33918da2d62b310f3579675e09e1ca726fb7532bd4b41&client_info=%7B%22uniqid%22%3A%22865166020506633%22%2C%22screen%22%3A%22720*1280%22%2C%22imei%22%3A%22865166020506633%22%2C%22other%22%3A%2246000%2C%22%2C%22mac%22%3A%2200%3A81%3Af0%3A3a%3A81%3Ae1%22%2C%22version%22%3A%229.3.8%22%2C%22os_type%22%3A11%2C%22terminal_type%22%3A2%2C%22from%22%3A9101041%2C%22os%22%3A%2222_5.1.1%22%2C%22imsi%22%3A%22460006017714263%22%2C%22model%22%3A%22oppo+R11+Plus%22%7D&gz=compression&api_key=9e1874c67e0b42d79cc16f787b644339&uniq_id=865166020506633&user=qianyu&format=JSON&v=1.0&call_id=1557232347378&rkey=be9f4755aa7fd0fc3ca8d3f46599b2b8&ext_info=%7Bstation_id%3D32305%7D&tab_sequence=1&sig=2d44d388b351ef50f9e392f025d4821d&verifycode=&sig=b6aa02b00934154cde248aa477500d4b

第二次抓包:

POST http://api.m.renren.com/api/client/login HTTP/1.1
Accept-Encoding: identity
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Accept: */*
Connection: keep-alive
User-Agent: Dalvik/2.1.0 (Linux; U; Android 5.1.1; oppo R11 Plus Build/LMY47I)
Host: api.m.renren.com
Content-Length: 793

isverify=1&password=91d8deb94c54262e2bd7f5402ca9c8af9ef05b7233159e8a0b4774bac6f1397f&client_info=%7B%22uniqid%22%3A%22865166020506633%22%2C%22screen%22%3A%22720*1280%22%2C%22imei%22%3A%22865166020506633%22%2C%22other%22%3A%2246000%2C%22%2C%22mac%22%3A%2200%3A81%3Af0%3A3a%3A81%3Ae1%22%2C%22version%22%3A%229.3.8%22%2C%22os_type%22%3A11%2C%22terminal_type%22%3A2%2C%22from%22%3A9101041%2C%22os%22%3A%2222_5.1.1%22%2C%22imsi%22%3A%22460006017714263%22%2C%22model%22%3A%22oppo+R11+Plus%22%7D&gz=compression&api_key=9e1874c67e0b42d79cc16f787b644339&uniq_id=865166020506633&user=qianyu&format=JSON&v=1.0&call_id=1557232479138&rkey=81601be5a731b71c2ee0ced57ce842a6&ext_info=%7Bstation_id%3D32305%7D&tab_sequence=1&sig=e16707ab08aba677a85025ebd73f3e3f&verifycode=&sig=e518e3f9e8037ddeeaefa0b6a40e69f5

图片1.png
图片2.png



2、搜索关键字段"verifycode"找到协议构造类

图片3.png

协议字段构造方法如下图,在a方法中的第一行代码(JsonObject v4 = ServiceProvider.A(false, true);)是关键点,完成了"client_info"字段的拼接。

图片4.png


微信图片_20201214181845.png
微信图片_202012141818451.png


3、分析关键字段"sig",需要搞清楚两个"sig"字段


动态调试smali代码无法查看相应寄存器的值,可以通过HOOK对应的方法打印参数信息。

微信图片_202012141818452.png
微信图片_202012141818453.png

4、Android Studio+smalidea插件动态调试smali代码


调试模式启动
adb shell am start -D -n com.renren.mobile.android/.ui.WelcomeScreen

进行端口转发
adb forward tcp:8700 jdwp:957
出现这个错误说明8700端口被占用
error: cannot bind listener: cannot bind to 127.0.0.1:8700: 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 (10048)

解决办法
netstat -nao | findstr "8700"
根据PID找到该进程,结束进程
打开任务管理器—>查看—>选项列(S)—>勾选 PID,确定—>进程按钮栏配置好调试环境后就开始调试了,先在ServiceProvider.smali文件里面的a(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Landroid/content/Context;Lcom/renren/mobile/android/loginfree/LoginStatusListener;)V方法函数头下段,shift+F8往上回溯,就来到图下所在位置。

图片5.png

在LoginFromQuickRegisterFragment.smali文件里面找到onClick(Landroid/view/View;)V方法,找到登录逻辑核心实现如下图。

图片6.png



小结

       1、使用抓包工具抓取人X的数据,通过对比工具分析哪些数据发生了改变,着重分析改变的字段及加密算法。
       2、反编译APP,搜索协议中的关键字段信息进行定位。
       3、分析相关字段的加密算法。
       4、动态调试分析字段拼接流程。

免费评分

参与人数 5吾爱币 +11 热心值 +5 收起 理由
qtfreet00 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
不要逗我笑 + 1 + 1 用心讨论,共获提升!
gunxsword + 1 + 1 谢谢@Thanks!
r47099 + 1 + 1 用心讨论,共获提升!
搜索中文字符串 + 1 + 1 膜拜大佬深分析

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

李玉风我爱你 发表于 2020-12-15 14:19
居然没有加固?
搜索中文字符串 发表于 2020-12-16 02:11
xieyilei2020 发表于 2020-12-16 11:12
 楼主| 宸道移动安全 发表于 2020-12-16 16:27
xieyilei2020 发表于 2020-12-16 11:12
楼主,有对应工具下载吗

有的,可以私聊
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-28 11:53

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表