当前位置: 首页 > news >正文

22.安卓逆向2-frida hook技术-app使用非http协议抓不到包解决方式

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动!

内容参考于:图灵Python学院

工具下载:

链接:https://pan.baidu.com/s/1bb8NhJc9eTuLzQr39lF55Q?pwd=zy89

提取码:zy89

复制这段内容后打开百度网盘手机App,操作更方便哦

上一个内容:21.安卓逆向2-frida hook技术-HookOkHttp的拦截器

本次内容与之前的内容跳度很大,跳过的内容要看之前的安卓逆向(看实战部分,后面frida调试实战不会细写,只会围绕着app调试的难点来写)

青花瓷(Charles)只能抓取http协议请求的数据包,如果不用http协议的请求,才用自研请求协议,青花瓷就没法抓,比如手tb用的spdy协议(现在演变成了QUIC协议)、mt用的cip协议,这些app都可以通过降级来让它们使用http协议,怎么才能让它降级?就是首先使用jadx-gui把app进行逆向,然后搜索协议名(协议名通过app官网或第三方介绍得到,QUIC协议就是通过文档知道的)

如下图通过搜索spdy可以看到下图红框的内容,enable中文意思是能够使用,合起来就是能够使用Spdy,它的值是true,直接把它的值改成false就可以让app降级使用http协议了(为什么改了它就可以使用http了,首先中文意思很明确了能够使用spdy,然后因为app中为了防止非http协议没法使用,会保留http协议的使用,然后通过中文意思就可以大胆的猜测是通过enableSpdy变量控制用不用非http协议)

然后鼠标选中下图红框,选中之后按x

按完x就可以看到都有谁使用了 enableSpdy 这个变量

然后鼠标双击下图红框位置

如下图红框就会跳到代码位置

然后鼠标右击选择复制为frida片段

然后粘贴到js文件中

然后把返回值改成false

然后注入这个Firda脚本,注入之后,再来到青花瓷,就可以发现可以正常抓包了,然后就可以分析请求参数了

某音:https://mp.weixin.qq.com/s/LS5QKLSYRNFGJm4-YPPTig

Java.perform(function(){// 获取json(网络数据都会是json格式)var gson = Java.use("com.google.gson.Gson");// 某音会使用 com.bytedance.retrofit2.SsHttpCall获取请求对象var SsHttpCall = Java.use("com.xxxx");// 自行看文章找hook什么类和方法// 得到请求对象SsHttpCall.xxx.implementation=function(){// 得到响应var response = this.xxx();// 得到请求var request = this.originalRequest.value;// 请求地址var url = request.getUrl();// 打印响应console.log(gson.$new().toJson(response.body()))// 打印请求地址console.log("url:",url);return response;}
});

img

http://www.dtcms.com/a/262966.html

相关文章:

  • Linux 安装使用教程
  • Pytest自动化测试框架入门?
  • Kafka 核心机制面试题--自问自答
  • 在Flutter中生成App Bundle并上架Google Play
  • 「Java EE开发指南」如何用MyEclipse创建一个WEB项目?(三)
  • 鸿蒙NEXT-鸿蒙三层架构搭建,嵌入HMRouter,实现便捷跳转,新手攻略。(2/3)
  • Flutter视频压缩插件video_compressffmpeg_kit_flutter_new
  • Memcached 安装使用教程
  • Flutter插件ios_pod
  • httpd-devel 与服务无关
  • Java历史:从橡树到火星探索,从微软法律战到Spring、Gradle
  • [6-02-01].第05节:配置文件 - 读取配置文件的内容
  • 一、(基础)构建一个简单的 LangChain 应用
  • 对称非对称加密,https和http,https通讯原理,Charles抓包原理
  • macos 使用 vllm 启动模型
  • WIFI 低功耗保活知识系列---三.WiFi AP如何广播自己的缓存区信息
  • OpenCV CUDA模块设备层----计算向量的平方根函数sqrt
  • 基于Spring Boot的绿园社区团购系统的设计与实现
  • Python 安装使用教程
  • Spring Boot 启动性能优化实战指南
  • 基于 SpringBoot+Vue.js+ElementUI 的 Cosplay 论坛设计与实现7000字论文
  • 【硬核数学】2.7 理论与现实的鸿沟:深度学习的数值稳定性挑战《从零构建机器学习、深度学习到LLM的数学认知》
  • 【Spring】——事务、整合、注解
  • 后台管理系统模板Art Design Pro
  • js代码03
  • Karmada 多集群服务发现
  • Apache Doris Profile 深度解析:从获取到分析,解锁查询性能优化密码
  • RedhatCentos挂载镜像
  • LeetCode Hot100(图论)
  • SQL参数化查询:防注入与计划缓存的双重优势