FRIDA + Objection 内存漫游,HOOK,anywhere

2023-11-19

前言

VX:Ays971124 大家一起吹水加群聊天哦
Friday 是一款很优秀的HOOK工具,不用过多介绍

objection功能强大,命令众多,而且不用写一行代码,便可实现诸如内存搜索、类和模块搜索、方法hook打印参数返回值
调用栈等常用功能,是一个非常方便的,逆向必备、内存漫游神器。objection的界面及命令如下图

在这里插入图片描述

1.1 获取基本信息

首先介绍几个基本操作:

键入命令之后,回车执行;
help:不知道当前命令的效果是什么,在当前命令前加help比如,help env,回车之后会出现当前命令的解释信息;
按空格:不知道输入什么就按空格,会有提示出来,上下选择之后再按空格选中,又会有新的提示出来;
jobs:作业系统很好用,建议一定要掌握,可以同时运行多项(hook)作业;

我们以安卓内置应用“设置”为例,来示范一下基本的用法。

在手机上启动frida-server,并且点击启动“设置”图标,手机进入设置的界面,首先查看一下“设置”应用的包名。

	# frida-ps -U|grep -i setting
	 7107  com.android.settings
	13370  com.google.android.settings.intelligence

再使用objection注入“设置”应用。

objection -g com.android.settings explore

启动objection之后,会出现提示它的logo,执行的应用环境信息命令env和frida版本信息命令
在这里插入图片描述
在这里插入图片描述

1.2查看库的导出函数

运行命令memory list exports libssl.so,效果如下图2-4所示。

在这里插入图片描述
将结果保存到json文件中

当结果太多,终端无法全部显示的时候,可以将结果导出到文件中,然后使用其他软件查看内容

#memory list exports libart.so --json D:/test/libart.json

Writing exports as json to D:/test/libart.json...
Wrote exports to: D:/test/libart.json

在这里插入图片描述

1.3 内存堆搜索与执行

在堆上搜索实例
我们查看AOSP源码关于设置里显示系统设置的部分,发现存在着DisplaySettings类,可以在堆上搜索是否存在着该类
的实例。
首先在手机上点击进入“显示”设置,然后运行以下命令,并得到相应的实例地址:
# android heap search instances com.android.settings.DisplaySettings
	Class instance enumeration complete for [32mcom.android.settings.DisplaySettings[39m
Hashcode  Class                                 toString()
--------  ------------------------------------  -----------------------------------------
45781540  com.android.settings.DisplaySettings  DisplaySettings{2ba9224 #0 id=0x7f110216}

查看源码得知com.android.settings.DisplaySettings类有着getHelpResource()方法(我这里是安卓7.1 每个版本的代码不一样 )

Handle 45781540   is to class com.android.settings.DisplaySettings
Executing method: getHelpResource()
2131626535

也可以在找到的实例上直接编写js脚本,输入android heap evaluate 0x2526命令后,会进入一个迷你编辑器环境,输入console.log(“evaluate result:”+clazz.getHelpResource())这串脚本,按ESC退出编辑器,然后按回车,即会开始执行这串脚本,输出结果。

# android heap evaluate 0x2526
console.log("evaluate result:"+clazz.getHelpResource()) 

1.4 启动activity或service

直接启动activity
想要进入显示设置,可以在任意界面直接运行以下代码进入显示设置:

# android intent launch_activity com.android.settings.DisplaySettings 

查看当前可用的activity

可以使用android hooking list命令来查看当前可用的activities,然后使用上述命令进行调起。
# android hooking list activities

com.android.settings.ActivityPicker
com.android.settings.AirplaneModeVoiceActivity
com.android.settings.AllowBindAppWidgetActivity
com.android.settings.AppWidgetPickActivity
com.android.settings.BandMode
com.android.settings.ConfirmDeviceCredentialActivity
com.android.settings.CredentialStorage
com.android.settings.CryptKeeper$FadeToBlack
com.android.settings.CryptKeeperConfirm$Blank
com.android.settings.DeviceAdminAdd
com.android.settings.DeviceAdminSettings
com.android.settings.DisplaySettings
com.android.settings.EncryptionInterstitial
com.android.settings.FallbackHome
com.android.settings.HelpTrampoline
com.android.settings.LanguageSettings
。。。。。。。。

直接启动service

也可以先使用android hooking list services查看可供开启的服务,然后使用android intent launch_service 
com.android.settings.bluetooth.BluetoothPairingService命令来开启服务。

VX:Ays971124 大家一起吹水加群聊天哦

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

FRIDA + Objection 内存漫游,HOOK,anywhere 的相关文章

  • jQuery .val() 返回单选按钮的未定义

    我正在尝试获取 jQuery 中选中的单选按钮值 但它返回的值是 未定义 我搜索了这个问题的解决方案 但对我来说没有任何作用 我的 HTML 代码
  • 未捕获的引用错误:myFunction 未定义[重复]

    这个问题在这里已经有答案了 这到底是怎么回事 http jsfiddle net sVT54 http jsfiddle net sVT54
  • 如何清除WebGL中的矩形区域?

    WebGL 有一个clear清除整个表面的方法 清除表面的特定矩形的最佳方法是什么 例如 我想将一个从 50 50 开始的 100x100 像素框设置为全零 ARGB 0 0 0 0 我现在能想到的就是用一个写入零的片段着色器绘制一个四边形
  • css 计数器在 Internet Explorer 中无法工作以获取隐藏内容 - 如何修复?

    我们想要一些编号列表 并发现了这个很酷的计数器 您可以在 css 中使用它来让浏览器为您计算数字 ol instructions counter reset instructions section ol instructions gt l
  • 如何使 jQuery 向上动画

    我有一些 jquery 运行得相当好 但是当我将鼠标悬停在有问题的元素上时 底部向下扩展 这并不意外 但不是所需的效果 我希望元素的底部保持静止 而元素的顶部向上扩展 如果您想查看我目前拥有的内容 您可以导航至http demo ivann
  • MYSQL 按喜欢/不喜欢和受欢迎程度排序

    我有评论表 其中包括喜欢和不喜欢的内容 现在我在正确的顺序上遇到了问题 实际上 我的系统在顶部显示了最多点赞的评论 我正在 youtube 上寻找类似系统的东西 这意味着 100like 100dislikes 的评论的顺序高于 1 1 我
  • html,将链接显示为普通文本

    我想知道您是否可以将链接显示为普通文本 a href target self img src width 121 height 20 alt div style font size 12px display block font color
  • HTML 上传 MAX_FILE_SIZE 似乎不起作用

    我想知道隐藏字段是如何命名的MAX FILE SIZE应该工作吗
  • JQuery 可搜索下拉框

    我有一个可搜索列表 是使用 JQuery 插件创建的 http plugins jquery com searchit http plugins jquery com searchit 但我希望当列表框第一次出现时默认选择一些值 即使我在选
  • IE 位置问题:绝对

    我有这段代码 它在 Firefox 中运行得很好 但在资源管理器上会向右射击 这段代码有什么我看不到的问题吗 感谢您的帮助 div a href http www mysite com img src images sponsor png
  • 获取一行中的最后一个 li jQuery

    我们有一个简单的ul ul li some text li li some some text li li text more li li text here li ul ul text align center width 100px l
  • 如何将我的 html 表单发布到 django 模型并保存?

    我有 html 表单 我想发送并保存到 django 模型 当我尝试发送消息时出现错误 ValueError at account userinfo akylson
  • Selenium driver.page_source() 仅提取部分 HTML DOM

    我有一个网页 当我右键单击它然后查看页面源时 我得到 SECTION A 但是当我点击它然后检查时 我得到了更长的输出 我尝试使用 JS 获取页面源 但同样的问题 我得到了输出SECTION A 我怎样才能解决这个问题 注意 我正在寻找通用
  • Safari 不触发表单提交

    对于一个项目 我有两个选择表单字段 它们通过 jquery 触发器 提交 发送 这在 Firefox 和 Chrome 中运行良好 但在 Safari 中没有任何反应 这是 HTML 代码
  • Socket.io 如何判断某人何时离开

    我正在使用 socket io 创建一个实时游戏 目前 当有人离开时 什么也不会发生 我想以某种方式通知服务器说谁离开了 有没有办法在用户离开时发出正确的信息 我可以让服务器每 1000 毫秒对每个人执行一次 ping 操作 或者通过其他方
  • 使用 python 将 bibtex 文件转换为 html (也许是 pybtex?)

    您好 我想解析 bibtex 出版物文件并对特定字段 例如年份 进行排序并过滤某些内容 然后将其放在网站上 我遇到了 pybtex 它可以读取和解析 bibtex 文件 但它基本上没有记录 我不知道如何对条目进行排序 pybtex 是可行的
  • 如何为多个元素添加Class?

    我正在使用这段 javascript 向多个元素添加一个类 我试图引用多个 div 并向它们添加类 它只适用于第一个 JavaScript
  • 在 IE 中使用
    标签时,填充不起作用

    我在我的应用程序中使用 HTML5 标签 标签的填充在 chrome ff 和 safari 中工作正常 但在 IE 中不起作用 我尝试添加显示 块 与部分样式 但它没有用 有什么解决办法吗 许多旧浏览器不理解 HTML5 标签 例如sec
  • 在文档片段中查找注释或文本节点

    我必须清理 Nokogiri HTML DocumentFragment 文档 删除仅包含空格的注释节点和文本节点 这是一个例子 html p paragraph p p paragraph p p paragraph p doc Noko
  • 恢复默认的CSS属性

    我正在编写一个可在多个网站上使用的组件 每个网站都有自己的样式表 并且以不同的方式显示某些内容 我的所有 html 都包含在一个带有 id 的 div 中 div div 然而 我的组件是在所有网站上看起来一致 这很好 因为我将样式应用于组

随机推荐

  • 为什么程序员都喜欢安静?

    大家回顾一下上学期间 你在上晚自习想完成今天老师布置的作业 但是你的班级却非常的吵闹 跟置身在菜市场一样 你能专心完成作业吗 不受周围吵闹环境的影响吗 相信大部分的人都难以静下心来认真完成作业 有时候好不容易想到一个思路 结果旁边的人拍你一
  • Windows系统常用命令

    Windows常用命令 1 echo 用法 输出一个字符到终端 当加上 gt 后就可输出到文本文件 例如 echo 1 在终端显示一个1 echo 20 gt gt 1 txt 在当前目录下的1 txt文件后面追加一行数据值20 如果没有1
  • AT24C02芯片使用介绍

    AT24C02简介 AT24C02是一个2K位串行CMOS E2PROM 内部含有256个8位字节 有一个16字节页写缓冲器 该器件通过IIC总线接口进行操作 有专门的写保护功能 应用于AT24C02制造过程的先进CMOS技术实质上减少了器
  • 咬牙切齿的按钮

    先看效果 再看代码 查看更多 import url https fonts googleapis com css2 family Roboto wght 500 display swap root sz 9vmin on 4CAF50 of
  • ftp服务器性能对比,ftp服务器软件 性能对比

    ftp服务器软件 性能对比 内容精选 换一换 Java性能分析是鲲鹏性能分析工具的子工具 本章节以openEuler离线环境安装工具 登录 创建Guardian和分析任务 卸载工具为例 指导您快速上手Java性能优分析 由于root用户拥有
  • 机器学习毕设题目有哪些_毕设开源了,126个star,39个fork

    毕设题目 我是去年毕业的 软件工程专业 学校给的毕设题目是实现一个电影院订票系统 如图 嗯 题目一看很简单 其实就是实现一个web版的影票在线订票系统罢了 因此当天接到毕设后的我就大刀阔斧的准备开干了 技术方案选择 先说个大前提 我们学校评
  • c++动态数组(二)之allocator类

    new在灵活性上面一些局限性 以方便它将内存分配和对象构造组合在了一起 delete将内存释放和对象析构组合在一起 当分配一大块内存时 我们通常计划在这块内存上面按需构造对象 在这种情况下 我们希望内存分配和对象构造分离 这意味着我们可以分
  • Python学习之cookies及session用法

    当想利用Python在网页上发表评论的时候 需要一些账号密码登录的信息 这个时候用requests get 请求的话 账号密码全部会显示在网址上 这显然不科学 这个时候需要用post请求 可以这么理解 get是明文显示 post是非明文显示
  • cad等比例缩放快捷键_终于领会CAD缩放(放大与缩小)快捷键

    终于领会CAD缩放 放大与缩小 快捷键 日期 2019 10 09 19 15 01 浏览 9 核心提示 CAD缩放 放大与缩小 快捷键 这个非常简单 鼠标的中键也就是滚轮 双击两下中键图形会适合平面显示全部滚轮前后滚动是缩放 不需要什么快
  • error: “自定义函数XXX” must take exactly one argument

    主要问题在于 类里面的重载的二元运算符时 只需要一个参数 另一个参数由this指针传入 这里如果需要传入两个参数 需要放到类外定义 声明友元 访问私有数据和函数 如下 class myTask public myTask int a int
  • windbg remote stub方式远程调试

    windbg远程调试时 有两种方式 一种为remote session 另一种为remote stub 具体详情请google 我下面说说我在使用remote stub方式时遇到的一些困惑 按照教程 我在target machine启动了s
  • .NET C# 世界日期格式转换为yyyyMMdd

    本文分享了一个按照不同国家的语言生成相应时间格式的案例 有需要做国外网站或者多国语言网站的朋友可以参考一下 本文在引用 C DateTime ToString根据不同语言生成相应的时间格式 基础上做了一个Demo测试 旨在给更多有需要的人能
  • C++设计模式-State状态模式

    State状态模式作用 当一个对象的内在状态改变时允许改变其行为 这个对象看起来像是改变了其类 UML图如下 State类 抽象状态类 定义一个接口以封装与Context的一个特定状态相关的行为 ConcreteState类 具体状态 每一
  • Nodejs-Express框架

    1 认识Web框架 目前在Node中比较流行的Web服务器框架是express koa express早于koa出现 并且在Node社区中迅速流行起来 可以基于express快速 方便的开发自己的Web服务器 并且可以通过一些实用工具和中间
  • HttpResponse响应、render 响应、redirect 响应、JsonResponse 响应

    目录 HttpResponse介绍 常用属性 content 返回的内容 编辑 content type 返回给数据的MIME类型 status code 返回的HTTP响应状态码 render 返回网页 给网页传值 1 指名道姓方式传值
  • Mysql推荐书籍

    一 初级 1 MySQL必知必会 这本书英文原版名是很标题党的 Teach Yourself SQL in 10 Minutes 却是最好的数据库入门书 在Amazon上长期排在数据库销售榜首 建议想快速了解数据库原理和MySQL的新手阅读
  • sklearn机器学习:多项式朴素贝叶斯MultinomialNB

    多项式朴素贝叶斯MultinomialNB 多项式贝叶斯可能是除了高斯之外 最为人所知的贝叶斯算法了 它也是基于原始的贝叶斯 论 但假设概率分布是服从一个简单多项式分布 多项式分布来源于统计学中的多项式实验 这种实验可以具体解释为 实验包括
  • DDL语句--查看表

    查看表结构是指查看数据库中已经存在的表的定义 查看表结构的语句包括DESTRIBE语句和SHOW CREATE TABLE语句 通过这两个语句 可以查看表的字段名 字段的数据类型和完整性约束条件等 这篇博客将详细讲解查看表结构的方法 1 查
  • [Unity3D] Unity3D连接安卓设备调试unity程序

    目录 一 手机开启调试模式 确保adb能检测到手机 目的 确保adb能检测到手机 通过adb devices命令能够呈现如下效果 常见问题 二 unity配置工作 目的 配置unity中Build Settings界面与Player Set
  • FRIDA + Objection 内存漫游,HOOK,anywhere

    前言 VX Ays971124 大家一起吹水加群聊天哦 Friday 是一款很优秀的HOOK工具 不用过多介绍 objection功能强大 命令众多 而且不用写一行代码 便可实现诸如内存搜索 类和模块搜索 方法hook打印参数返回值 调用栈