[Frida入门教程] 一文搞定Frida环境搭建,基于逍遥模拟器(虚拟设备)和ADB(Android Debug Bridge)

本文主要是介绍[Frida入门教程] 一文搞定Frida环境搭建,基于逍遥模拟器(虚拟设备)和ADB(Android Debug Bridge),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章流程

  • 搭建 Frida 工作环境 [Windows]
    • 操作环境与资源
      • 本文所用fs(Frida-server)文件
    • 各工具环境搭建/安装方法
    • 开始搭建Frida环境
      • 1. push fs(Frida-server) 文件至虚拟设备
        • 实际操作图 (push / 必看)
      • 2. 给予 Frida-server 最高权限
        • 实际操作图(chmod / 必看)
      • 3. 运行 Frida-server
    • 全部操作流程
    • 验证Frida-server工作

搭建 Frida 工作环境 [Windows]

  • 本文含有大量图片与文字描述,对新手较友好,但可能会略显臃肿,可酌情跳读。

  • 本文更新于 2022/6/8 ,使用工具均为最新版。

  • 本文首发CSDN,禁止搬运,转载!

原作者: @漫游感知 [https://blog.csdn.net/qq_45429426]


操作环境与资源

在正式开始前,需要先了解本文开发环境并下载一些必要的工具!

操作系统:Windows 10
解释器: Python 3.7x
Frida-server 版本15.1.24 (点击版本号跳转至Github,请确保Frida-server与本地Frida版本对应,架构版本确认方法请看下文【逍遥模拟器为 x86_64
ADB(Android Debug Bridge):点我下载,免费不限速 (蓝奏云链接)
逍遥模拟器: 跳转官网下载 (Version:8.x)

本文所用fs(Frida-server)文件

本文所用 frida-server-15.1.24-android-x86_64 点击蓝字下载(蓝奏云链接)


各工具环境搭建/安装方法

Python:没什么可说的,安装Python3即可,唯一需要注意的就是保证pip可以正常工作

Frida 安装指令(如果下载慢或失败,请加上 -i 参数换源):
pip install frida-tools -i https://pypi.tuna.tsinghua.edu.cn/simple
[installing]
安装后在 CMD 输入 frida --version 出现下图反应代表安装成功
installed

ADB(Android Debug Bridge) 环境搭建:
在前文下载好压缩包后解压至任意路径路径最好不要含有中文

1.解压后文件夹目录如下图所示:ADB 解压目录
2.复制ADB文件路径,配置环境变量
ADB 路径
3
4
CMD中输入 adb --version 出现下图反应代表完成环境设置
cndver
逍遥模拟器虚拟设备设置
1.安装完成后,启动逍遥模拟器,检测root权限是否开启(默认开启)
Root
2.开启开发者模式并开启USB调试
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

逍遥模拟器设置结束


开始搭建Frida环境

在确保上述步骤均成功的情况下,我们开始搭建Frida工作环境(部署Frida)

下文所用文件均在前文 操作环境与资源 中免费给出,可自行下载,无限速

1. push fs(Frida-server) 文件至虚拟设备

逍遥模拟器的虚拟设备默认端口为 21503 每增加一个虚拟设备,其端口号“加10”,如第一个虚拟设备的端口是21503,那么第二个虚拟设备的端口就是21513

  1. 先终止一下ADB服务
adb kill-server
  1. 通过指令链接到逍遥模拟器
adb connect 127.0.0.1:21503
  1. 列出已知设备
adb devices
  1. 链接设备(注意!请确保已按照上文方法开启【USB调试】如果显示已知设备不唯一,则可以通过 -s <设备> 参数指定设备,如:adb -s 127.0.0.1:21503 shell
adb shell

获取设备架构信息(用于确认Frida-server版本)指令
adb shell 成功后,在shell对话中输入 getprop ro.product.cpu.abi 即可获取设备架构信息
获取架构信息后,再与安装的Frida版本结合,便可前去Github下载
其Frida-server文件命名格式如下:
frida-server-<Frida版本>-android-<设备架构版本>.xz
你也可以选择安装Frida15.1.24版本,使用前文给出配文Frida-server文件

  1. push fs(Frida-server)文件至 /data/local/tmp
  • exit 退出shell会话
  • 再输入 adb push <Frida-server 文件绝对路径> /data/local/tmp

至此 push fs 文件完成


实际操作图 (push / 必看)

push


2. 给予 Frida-server 最高权限

  1. 输入 adb shell 再次打开shell会话
  2. 输入 cd /data/local/tmp 进入 Frida-server(fs)所在目录
  3. ls 列出目录下文件 / ls -l 列出目录下文件权限
  4. 输入 chmod 777 fs 给予 Frida-server 最高权限
  5. ls -l 一下,看fs文件权限是否改变为-rwxrwxrwx

实际操作图(chmod / 必看)

chmod


3. 运行 Frida-server

1. 先cd到Frida-server (fs)文件所在目录,再输入 ./fs (前文操作已经到达fs文件目录,无需再cd)

注意!!!一旦输入 [./fs] 后,不要关闭此CMD窗口!不然Frida-server会停止运行!


全部操作流程

frida inited


验证Frida-server工作

  1. 新开启一个CMD
  2. 输入 adb forward tcp:27042 tcp:27043 进行端口转发(一般不转发也没事)
  3. 再输入 frida-ps -U ,令其列出所有进程

如果响应如下图所示,则代表Frida-server 正常工作 / Frida 环境搭建完成!!!
show process


至此,本文结束。如果文中出现错误,还望指出!

原作者: @漫游感知 [https://blog.csdn.net/qq_45429426]


这篇关于[Frida入门教程] 一文搞定Frida环境搭建,基于逍遥模拟器(虚拟设备)和ADB(Android Debug Bridge)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/397256

相关文章

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Android协程高级用法大全

《Android协程高级用法大全》这篇文章给大家介绍Android协程高级用法大全,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友跟随小编一起学习吧... 目录1️⃣ 协程作用域(CoroutineScope)与生命周期绑定Activity/Fragment 中手

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

Python库 Django 的简介、安装、用法入门教程

《Python库Django的简介、安装、用法入门教程》Django是Python最流行的Web框架之一,它帮助开发者快速、高效地构建功能强大的Web应用程序,接下来我们将从简介、安装到用法详解,... 目录一、Django 简介 二、Django 的安装教程 1. 创建虚拟环境2. 安装Django三、创

一文带你迅速搞懂路由器/交换机/光猫三者概念区别

《一文带你迅速搞懂路由器/交换机/光猫三者概念区别》讨论网络设备时,常提及路由器、交换机及光猫等词汇,日常生活、工作中,这些设备至关重要,居家上网、企业内部沟通乃至互联网冲浪皆无法脱离其影响力,本文将... 当谈论网络设备时,我们常常会听到路由器、交换机和光猫这几个名词。它们是构建现代网络基础设施的关键组成

Android 缓存日志Logcat导出与分析最佳实践

《Android缓存日志Logcat导出与分析最佳实践》本文全面介绍AndroidLogcat缓存日志的导出与分析方法,涵盖按进程、缓冲区类型及日志级别过滤,自动化工具使用,常见问题解决方案和最佳实... 目录android 缓存日志(Logcat)导出与分析全攻略为什么要导出缓存日志?按需过滤导出1. 按

Java 与 LibreOffice 集成开发指南(环境搭建及代码示例)

《Java与LibreOffice集成开发指南(环境搭建及代码示例)》本文介绍Java与LibreOffice的集成方法,涵盖环境配置、API调用、文档转换、UNO桥接及REST接口等技术,提供... 目录1. 引言2. 环境搭建2.1 安装 LibreOffice2.2 配置 Java 开发环境2.3 配

SpringBoot实现虚拟线程的方案

《SpringBoot实现虚拟线程的方案》Java19引入虚拟线程,本文就来介绍一下SpringBoot实现虚拟线程的方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录什么是虚拟线程虚拟线程和普通线程的区别SpringBoot使用虚拟线程配置@Async性能对比H