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

2024 最新 frida技术栈 第一部分

目录

1.下载

2. 安装

2.1.  命令

3.基本使用

3.1 列出运行的APP

3.2 列出所有APP

3.3 杀死进程

4. frida hook 方法

4.1 frida客户端命令行的参数

4.2. Frida两种操作模式

4.3. Frida操作APP的两种方式  

4.3.1.  attach模式

4.3.2. spawn模式  

4.3.3  转发端口启动  


1.下载

查看手机设备设置

adb shell getprop ro.product.cpu.abi

显示

如果安卓版本比较低的话,最新版frida不是很稳定。推荐安卓7、8安装frida 12.8.0版本,安卓10/frida14,安卓12/frida16

官网地址:Releases · frida/frida · GitHub 查看版本一致的进行下载 ,可以重命名成 f14-server

注意:server与client版本必须保持一致

模拟器使用x86或x86_64架构

真机使用arm或arm64架构

2. 安装

解压文件,进行推送到模拟器中/data/local/tmp下

2.1.  命令
推送运行命令:adb push fserver /data/local/tmp/

现在执行:adb shell

切换管理员:su

进入目录:cd /data/local/tmp

改下权限:chmod 777 /f14-server

然后就可以运行了:./f14-server

2.2. 端口转发

adb forward tcp:27042 tcp:27042

2.3 运行

./frida-server -l 0.0.0.0:6666

3.基本使用

3.1 列出运行的APP
frida-ps -Ua

3.2 列出所有APP
frida-ps -Uai

3.3 杀死进程
frida-kill -U 包名

4. frida hook 方法

4.1 frida客户端命令行的参数

Usage: frida [options] target

Options:
  --version             show program's version number and exit
  -h, --help            show this help message and exit
  -D ID, --device=ID    connect to device with the given ID
  -U, --usb             connect to USB device
  -R, --remote          connect to remote frida-server
  -H HOST, --host=HOST  connect to remote frida-server on HOST
  -f FILE, --file=FILE  spawn FILE
  -n NAME, --attach-name=NAME
                        attach to NAME
  -p PID, --attach-pid=PID 
                        attach to PID
  --debug               enable the Node.js compatible script debugger
  --enable-jit          enable JIT
  -l SCRIPT, --load=SCRIPT
                        load SCRIPT
  -c CODESHARE_URI, --codeshare=CODESHARE_URI
                        load CODESHARE_URI
  -e CODE, --eval=CODE  evaluate CODE
  -q                    quiet mode (no prompt) and quit after -l and -e
  --no-pause            automatically start main thread after startup
  -o LOGFILE, --output=LOGFILE
                        output to log file

4.2. Frida两种操作模式
操作模式说明
CLI命令行Javascript脚本注入进程
RPCPython进行Javascript脚本注入
4.3. Frida操作APP的两种方式  
方式名称方式说明CLI下启动方式
spwan将启动APP的权利交由Frida来控制。不管APP是否启动,都会重新启动APP。-f参数指定包名
attach建立在目标APP已经启动的情况下,Frida通过ptrace注入程序从而执行Hook的操作不加-f参数
4.3.1.  attach模式

将一个脚本注入到Android目标进程,即需要App处于启动状态, 核心原理是ptrace修改进程内存

frida -U -l myhook.js com.xxx.xxxx

参数解释:

  • -U 指定对USB设备操作

  • -l 指定加载一个Javascript脚本

  • 最后指定一个进程名,如果想指定进程pid,用-p选项。正在运行的进程可以用frida-ps -U命令查看

4.3.2. spawn模式  

启动一个新的进程并挂起,在启动的同时注入frida代码,注入完成后调用resume恢复进程。

frida -U -l myhook.js -f com.xxx.xxxx --no-pause

 参数解释:

  • -f 指定一个进程,重启它并注入脚本

  • --no-pause 自动运行程序

4.3.3  转发端口启动  

启动服务端

./frida-server  -l 0.0.0.0:8881

端口转发

adb forward tcp:8881 tcp:8881

然后直接cmd使用该DroidSSLUnpinning.js文件

frida -H 127.0.0.1:8881 -f com.package.name -l DroidSSLUnpinning.js


http://www.kler.cn/a/369218.html

相关文章:

  • outlook创建新账户时报错2603、2604的解决办法
  • Django-信号
  • 【Web.路由】——路由原理
  • maven之pom.xml文件解读
  • ELK之路第二步——可视化界面Kibana
  • Debian会取代CentOS成为更主流的操作系统吗?
  • Linux云服务器安装Docker、MySQL、Redis
  • 国产系统安装Oracle报错处理
  • 利用 Google AI 工具提升应用智能化:ML Kit、TensorFlowLite、Cloud Vision、AutoML、Gemini
  • 手机折叠屏贴膜应用
  • 【AI日记】24.10.27 了解AI的未来
  • 0基础学java之Day16
  • 缓存预取文章比较分析
  • 来源爬虫程序调研报告
  • 【山西】《信息化项目软件运维费用测算指南》(DB 14/T 2163-2020)-省市费用标准解读系列01
  • 【Vue】word / excel / ppt / pdf / 视频(mp4,mov) 预览
  • 「ZJUBCA秋季迎新见面会预告」
  • Netty的简介与实战
  • Java运行时数据区
  • 助力AI智能化时代:全国产化飞腾FT2000+/64+昇腾310B服务器主板
  • 关于k8s的cilium网络插件踩坑记
  • Android Audio基础——音频混音结束处理(十一)
  • 基于Matlab 火焰识别技术
  • 使用 Python 的 BeautifulSoup(bs4)解析复杂 HTML
  • remote: The project you were looking for could not be found.
  • ThingsBoard规则链节点:Device Profile节点详解