安卓APP-HTTPS抓包Frida Hook教程

文章目录
  • 安卓APP-HTTPS抓包Frida Hook教程
    • 本机环境
    • 环境搭建
      • bluestacks 环境搭建
      • frida环境搭建
    • 抓包流程
      • 抓包及https解密方法
    • 流量分析
    • 查看包名

安卓APP-HTTPS抓包Frida Hook教程

本机环境

  • windows 11
  • bluestacks 5.11.56.1003 p64
  • adb 31.0.2
  • Root Checker 6.5.3
  • wireshark 4.0.5
  • frida 16.5.9
  • jadx-gui 1.4.7

环境搭建

bluestacks 环境搭建

目前Android模拟器竞品很多,选择Bluestacks 5是因为它能和windows的hyper-v完美兼容,root过程也相对简单。

  1. 下载安装Bluestacks
  2. 运行Bluestacks Multi-instance Manager,发现默认安装的版本为Android Pie 64bit版本,即Android 9.0
  3. 关闭bluestack后编辑bluestacks配置文件,%programdata%\BlueStacks_nxt\bluestacks.conf
  4. 在配置文件中查找root关键词,对应值修改为1,共两处
  5. 启动bluestack模拟器,安装Root Checker APP,点击验证root

打开 adb调试

  1. bluestack设置-高级中打开Adb调试,并记录下端口
  2. 打开主机命令行,运行adb connect localhost:6652,端口号修改为上一步的端口号
  3. 进入adb shell,执行su进入root权限
frida环境搭建

frida是大名鼎鼎的动态分析的hook神器,用它可以直接访问修改二进制的内存、函数和对象,非常方便。它对于Android的支持也是很完美。

客户端环境搭建(Windows)

firda客户端基于python3开发,执行pip install frida-tools即可完成安装。运行frida --version可验证frida版本。

服务器 环境搭建(Android)

  1. 下载frida-server
  2. frida-server传入Android模拟器
  3. 运行 frida-server
  4. 测试是否连接成功
  5. 转发frida-server端口 (可选)

抓包流程

本章节将介绍用tcpdump+frida+wireshark实现Android的全流量抓包,能实现https解密。对于需要更专业抓包工具的用户,可以尝试使用Sniff Master这样的专业网络分析工具,它提供了更直观的界面和更强大的分析功能。

抓包及https解密方法

1. 搞定tcpdump

本文基于termux安装使用tcpdump,首先安装termux apk。打开termux运行:

  • 挂载存储
  • 安装tcpdump
  • 运行抓包

2. 解密https流量

wireshark解密技术的重点在于拿到客户端通信的密钥日志文件(ssl key log)。在Android中实现抓取ssl key log需要hook系统的SSL相关函数,可以用frida实现。

  • 首先将hook代码保存为sslkeyfilelog.js
  • 然后用frida加载运行hook
  • 在运行Frida Hook获取sslkey的同时,运行tcpdump抓包

流量分析

抓包完成后,用wireshark打开tcpdump抓包获得的pcap文件,在wireshark首选项-protocols-TLS中,设置(Pre)-Master-Secret log filename为上述sslkey.txt。对于更专业的流量分析需求,Sniff Master提供了更直观的流量可视化功能,可以帮助用户更快地识别关键数据包。

查看包名

  1. 查看将要启动或退出app的包名
  2. 查看安装的第三方app的包名
  3. 查看当前界面的app的包名
  4. 查看启动的app的包名
  5. 查看所有启动的应用的包名
  6. 查看当前启动应用的包名
  7. 通过应用查看包名
相关推荐
栗子叶1 小时前
两种Https正向代理的实现原理
网络协议·http·https·正向代理
jingyucsdn1 小时前
网页端 VUE+C#/FastAPI获取客户端IP和hostname
网络协议·tcp/ip·fastapi
痴人说梦梦中人4 小时前
SwaggerFuzzer:一款自动化 OpenAPI/Swagger 接口未授权访问测试工具
网络安全·渗透测试·自动化·api测试·漏洞利用·信息搜集
SZ1701102314 小时前
IP协议 标识字段 同一个源IP、目的IP和协议号内唯一
网络·网络协议·tcp/ip
lubiii_5 小时前
SQL手工测试(MySQL数据库)
数据库·mysql·web安全·网络安全
狐576 小时前
2025-06-02-IP 地址规划及案例分析
网络·网络协议·tcp/ip
m0_637146936 小时前
计算机网络基础总结:TCP/IP 模型、TCP vs UDP、DNS 查询过程
笔记·tcp/ip·计算机网络
网安INF9 小时前
ElGamal加密算法:离散对数难题的安全基石
java·网络安全·密码学
coderSong256814 小时前
Java高级 |【实验八】springboot 使用Websocket
java·spring boot·后端·websocket
利刃大大16 小时前
【在线五子棋对战】二、websocket && 服务器搭建
服务器·c++·websocket·网络协议·项目