资源共享吧|易语言论坛|逆向破解教程|辅助开发教程|网络安全教程|www.zygx8.com|我的开发技术随记

 找回密码
 注册成为正式会员
查看: 1379|回复: 3

[安卓逆向] frida hook 系统函数遇到困难

[复制链接]

6

主题

151

帖子

0

精华

终身高级VIP会员

Rank: 7Rank: 7Rank: 7

资源币
87
积分
160
贡献
0
在线时间
31 小时
注册时间
2019-8-17
最后登录
2021-5-23

终身VIP会员

发表于 2020-3-24 23:59:30 | 显示全部楼层 |阅读模式
1资源币
本帖最后由 qq2625112940 于 2020-3-25 00:04 编辑

遇到问题的情况是这样的。

我有一个应用,它载入了so裤,但是反编译看代码的时候,看到了有多个loadLibrary。

此时就不知如何去Hook这个类

通过查阅Android源码可知
class:java.lang.Runtime

method:
private java.lang.String java.lang.Runtime.doLoad(java.lang.String,java.lang.ClassLoader)
private static java.lang.String[] java.lang.Runtime.initLibPaths()
private static native java.lang.String java.lang.Runtime.nativeLoad(java.lang.String,java.lang.ClassLoader,java.lang.String)
private static native void java.lang.Runtime.nativeExit(int)
public boolean java.lang.Runtime.removeShutdownHook(java.lang.Thread)
public int java.lang.Runtime.availableProcessors()
public java.io.InputStream java.lang.Runtime.getLocalizedInputStream(java.io.InputStream)
public java.io.OutputStream java.lang.Runtime.getLocalizedOutputStream(java.io.OutputStream)
public java.lang.Process java.lang.Runtime.exec(java.lang.String) throws java.io.IOException
public java.lang.Process java.lang.Runtime.exec(java.lang.String,java.lang.String[]) throws java.io.IOException
public java.lang.Process java.lang.Runtime.exec(java.lang.String,java.lang.String[],java.io.File) throws java.io.IOException
public java.lang.Process java.lang.Runtime.exec(java.lang.String[]) throws java.io.IOException
public java.lang.Process java.lang.Runtime.exec(java.lang.String[],java.lang.String[]) throws java.io.IOException
public java.lang.Process java.lang.Runtime.exec(java.lang.String[],java.lang.String[],java.io.File) throws java.io.IOException
public native long java.lang.Runtime.freeMemory()
public native long java.lang.Runtime.maxMemory()
public native long java.lang.Runtime.totalMemory()
public native void java.lang.Runtime.gc()
public static java.lang.Runtime java.lang.Runtime.getRuntime()
public static void java.lang.Runtime.runFinalizersOnExit(boolean)
public void java.lang.Runtime.addShutdownHook(java.lang.Thread)
public void java.lang.Runtime.exit(int)
public void java.lang.Runtime.halt(int)
public void java.lang.Runtime.load(java.lang.String)
public void java.lang.Runtime.loadLibrary(java.lang.String)
public void java.lang.Runtime.runFinalization()
public void java.lang.Runtime.traceInstructions(boolean)
public void java.lang.Runtime.traceMethodCalls(boolean)
void java.lang.Runtime.load(java.lang.String,java.lang.ClassLoader)
void java.lang.Runtime.loadLibrary(java.lang.String,java.lang.ClassLoader)

其中我mark为红色的部分为我想Hook的代码。 可是不知道到底该如何去Hook,求小肩膀大佬解答解答。(写了代码Hook没效果)

回复

使用道具 举报

6

主题

151

帖子

0

精华

终身高级VIP会员

Rank: 7Rank: 7Rank: 7

资源币
87
积分
160
贡献
0
在线时间
31 小时
注册时间
2019-8-17
最后登录
2021-5-23

终身VIP会员

 楼主| 发表于 2020-3-25 00:06:00 | 显示全部楼层
这边我是想通过Hook loadLibrary来分析各个so的加载顺序
回复

使用道具 举报

6

主题

151

帖子

0

精华

终身高级VIP会员

Rank: 7Rank: 7Rank: 7

资源币
87
积分
160
贡献
0
在线时间
31 小时
注册时间
2019-8-17
最后登录
2021-5-23

终身VIP会员

 楼主| 发表于 2020-3-25 00:08:11 | 显示全部楼层
或者Hook loadLibrary0

WX20200325-000612.png
回复

使用道具 举报

1

主题

62

帖子

0

精华

资源共享吧金牌老师

Rank: 6Rank: 6

资源币
54
积分
64
贡献
0
在线时间
9 小时
注册时间
2020-2-28
最后登录
2022-4-26

论坛管理员超级版主终身VIP会员资源共享吧男神终身成就原创先锋精华会员

发表于 2020-3-25 00:42:51 | 显示全部楼层
分析so加载顺序 hook这个函数做啥 hook dlopen 和 android_dlopen_ext  只不过这是sohook  后面会说   你那个java函数hook  有重载 指定下overload不就行了么
回复

使用道具 举报

 点击右侧快捷回复  

本版积分规则

小黑屋|资源共享吧 ( 琼ICP备2023000410号-1 )

GMT+8, 2024-11-21 21:58 , Processed in 0.034858 second(s), 13 queries , MemCached On.

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表