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

7.安卓逆向2-frida hook技术-介绍

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

内容参考于:图灵Python学院

工具下载:

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

提取码:zy89

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

上一个内容:6.安卓逆向2-手机安装charles证书

到这一定是手机可以被抓包了,然后2.安卓逆向-初识java语言这个java环境设置好(环境变量和idea)其它的不重要(比如不会写java代码,这个不重要,只要跟着把环境搞好就行),然后Python环境看python基础之搭建环境这个大哥写的,要确保java环境和Python环境搞好

开始安卓HOOK

frida是一个安卓HOOK框架,hook就是一种拦截app(应用)里面代码的技术,frida是一个主流框架,市面上只要搞安卓逆向的必会frida也必使用frida

安卓开发分为两层,一层是Native(也就是so文件,so文件可以用多种语言写,用js语言写的可以编译成so、用c语言也能编译成so,总而言之so就是非常规的java代码),一层是java

frida说明

frida是一个轻量级的Hook框架,可以用来监听app的动作,它的亮点,比如一个可以联网的app,比如短视频app,打开之后它会发送网络请求让服务器给返回短视频,这个操作发送和接收的操作是在app也就是apk文件里面发生的,这个frida就可以监听这个东西,这就是frida的亮点。

frida分两个部分,服务端和控制端,服务端运行在手机里面,然后通过进程注入来劫持app

frida可以hook到java也可以hook到so

为什么可以hook

现代应用分b/s架构(网页和服务器),c/s架构(客户端(app)和服务器)

b/s架构,比如加密代码都会在某个js文件里面,在我们本地电脑中

C/S架构中,比如加密的代码都会在apk文件里面,在我们本地手机中

为什么会在本地?

因为app里面要用数据,比如短视频app,服务器返回的视频,肯定要在app里面用,所以app里面必须要有解析视频数据的代码,如果不在本地app也没办法做

frida使用的是动态二进制插桩技术(DBI)

DBI可以做到的事情

1.可以访问进程的内存,就是手机打开一个app文件它就会打开一个进程,然后app里的数据都会放到进程的内存中,DBI让frida支持访问进程里的内存

2.在应用程序运行时覆盖一些功能

3.从导入的类中调用函数

4.在堆内存中查找对象实例并使用

5.HOOK,跟踪和拦截函数等

它可以拦截app中所有类和方法、入参、返回值

总结:

Frida使用二进制动态插桩技术,就是把一段代码动态的插入到app里面,但最终不会改变原有的程序,通过动态的插入,可以快速简单的分析出我们想要的源代码


img

http://www.xdnf.cn/news/9065.html

相关文章:

  • 重学计算机网络之命令整理
  • 数据加密技术:守护网络通信安全的基石
  • ceph 报错 full ratio(s) out of order
  • Elasticsearch数据同步方案
  • VS Code设置Dev Containers: Reopen in Container
  • MongoDB基础知识(浅显)
  • docker compose yml 启动的容器中,如何使用linux环境变量赋值
  • Python 进阶学习
  • [CSS3]rem移动适配
  • *HTML `<script>` 标签中的核心属性解析:掌控脚本加载与执行的艺术
  • 力扣HOT100之回溯:79. 单词搜索
  • 常见小问题(Open Folder as PyCharm Project)
  • Veeam Backup 13 beta ui 方式备份 VMware esxi 虚拟机
  • 报错:ImportError: cannot import name ‘metadata‘ from ‘importlib‘
  • springboot启动流程
  • Golang 的协程调度小结
  • Java-synchronized学习总结
  • 目标检测 TaskAlignedAssigner 原理
  • leetcode617.合并二叉树:递归思想下的树结构融合艺术
  • 拥塞控制算法cubic 和bbr
  • Day3 记忆内容:map set 高频操作
  • 2025年Google I/O大会上,谷歌展示了一系列旨在提升开发效率与Web体验的全新功能
  • Uniapp 串口通信原生插件开发指南(零基础版)
  • LSTM+Transformer混合模型架构文档
  • SWOT分析:MCP(Model Context Protocol)与传统编程解决方案
  • 精益数据分析(85/126):营收阶段的核心指标与盈利模型优化——从数据到商业决策的落地
  • Prompt Tuning:优化提示调优全攻略
  • 前端内容黑白处理、轮播图、奇妙的头像特效
  • Android开发namespace奇葩bug
  • 鸿蒙OSUniApp 开发实时天气查询应用 —— 鸿蒙生态下的跨端实践#三方框架 #Uniapp