安卓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. 通过应用查看包名
相关推荐
北京耐用通信9 小时前
耐达讯自动化“通关文牒”:Canopen转Profibus网关,贴片机的“协议通关秘籍”
人工智能·科技·网络协议·自动化·信息与通信
VekiSon9 小时前
综合项目实战——电子商城信息查询系统
linux·c语言·网络·http·html·tcp·sqlite3
ベadvance courageouslyミ9 小时前
简易在线商城制作
http·线程·在线商城·界面跳转
funnycoffee1239 小时前
F5 Big IP如何设置web和SSH登录的白名单
前端·tcp/ip·ssh
世界尽头与你10 小时前
CVE-2024-43044_ Jenkins agent connections 文件读取漏洞
安全·网络安全·渗透测试·jenkins
阿巴~阿巴~10 小时前
NAT技术:互联网连接的隐形桥梁
服务器·网络·网络协议·架构·智能路由器·nat·正反向代理
DevOps-IT10 小时前
HTTP状态码(常见 HTTP Status Code 查询)
运维·服务器·网络·网络协议·http
YJlio10 小时前
Registry Usage (RU) 学习笔记(15.5):注册表内存占用体检与 Hive 体量分析
服务器·windows·笔记·python·学习·tcp/ip·django
Bug.ink10 小时前
BUUCTF——WEB(6)
数据库·sql·网络安全·靶场·buuctf
阿巴~阿巴~10 小时前
打通局域网“最后一公里”:ARP协议原理、流程与安全解析
服务器·网络·网络协议·tcp/ip·tcp·ipv4·arp