抓包淘宝APP HTTPS请求2022最新多种方法
admin
2024-03-26 04:02:37
0

抓一下淘宝App的HTTPS请求。到目前为止非常坎坷。

之前抓小红书App的时候,也折腾过类似的事情。解决了几个问题:

  • 抓包工具:MITMProxy
  • 手机端的强制代理:ProxyDroid的全局模式。因为有些App会检测是否有代理,所以必须强制走iptables流量。Droni也可以。
  • SSLPinning:用了SSLUnpinning + Taichi。

用了以上的方法,愉快的抓取了非常多的信息,比较稳定。

但是今天用了同样的方法去抓淘宝App,怎么都搞不定。别说抓包了,连走代理都不行,连都连不上。记录一下遇到的问题和解决方法。问题依次是:

  1. 想要抓包淘宝App,首先要解决阿里系私有协议的问题。据各路文章,阿里用的是私有的协议Spdy。所以要使用一个hook来把是否使用spdy这个选项改为false。(参考1)
  2. 要达到这个方法,就需要用到xposed或者frida的方法。
    1. xposed之前有用过。查了一下,有人已经给出了代码。(参考2)代码链接(https://github.com/zhaoboy9692/me-tools)。不过下载安装到Taichi之后不起作用。Taichi显示无法运行这个module。
      1. 中间还花了些时间来研究xposed教程,尝试自己写。结果发现原来xposed基本上就是一个java写的app,不懂基础概念,超出能力了。算了。
    2. 转去理解frida。
      1. 第一次听说frida,简单理解了下,就是frida不止在安卓,在各个系统上都可以运行,基本上就是一个在线hook的工具。和xposed的区别就是xposed模块可以一劳永逸带着走,frida则需要联机使用。但足够灵活。分为控制端(一般是PC)和被控制端(一般是手机)。控制端支持Python/Java。被控制端是一个server端接受指令。(参考3、4)
      2. 研究阿里系并且提到Frida的文章不少。我主要跟着参考5。
      3. 理解了Frida,我用的时候遇到了几个问题:端口转发的问题和权限的问题。
    3. 解决完了Frida,淘宝还是连不上数据,总显示网络故障。我以为是代理服务器的问题。研究了下MITMProxy,终于还是确认ProxyDroid和Droni都没问题。因为小红书就很好。
    4. 继续研究,找到了这篇文章很好:参考10总结了不少抓包的问题和解决方法。简单来说,抓不到有几个可能:
      1. App自己不走代理,哪怕你设了代理。这种就只能强制走代理。
      2. App自己不信任用户证书,只信任系统证书
      3. App自己连系统证书也不信任,只信任特定证书。SSLPinning的问题。
    5. 觉得是SSLPinning的问题。先用了UNPinningSSL,不解决问题。于是想把证书放在系统级下面。
      1. 尝试自己改名,adb push等等。结果又遇到了权限问题,卡在了这里。Android 10以上无法修改/system了,哪怕root也不行。连adb disable-verity也执行不了。
      2. 权限问题这几个文章讨论的比较好:参考21/22。看到的唯一可能是用Magisk Module来做。先park在这里,再去研究下。

神奇,更新!

刚写完上面,5分钟后看到一个文章,提到了Move Certificates这个Magisk Modules,能够把user certificates移动到系统certificates。试了一下,成功了!可以顺利抓包了

附录

import frida
rdev = frida.get_remote_device()
processes = rdev.enumerate_processes()
for process in processes:
print process

参考

  1. 解决淘宝、闲鱼等淘系App无法抓包问题 – iamSummi – 程序员ITS500(https://www.its500.com/article?url=Summi/p/14491808.html)
  2. 淘宝系抓包hook模块(淘宝系抓包hook模块_哈里哈气的博客-CSDN博客_frida spdy)
  3. 一篇文章带你领悟Frida的精髓(基于安卓8.1)(frida-all-in-one/READMD.md at master · hookmaster/frida-all-in-one · GitHub)
  4. FRIDA实践(FRIDA实践 - 简书)
  5. 抓包:淘宝、支付宝(抓包:淘宝、支付宝 | 小歪的博客)
  6. 淘宝系抓包hook模块(https://blog.csdn.net/zhangmiaoping23/article/details/105827285?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ETopBlog-1.topblog&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ETopBlog-1.topblog&utm_relevant_index=1)
  7. XPosed+Charles抓包淘宝App(https://www.jianshu.com/p/7df2d305f0c1)
  8. 在使用frida hook的时候报错(在使用frida hook的时候报错 - 简书)
  9. Android hook神器frida(二)(Android hook神器frida(二) - bamb00 - 博客园)
  10. 大型 App抓不到包?app抓包 抓不到评论(https://www.lanbu.net/d/244)
  11. 某些app无法抓包问题(https://blog.csdn.net/qq_40157234/article/details/103760612)
  12. mtopsdk(淘宝系android app使用的sdk)强迫请求通过代理进行抓包(mtopsdk(淘宝系android app使用的sdk)强迫请求通过代理进行抓包_深入浅出信息安全的博客-CSDN博客_mtopsdk)
  13. Android 7.0 Https抓包单双向验证解决方案汇总(Android 7.0 Https抓包单双向验证解决方案汇总 - 猿人学Python爬虫)
  14. Android抓包攻防技术(Android抓包攻防技术 - 先知社区)
  15. 部分应用不能抓包的原因(部分APP无法代理抓包的原因及解决方法(flutter 抓包) - lulianqi15 - 博客园)
  16. App绕过SSL Pinning机制抓取Https请求(https://www.cnblogs.com/yyoba/p/12370510.html)
  17. Android应用中https SSL pinning以及绕过的方法介绍(https://zhuanlan.zhihu.com/p/127847550)
  18. adb安装CA证书(https://www.cnblogs.com/yumoblogs/p/14773298.html)
  19. 制作证书的方法(adb shell安装证书/修改证书到系统级/ - 小君~ - 博客园)
  20. 把 charles,Fiddler 证书安装到安卓根目录,解决安卓微信 7.0 版本以后安装证书也无法抓包问题,需要 root(把 charles,Fiddler 证书安装到安卓根目录,解决安卓微信 7.0 版本以后安装证书也无法抓包问题,需要 root · TesterHome)
  21. How to disable dm-verity on Android with “user” build type ROM?(https://android.stackexchange.com/questions/215800/how-to-disable-dm-verity-on-android-with-user-build-type-rom)
  22. https://gist.github.com/pwlin/8a0d01e6428b7a96e2eb

相关内容

热门资讯

【MySQL】锁 锁 文章目录锁全局锁表级锁表锁元数据锁(MDL)意向锁AUTO-INC锁...
【内网安全】 隧道搭建穿透上线... 文章目录内网穿透-Ngrok-入门-上线1、服务端配置:2、客户端连接服务端ÿ...
GCN的几种模型复现笔记 引言 本篇笔记紧接上文,主要是上一篇看写了快2w字,再去接入代码感觉有点...
数据分页展示逻辑 import java.util.Arrays;import java.util.List;impo...
Redis为什么选择单线程?R... 目录专栏导读一、Redis版本迭代二、Redis4.0之前为什么一直采用单线程?三、R...
【已解决】ERROR: Cou... 正确指令: pip install pyyaml
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
Lock 接口解读 前置知识点Synchronized synchronized 是 Java 中的关键字,...
Win7 专业版安装中文包、汉... 参考资料:http://www.metsky.com/archives/350.htm...
3 ROS1通讯编程提高(1) 3 ROS1通讯编程提高3.1 使用VS Code编译ROS13.1.1 VS Code的安装和配置...
大模型未来趋势 大模型是人工智能领域的重要发展趋势之一,未来有着广阔的应用前景和发展空间。以下是大模型未来的趋势和展...
python实战应用讲解-【n... 目录 如何在Python中计算残余的平方和 方法1:使用其Base公式 方法2:使用statsmod...
学习u-boot 需要了解的m... 一、常用函数 1. origin 函数 origin 函数的返回值就是变量来源。使用格式如下...
常用python爬虫库介绍与简... 通用 urllib -网络库(stdlib)。 requests -网络库。 grab – 网络库&...
药品批准文号查询|药融云-中国... 药品批文是国家食品药品监督管理局(NMPA)对药品的审评和批准的证明文件...
【2023-03-22】SRS... 【2023-03-22】SRS推流搭配FFmpeg实现目标检测 说明: 外侧测试使用SRS播放器测...
有限元三角形单元的等效节点力 文章目录前言一、重新复习一下有限元三角形单元的理论1、三角形单元的形函数(Nÿ...
初级算法-哈希表 主要记录算法和数据结构学习笔记,新的一年更上一层楼! 初级算法-哈希表...
进程间通信【Linux】 1. 进程间通信 1.1 什么是进程间通信 在 Linux 系统中,进程间通信...
【Docker】P3 Dock... Docker数据卷、宿主机与挂载数据卷的概念及作用挂载宿主机配置数据卷挂载操作示例一个容器挂载多个目...