【Frida】【Android】 工具篇:ProxyPin抓包详解

🛫 系列文章导航

🛫 导读

开发环境

版本号 描述
文章日期 2024-03-24
操作系统 Win11 - 22H2 22621.2715
node -v v20.10.0
npm -v 10.2.3
夜神模拟器 7.0.5.8
Android 9
python 3.9.9
frida 16.2.1
frida-tools 12.3.0
objection 1.11.0
ProxyPin 1.0.9

1️⃣ ProxyPin介绍

ProxyPin是一种基于MITM(中间人攻击)的抓包工具,主要用于移动应用程序的安全测试和调试。下面是关于ProxyPin的详解。

主要特性

  • HTTP/HTTPS抓包:ProxyPin可以拦截并解析HTTP和HTTPS协议下的数据包,包括请求和响应内容。
  • 数据篡改:用户可以在抓包过程中修改请求和响应数据,从而进行相关的安全测试。
  • WebSocket支持:除了HTTP/HTTPS,ProxyPin还支持WebSocket协议的抓包和分析。
  • 脚本扩展:用户可以编写脚本来扩展ProxyPin的功能,实现自定义的数据处理和分析。

工作原理

  • 中间人攻击(MITM):ProxyPin通过将自己伪装成目标服务器与客户端通信,从而使得所有的数据流经ProxyPin,实现抓包和修改数据的目的。
  • SSL/TLS解密:ProxyPin可以解密通过SSL/TLS加密的数据流量,这使得用户可以查看和分析应用程序中的加密通信内容。

ps: 具体原理可以参考系列文章之《【Frida】【Android】 06_夜神模拟器中间人抓包 https://blog.csdn.net/kinghzking/article/details/137162859

“用户证书”vs“系统证书”

Android证书分为“用户证书”和“系统证书”两种,在设置->安全->"查看安全证书"列表中,可以看到“系统”和“用户”两个Tab。用户通过浏览器下载安装或者通过WLAN高级设置安装的证书均为用户证书。

安装为系统证书有什么好处呢?

  • 安装用户证书必须要设置开机密码,而且设置后就不能取消,除非先删掉所有的用户证书。如果安装为系统证书就不需要设置开机密码,自动化操作时更方便。

  • Android 7以上版本APP默认不信任用户证书,只信任系统证书,安装为用户证书,对APP的HTTPS抓包会失败。安装为全局证书才能被所有APP信任,方可进行HTTPS抓包。

2️⃣ 安裝和使用

安裝

  • 安装
    直接拖入模拟器就可以了,打开后如下所示:
    在这里插入图片描述

安裝证书

  • 打开HTTPS代理页面
    如下图,点击右上角三个点,然后点击HTTPS代理
    在这里插入图片描述
    最后将显示如下界面,包含“用户证书”和“系统证书”
    在这里插入图片描述
  • 下载系统证书
    点击上图中的下载系统根证书按钮,在下载页面,将其保存下来即可。
    在这里插入图片描述
  • 安装系统根证书
  1. 打开Amaze
    在这里插入图片描述
  2. 授权超级用户权限
    在这里插入图片描述
  3. 复制系统根证书
    切换到Download目录,选择系统根证书文件,点击复制菜单
    在这里插入图片描述
  4. 拷贝系统根证书
    切换到/system/etc/security/cacerts目录(点击左侧根目录,然后依次选择etc、security、cacerts目录),最后点击如下图的粘贴按钮即可。
    在这里插入图片描述
  5. 授权证书文件
    adb shell连接安卓,然后执行下面命令:
mount -o remount,rw /system
chmod 777 /etc/security/cacerts/*
mount -o remount,ro /system
  1. 验证系统证书
    在设置中,搜索信任的凭据,在系统tab中,可以找到ProxyPin证书,表示安装成功。
    在这里插入图片描述

启动HTTPS代理

回到ProxyPin软件,打开HTTPS代理页面,如下所示开启HTTPS代理
在这里插入图片描述

启动抓包

回到ProxyPin软件主页面,点击右下角“播放”按钮
在这里插入图片描述
在弹出窗口中点击确定
在这里插入图片描述

验证

此时,我们以浏览器,百度页面为例,可以看到已经可以抓到封包了。
在这里插入图片描述

3️⃣ 竞品介绍

Android抓包有很多竞品软件,这里介绍一下大名鼎鼎的“小黄鸟”及其新品reqable。

reqable

reqable是小黄鸟的进阶版,依然不开源,不过有了官网 https://reqable.com/,更靠谱一些了。
支持各个平台,个人感觉该软件比ProxyPin更好用。
下面是部分软件截图:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

HttpCanary(小黄鸟)【不推荐】

抓包的都知道小黄鸟,但是小黄鸟的解锁版版本很多,由于其不开源,网上很多版本是魔改的,有兼容性问题。不过小编多次测试,其依然可用的。

有兴趣的可以直接参考文章:《[Android 分享] 小黄鸟HttpCanary抓包 5个版本 都是解锁版 + 证书安装教程。https://www.52pojie.cn/thread-1592529-1-1.html》,这里不做过多介绍了。

🛬 文章小结

ProxyPin还有很多功能,这里不一一演示了,以后有机会在实战中进行讲解。

  • ProxyPin可以过滤域名和APP,方便抓包使用
  • ProxyPin可以将结果打包成har文件,在chrome中导入,方便分析结果
  • ProxyPin可以重写请求,直接在Android上进行封包修改
  • ProxyPin可以使用脚本,灵活控制封包。

ps: 不要同时开启多个抓包软件,避免冲突

📖 参考资料

ps: 文章中内容仅用于技术交流,请勿用于违规违法行为。

相关推荐

  1. 测试:工具

    2024-04-07 09:24:03       41 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-07 09:24:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-07 09:24:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-07 09:24:03       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-07 09:24:03       20 阅读

热门阅读

  1. 逻辑回归详解

    2024-04-07 09:24:03       41 阅读
  2. vscode 快捷键自定义

    2024-04-07 09:24:03       22 阅读
  3. 软件开发师学习

    2024-04-07 09:24:03       18 阅读
  4. 5568: 【J1】【栈】后缀表达式

    2024-04-07 09:24:03       21 阅读
  5. Kali Linux国内知名镜像源

    2024-04-07 09:24:03       23 阅读
  6. 【openGL4.x手册13】色彩混合blend

    2024-04-07 09:24:03       16 阅读
  7. c#编程基础学习之方法

    2024-04-07 09:24:03       29 阅读
  8. Python爬虫入门指南

    2024-04-07 09:24:03       18 阅读
  9. Redis入门--头歌实验使用Redis构建自动补全组件

    2024-04-07 09:24:03       16 阅读
  10. jvm基础

    2024-04-07 09:24:03       18 阅读
  11. 234.回文链表

    2024-04-07 09:24:03       16 阅读
  12. Kafka分区数扩容 Flink未发现新分区

    2024-04-07 09:24:03       21 阅读
  13. vite打包失败 - out of memory

    2024-04-07 09:24:03       20 阅读