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

android frida

Frida 是一个用于动态分析、调试和修改 Android 应用程序的强大工具。它的主要作用包括:

代码注入和Hooking: Frida 允许您在运行时修改和监视应用程序的行为。您可以通过Frida注入JavaScript代码到目标应用程序中,然后使用该代码来Hook(钩住)并修改应用程序的函数和方法。这对于进行应用程序的反调试、破解或逆向工程非常有用。
动态分析: Frida 提供了实时访问目标应用程序的内存和运行状态的能力。这使得您可以在应用程序运行时查看和修改内存中的数据,以进行调试和分析。这对于识别漏洞、查找恶意行为以及理解应用程序的工作方式非常有帮助。
逆向工程: Frida 可以帮助逆向工程师研究应用程序的工作原理,识别关键功能、算法和数据结构。通过Hook和监视应用程序的操作,分析者可以深入了解应用程序的内部机制。
研究安全漏洞: 安全研究人员可以使用 Frida 来识别应用程序中的安全漏洞,包括代码注入、数据泄露、非法访问等问题。Frida 可以帮助渗透测试人员评估应用程序的安全性。
自动化测试: Frida 还可以用于自动化测试,通过Hook应用程序的函数和方法,自动化执行测试用例,以确保应用程序的功能正常。
应用程序修改: Frida 允许您修改应用程序的行为,包括更改应用程序的配置、绕过某些安全检查、模拟用户输入等。这对于定制应用程序或调整应用程序的行为非常有用。

总的来说,Frida 是一个功能强大的工具,适用于各种 Android 应用程序的分析、测试和修改。然而,需要注意的是,Frida 也可以被用于恶意目的,因此在使用它时务必遵守法律和道德准则。

安装

使用Frida需要Python 3环境,同时你还需要安装好pip。
然后就可以安装frida了,使用如下的命令:

pip install frida frida-tools 

我们还需要下载Frida的Server端,可以从Github上下载:https://github.com/frida/frida/releases。
这里我们选择Android的版本,arm是32位而arm64是64位,还有x86版本提供,根据手机的类型下载。
下载解压之后要将Server端推送到手机上,我们将其推送至/data/local/tmp/目录:

adb push frida-server-12.7.24-android-arm64 /data/local/tmp/

使用root身份启动它。

$ cd /data/local/tmp/
$ su
# chmod +x frida-server-12.7.24-android-arm64
# ./frida-server-12.7.24-android-arm64

验证安装是否成功

在电脑上执行命令

frida-ps -Ua

如果打印出很多进程名信息那么安装就成功了。

编写js hook脚本

Java.perform(function () {var classz = Java.use('com.android.systemui.statusbar.phone.StatusBar');classz.onBackPressed.implementation = function () {send('---------->:');return this.onBackPressed.call(this);}});

上面是hook系统ui进程中的返回事件。写法更反射思路类似

命令行执行hook脚本

frida -U -l ./hook.js com.android.systemui

上面指定系统ui进程名,这个名称从进程列表中获取:frida-ps -Ua

相关文章:

android frida

Frida 是一个用于动态分析、调试和修改 Android 应用程序的强大工具。它的主要作用包括: 代码注入和Hooking: Frida 允许您在运行时修改和监视应用程序的行为。您可以通过Frida注入JavaScript代码到目标应用程序中,然后使用该代码来Hook&…...

Linux下的Shell编程——正则表达式入门(四)

前言: 正则表达式使用单个字符串来描述、匹配一系列符合某个语法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。 在Linux 中,grep,sed,awk 等文本处理工具都支持…...

使用VisualStudio制作上位机(一)

文章目录 使用VisualStudio制作上位机(一)写在前面第一部分:创建应用程序第二部分:GUI主界面设计使用VisualStudio制作上位机(一) Author:YAL 写在前面 1.达到什么目的呢 本文主要讲怎么通过Visual Studio 制作上位机,全文会以制作过程来介绍怎么做,不会去讲解具体…...

【前端从0开始】JavaSript——自定义函数

函数 函数是一个可重用的代码块,用来完成某个特定功能。每当需要反复执行一段代码时,可以利用函数来避免重复书写相同代码。函数包含着的代码只能在函数被调用时才会执行,就可以避免页面载入时执行该脚本在JavaScript中,可以使用…...

如何在Windows、Mac和Linux操作系统上安装Protocol Buffers(protobuf)编译器

🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 &a…...

简单介绍 CPU 的工作原理

内部架构 CPU 的根本任务就是执行指令,对计算机来说最终都是一串由 0 和 1 组成的序列。CPU 从逻辑上可以划分成 3 个模块,分别是控制单元、运算单元和存储单元 。其内部架构如下: 【1】控制单元 控制单元是整个CPU的指挥控制中心&#xff…...

UE4/5数字人MetaHuman的控制绑定资产使用

目录 开始操作 找到控制绑定资产 放入控制绑定资产 ​编辑 生成动画资产 开始操作 首先我们创建一个关卡序列: 打开后将我们的数字人放进去【右键,第一个添加进去】: 我们会自动进入动画模式,没有的话,就自己…...

二、11.系统交互

fork 函数原型是 pid_t fork(void),返回值是数字,该数字有可能是子进程的 pid ,有可能是 0,也有可能是-1 。 1个函数有 3 种返回值,这是为什么呢?可能的原因是 Linux 中没有获取子进程 pid 的方…...

敏捷管理工具/国内软件敏捷开发工具

​Scrum中非常强调公开、透明、直接有效的沟通,这也是“可视化的管理工具”在敏捷开发中如此重要的原因之一。通过“可视化的管理工具”让所有人直观的看到需求,故事,任务之间的流转状态,可以使团队成员更加快速适应敏捷开发流程。…...

Selenium环境+元素定位大法

selenium 与 webdriver Selenium 是一个用于 Web 测试的工具,测试运行在浏览器中,就像真正的用户在手工操作一样。支持所有主流浏览器 WebDriver 就是对浏览器提供的原生API进行封装,使其成为一套更加面向对象的Selenium WebDriver API。 使…...

Vue3 用父子组件通信实现页面页签功能

一、大概流程 二、用到的Vue3知识 1、组件通信 (1)父给子 在vue3中父组件给子组件传值用到绑定和props 因为页签的数组要放在父页面中, data(){return {tabs: []}}, 所以顶部栏需要向父页面获取页签数组 先在页签页面中定义props用来接…...

HCIP STP协议

STP协议 STP协议概念生成树为什么要用STP STP名词解释根网桥根端口指定端口非指定端口 STP的版本802.1DPVSTPVST 快速生成树 STP协议概念 IEEE 802.1d STP(生成树协议,Spanning-Tree Protocol)协议: ①使冗余端口置于“阻塞状态”…...

链表的顶级理解

目录 1.链表的概念及结构 2.链表的分类 单向或者双向 带头或者不带头 循环或者非循环 3.无头单向非循环链表的实现 3.1创建单链表 3.2遍历链表 3.3得到单链表的长度 3.4查找是否包含关键字 3.5头插法 3.6尾插法 3.7任意位置插入 3.8删除第一次出现关键字为key的节点 …...

探索贪心算法:理解与实现JAVA语言

探索贪心算法:理解与实现 贪心算法(Greedy Algorithm)是一种基于每一步的最优选择来达到整体最优的算法思想。尽管贪心算法并不适用于所有问题,但它在很多情况下都能够提供高效、近似的解决方案。本文将深入探讨贪心算法的基本概…...

数字孪生技术对旅游行业能起到什么作用?

随着疫情对我们生活影响的淡化,旅游行业迎来了新的春天,暑期更是旅游行业的小高潮,那么作为一个钻研数字孪生行业的小白,本文就着旅游的话题以及对旅游的渴望带大家一起探讨一下数字孪生对智慧旅游发展的作用~ 数字孪生作为一种虚…...

攻防世界-Web_php_include

原题 解题思路 php://被替换了,但是只做了一次比对,改大小写就可以绕过。 用burp抓包,看看有哪些文件 flag明显在第一个PHP文件里,直接看...

Python Opencv实践 - 直方图显示

import cv2 as cv import numpy as np import matplotlib.pyplot as pltimg cv.imread("../SampleImages/pomeranian.png", cv.IMREAD_COLOR) print(img.shape)#图像直方图计算 #cv.calcHist(images, channels, mask, histSize, ranges, hist, accumulate) #images&…...

2分钟搭建自己的GPT网站

如果觉得官方免费的gpt(3.5)体验比较差,总是断开,或者不会fanqiang,那你可以自己搭建一个。但前提是你得有gpt apikey。年初注册的还有18美金的额度,4.1号后注册的就没有额度了。不过也可以自己充值。 有了…...

deepdiff比较两个json文件数据差异性

deepdiff比较两个json文件数据差异性 Python代码片: import json import sysfrom deepdiff import DeepDiff from deepdiff import grep, DeepSearch from deepdiff import DeepHash# print(DeepDiff("abc", "abcd", ignore_orderTrue))class …...

文件内容搜索工具 - Python实现

在本篇文章中,我们将介绍如何使用 wxPython 库创建一个简单的文件搜索工具。这个工具允许用户选择一个文件夹,并在该文件夹中的所有 .py 文件中查找指定的文字,并显示匹配的位置。 C:\pythoncode\blog\searchwordinpyfile.py 代码实现 我们首…...

如何利用Marketing-for-Engineers营销自动化工具:节省90%时间的终极指南

如何利用Marketing-for-Engineers营销自动化工具:节省90%时间的终极指南 【免费下载链接】Marketing-for-Engineers A curated collection of marketing articles & tools to grow your product. 项目地址: https://gitcode.com/gh_mirrors/ma/Marketing-for…...

Narrative-craft:工程化叙事框架的设计、实现与集成指南

1. 项目概述与核心价值最近在GitHub上看到一个挺有意思的项目,叫“Narrative-craft”,作者是chengjialu8888。光看名字,你可能会觉得这又是一个讲“叙事”或者“故事创作”的抽象工具。但点进去仔细研究后,我发现它远不止于此。这…...

大模型Agent面试通关秘籍!小白程序员必备,附收藏版学习资源

大模型Agent面试通关秘籍!小白程序员必备,附收藏版学习资源 本文分享了作者在阿里巴巴大模型Agent应用算法岗面试中的真实经验,涵盖了从一面到三面的高频技术问题及答题思路,包括大模型Agent核心模块解析、微调与提示工程关系、Ag…...

不止于Java:在Termux的Ubuntu子系统里,我这样配置Python/Node.js多语言开发环境

不止于Java:在Termux的Ubuntu子系统里配置Python/Node.js多语言开发环境 将手机变成便携式开发工作站早已不是天方夜谭。通过Termux和proot-distro搭建的Ubuntu子系统,开发者可以在Android设备上构建完整的Linux开发环境。与局限于单一语言的解决方案不同…...

Windows和Office激活难题?KMS智能激活脚本让你轻松告别烦恼

Windows和Office激活难题?KMS智能激活脚本让你轻松告别烦恼 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 你是否曾经因为Windows系统突然弹出激活提示而中断工作?是否遇…...

量子信号处理技术及其在离子阱系统中的应用

1. 量子信号处理技术概述量子信号处理(Quantum Signal Processing, QSP)是近年来量子计算领域涌现的一项基础性技术,它通过精心设计的量子比特旋转序列,实现对量子数据的系统性多项式变换。这项技术的核心价值在于,它为…...

Steam成就管理神器:如何在5分钟内解锁所有成就的终极完整指南

Steam成就管理神器:如何在5分钟内解锁所有成就的终极完整指南 【免费下载链接】SteamAchievementManager A manager for game achievements in Steam. 项目地址: https://gitcode.com/gh_mirrors/st/SteamAchievementManager 还在为Steam游戏中那些遥不可及的…...

氛围编程实战:用AI工具栈快速构建可部署应用

1. 项目概述:什么是“氛围编程”?如果你对“氛围编程”这个词感到陌生,或者觉得它听起来有点玄乎,那太正常了。我第一次听到时,也以为又是哪个硅谷弄潮儿发明的新潮黑话。但当我真正开始实践,并在几个月内从…...

观察Taotoken在多模型同时高并发调用下的服务表现

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 观察Taotoken在多模型同时高并发调用下的服务表现 在构建依赖大模型能力的应用时,一个常见的工程挑战是如何应对突发的…...

苍穹外卖开发日记-员工管理与AOP自动填充

苍穹外卖开发日记:员工管理、分类管理与AOP自动填充实战今天完成了苍穹外卖项目的员工管理模块、分类管理模块,并通过自定义注解AOP的方式实现了公共字段的自动填充,让我们来回顾一下这些核心功能的实现。一、今日工作概览时间完成内容14:44新…...